/* =====================================================================
   EVJF Deauville, bord de mer 2.0.0 : charte globale (toutes les pages).
   Les composants de la maquette sont dans maquette.css (généré). Cette feuille ne fait que
   raccorder GeneratePress (en-tête, pied de page, conteneurs) et le formulaire Divi à cette maquette.
   Aucun texte n'est ajouté ici hormis des accents décoratifs en `content:` (hors index).
   ===================================================================== */

/* ---------- Attente du script : le contenu Divi n'est montré qu'une fois réorganisé (sans script, tout reste visible) ---------- */
html.evjf-js:not(.evjf-pret) body.evjf-bdm #content{visibility:hidden}
body.evjf-bdm.evjf-extrait #et-boc{display:none!important}
html.evjf-pret body.evjf-bdm .top-bar{display:none}
html.evjf-pret body.evjf-bdm .entry-header{display:none}
body.evjf-bdm .evjf-masque{display:none!important}
body.evjf-bdm .evjf-vide{display:none}

/* ---------- Conteneurs GeneratePress neutralisés : la page occupe toute la largeur, chaque section gère ses marges ---------- */
body.evjf-bdm, body.evjf-bdm #page, body.evjf-bdm #content{background:var(--lumineux)}
body.evjf-bdm #page.site{max-width:none!important; width:100%!important}
body.evjf-bdm #content.site-content{padding:0!important; display:block}
body.evjf-bdm .content-area, body.evjf-bdm .site-main, body.evjf-bdm .inside-article, body.evjf-bdm .entry-content{margin:0!important; padding:0!important; width:100%; max-width:none}
body.evjf-bdm .grid-container{max-width:none; padding:0}
body.evjf-bdm ::selection{background:var(--poudre)}
body.evjf-bdm :focus-visible{outline:2px solid var(--bleu); outline-offset:3px}

/* ---------- En-tête GeneratePress = .nav de la maquette (bleu poudré, festons, crème translucide au défilement) ---------- */
body.evjf-bdm #masthead.site-header{position:sticky; top:0; z-index:50; --fond:var(--poudre); background:var(--fond); color:var(--marine); border:0; box-shadow:none; transition:background-color .35s ease, box-shadow .35s ease}
body.evjf-bdm #masthead.site-header::after{content:""; display:block!important; width:auto; clear:none; position:absolute; left:0; right:0; top:100%; height:19px; pointer-events:none; background:radial-gradient(ellipse 23px 19px at 50% 0, var(--fond) 97%, transparent 100%) 0 0/46px 19px repeat-x; transition:opacity .35s ease}
body.evjf-bdm #masthead.site-header.evjf-defile{--fond:rgba(255,253,250,.92); -webkit-backdrop-filter:saturate(1.4) blur(12px); backdrop-filter:saturate(1.4) blur(12px); box-shadow:0 10px 30px rgba(31,58,84,.09)}
body.evjf-bdm.admin-bar #masthead.site-header{top:32px}
@media (max-width:782px){ body.evjf-bdm.admin-bar #masthead.site-header{top:46px} }
/* sous 600 px, WordPress fait défiler sa barre d'administration avec la page (position absolute) : l'en-tête collant revient à 0,
   sinon il reste décalé de 46 px et le texte de la page apparaît au-dessus du menu (vu par les personnes connectées) */
@media (max-width:600px){ body.evjf-bdm.admin-bar #masthead.site-header{top:0} }
body.evjf-bdm #masthead .inside-header{display:flex; align-items:center; justify-content:space-between; gap:22px; height:84px; max-width:1180px; margin:0 auto; padding:0 28px; box-sizing:border-box; position:relative; transition:height .3s ease}
body.evjf-bdm #masthead.site-header.evjf-defile .inside-header{height:70px}
body.evjf-bdm .site-logo{margin:0!important; padding:0; line-height:0; position:static!important; float:none!important; flex:none}
body.evjf-bdm .site-logo img, body.evjf-bdm .header-image.is-logo-image{height:44px!important; width:auto!important; max-width:none; display:block}
body.evjf-bdm #site-navigation.main-navigation{background:transparent; margin:0; flex:1; min-width:0; position:static!important; float:none!important; width:auto!important}
body.evjf-bdm #site-navigation .inside-navigation{display:flex; align-items:center; justify-content:flex-end; gap:14px; padding:0; max-width:none; position:static}
body.evjf-bdm #site-navigation .main-nav{flex:none}
body.evjf-bdm #site-navigation .main-nav > ul{display:flex; align-items:center; gap:4px; margin:0; padding:0; list-style:none; position:relative; float:none}
body.evjf-bdm #site-navigation .main-nav > ul > li{position:relative; z-index:1; float:none; margin:0}
body.evjf-bdm #site-navigation .main-nav ul li a{font-family:var(--menu); font-size:12.5px; font-weight:600; letter-spacing:.22em; text-transform:uppercase; color:var(--marine); line-height:1; padding:10px 13px; height:auto; border-radius:999px; white-space:nowrap; background:transparent; text-decoration:none; display:inline-block; transition:color .2s ease; cursor:pointer}
body.evjf-bdm #site-navigation .main-nav ul li a:hover, body.evjf-bdm #site-navigation .main-nav ul li.current-menu-item > a, body.evjf-bdm #site-navigation .main-nav ul li.current_page_item > a{color:var(--marine); background:transparent}
body.evjf-bdm #site-navigation .main-nav ul li a .dropdown-menu-toggle{padding:0 0 0 4px; opacity:.6; line-height:0}
/* Devis : bouton plein, en dernier */
body.evjf-bdm #site-navigation .main-nav > ul > li.evjf-devis{order:1}
body.evjf-bdm #site-navigation .main-nav > ul > li.evjf-devis > a{font-family:var(--menu); font-size:11.5px; letter-spacing:.2em; text-transform:uppercase; font-weight:600; padding:13px 20px; border:1.5px solid var(--marine); border-radius:4px; background:var(--marine); color:var(--lumineux); margin-left:6px; line-height:1.35; transition:transform .22s ease, box-shadow .22s ease, background-color .35s ease, color .2s ease}
body.evjf-bdm #site-navigation .main-nav > ul > li.evjf-devis > a:hover{background:#2d4f71; border-color:#2d4f71; color:var(--lumineux); transform:translateY(-2px); box-shadow:0 10px 22px rgba(31,58,84,.2)}
/* pastille blanche qui glisse d'une entrée à l'autre (posée par le script) */
body.evjf-bdm .evjf-pastille{position:absolute; top:50%; left:0; width:0; height:40px; transform:translateY(-50%); border-radius:999px; background:rgba(255,255,255,.9); box-shadow:0 1px 3px rgba(31,58,84,.1); opacity:0; pointer-events:none; z-index:0; transition:left .32s cubic-bezier(.4,0,.2,1), width .32s cubic-bezier(.4,0,.2,1), opacity .2s ease}
body.evjf-bdm #masthead.site-header.evjf-defile .evjf-pastille{background:var(--poudre); box-shadow:none}
/* sous-menu (Soirées et formules complètes) */
body.evjf-bdm #site-navigation .main-nav ul ul{background:var(--lumineux); border:1px solid var(--filet); box-shadow:0 12px 34px rgba(31,58,84,.14); border-radius:4px; padding:8px 0; top:auto; width:auto!important; min-width:250px; white-space:nowrap}
body.evjf-bdm #site-navigation .main-nav ul ul li{float:none; width:auto}
body.evjf-bdm #site-navigation .main-nav ul ul li a{display:block; white-space:nowrap; border-radius:0; padding:10px 18px; font-size:12px; letter-spacing:.14em; text-transform:uppercase; font-weight:500}
/* burger GeneratePress */
body.evjf-bdm .menu-toggle{display:none; border:1.5px solid var(--marine); background:transparent; width:44px; height:40px; padding:0; color:var(--marine); border-radius:4px}
body.evjf-bdm .menu-toggle .mobile-menu, body.evjf-bdm .menu-toggle .gp-icon{display:none}
body.evjf-bdm .menu-toggle::before{content:"\2630"; font-size:20px; line-height:1}
@media (min-width:1101px){
  body.evjf-bdm #site-navigation .main-nav{position:static!important; left:auto!important; right:auto!important; top:auto!important; transform:none!important; margin:0!important; padding:0!important; width:auto!important; float:none!important; display:block!important}
  body.evjf-bdm #site-navigation .main-nav > ul{position:relative!important; left:auto!important; margin:0!important; width:auto!important}
}
@media (max-width:1100px){
  body.evjf-bdm .menu-toggle{display:inline-flex!important; align-items:center; justify-content:center}
  body.evjf-bdm #site-navigation .main-nav{display:none; position:absolute!important; left:0!important; right:0!important; top:100%!important; background:var(--poudre); padding:10px 28px 18px!important; border-bottom:1px solid var(--filet); z-index:60; width:auto!important; margin:0!important}
  body.evjf-bdm #site-navigation.toggled .main-nav{display:block!important}
  /* menu ouvert jamais plus haut que l'écran : il défile dans sa propre boîte (petits téléphones, sous-menu déplié) */
  body.evjf-bdm #site-navigation.toggled .main-nav{max-height:calc(100vh - 90px - var(--wp-admin--admin-bar--height, 0px)); max-height:calc(100dvh - 90px - var(--wp-admin--admin-bar--height, 0px)); overflow-y:auto; overscroll-behavior:contain}
  body.evjf-bdm #site-navigation .main-nav > ul{flex-direction:column; align-items:stretch; gap:0}
  body.evjf-bdm #site-navigation .main-nav ul li a{display:block; padding:14px 0; border-bottom:1px solid var(--filet2); border-radius:0; font-size:13px; letter-spacing:.2em}
  body.evjf-bdm #site-navigation .main-nav ul ul{position:static; box-shadow:none; border:0; background:transparent; min-width:0; padding:0 0 6px 14px}
  body.evjf-bdm #site-navigation .main-nav ul ul li a{padding:10px 0; font-size:12px}
  body.evjf-bdm #site-navigation .main-nav > ul > li.evjf-devis > a{margin:12px 0 0; text-align:center; display:block}
  body.evjf-bdm .evjf-pastille{display:none}
  body.evjf-bdm #masthead .inside-header{position:relative}
}
@media (max-width:820px){
  body.evjf-bdm #masthead .inside-header{height:66px; padding:0 18px}
  body.evjf-bdm #masthead.site-header.evjf-defile .inside-header{height:60px}
  body.evjf-bdm .site-logo img, body.evjf-bdm .header-image.is-logo-image{height:38px!important}
}

/* ---------- Pied de page GeneratePress = footer de la maquette (le script pose .evjf-pied et regroupe les widgets) ---------- */
body.evjf-bdm .site-footer{background:transparent; color:inherit}
body.evjf-bdm footer.site-info{color:var(--lumineux)}
body.evjf-bdm footer.site-info .inside-site-info{max-width:none; margin:0; padding:0; border:0}
body.evjf-bdm footer.site-info .footer-bar{display:block}
body.evjf-bdm footer.site-info .widget{margin:0}
body.evjf-bdm .evjf-pied .evjf-wrap{max-width:1180px; margin:0 auto; padding:0 28px; position:relative}
body.evjf-bdm .evjf-pied .evjf-logo{display:block; width:95px; height:46px; background:var(--lumineux); -webkit-mask:var(--logo) 0 50%/contain no-repeat; mask:var(--logo) 0 50%/contain no-repeat}
body.evjf-bdm .evjf-pied .evjf-reseau p{margin:0; line-height:2.2; letter-spacing:.1em; text-transform:uppercase; font-size:13px; color:rgba(250,246,239,.6)}
body.evjf-bdm .evjf-pied .evjf-reseau a{text-decoration:none; color:var(--poudre); display:inline-block; padding:6px 0}
body.evjf-bdm .evjf-pied .evjf-reseau a:hover, body.evjf-bdm .evjf-pied .evjf-bas a:hover{color:var(--lumineux)}
body.evjf-bdm .evjf-pied .evjf-bas{display:flex; justify-content:space-between; align-items:center; gap:14px 24px; flex-wrap:wrap; border-top:1px solid rgba(250,246,239,.18); padding-top:18px; color:rgba(250,246,239,.7); font-size:14px}
body.evjf-bdm .evjf-pied .evjf-bas p{margin:0; text-transform:none; letter-spacing:.02em}
body.evjf-bdm .evjf-pied .evjf-bas a{text-decoration:none; color:var(--poudre); display:inline-block; padding:10px 0}
body.evjf-bdm .evjf-pied .evjf-bas .wp-block-social-links{margin:0; padding:0; gap:14px; justify-content:flex-start}
body.evjf-bdm .evjf-pied .evjf-bas .wp-block-social-links .wp-social-link{color:var(--poudre)!important; background:transparent}
body.evjf-bdm .evjf-pied .evjf-bas .wp-block-social-links .wp-social-link a{padding:6px; color:inherit; display:inline-flex}
body.evjf-bdm .evjf-pied .evjf-bas .wp-block-social-links .wp-social-link svg{fill:currentColor; width:22px; height:22px}
@media (max-width:820px){ body.evjf-bdm .evjf-pied .evjf-wrap{padding:0 18px} body.evjf-bdm .evjf-pied .evjf-bas{flex-direction:column; align-items:flex-start} }
/* Avis Google (Trustindex) : bande crème au-dessus du pied de page */
body.evjf-bdm #footer-widgets{background:var(--creme); color:var(--texte); border-top:1px solid var(--filet2); padding:0}
body.evjf-bdm #footer-widgets .inside-footer-widgets{max-width:1180px; margin:0 auto; padding:48px 28px 32px; box-sizing:border-box}
body.evjf-bdm #footer-widgets .footer-widget-1{width:100%; margin:0; padding:0}
body.evjf-bdm #footer-widgets .widget{margin:0}
body.evjf-bdm #footer-widgets a{color:var(--marine)}

/* ---------- Sommaire (LuckyWP), déplacé en fin de page par le script ---------- */
body.evjf-bdm .evjf-sommaire{padding:48px 0 64px; background:var(--creme)}
body.evjf-bdm .lwptoc{margin:0 auto; max-width:1180px; padding:0 28px; box-sizing:border-box}
body.evjf-bdm .lwptoc .lwptoc_i{background:var(--lumineux)!important; border:1px solid var(--filet)!important; border-radius:4px; color:var(--texte)!important; padding:22px 26px!important; font-family:var(--sans)}
body.evjf-bdm .lwptoc .lwptoc_header{font-family:var(--display); font-size:24px; color:var(--marine)!important}
body.evjf-bdm .lwptoc .lwptoc_toggle a, body.evjf-bdm .lwptoc .lwptoc_toggle_label{color:var(--gris)!important; font-size:12px; letter-spacing:.06em; text-transform:uppercase}
body.evjf-bdm .lwptoc .lwptoc_items a, body.evjf-bdm .lwptoc .lwptoc_item_label{color:var(--marine)!important; text-decoration:none}
body.evjf-bdm .lwptoc .lwptoc_items a:hover .lwptoc_item_label{text-decoration:underline; text-decoration-color:var(--bleu); text-underline-offset:4px}
body.evjf-bdm .lwptoc .lwptoc_item_number{color:var(--bleu)!important}

/* ---------- Formulaire de contact Divi = .form de la maquette (colonne droite de la carte Devis) ---------- */
body.evjf-bdm .evjf-cold .et_pb_contact_form_container, body.evjf-bdm .evjf-cold .et_pb_contact{margin:0; padding:0}
body.evjf-bdm .evjf-cold .et-pb-contact-message{margin:0 0 12px; font-size:14px; color:var(--marine)}
body.evjf-bdm .evjf-cold .et-pb-contact-message:empty{display:none}
body.evjf-bdm .evjf-cold .et_pb_contact_form{display:grid; grid-template-columns:1fr 1fr; gap:14px 18px; margin:0}
body.evjf-bdm .evjf-cold .et_pb_contact_form::before, body.evjf-bdm .evjf-cold .et_pb_contact_form::after{content:none; display:none}
body.evjf-bdm .evjf-cold .et_pb_contact_field{margin:0!important; padding:0!important; width:auto!important; float:none!important; min-height:0; display:block}
body.evjf-bdm .evjf-cold .et_pb_contact_field:not(.et_pb_contact_field_half), body.evjf-bdm .evjf-cold .et_pb_contact_field[data-type=checkbox], body.evjf-bdm .evjf-cold .et_contact_bottom_container{grid-column:1/-1}
body.evjf-bdm .evjf-cold .et_pb_contact_form_label{font-family:var(--sans); font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:var(--gris); font-weight:600; display:block; margin:0 0 6px; opacity:1; position:static; height:auto; width:auto; clip:auto; overflow:visible}
body.evjf-bdm .evjf-cold .et_pb_contact_field input.input, body.evjf-bdm .evjf-cold .et_pb_contact_field textarea.input, body.evjf-bdm .evjf-cold .et_pb_contact_field input[type=text], body.evjf-bdm .evjf-cold .et_pb_contact_field input[type=email], body.evjf-bdm .evjf-cold .et_pb_contact_field input[type=tel], body.evjf-bdm .evjf-cold .et_pb_contact_field textarea{width:100%; border:1px solid var(--filet); border-radius:3px; background:var(--blanc); padding:13px 14px; font:inherit; font-size:15px; color:var(--marine); box-sizing:border-box; line-height:1.4; transition:border-color .2s, box-shadow .2s; -webkit-appearance:none}
body.evjf-bdm .evjf-cold .et_pb_contact_field input:focus, body.evjf-bdm .evjf-cold .et_pb_contact_field textarea:focus{outline:none; border-color:var(--marine); box-shadow:0 0 0 3px rgba(169,191,214,.35)}
body.evjf-bdm .evjf-cold .et_pb_contact_field textarea{min-height:110px}
body.evjf-bdm .evjf-cold ::placeholder{color:rgba(74,91,112,.6)}
/* case de consentement */
body.evjf-bdm .evjf-cold .et_pb_contact_field[data-type=checkbox] .et_pb_contact_field_options_title{display:none}
body.evjf-bdm .evjf-cold .et_pb_contact_field_options_list{display:block}
body.evjf-bdm .evjf-cold .et_pb_contact_field_options_wrapper{display:flex; gap:10px; align-items:flex-start; margin:0}
body.evjf-bdm .evjf-cold .et_pb_contact_field_checkbox{margin:0}
body.evjf-bdm .evjf-cold .et_pb_contact_field_checkbox input[type=checkbox]{width:18px; height:18px; margin:2px 0 0; accent-color:var(--marine)}
body.evjf-bdm .evjf-cold .et_pb_contact_field_checkbox label{font-size:14px; color:var(--gris); text-transform:none; letter-spacing:0; font-weight:400; line-height:1.45; margin:0; display:inline}
body.evjf-bdm .evjf-cold .et_pb_contact_field_checkbox label i{display:none}
/* captcha Divi (question de calcul) */
body.evjf-bdm .evjf-cold .et_contact_bottom_container{display:flex; flex-wrap:wrap; align-items:center; gap:14px 22px; margin:6px 0 0; float:none; width:100%}
body.evjf-bdm .evjf-cold .et_pb_contact_right{margin:0; font-size:14px; color:var(--gris)}
body.evjf-bdm .evjf-cold .et_pb_contact_right p{margin:0; display:flex; align-items:center; gap:8px}
body.evjf-bdm .evjf-cold .et_pb_contact_right input.et_pb_contact_captcha{width:64px; padding:9px 10px; border:1px solid var(--filet); border-radius:3px; font:inherit; font-size:15px; color:var(--marine); background:var(--blanc)}
body.evjf-bdm .evjf-cold button.et_pb_contact_submit, body.evjf-bdm .evjf-cold .et_pb_button.et_pb_contact_submit{display:inline-block; font-family:var(--sans); font-size:13px; letter-spacing:.1em; text-transform:uppercase; font-weight:600; text-decoration:none; padding:14px 24px; border:1.5px solid var(--marine); border-radius:4px; color:var(--lumineux); background:var(--marine); line-height:1.35; cursor:pointer; margin:0; transition:background-color .35s ease, border-color .35s ease, color .35s ease, transform .3s ease, box-shadow .3s ease}
body.evjf-bdm .evjf-cold button.et_pb_contact_submit::after{display:none!important; content:none!important}
body.evjf-bdm .evjf-cold button.et_pb_contact_submit:hover{background:#2d4f71; border-color:#2d4f71; color:var(--lumineux); transform:translateY(-1px); box-shadow:0 8px 18px rgba(31,58,84,.10)}
@media (max-width:820px){ body.evjf-bdm .evjf-cold .et_pb_contact_form{grid-template-columns:1fr} }

/* ---------- Petits raccords entre la maquette et le contenu réel (aucun texte touché) ---------- */
/* tarif et durée : les libellés d'onglets Divi sont des liens « # » sans rôle : rendus comme du texte */
body.evjf-bdm .evjf-meta span a{color:inherit; text-decoration:none; pointer-events:none; cursor:default}
/* libellé court de la fiche (1er onglet Divi) : doublon du titre, gardé pour le mobile en surtitre */
body.evjf-bdm .evjf-act .evjf-libelle{display:none}
@media (max-width:820px){ body.evjf-bdm .evjf-act .evjf-libelle{display:block; font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--gris); font-weight:600; margin:0 0 6px} body.evjf-bdm .evjf-act .evjf-libelle a{color:inherit; text-decoration:none; pointer-events:none} }
/* durée saisie dans l'onglet Divi (« 1H30 ») : petite ligne sous la note de tarif */
body.evjf-bdm .evjf-act .evjf-tarif p{margin:0; max-width:none; font-size:inherit}
body.evjf-bdm .evjf-act .evjf-tarif .evjf-duree{opacity:.8}
/* bouton « Voir la soirée » : le seul lien de la fiche est le nom ; ce faux bouton lui transmet le clic */
body.evjf-bdm .evjf-btn[data-t]::before{content:attr(data-t)}
body.evjf-bdm .evjf-fiche .evjf-nom a{color:inherit; text-decoration:none}
body.evjf-bdm .evjf-fiche .evjf-nom a:hover{text-decoration:underline; text-decoration-color:var(--bleu); text-underline-offset:5px}
/* hébergements : le titre Divi est enveloppé d'un blockquote (filet bleu de Divi retiré) */
body.evjf-bdm .evjf-page blockquote{margin:0; padding:0; border:0; font-style:normal; background:none}
/* titre visuel de la bande « par envie » : texte en CSS, hors index */
body.evjf-bdm .evjf-titre-visuel::before{content:"Toutes les activités EVJF à Deauville, "}
body.evjf-bdm .evjf-titre-visuel::after{content:"par envie"; font-style:italic}
/* ancre « Voir les 50 activités » : la barre collante ne doit pas recouvrir le titre */
body.evjf-bdm #evjf-top50{scroll-margin-top:110px}
/* liste des idées du Top 10 : paragraphes complets du site (la maquette n'en montrait qu'un extrait) */
body.evjf-bdm .evjf-top10 .evjf-idee p{max-width:none}
/* packs : contenus détaillés saisis dans Divi (classes du README) */
body.evjf-bdm .evjf-pack .evjf-pack-prix{margin:10px 0 0; font-size:13px; letter-spacing:.08em; text-transform:uppercase; color:var(--marine); font-weight:500; line-height:1.3}
body.evjf-bdm .evjf-pack .evjf-pack-prix b{display:block; font-family:var(--display); font-weight:400; font-size:34px; letter-spacing:0; text-transform:none; line-height:1; margin-bottom:4px}
body.evjf-bdm .evjf-pack .evjf-pack-prix small{display:block; font-size:13px; letter-spacing:.04em; text-transform:none; color:var(--gris); font-weight:400; margin-top:2px}
body.evjf-bdm .evjf-pack .evjf-pack-combo{font-family:var(--sans); font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--gris); margin:14px 0 6px}
body.evjf-bdm .evjf-pack .evjf-pack-inclus{list-style:none; margin:0; padding:0}
body.evjf-bdm .evjf-pack .evjf-pack-inclus li{display:flex; justify-content:space-between; align-items:baseline; gap:10px; padding:9px 0 9px 22px; border-top:1px solid var(--filet2); font-size:14.5px; line-height:1.35; color:var(--texte); position:relative}
body.evjf-bdm .evjf-pack .evjf-pack-inclus li::before{content:""; position:absolute; left:0; top:12px; width:14px; height:14px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%231F3A54' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 8.8c1.6 1.4 2.6 2.6 3.4 4 2-4 4.6-7 7.6-9.6'/%3E%3C/svg%3E") center/contain no-repeat}
body.evjf-bdm .evjf-pack .evjf-pack-inclus li span{flex:none; font-size:13px; letter-spacing:.06em; text-transform:uppercase; color:var(--gris)}
body.evjf-bdm .evjf-pack > img{object-position:50% 0}
body.evjf-bdm .evjf-pack p{max-width:none}
/* vidéo de la page agence (module Code Divi) : même façade que l'accueil, sous le texte de la carte */
body.evjf-bdm .evjf-agence .evjf-facade{margin-top:44px}
/* stickers : plus d'ombre portée (mêmes réglages que la maquette validée) */
body.evjf-bdm .evjf-doodle{filter:none}
@media (prefers-reduced-motion:reduce){ body.evjf-bdm *{transition:none!important; animation:none!important} }

/* ---------- raccords après le premier aperçu ---------- */
/* descriptions des fiches : repliées à 5 lignes, bouton « Lire la suite » (libellé en CSS) */
body.evjf-bdm .evjf-desc.evjf-clamp{display:-webkit-box; -webkit-line-clamp:5; -webkit-box-orient:vertical; overflow:hidden}
body.evjf-bdm .evjf-desc.evjf-clamp--ouvert{display:block; -webkit-line-clamp:none; overflow:visible}
body.evjf-bdm .evjf-desc p{margin:0; max-width:none} body.evjf-bdm .evjf-desc p + p{margin-top:8px}
body.evjf-bdm .evjf-suite{align-self:flex-start; border:0; background:none; padding:0; margin:-2px 0 0; font-family:var(--sans); font-size:11.5px; letter-spacing:.14em; text-transform:uppercase; font-weight:600; color:var(--marine); cursor:pointer; border-bottom:1.5px solid rgba(31,58,84,.45); line-height:1.6}
body.evjf-bdm .evjf-suite::before{content:attr(data-t)}
body.evjf-bdm .evjf-suite:hover{border-bottom-color:var(--marine)}
/* titres saisis en capitales : affichés en bas de casse, première lettre en capitale (texte inchangé) */
body.evjf-bdm .evjf-maj{display:inline-block; text-transform:lowercase}
body.evjf-bdm .evjf-maj::first-letter{text-transform:uppercase}
/* bouton « Voir les N autres activités » sous les 6 premières fiches */
body.evjf-bdm .evjf-act-more{text-align:center; margin-top:40px}
body.evjf-bdm .evjf-act-bouton{cursor:pointer}
/* onglets du classeur des soirées : libellé en CSS (le nom de la soirée reste le lien de la fiche) */
body.evjf-bdm .evjf-onglets [role=tab]::before{content:attr(data-t)}
body.evjf-bdm .evjf-btn--faux{cursor:pointer}
/* accroches du site mises en <em> par Divi : rendues en romain sous les titres (la balise reste) */
body.evjf-bdm .evjf-classeur > .evjf-lead em, body.evjf-bdm #evjf-packs .evjf-lead em, body.evjf-bdm #evjf-hebergements .evjf-deux > div > p em{font-style:normal}
/* bloc d'avis : étoiles et mention de la source en CSS, extrait replié */
body.evjf-bdm .evjf-avis .evjf-note{text-transform:lowercase}
body.evjf-bdm .evjf-avis .evjf-note::first-letter{text-transform:uppercase}
body.evjf-bdm .evjf-avis .evjf-etoiles::before{content:"★★★★★"}
body.evjf-bdm .evjf-avis .evjf-src::after{content:" · Publié sur Google"}
body.evjf-bdm .evjf-avis .evjf-src a{color:inherit; text-decoration:none; font-weight:600}
body.evjf-bdm .evjf-avis blockquote .evjf-extrait{display:-webkit-box; -webkit-line-clamp:5; -webkit-box-orient:vertical; overflow:hidden}
body.evjf-bdm .evjf-avis blockquote cite{display:block}
/* fil d'Ariane (Yoast) dans le héros de la page agence */
body.evjf-bdm .evjf-fil{font-family:var(--menu); font-size:11px; letter-spacing:.2em; text-transform:uppercase; color:rgba(255,255,255,.75); margin:0 0 16px}
body.evjf-bdm .evjf-fil a{color:#fff; text-decoration:none}
body.evjf-bdm .evjf-fil a:hover{text-decoration:underline; text-underline-offset:4px}
body.evjf-bdm .evjf-hero--agence h1.evjf-entry-title{display:block}
/* vidéo lancée : même cadre, même format 16/9, le lecteur remplace la vignette (le bouton de lecture et l'invitation disparaissent) */
body.evjf-bdm .evjf-facade--lue{cursor:default; display:inline-block; width:820px; max-width:100%; vertical-align:top}
body.evjf-bdm .evjf-facade--lue::before, body.evjf-bdm .evjf-facade--lue::after, body.evjf-bdm .evjf-facade--lue .evjf-invite{display:none}
body.evjf-bdm .evjf-facade .evjf-clip iframe{display:block; width:100%; height:100%; border:0; background:#000}
/* ---------- version mobile (11 sept.) : raccords propres au thème ---------- */
/* Top 50 compact (vignette à gauche) : le surtitre n'a plus de place, la description se replie à 4 lignes */
@media (max-width:600px){
  body.evjf-bdm .evjf-act .evjf-libelle{display:none}
  body.evjf-bdm .evjf-desc.evjf-clamp{-webkit-line-clamp:4}
  body.evjf-bdm .evjf-avis blockquote .evjf-extrait{-webkit-line-clamp:4}
}

/* ---------- 2.2.0 : pages intérieures (fiche, offres, EVG, avis, devis, blog, article, archive) ---------- */
/* titre GeneratePress remis en sur-titre dans le héros (GeneratePress le masque en ligne sur les pages) */
body.evjf-bdm .evjf-page .evjf-sur, body.evjf-bdm .evjf-page h1.entry-title.evjf-sur{display:block}
/* méta GeneratePress (date, auteur) : la date de mise à jour reste masquée comme sur le site */
body.evjf-bdm .evjf-meta-article .updated:not(.published){display:none}
body.evjf-bdm .evjf-meta-article .posted-on, body.evjf-bdm .evjf-meta-article .byline{display:inline}
/* libellés en CSS des pages intérieures */
body.evjf-bdm .evjf-somm .evjf-titre::before{content:attr(data-t)}
body.evjf-bdm .evjf-suite::before{content:attr(data-t)}
body.evjf-bdm .evjf-avis-carte .evjf-srcg::before{content:attr(data-t)}
body.evjf-bdm .evjf-note-bloc .evjf-google::before{content:attr(data-t)}
/* cadres de lecture : les figures Divi (liens autour des images) restent des blocs */
body.evjf-bdm .evjf-lecture .evjf-plate > a{display:block}
body.evjf-bdm .evjf-lecture .evjf-plate > a > img, body.evjf-bdm .evjf-lecture .evjf-plate > img{aspect-ratio:3/2; width:100%; object-fit:cover; display:block}
/* témoignage : les nœuds du site gardent leurs balises */
body.evjf-bdm .evjf-temoin .evjf-meta{font-size:13px; color:var(--gris); margin:4px 0 0}
body.evjf-bdm .evjf-temoin cite span{font-style:normal}
/* sections de fin de page : le module Blog Divi et les compteurs n'ont plus leurs styles Divi */
body.evjf-bdm .evjf-articles .evjf-titre a{color:var(--marine); text-decoration:none}
body.evjf-bdm .evjf-articles .evjf-meta a{color:inherit; text-decoration:none}
/* sommaire LuckyWP du site réutilisé dans l'encadré de lecture (styles du plugin neutralisés) */
body.evjf-bdm .evjf-somm--site .lwptoc{margin:0} body.evjf-bdm .evjf-somm--site .lwptoc_i{background:transparent; border:0; padding:0; box-shadow:none; max-width:none; width:auto}
body.evjf-bdm .evjf-somm--site .lwptoc_header{font-family:var(--display); font-size:24px; color:var(--marine); padding:0 0 10px; border:0}
body.evjf-bdm .evjf-somm--site .lwptoc_toggle{font-family:var(--sans); font-size:11px; letter-spacing:.14em; text-transform:uppercase}
body.evjf-bdm .evjf-somm--site .lwptoc_items{font-size:13.5px} body.evjf-bdm .evjf-somm--site .lwptoc_item{border-top:1px solid var(--filet2); padding:9px 0}
body.evjf-bdm .evjf-somm--site .lwptoc_item a{color:var(--marine); text-decoration:none; display:block} body.evjf-bdm .evjf-somm--site .lwptoc_item a:hover{text-decoration:underline; text-underline-offset:3px}
body.evjf-bdm .evjf-somm--site .lwptoc_item_number{color:var(--bleu); font-family:var(--display); margin-right:6px}
body.evjf-bdm .evjf-somm--site .lwptoc_itemWrap .lwptoc_items .lwptoc_items{padding-left:14px} body.evjf-bdm .evjf-somm--site .lwptoc_items .lwptoc_items .lwptoc_item{border:0; padding:4px 0}
/* titres GeneratePress déplacés dans la page reconstruite : GeneratePress les masque en ligne sur les pages et articles */
body.evjf-bdm .evjf-page .entry-title{display:block}

/* ---------- images du site introuvables (404) et fils d'Ariane des héros clairs (2.2.0) ---------- */
/* une image du site qui ne se charge pas est masquée (elle reste dans le document) et remplacée par la tuile décorative */
body.evjf-bdm .evjf-page img.evjf-img-ko{display:none !important}
:where(body.evjf-bdm .evjf-page) .evjf-sansphoto--ko{display:block; width:100%; aspect-ratio:4/3; background:var(--poudre); background-image:var(--dood); background-repeat:no-repeat; background-position:50% 50%; background-size:72px auto}
/* da.css écrit le fil d'Ariane en blanc pour les héros photo (accueil, agence, offres) ; sur le héros court, fond crème */
body.evjf-bdm .evjf-hero--petit .evjf-fil{color:var(--gris)}
body.evjf-bdm .evjf-hero--petit .evjf-fil a{color:var(--marine)}

/* ---------- faux gras des titres (2.2.1) ----------
   Instrument Serif n'a qu'une graisse : un <strong> du site dans un titre fait fabriquer un gras synthétique
   par le navigateur (lettres épaissies et baveuses). La balise reste dans le contenu, seule sa graisse
   est ramenée à celle du titre ; en texte courant, DM Sans a un vrai gras, qui n'est pas touché. */
body.evjf-bdm .evjf-page :is(h1,h2,h3,h4,h5,h6) :is(strong,b),
body.evjf-bdm .evjf-page :is(.evjf-lead,.evjf-titre,.evjf-nom,.evjf-acc) :is(strong,b),
body.evjf-bdm .evjf-page .lwptoc_header, body.evjf-bdm .evjf-page .lwptoc_header :is(strong,b){font-weight:inherit}
body.evjf-bdm .evjf-page :is(h1,h2,h3,h4,h5,h6){font-synthesis-weight:none}

/* ---------- polaroïd du héros de l'accueil (2.2.6) : légende manuscrite lue dans data-t (posée par accueil.js), plus en dur ---------- */
body.evjf-bdm .evjf-pola--hero .evjf-accroche[data-t]::before{content:attr(data-t)}

/* ---------- bandeau cookies (2.2.4) ----------
   Extension CookieYes (cookie-law-info) : son script impose en ligne un fond blanc, du Trebuchet et un bouton brun-rouge
   (#9c5454) ; on reprend les couleurs et les polices du site (d'où les !important, seuls capables de battre le style en ligne). */
body.evjf-bdm #cookie-law-info-bar{background:var(--lumineux) !important; color:var(--marine) !important; font-family:var(--sans) !important; font-size:14px !important; line-height:1.55 !important; padding:16px 20px !important; border-top:1px solid var(--filet) !important; box-shadow:0 -8px 24px rgba(31,58,84,.08) !important}
body.evjf-bdm #cookie-law-info-bar a.cli-plugin-main-link{color:var(--marine) !important; font-weight:500; text-decoration:underline; text-underline-offset:3px}
body.evjf-bdm #cookie-law-info-bar .cli-plugin-button{background:var(--marine) !important; color:var(--lumineux) !important; border:1.5px solid var(--marine) !important; border-radius:4px !important; font-family:var(--sans) !important; font-size:12px !important; font-weight:600 !important; letter-spacing:.1em !important; text-transform:uppercase; line-height:1.3 !important; padding:9px 22px !important; margin:6px 0 0 12px !important; cursor:pointer; transition:background-color .3s ease, border-color .3s ease}
body.evjf-bdm #cookie-law-info-bar .cli-plugin-button:hover, body.evjf-bdm #cookie-law-info-bar .cli-plugin-button:focus-visible{background:#2d4f71 !important; border-color:#2d4f71 !important}

/* ---------- barre d'action mobile (2.2.4, comme convention-deauville.com) ----------
   Fixe en bas de l'écran sous 820 px : « Appeler » en contour clair, « Demander un devis » en plein crème, sur un aplat marine.
   Elle remplace le bouton flottant « Appelez nous ! » ; au-dessus de 820 px, le bouton flottant reste. Posée par da.js (barreMobile). */
.evjf-barre{display:none}
@media (max-width:820px){
  body.evjf-bdm .evjf-barre{display:flex; align-items:stretch; gap:12px; position:fixed; left:0; right:0; bottom:0; z-index:45; box-sizing:border-box; padding:12px 16px max(12px, env(safe-area-inset-bottom)); background:var(--marine); border-top:1px solid rgba(255,253,250,.16)}
  body.evjf-bdm .evjf-barre-btn{display:inline-flex; align-items:center; justify-content:center; gap:10px; min-width:0; min-height:50px; padding:0 20px; box-sizing:border-box; border-radius:999px; font-family:var(--sans); font-size:12.5px; font-weight:600; letter-spacing:.09em; text-transform:uppercase; line-height:1.15; white-space:nowrap; text-decoration:none; -webkit-tap-highlight-color:transparent; transition:background-color .25s ease, border-color .25s ease}
  body.evjf-bdm .evjf-barre-btn::after{content:attr(data-t)}
  body.evjf-bdm .evjf-barre-btn svg{width:16px; height:16px; flex:none}
  body.evjf-bdm .evjf-barre-btn--tel{flex:0 1 auto; color:var(--lumineux); background:rgba(255,253,250,.06); border:1px solid rgba(255,253,250,.45)}
  body.evjf-bdm .evjf-barre-btn--tel:active{background:rgba(255,253,250,.18); border-color:rgba(255,253,250,.85)}
  body.evjf-bdm .evjf-barre-btn--devis{flex:1 1 auto; color:var(--marine); background:var(--lumineux); border:1px solid var(--lumineux)}
  body.evjf-bdm .evjf-barre-btn--devis:active{background:var(--poudre); border-color:var(--poudre)}
  body.evjf-bdm .evjf-barre-btn:focus-visible{outline:2px solid var(--poudre); outline-offset:3px}
  body.evjf-bdm .evjf-tel-flottant{display:none !important}
  /* le bas de la page (pied) ne doit pas finir sous la barre ; le bandeau cookies se pose juste au-dessus d'elle */
  body.evjf-bdm.evjf-a-barre{padding-bottom:calc(63px + max(12px, env(safe-area-inset-bottom)))}
  body.evjf-bdm.evjf-a-barre #cookie-law-info-bar{bottom:calc(63px + max(12px, env(safe-area-inset-bottom))) !important}
}
@media (max-width:370px){
  body.evjf-bdm .evjf-barre{gap:10px; padding-left:12px; padding-right:12px}
  body.evjf-bdm .evjf-barre-btn{padding:0 14px; gap:8px; font-size:11.5px; letter-spacing:.06em}
}
