/* ==========================================================================
   Refonte La-Seyne-Tourisme — identité & page d'accueil (d'après la maquette)
   Palette bleu marine & blanc · Cormorant Garamond + Jost.
   ========================================================================== */

:root{
  --lsm-paper:#ffffff; --lsm-tint:#eef2f7; --lsm-ink:#15233d; --lsm-ink-2:#2b3a57;
  --lsm-muted:#6a768e; --lsm-line:#e3e8f0; --lsm-navy:#0d1a30; --lsm-gold:#b4935c;
  --lsm-font-display:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --lsm-font-sans:"Jost",system-ui,-apple-system,"Segoe UI",sans-serif;
  /* alias pour le plugin météo */
  --ink:var(--lsm-ink); --muted:var(--lsm-muted); --line:var(--lsm-line);
  --tint:var(--lsm-tint); --gold:var(--lsm-gold); --paper:var(--lsm-paper);
  --font-display:var(--lsm-font-display); --font-sans:var(--lsm-font-sans);
}

/* ---------- éléments communs ---------- */
.lsm-eyebrow{font-family:var(--lsm-font-sans)!important;font-size:.72rem!important;font-weight:500!important;
  letter-spacing:.3em!important;text-transform:uppercase!important;color:var(--lsm-muted)!important;margin:0 0 .4rem!important}
.lsm-rule{width:46px;height:1px;background:var(--lsm-gold);margin:0 auto 20px}
.lsm-section .lsm-rule{margin-bottom:18px}

/* En-têtes de section (titres h2 en serif) */
.lsm-section h2,.lsm-intro h2,.lsm-histoire h2,.lsm-news h2,.lsm-split h2{
  font-family:var(--lsm-font-display);font-weight:400;line-height:1.06;letter-spacing:.005em;
  font-size:clamp(2.1rem,5vw,3.4rem);margin:.3rem 0 0}

/* Espacements de section */
.lsm-section{padding-block:clamp(50px,8vw,96px)}
.lsm-intro{padding-block:clamp(48px,7vw,84px)}
.lsm-lead{color:var(--lsm-muted);font-weight:300;font-size:1.08rem;margin-top:18px}

/* ---------- HERO ---------- */
.lsm-hero{align-items:center}
.lsm-hero .wp-block-cover__inner-container{max-width:940px;margin-inline:auto;padding:0 20px}
.lsm-hero .lsm-eyebrow{color:rgba(255,255,255,.88)!important}
.lsm-hero-title{font-family:var(--lsm-font-display)!important;font-weight:300!important;color:#fff!important;
  font-size:clamp(2.2rem,6vw,5rem)!important;line-height:1.04!important;letter-spacing:.01em;
  margin:.4rem 0 0!important;text-shadow:0 2px 30px rgba(13,26,48,.35);overflow-wrap:break-word}
.lsm-hero-sub{color:rgba(255,255,255,.92)!important;font-weight:300;font-size:clamp(1rem,2.4vw,1.2rem);
  max-width:46ch;margin:1.2rem auto 0!important}

/* ---------- TUILES (cover) ---------- */
.lsm-tiles{gap:8px!important}
.lsm-tiles.wp-block-columns{flex-wrap:wrap}
.lsm-tiles .wp-block-column{margin:0!important}
.lsm-tile{border-radius:0;overflow:hidden}
.lsm-tile.wp-block-cover{justify-content:flex-end;padding:0}
.lsm-tile .wp-block-cover__inner-container{width:100%;padding:24px 22px}
.lsm-tile .wp-block-cover__image-background{object-fit:cover;transition:transform .6s ease}
.lsm-tile:hover .wp-block-cover__image-background{transform:scale(1.05)}
.lsm-tile-title{font-family:var(--lsm-font-sans)!important;color:#fff!important;font-weight:500!important;
  font-size:1.1rem!important;letter-spacing:.07em!important;text-transform:uppercase!important;line-height:1.25;margin:0!important;
  position:relative;padding-top:18px}
.lsm-tile-title::before{content:"";position:absolute;top:0;left:0;width:34px;height:1px;background:rgba(255,255,255,.85);transition:width .3s}
.lsm-tile:hover .lsm-tile-title::before{width:54px}
.lsm-tile .lsm-more{color:rgba(255,255,255,.82)!important;margin:.6rem 0 0!important}

/* "En savoir plus" / liens d'action */
.lsm-more{font-size:.68rem!important;font-weight:500;letter-spacing:.24em;text-transform:uppercase}
.lsm-more a{color:inherit;text-decoration:none;border-bottom:1px solid var(--lsm-gold);padding-bottom:3px}

/* ---------- MÉTÉO ---------- */
.lsm-wxband{padding:0!important}
.lsm-wxband .mlsm-band{background:var(--lsm-tint)}

/* ---------- GASTRONOMIE (media-text) ---------- */
.lsm-split{align-items:stretch!important}
.lsm-split .wp-block-media-text__media{min-height:340px}
.lsm-split .wp-block-media-text__media img{width:100%;height:100%;object-fit:cover}
.lsm-split .wp-block-media-text__content{padding:clamp(32px,6vw,72px)!important}
.lsm-split .lsm-eyebrow{color:var(--lsm-gold)!important}
.lsm-split h2{margin-bottom:16px}
.lsm-split p{color:var(--lsm-ink-2);font-weight:300}

/* ---------- HISTOIRE ---------- */
.lsm-histoire{background:var(--lsm-navy);color:#c6d2e2;padding-block:clamp(54px,8vw,96px)!important}
.lsm-histoire .lsm-eyebrow{color:rgba(255,255,255,.6)!important}
.lsm-histoire h2{color:#fff!important}
.lsm-hcols{margin-top:26px;gap:46px!important}
.lsm-histoire p{color:#c6d2e2;font-weight:300}

/* ---------- ACTUS (latest posts) ---------- */
.lsm-posts{margin-top:10px!important}
.lsm-posts.wp-block-latest-posts__list{gap:34px}
.lsm-posts li{list-style:none}
.lsm-posts .wp-block-latest-posts__featured-image img{width:100%;aspect-ratio:3/2;object-fit:cover}
.lsm-posts .wp-block-latest-posts__post-title{font-family:var(--lsm-font-display);font-size:1.5rem;
  font-weight:500;line-height:1.2;display:block;margin:10px 0 6px;color:var(--lsm-ink)}
.lsm-posts .wp-block-latest-posts__post-date{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--lsm-muted)}
.lsm-posts .wp-block-latest-posts__post-excerpt{color:var(--lsm-muted);font-weight:300;font-size:.95rem}

/* ---------- NEWSLETTER ---------- */
.lsm-news{background:var(--lsm-navy);color:#fff;text-align:center;padding-block:clamp(50px,7vw,88px)!important}
.lsm-news .lsm-eyebrow{color:rgba(255,255,255,.7)!important}
.lsm-news h2{color:#fff!important}
.lsm-news p{color:rgba(255,255,255,.82)}

/* ---------- BOUTONS ---------- */
.lsm-btn .wp-block-button__link{background:var(--lsm-gold);color:#fff;border-radius:0;font-family:var(--lsm-font-sans);
  font-weight:500;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;padding:14px 28px}
.lsm-btn.is-style-outline .wp-block-button__link{background:transparent;border:1px solid var(--lsm-ink);color:var(--lsm-ink)}
.lsm-news .lsm-btn .wp-block-button__link{background:#fff;color:var(--lsm-navy)}

/* ==========================================================================
   Corrections de rendu (Kadence / blocs core)
   ========================================================================== */

/* Les images de "cover" doivent remplir toute la tuile (hero + tuiles). */
.lsm-hero .wp-block-cover__image-background,
.lsm-tile .wp-block-cover__image-background{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  max-width:none!important;object-fit:cover!important;border-radius:0!important;margin:0!important}

/* Sections pleine largeur : marge latérale + colonne centrée. */
.lsm-section{padding-inline:22px}
.lsm-section>*{max-width:1180px;margin-inline:auto!important}
.lsm-intro{padding-inline:22px}
.lsm-intro>*{max-width:760px;margin-inline:auto!important}
.lsm-histoire{padding-inline:22px}
.lsm-histoire>*{max-width:1080px;margin-inline:auto!important}
.lsm-news{padding-inline:22px}
.lsm-news>*{max-width:680px;margin-inline:auto!important}

/* Centrage des eyebrows/titres d'en-tête de section (sélecteurs descendants
   car Kadence ajoute un conteneur interne). */
.lsm-intro h2,.lsm-section h2.wp-block-heading,
.lsm-intro p.lsm-eyebrow,.lsm-section p.lsm-eyebrow,
.lsm-intro .lsm-lead,.lsm-news h2,.lsm-news p{text-align:center!important}
/* mais le texte des tuiles reste aligné à gauche */
.lsm-tile .lsm-tile-title,.lsm-tile .lsm-more{text-align:left!important}

/* La colonne ne limite pas la hauteur de la tuile. */
.lsm-tiles .wp-block-column{align-self:stretch}

/* HERO : texte centré + fond assombri pour la lisibilité. */
.lsm-hero .wp-block-cover__inner-container{max-width:min(960px,100%)!important;margin-inline:auto!important;
  text-align:center!important;padding-inline:20px}
.lsm-hero .lsm-eyebrow,.lsm-hero .lsm-hero-title,.lsm-hero .lsm-hero-sub{text-align:center!important}
.lsm-hero .wp-block-cover__background{
  background:linear-gradient(180deg,rgba(13,26,48,.5) 0%,rgba(13,26,48,.28) 42%,rgba(13,26,48,.72) 100%)!important}
.lsm-hero-sub{text-shadow:0 1px 16px rgba(13,26,48,.5);margin-inline:auto!important}

/* ---------- Responsive ---------- */
@media (max-width:781px){
  .lsm-tiles .wp-block-column{flex-basis:calc(50% - 4px)!important}
}
@media (max-width:600px){
  .lsm-tiles .wp-block-column{flex-basis:100%!important}
  .lsm-hcols{gap:0!important}
}

/* ==========================================================================
   Peaufinage (lisibilité titres, bande météo, newsletter)
   ========================================================================== */

/* HERO : sous-titre nettement plus lisible */
.lsm-hero .wp-block-cover__background{
  background:linear-gradient(180deg,rgba(13,26,48,.55) 0%,rgba(13,26,48,.3) 38%,rgba(13,26,48,.8) 100%)!important}
.lsm-hero-sub{color:#fff!important;font-weight:400;max-width:48ch;
  text-shadow:0 1px 3px rgba(13,26,48,.9),0 2px 18px rgba(13,26,48,.85)!important}
.lsm-hero .wp-block-cover__inner-container{padding-block:40px}

/* BANDE MÉTÉO : vraie bande identifiable */
.lsm-wxband{background:var(--lsm-tint);border-top:1px solid var(--lsm-line);border-bottom:1px solid var(--lsm-line)}
.lsm-wxband .mlsm-band{background:transparent;padding-block:clamp(26px,4vw,38px)}

/* Fonds bleu marine des sections (Kadence ne les applique pas via la classe seule) */
.wp-block-group.lsm-news,.wp-block-group.lsm-histoire{background:var(--lsm-navy)!important}

/* NEWSLETTER : contraste + formulaire */
.lsm-news h2{color:#fff!important;font-weight:500!important;letter-spacing:.01em}
.lsm-news .lsm-eyebrow{color:rgba(255,255,255,.78)!important}
.lsm-news p{color:rgba(255,255,255,.85)}
.lsm-nform{display:flex;max-width:460px;margin:26px auto 0;border:1px solid rgba(255,255,255,.4)}
.lsm-nform input{flex:1;min-width:0;background:transparent;border:0;color:#fff;font:inherit;font-weight:300;padding:15px 18px}
.lsm-nform input::placeholder{color:rgba(255,255,255,.6)}
.lsm-nform input:focus{outline:none;background:rgba(255,255,255,.08)}
.lsm-nform button{background:#fff;color:var(--lsm-navy);border:0;font-family:var(--lsm-font-sans);
  font-weight:500;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;padding:0 24px;cursor:pointer}
.lsm-nform button:hover{background:var(--lsm-gold);color:#fff}
@media (max-width:560px){.lsm-nform{flex-direction:column}.lsm-nform button{padding:14px}}

/* ==========================================================================
   En-tête (header Kadence)
   ========================================================================== */
/* Logo à taille raisonnable */
.site-header .site-logo img,
.site-branding .custom-logo,
.custom-logo-link img{max-height:58px!important;width:auto!important}

/* Masque le titre texte du site (le logo le contient déjà) */
.site-header .site-title,
.site-branding .site-title,
.site-branding .site-description{display:none!important}

/* Typo du menu : plus fine, façon office de tourisme */
.header-navigation .menu-item a,
.header-navigation .menu a{font-family:var(--lsm-font-sans);font-weight:500;
  font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}

/* En-tête transparent (sur le hero de la home) : texte en blanc */
body.transparent-header .header-navigation .menu-item a,
body.transparent-header .header-navigation .menu a,
body.transparent-header .header-navigation .menu .dropdown-nav-toggle,
body.transparent-header .menu-toggle-open{color:#fff!important}
body.transparent-header .header-navigation .menu a:hover{color:#ffd9c6!important}

/* ==========================================================================
   Mise en page — passage « pro » (rythme, météo, histoire, boutons, actus)
   ========================================================================== */

/* Rythme vertical plus généreux et régulier entre les sections */
.lsm-section{padding-block:clamp(62px,9vw,112px)}
.lsm-intro{padding-block:clamp(58px,8vw,98px)}

/* Barre météo sous le hero : compacte, nette, bien séparée */
.lsm-wxband{border-top:0;border-bottom:1px solid var(--lsm-line)}
.lsm-wxband .mlsm-band{padding-block:22px;gap:12px 36px}
.lsm-wxband .mlsm-band .mlsm-temp{font-size:2.2rem}
.lsm-wxband .mlsm-band .mlsm-ico{font-size:1.6rem}
.lsm-wxband .mlsm-item .v{font-size:1.25rem}
.lsm-wxband .mlsm-sep{height:40px}

/* Histoire : texte nettement plus lisible */
.lsm-histoire p{color:#d7e0ec!important;line-height:1.78}
.lsm-hcols{gap:56px!important}

/* Vrais boutons (dorés), bien visibles */
.wp-block-button.lsm-btn .wp-block-button__link{
  background:var(--lsm-gold)!important;color:#fff!important;border:0!important;border-radius:2px!important;
  padding:15px 32px!important;font-family:var(--lsm-font-sans)!important;font-weight:500!important;
  font-size:.74rem!important;letter-spacing:.2em!important;text-transform:uppercase!important}
.lsm-news .wp-block-button.lsm-btn .wp-block-button__link{background:#fff!important;color:var(--lsm-navy)!important}

/* Actus : images homogènes + survol */
.lsm-posts .wp-block-latest-posts__featured-image{margin-bottom:16px;overflow:hidden;display:block}
.lsm-posts .wp-block-latest-posts__featured-image img{width:100%;aspect-ratio:3/2;object-fit:cover;
  transition:transform .5s ease}
.lsm-posts li:hover .wp-block-latest-posts__featured-image img{transform:scale(1.04)}
.lsm-posts .wp-block-latest-posts__post-title{margin-top:0}

/* Actus — cartes maison (fiables) */
.lsm-posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:12px}
.lsm-post{display:flex;flex-direction:column;text-decoration:none;color:inherit}
.lsm-post-img{display:block;aspect-ratio:3/2!important;height:auto!important;overflow:hidden;
  margin-bottom:16px;background:var(--lsm-tint)}
.lsm-post-img img{width:100%!important;height:100%!important;object-fit:cover!important;
  transition:transform .5s ease;display:block}
.lsm-post:hover .lsm-post-img img{transform:scale(1.04)}
.lsm-post-cat{font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--lsm-gold)}
.lsm-post-title{font-family:var(--lsm-font-display);font-size:1.45rem;font-weight:500;line-height:1.22;
  color:var(--lsm-ink);margin:7px 0 7px}
.lsm-post:hover .lsm-post-title{color:var(--lsm-sea,#13809c)}
.lsm-post-ex{color:var(--lsm-muted);font-weight:300;font-size:.95rem;line-height:1.6}
.lsm-post-date{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--lsm-muted);margin-top:12px}
@media (max-width:860px){.lsm-posts-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.lsm-posts-grid{grid-template-columns:1fr}}

/* ==========================================================================
   Séparation des blocs (alternance de fonds + tuiles espacées)
   ========================================================================== */
/* Une section sur deux sur fond bleu très clair → chaque bloc se détache
   (spécificité forcée car Kadence impose un fond transparent aux groupes) */
.wp-block-group.lsm-alt,.wp-block-media-text.lsm-alt{background:var(--lsm-sea-soft)!important}

/* Ligne de séparation en haut de chaque grande section, bien visible */
.lsm-wxband,.lsm-intro,.lsm-section,.lsm-split,.lsm-histoire,.lsm-news{
  border-top:1px solid #cad7e3!important}
.wp-block-group.lsm-histoire,.wp-block-group.lsm-news{border-top-color:rgba(255,255,255,.12)!important}

/* Tuiles plus espacées : elles se lisent comme des cartes distinctes */
.lsm-tiles{gap:18px!important}

/* Tuiles : cliquables + texte bien lisible sur les photos */
.lsm-tile{position:relative}
.lsm-tile-link{position:absolute;inset:0;z-index:4;display:block}
.lsm-tile .wp-block-cover__background{
  background:linear-gradient(180deg,rgba(13,26,48,0) 16%,rgba(13,26,48,.52) 55%,rgba(13,26,48,.92) 100%)!important}
.lsm-tile-title{text-shadow:0 1px 12px rgba(13,26,48,.9)!important}
.lsm-tile .lsm-more{color:#fff!important;font-size:.72rem!important;font-weight:600!important;
  letter-spacing:.18em!important;text-shadow:0 1px 8px rgba(13,26,48,.9);opacity:1!important}
.lsm-tile:hover .lsm-more{color:#ffd9c6!important}

/* ==========================================================================
   AIR / espacements — forcés car Kadence impose padding:0 aux sections
   ========================================================================== */
.lsm-intro,.lsm-section{padding-block:clamp(66px,8vw,112px)!important}
.lsm-histoire{padding-block:clamp(64px,8vw,104px)!important}
.lsm-news{padding-block:clamp(60px,7vw,96px)!important}
.lsm-wxband .mlsm-band{padding-block:24px!important}
.lsm-split .wp-block-media-text__content{padding:clamp(40px,6vw,80px)!important}

/* En-tête de section : air entre filet / eyebrow / titre / contenu */
.lsm-rule{margin:0 auto 22px!important}
.lsm-eyebrow{margin-bottom:16px!important}
.lsm-section h2.wp-block-heading,.lsm-intro h2,.lsm-news h2{margin-top:8px!important}
.lsm-intro .lsm-lead{margin-top:24px!important}
.lsm-tiles,.lsm-posts-grid{margin-top:clamp(38px,4vw,56px)!important}
.lsm-section .wp-block-buttons{margin-top:38px!important}

/* ==========================================================================
   Météo compacte dans l'en-tête (à la Saint-Tropez)
   ========================================================================== */
/* Pastille météo bien visible, placée dans la zone droite de l'en-tête */
.site-header .mlsm-mini{display:inline-flex;align-items:center;gap:9px;white-space:nowrap;
  font-family:var(--lsm-font-sans);font-size:.9rem;font-weight:600;letter-spacing:.02em;
  padding:8px 15px;border-radius:999px;background:var(--lsm-tint);border:1px solid var(--lsm-line);
  color:var(--lsm-ink)}
.site-header .mlsm-mini-ico{font-size:1.15rem}
.site-header .mlsm-mini-t{font-weight:700}
.site-header .mlsm-mini-sea{font-weight:600;font-size:.8rem;padding-left:9px;
  color:var(--lsm-gold);border-left:1px solid var(--lsm-line)}
/* en-tête transparent (sur le hero) : pastille claire translucide, texte blanc */
body.transparent-header .site-header .mlsm-mini{background:rgba(255,255,255,.16);
  border-color:rgba(255,255,255,.4);color:#fff;backdrop-filter:blur(4px)}
body.transparent-header .site-header .mlsm-mini-sea{color:#ffe0cc;border-left-color:rgba(255,255,255,.4)}
/* La pastille reste sur la MÊME ligne que le menu, poussée tout à droite */
.header-navigation .menu{flex-wrap:nowrap!important}
.lsm-menu-weather{margin-left:18px!important;display:flex!important;align-items:center}
/* sur mobile (menu en burger), on masque la pastille du menu déroulant */
@media (max-width:1024px){
  .lsm-menu-weather{display:none!important}
}

/* Météo mobile : affichée en haut au centre de l'en-tête (hors menu) */
.lsm-wx-mobile{display:none}
@media (max-width:1024px){
  .lsm-wx-mobile{display:block;position:absolute;top:22px;right:62px;left:auto;z-index:130}
  .lsm-wx-mobile .mlsm-mini{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;
    font-family:var(--lsm-font-sans);font-size:.8rem;font-weight:600;letter-spacing:.02em;
    padding:6px 13px;border-radius:999px;background:var(--lsm-tint);border:1px solid var(--lsm-line);color:var(--lsm-ink)}
  .lsm-wx-mobile .mlsm-mini-ico{font-size:1rem}
  .lsm-wx-mobile .mlsm-mini-sea{display:none}
  body.transparent-header .lsm-wx-mobile .mlsm-mini{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.45);color:#fff;backdrop-filter:blur(4px)}
  body.transparent-header .lsm-wx-mobile .mlsm-mini-sea{color:#ffe0cc;border-left-color:rgba(255,255,255,.45)}
}

/* Mobile : le titre du hero ne doit pas déborder */
@media (max-width:600px){
  .lsm-hero .wp-block-cover__inner-container{max-width:100%!important;padding-inline:16px!important}
  .lsm-hero-title{font-size:1.75rem!important;line-height:1.16!important;
    white-space:normal!important;overflow-wrap:break-word!important}
  .lsm-hero{min-height:clamp(460px,78vh,640px)!important}
}

/* Marge latérale FORCÉE sur toutes les sections pleine largeur
   (Kadence met padding:0 → sinon le texte touche les bords, surtout l'Histoire) */
.lsm-intro,.lsm-section,.lsm-histoire,.lsm-news{
  padding-left:max(24px,env(safe-area-inset-left,0px))!important;
  padding-right:max(24px,env(safe-area-inset-right,0px))!important}

/* Mobile : tuiles moins hautes (moins de scroll) + marges resserrées */
@media (max-width:767px){
  .lsm-tile.wp-block-cover{aspect-ratio:auto!important;min-height:280px!important}
  .lsm-intro,.lsm-section,.lsm-histoire,.lsm-news{
    padding-left:18px!important;padding-right:18px!important}
  .lsm-split .wp-block-media-text__content{padding:34px 18px!important}
  /* titres de tuiles : plus petits pour ne pas être rognés */
  .lsm-tile-title{font-size:.95rem!important;letter-spacing:.04em!important;line-height:1.2}
  .lsm-tile .wp-block-cover__inner-container{padding:20px 18px!important}
}

/* ==========================================================================
   Histoire : fond NAVY (ancre sombre riche, casse la monotonie claire)
   ========================================================================== */
.wp-block-group.lsm-histoire{background:var(--lsm-navy)!important;
  border-top-color:rgba(255,255,255,.12)!important}
.lsm-histoire .lsm-eyebrow{color:var(--lsm-gold)!important}
.lsm-histoire h2{color:#fff!important}
.lsm-histoire p{color:#d7e0ec!important}
/* Actus sur fond teinté → on conserve l'alternance des blocs */
.lsm-section:has(.lsm-posts-grid){background:var(--lsm-tint)!important}

/* ==========================================================================
   Pied de page (bleu marine, 4 colonnes)
   ========================================================================== */
.site-footer{background:var(--lsm-navy)!important}
.site-footer .site-footer-row-container-inner,
.site-footer .site-footer-row,
.site-footer .site-footer-wrap{background:transparent!important}
.lsm-footer{max-width:1180px;margin:0 auto;text-align:left;
  padding-left:max(22px,env(safe-area-inset-left,0px));padding-right:max(22px,env(safe-area-inset-right,0px))}
.lsm-footer-cols{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:32px;
  padding:14px 0 38px;border-bottom:1px solid rgba(255,255,255,.12)}
.lsm-f-brand{font-family:var(--lsm-font-display);font-size:1.65rem;color:#fff;letter-spacing:.02em;line-height:1.1}
.lsm-f-tag{color:#9fb0c6;font-size:.9rem;font-weight:300;max-width:34ch;margin:10px 0 0;line-height:1.65}
.lsm-f-h{color:#fff;font-family:var(--lsm-font-sans);font-size:.7rem;font-weight:600;letter-spacing:.2em;
  text-transform:uppercase;margin:0 0 14px}
.lsm-f-links{list-style:none!important;margin:0!important;padding:0!important}
.lsm-f-links li{margin:0!important;list-style:none!important}
.lsm-f-links a{color:#b7c6d8;font-size:.92rem;font-weight:300;display:inline-block;padding:5px 0;text-decoration:none!important}
.lsm-f-links a:hover{color:#fff}
.lsm-footer a{text-decoration:none!important}

/* ==========================================================================
   Templates intérieurs — cadre commun à TOUTES les pages (titre, typo, liens)
   ========================================================================== */
/* Bannière de titre : fond bleu marine, titre serif blanc (toutes les variantes) */
.entry-hero{background:var(--lsm-navy)!important}
.entry-hero .entry-hero-container-inner{background:transparent!important;padding-block:clamp(52px,7vw,92px)!important}
.entry-hero .hero-section-overlay{display:none!important}
.entry-hero .entry-title,.entry-hero .archive-title{font-family:var(--lsm-font-display)!important;
  font-weight:500!important;color:#fff!important;font-size:clamp(2.1rem,5vw,3.6rem)!important;
  letter-spacing:.01em;line-height:1.1}
.entry-hero .entry-meta,.entry-hero .entry-meta a,.entry-hero .entry-meta .meta-label,
.entry-hero .archive-description,.entry-hero p{color:#aebfd3!important}

/* Description de catégorie/archive : lisible sur le marine + mise en forme */
.entry-hero .archive-description{max-width:760px;margin-left:auto!important;margin-right:auto!important}
.entry-hero .archive-description,.entry-hero .archive-description *{color:#d6e2f0!important}
.entry-hero .archive-description h1,.entry-hero .archive-description h2,
.entry-hero .archive-description h3,.entry-hero .archive-description strong{
  color:#ffffff!important;font-family:var(--lsm-font-display)!important;font-weight:400!important;
  font-size:1.35rem!important;line-height:1.3;display:block;margin:6px 0 14px}
.entry-hero .archive-description p{font-weight:300;font-size:.96rem;line-height:1.7;margin:0 0 .8em}

/* ==========================================================================
   Pages migrées (fiches : plages, forts…)
   ========================================================================== */
.entry-content .lsm-lead{font-size:1.15rem!important;color:var(--lsm-ink-2)!important;font-weight:300;
  line-height:1.7;margin-top:14px}
.lsm-highlights{padding-block:clamp(26px,4vw,46px)}
.lsm-hl{text-align:center;padding:0 10px}
.lsm-hl-ico{font-size:1.9rem;margin:0!important;line-height:1}
.lsm-hl-t{font-family:var(--lsm-font-sans)!important;font-size:.8rem!important;font-weight:600!important;
  letter-spacing:.13em!important;text-transform:uppercase!important;color:var(--lsm-ink)!important;margin:10px 0 6px!important}
.lsm-hl-p{color:var(--lsm-muted)!important;font-size:.9rem!important;font-weight:300;margin:0!important;line-height:1.55}
.lsm-prose h3{margin-top:1.7em}
.lsm-prose p{color:var(--lsm-ink-2);line-height:1.8}
.lsm-credit{font-size:.8rem!important;color:var(--lsm-muted)!important;font-style:italic;margin-top:2em!important}
.lsm-gallery{margin-block:clamp(26px,4vw,46px)}

/* Fil d'Ariane */
.lsm-breadcrumb{font-size:.8rem;color:var(--lsm-muted);letter-spacing:.02em;margin:0 0 28px;
  padding-bottom:14px;border-bottom:1px solid var(--lsm-line);line-height:1.6}
.lsm-breadcrumb a{color:var(--lsm-muted);text-decoration:none}
.lsm-breadcrumb a:hover{color:var(--lsm-ink);text-decoration:underline}
.lsm-breadcrumb .current-item{color:var(--lsm-ink);font-weight:500}
.lsm-breadcrumb .lsm-bc-sep{color:var(--lsm-muted);opacity:.6;margin:0 2px}

/* Pages encore en Divi : titres de contenu harmonisés avec les fiches.
   - on masque le H1 du contenu (doublon de la bannière)
   - les H2/H3 bruts adoptent le style « sous-titre » (sans-serif + liseré doré) */
.lsm-legacy .entry-content h1:first-of-type{display:none!important}
.lsm-legacy .entry-content h2,
.lsm-legacy .entry-content h3{
  font-family:var(--lsm-font-sans)!important;font-weight:600!important;text-transform:none!important;
  font-size:1.2rem!important;letter-spacing:.01em!important;line-height:1.35!important;color:var(--lsm-ink)!important;
  margin:1.9em 0 .4em!important;padding-left:14px!important;border-left:3px solid var(--lsm-gold)!important}
.lsm-legacy .entry-content h3{font-size:1.05rem!important;border-left-color:var(--lsm-sea)!important}

/* Typographie de la charte dans le contenu */
.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,
.entry-title{font-family:var(--lsm-font-display)!important;font-weight:500!important}
.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4{color:var(--lsm-ink)}
.content-container,.entry-content{font-family:var(--lsm-font-sans)}
.entry-content a:not(.wp-block-button__link):not(.et_pb_button):not(.button):not(.lsm-book-btn):not(.lsm-deal-btn){color:#13809c}

/* En-tête de titre sur mobile */
@media (max-width:767px){
  .entry-hero .entry-hero-container-inner{padding-block:42px!important}
}

/* Champs de formulaire (Divi) : bordure visible, sinon ils sont invisibles.
   Sélecteur très spécifique pour battre le CSS inline de Divi. */
body .et_pb_contact_form .et_pb_contact_field input.input,
body .et_pb_contact_form .et_pb_contact_field textarea.input,
body .et_pb_contact_form .et_pb_contact_field textarea{
  border:1px solid #cad7e3!important;background:#fff!important;color:var(--lsm-ink)!important;
  padding:13px 15px!important;border-radius:4px!important;width:100%!important;
  font-family:var(--lsm-font-sans)!important;box-shadow:none!important}
body .et_pb_contact_form .et_pb_contact_field input.input::placeholder,
body .et_pb_contact_form .et_pb_contact_field textarea::placeholder{color:#8a97ac!important;opacity:1}
body .et_pb_contact_form .et_pb_contact_field input.input:focus,
body .et_pb_contact_form .et_pb_contact_field textarea:focus{outline:none!important;border-color:#13809c!important}

/* ==========================================================================
   Newsletter : contraste renforcé (texte + champ bien visibles sur le marine)
   ========================================================================== */
.lsm-news .lsm-eyebrow{color:#e8c98c!important}
.lsm-news h2{color:#ffffff!important}
.lsm-news p{color:rgba(255,255,255,.95)!important}
.lsm-nform{border:1px solid rgba(255,255,255,.65)!important;background:rgba(255,255,255,.06)!important}
.lsm-nform input{background:transparent!important;color:#fff!important}
.lsm-nform input::placeholder{color:rgba(255,255,255,.8)!important;opacity:1}
.lsm-nform button{background:#fff!important;color:var(--lsm-navy)!important;font-weight:600!important}
.lsm-nform button:hover{background:var(--lsm-gold)!important;color:#fff!important}

/* Contraste poussé à fond (newsletter + libellés tuiles) */
.lsm-news .lsm-eyebrow{color:#e9b84e!important;font-weight:600!important}
.lsm-news h2{color:#fff!important}
.lsm-news p{color:#ffffff!important;font-weight:400!important;opacity:1!important}
.lsm-tile .wp-block-cover__background{
  background:linear-gradient(180deg,rgba(13,26,48,0) 8%,rgba(13,26,48,.6) 48%,rgba(13,26,48,.96) 100%)!important}
.lsm-tile .lsm-more{color:#fff!important;opacity:1!important;font-size:.72rem!important;font-weight:600!important;
  letter-spacing:.16em!important;text-shadow:0 1px 2px rgba(0,0,0,.75)!important}
.lsm-tile-title{text-shadow:0 1px 3px rgba(0,0,0,.6)!important}

/* ==========================================================================
   Newsletter en CLAIR — lisible (fond teinté, texte foncé, bouton marine)
   ========================================================================== */
.wp-block-group.lsm-news{background:var(--lsm-tint)!important;border-top:1px solid var(--lsm-line)!important}
.wp-block-group.lsm-news p.lsm-eyebrow{color:var(--lsm-gold)!important;font-weight:600!important}
.wp-block-group.lsm-news h2{color:var(--lsm-ink)!important}
.wp-block-group.lsm-news p{color:var(--lsm-ink-2)!important;opacity:1!important}
.lsm-news .lsm-nform{border:1px solid #cad7e3!important;background:#fff!important}
.lsm-news .lsm-nform input{color:var(--lsm-ink)!important;background:transparent!important}
.lsm-news .lsm-nform input::placeholder{color:#8a97ac!important;opacity:1}
.lsm-news .lsm-nform button{background:var(--lsm-navy)!important;color:#fff!important}
.lsm-news .lsm-nform button:hover{background:var(--lsm-gold)!important;color:#fff!important}
.lsm-footer-bottom{display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:space-between;align-items:center;
  padding-top:22px;color:#8aa0b8;font-size:.82rem}
.lsm-footer-bottom a{color:#8aa0b8;text-decoration:none}
.lsm-footer-bottom a:hover{color:#fff}
@media (max-width:860px){.lsm-footer-cols{grid-template-columns:1fr 1fr;gap:26px}}
@media (max-width:560px){
  .lsm-footer-cols{grid-template-columns:1fr;gap:24px;padding-bottom:28px}
  .lsm-footer-bottom{justify-content:flex-start;flex-direction:column;align-items:flex-start;gap:8px}
}

/* ==========================================================================
   Couleur & vie (accents méditerranéens) + hiérarchie des titres
   ========================================================================== */
:root{
  --lsm-sea:#0e7e99;        /* bleu mer : accent principal, thème littoral */
  --lsm-sea-soft:#e8f3f5;   /* lavis mer, pour fonds de section */
  --lsm-sand:#f6efe2;       /* sable chaud */
  --lsm-sun:#e6a23c;        /* touche soleil (rare) */
}

/* ---------- Accents de couleur ---------- */
/* Suréminences (eyebrow) en doré chaud partout (au lieu du gris froid) */
.lsm-eyebrow{color:var(--lsm-gold)!important}
.lsm-rule{width:54px;background:var(--lsm-gold)}

/* Bandes claires : lavis mer plutôt que gris froid */
.lsm-wxband{background:var(--lsm-sea-soft)!important;border-top-color:#d6e8ec!important;border-bottom-color:#d6e8ec!important}
.lsm-section:has(.lsm-posts-grid){background:var(--lsm-sea-soft)!important}

/* Liens de contenu : bleu mer affirmé */
.entry-content a:not(.wp-block-button__link):not(.et_pb_button):not(.button):not(.lsm-book-btn):not(.lsm-deal-btn){color:var(--lsm-sea)!important}

/* Fil d'Ariane : élément courant en bleu mer */
.lsm-breadcrumb .current-item{color:var(--lsm-sea)}

/* Bouton secondaire (outline) en bleu mer */
.lsm-btn.is-style-outline .wp-block-button__link{background:transparent!important;border:1.5px solid var(--lsm-sea)!important;color:var(--lsm-sea)!important}
.lsm-btn.is-style-outline .wp-block-button__link:hover{background:var(--lsm-sea)!important;border-color:var(--lsm-sea)!important;color:#fff!important}

/* Tuiles d'accueil : liseré doré au survol pour réveiller la grille */
.lsm-tile{transition:transform .35s ease,box-shadow .35s ease}
.lsm-tile:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(13,26,48,.22)}

/* Chapeau de fiche (lead) légèrement réchauffé */
.entry-content .lsm-lead{color:var(--lsm-ink-2)!important}

/* ---------- Hiérarchie des titres dans le contenu (fiches & articles) ---------- */
/* Titre de niveau 2 : grand, serif, comme un vrai titre de section.
   (on exclut les titres en surimpression sur photo : héros, tuiles) */
.entry-content h2.wp-block-heading:not(.lsm-hero-title):not(.lsm-tile-title){
  font-family:var(--lsm-font-display)!important;font-weight:500!important;
  font-size:clamp(1.8rem,3.2vw,2.35rem)!important;line-height:1.14!important;color:var(--lsm-ink)!important;
  margin-top:1.9em!important;margin-bottom:.35em!important}
/* Sous-titre de niveau 3 : sans-serif, net, liseré doré → se distingue du titre.
   (jamais sur les titres de tuiles, qui sont blancs sur photo) */
.entry-content h3.wp-block-heading:not(.lsm-tile-title){
  font-family:var(--lsm-font-sans)!important;font-weight:600!important;text-transform:none!important;
  font-size:1.15rem!important;letter-spacing:.01em!important;line-height:1.35!important;color:var(--lsm-ink)!important;
  margin-top:1.9em!important;margin-bottom:.35em!important;
  padding-left:14px!important;border-left:3px solid var(--lsm-gold)!important}
/* Niveau 4 : petite étiquette bleu mer */
.entry-content h4.wp-block-heading{
  font-family:var(--lsm-font-sans)!important;font-weight:600!important;font-size:.98rem!important;
  letter-spacing:.02em!important;color:var(--lsm-sea)!important;
  margin-top:1.5em!important;margin-bottom:.2em!important}

/* ==========================================================================
   Nouvelles sections d'accueil : chiffres-clés + infos pratiques
   ========================================================================== */
/* ---------- Bande chiffres-clés (fond navy) ---------- */
.lsm-stats-band{background:var(--lsm-navy)!important;padding-block:clamp(38px,5vw,60px)!important;padding-inline:22px}
.lsm-stats-band>*{max-width:1080px;margin-inline:auto!important}
.lsm-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.lsm-stat{position:relative;display:flex;flex-direction:column;gap:8px}
.lsm-stat:not(:last-child)::after{content:"";position:absolute;right:-12px;top:50%;transform:translateY(-50%);
  height:48px;width:1px;background:rgba(255,255,255,.14)}
.lsm-stat-n{font-family:var(--lsm-font-display);font-size:clamp(2.5rem,4.2vw,3.4rem);font-weight:500;
  color:var(--lsm-gold);line-height:1}
.lsm-stat-l{font-family:var(--lsm-font-sans);font-size:.72rem;font-weight:500;letter-spacing:.18em;
  text-transform:uppercase;color:#aebfd3}
@media(max-width:700px){
  .lsm-stats{grid-template-columns:1fr 1fr;gap:34px 20px}
  .lsm-stat::after{display:none!important}
}

/* ---------- Cartes infos pratiques ---------- */
.lsm-infos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}
.lsm-info{background:#fff;border:1px solid var(--lsm-line);border-radius:10px;padding:34px 28px;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:12px;transition:box-shadow .3s ease,transform .3s ease}
.lsm-info:hover{box-shadow:0 14px 34px rgba(13,26,48,.10);transform:translateY(-4px);border-color:#d6e8ec}
.lsm-info-ico{font-size:2.1rem;line-height:1}
.lsm-info-t{font-family:var(--lsm-font-display);font-size:1.35rem;font-weight:500;color:var(--lsm-ink)}
.lsm-info-p{font-family:var(--lsm-font-sans);font-size:.93rem;font-weight:300;color:var(--lsm-muted);line-height:1.65;margin:0}
@media(max-width:760px){.lsm-infos{grid-template-columns:1fr;gap:16px;margin-top:30px}}

/* ==========================================================================
   Logo SVG inline (en-tête)
   ========================================================================== */
.brand.has-logo-image{line-height:0}
.lsm-logo-svg{height:48px;width:auto;max-width:none;display:block}
.lsm-logo-wm{font-family:var(--lsm-font-display);font-size:34px;font-weight:600;letter-spacing:1.5px;fill:var(--lsm-ink)}
.lsm-logo-tg{font-family:var(--lsm-font-sans);font-size:11.5px;font-weight:500;letter-spacing:6px;fill:var(--lsm-gold)}
/* Home : en-tête transparent au-dessus du héros sombre → logo clair */
body.transparent-header .lsm-logo-wm{fill:#fff}
body.transparent-header .lsm-logo-tg{fill:#d8be90}
body.transparent-header .lsm-logo-wave{stroke:#6fc3d6!important}
@media(max-width:600px){.lsm-logo-svg{height:40px}}

/* Logo du pied de page (fond navy) */
.lsm-f-brand{line-height:0;margin-bottom:14px}
.lsm-flogo-svg{height:52px;width:auto;max-width:100%;display:block}
.lsm-flogo-wm{font-family:var(--lsm-font-display);font-size:34px;font-weight:600;letter-spacing:1.5px;fill:#fff}
.lsm-flogo-tg{font-family:var(--lsm-font-sans);font-size:11.5px;font-weight:500;letter-spacing:6px;fill:#c9a86a}

/* ==========================================================================
   Pages d'index : grille de tuiles
   ========================================================================== */
.lsm-tile-grid{margin-top:44px!important}
/* Kadence enveloppe les enfants dans .wp-block-group__inner-container → on grille ce conteneur.
   Tuiles de largeur fixe, centrées : propre avec 1, 4 ou 7 fiches. */
.lsm-tile-grid > .wp-block-group__inner-container,
.lsm-tile-grid:not(:has(> .wp-block-group__inner-container)){
  display:grid!important;grid-template-columns:repeat(auto-fit,minmax(240px,270px))!important;
  justify-content:center;gap:16px}
.lsm-tile-grid .lsm-tile{margin:0!important}
@media(max-width:560px){
  .lsm-tile-grid > .wp-block-group__inner-container,
  .lsm-tile-grid:not(:has(> .wp-block-group__inner-container)){grid-template-columns:minmax(240px,340px)!important}
}

/* ==========================================================================
   Hub "Bons plans" : cartes de réservation
   ========================================================================== */
.lsm-deals{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1080px;margin:46px auto 0!important}
.lsm-deal{position:relative;background:#fff;border:1px solid var(--lsm-line);border-radius:12px;padding:34px 28px;
  display:flex;flex-direction:column;align-items:flex-start;gap:12px;transition:box-shadow .3s ease,transform .3s ease}
.lsm-deal:hover{box-shadow:0 16px 38px rgba(13,26,48,.10);transform:translateY(-4px);border-color:#d6e8ec}
.lsm-deal-ico{font-size:2.2rem;line-height:1}
.lsm-deal-badge{position:absolute;top:18px;right:18px;font-family:var(--lsm-font-sans);font-size:.62rem;
  letter-spacing:.12em;text-transform:uppercase;color:var(--lsm-sea);background:var(--lsm-sea-soft);padding:4px 11px;border-radius:40px}
.lsm-deal-t{font-family:var(--lsm-font-display)!important;font-size:1.4rem!important;font-weight:500!important;
  color:var(--lsm-ink)!important;margin:0!important;border:0!important;padding:0!important}
.lsm-deal-p{font-family:var(--lsm-font-sans);font-size:.95rem;font-weight:300;color:var(--lsm-muted);line-height:1.6;margin:0;flex:1}
.lsm-deal-btn{display:inline-block;background:var(--lsm-gold);color:#fff!important;font-family:var(--lsm-font-sans);
  font-size:.73rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;padding:13px 22px;border-radius:3px;
  text-decoration:none;margin-top:6px;transition:background .25s ease}
.lsm-deal-btn:hover{background:var(--lsm-navy);color:#fff!important}
.lsm-deal-link{font-family:var(--lsm-font-sans);font-size:.82rem;color:var(--lsm-sea)!important;
  text-decoration:none;border-bottom:1px solid transparent}
.lsm-deal-link:hover{border-bottom-color:var(--lsm-sea)}
.lsm-deal-note{margin-top:32px!important}
.lsm-deal-note p{font-size:.86rem!important;color:var(--lsm-muted)!important;font-style:italic}
@media(max-width:860px){.lsm-deals{grid-template-columns:1fr;max-width:440px}}

/* ==========================================================================
   Comparatifs « Top X » : liste de classement
   ========================================================================== */
.lsm-rank-list{max-width:900px;margin:46px auto 0}
.lsm-rank-item{display:grid;grid-template-columns:300px 1fr;gap:28px;padding:30px 0;border-top:1px solid var(--lsm-line);align-items:start}
.lsm-rank-item:first-child{border-top:0;padding-top:0}
.lsm-rank-media{position:relative;border-radius:10px;overflow:hidden;aspect-ratio:4/3;background:var(--lsm-tint);display:flex;align-items:center;justify-content:center}
.lsm-rank-media img{width:100%;height:100%;object-fit:cover;display:block}
.lsm-rank-ico{font-size:3.4rem;line-height:1;opacity:.55;filter:grayscale(.1)}
.lsm-rank-body{min-width:0}
.lsm-rank-link{font-family:var(--lsm-font-sans);font-size:.85rem;font-weight:500;color:var(--lsm-sea);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:1px}
.lsm-rank-link:hover{color:var(--lsm-navy)}
/* Carnet d'adresses (commerces de bouche) */
.lsm-carnet-cols{max-width:980px;margin:36px auto 0}
.lsm-carnet{list-style:none!important;padding:0!important;margin:0!important}
.lsm-carnet li{padding:12px 0;border-top:1px solid var(--lsm-line);line-height:1.45}
.lsm-carnet li:first-child{border-top:0}
.lsm-carnet a{font-weight:500}
.lsm-carnet-addr{font-size:.85rem;color:var(--lsm-ink-2)}
/* Photo d'en-tête des fiches restaurant */
.lsm-fiche-photo{margin-top:30px}
.lsm-fiche-photo img{border-radius:12px;width:100%;max-height:440px;object-fit:cover}
/* Cartes « Nos comparatifs » (hub Bons plans) */
.lsm-guides{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;max-width:920px;margin:34px auto 0}
.lsm-guide{display:flex;flex-direction:column;gap:5px;background:#fff;border:1px solid var(--lsm-line);border-radius:12px;padding:22px 24px;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.lsm-guide:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(13,26,48,.10);border-color:var(--lsm-sea)}
.lsm-guide-ico{font-size:1.7rem;line-height:1}
.lsm-guide-t{font-family:var(--lsm-font-display);font-size:1.18rem;font-weight:500;color:var(--lsm-ink);margin:2px 0 0}
.lsm-guide-p{font-size:.88rem;color:var(--lsm-ink-2);margin:0;flex:1}
.lsm-guide-more{font-family:var(--lsm-font-sans);font-size:.8rem;font-weight:600;letter-spacing:.04em;color:var(--lsm-sea);margin-top:6px}
/* Landing produit « Guide à 5 € » */
.lsm-guide-hero{margin-top:10px}
.lsm-guide-cover img{border-radius:6px;box-shadow:0 20px 44px rgba(13,26,48,.20)}
.lsm-guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:860px;margin:32px auto 0}
.lsm-guide-item{display:flex;flex-direction:column;gap:3px;background:#fff;border:1px solid var(--lsm-line);border-radius:12px;padding:18px 20px}
.lsm-gi-ico{font-size:1.5rem;line-height:1}
.lsm-gi-t{font-family:var(--lsm-font-display);font-size:1.12rem;font-weight:500;color:var(--lsm-ink)}
.lsm-gi-p{font-size:.85rem;color:var(--lsm-ink-2)}
@media(max-width:600px){.lsm-guide-grid{grid-template-columns:1fr}}
/* Bandeau d'annonce (au-dessus du header) — vente du guide */
.lsm-topbar{background:linear-gradient(90deg,#0d1a30,#17293f);color:#fff;font-family:var(--lsm-font-sans,system-ui,sans-serif);font-size:.9rem;position:relative;z-index:1000}
.lsm-topbar-in{max-width:1180px;margin:0 auto;padding:9px 48px 9px 20px;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;text-align:center}
.lsm-topbar-txt{opacity:.96}
.lsm-topbar-cta{background:#c7962f;color:#1a1205;font-weight:700;border-radius:40px;padding:5px 16px;text-decoration:none;white-space:nowrap}
.lsm-topbar-cta:hover{filter:brightness(1.06)}
.lsm-topbar-close{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:none;border:0;color:rgba(255,255,255,.7);font-size:1.25rem;cursor:pointer;line-height:1;padding:0}
.lsm-topbar-close:hover{color:#fff}
@media(max-width:620px){.lsm-topbar-in{font-size:.78rem;padding:8px 38px 8px 14px;gap:8px}}
/* Encart promo du guide (injecté sur articles, home, bons-plans) */
.lsm-promo{display:flex;gap:24px;align-items:center;max-width:820px;margin:46px auto 12px;background:linear-gradient(120deg,#0d1a30,#17293f);color:#fff;border-radius:16px;padding:24px 28px}
.lsm-promo img{width:92px;height:130px;object-fit:cover;border-radius:6px;box-shadow:0 10px 24px rgba(0,0,0,.35);flex:0 0 auto}
.lsm-promo .pe{font-family:var(--lsm-font-sans);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--lsm-gold)}
.lsm-promo h3{font-family:var(--lsm-font-display)!important;font-size:1.5rem!important;font-weight:500!important;color:#fff!important;margin:4px 0 5px!important;border:0!important;padding:0!important}
.lsm-promo p{color:#c6d2e2!important;font-size:.92rem;margin:0 0 13px!important}
.lsm-promo a.cta{display:inline-block;background:var(--lsm-gold);color:#1a1205!important;font-family:var(--lsm-font-sans);font-weight:700;font-size:.9rem;padding:9px 22px;border-radius:40px;text-decoration:none!important}
.lsm-promo a.cta:hover{filter:brightness(1.06)}
@media(max-width:600px){.lsm-promo{flex-direction:column;text-align:center;padding:24px}.lsm-promo img{width:112px;height:158px}}
.lsm-rank-num{position:absolute;top:0;left:0;z-index:2;font-family:var(--lsm-font-display);font-size:1.5rem;font-weight:600;
  color:#fff;background:var(--lsm-navy);width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-bottom-right-radius:12px}
.lsm-rank-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:2px}
.lsm-rank-name{font-family:var(--lsm-font-display)!important;font-size:1.65rem!important;font-weight:500!important;
  color:var(--lsm-ink)!important;margin:0!important;border:0!important;padding:0!important;line-height:1.15!important}
.lsm-rank-meta{font-family:var(--lsm-font-sans);font-size:.7rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--lsm-sea)}
.lsm-rank-tagline{font-family:var(--lsm-font-display);font-style:italic;font-size:1.12rem;color:var(--lsm-gold);margin:0 0 12px}
.lsm-rank-verdict{color:var(--lsm-ink-2);line-height:1.72;font-weight:300;margin:0 0 14px}
.lsm-rank-pros{list-style:none!important;padding:0!important;margin:0 0 18px!important;display:flex;flex-wrap:wrap;gap:8px 20px}
.lsm-rank-pros li{position:relative;padding-left:22px;font-size:.9rem;color:var(--lsm-ink-2)}
.lsm-rank-pros li::before{content:"\2713";position:absolute;left:0;top:0;color:var(--lsm-sea);font-weight:700}
.lsm-rank-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
@media(max-width:680px){
  .lsm-rank-item{grid-template-columns:1fr;gap:14px;padding:24px 0}
  .lsm-rank-media{aspect-ratio:16/9}
}

/* Correctif : titre de la section Histoire (fond navy) — reste blanc malgré
   la règle de hiérarchie H2 (même spécificité, placé après → gagne). */
.entry-content .wp-block-group.lsm-histoire h2.wp-block-heading{color:#fff!important}

/* ==========================================================================
   Rubrique Actu La Seyne : cartes texte (flux RSS de la ville, sans image)
   ========================================================================== */
.lsm-actu-grid{margin-top:44px!important}
.lsm-actu-grid .lsm-post{background:#fff;border:1px solid var(--lsm-line);border-radius:12px;
  padding:26px 24px;gap:9px;transition:box-shadow .3s ease,transform .3s ease}
.lsm-actu-grid .lsm-post:hover{box-shadow:0 14px 34px rgba(13,26,48,.10);transform:translateY(-4px);border-color:#d6e8ec}
.lsm-actu-grid .lsm-post-cat{color:var(--lsm-sea)!important;font-size:.62rem;letter-spacing:.2em}
.lsm-actu-grid .lsm-post-title{font-size:1.22rem;margin:4px 0 2px}
.lsm-actu-grid .lsm-post-ex{flex:1}
.lsm-actu-grid .lsm-post-date{margin-top:auto;padding-top:12px}
.lsm-actu-source{text-align:center;font-size:.84rem;color:var(--lsm-muted);margin-top:30px}
.lsm-actu-source a{color:var(--lsm-sea);text-decoration:none;border-bottom:1px solid transparent}
.lsm-actu-source a:hover{border-bottom-color:var(--lsm-sea)}
.lsm-actu-empty{text-align:center;color:var(--lsm-muted);padding:46px 0;font-style:italic}

/* ==========================================================================
   Encart de réservation (affiliation GetYourGuide)
   ========================================================================== */
.lsm-book{max-width:760px;margin:38px auto;background:var(--lsm-sea-soft);border:1px solid #d6e8ec;
  border-radius:12px;padding:24px 28px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}
.lsm-book-info{display:flex;flex-direction:column;gap:5px;flex:1;min-width:190px}
.lsm-book-meta{font-family:var(--lsm-font-sans);font-size:.82rem;color:var(--lsm-ink-2);letter-spacing:.02em}
.lsm-book-price{font-family:var(--lsm-font-display);font-size:1.05rem;color:var(--lsm-ink)}
.lsm-book-price strong{font-size:1.55rem;color:var(--lsm-sea);font-weight:600}
.lsm-book-btn{background:var(--lsm-gold);color:#fff!important;font-family:var(--lsm-font-sans);font-size:.76rem;
  font-weight:500;letter-spacing:.14em;text-transform:uppercase;padding:15px 26px;border-radius:4px;
  text-decoration:none;white-space:nowrap;transition:background .25s ease}
.lsm-book-btn:hover{background:var(--lsm-navy);color:#fff!important}
.lsm-book-src{flex-basis:100%;font-size:.76rem;color:var(--lsm-muted);font-style:italic;margin-top:2px}
@media(max-width:600px){.lsm-book{padding:20px 20px}.lsm-book-btn{width:100%;text-align:center}}

/* ==========================================================================
   Pages activités à réserver : infos-clés, infos pratiques, FAQ, à proximité
   ========================================================================== */
.lsm-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:820px;margin:34px auto 0}
.lsm-fact{background:#fff;border:1px solid var(--lsm-line);border-radius:10px;padding:18px 12px;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:4px}
.lsm-fact-ico{font-size:1.5rem;line-height:1}
.lsm-fact-v{font-family:var(--lsm-font-display);font-size:1.15rem;font-weight:500;color:var(--lsm-ink);line-height:1.1;margin-top:3px}
.lsm-fact-l{font-family:var(--lsm-font-sans);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--lsm-muted)}
@media(max-width:600px){.lsm-facts{grid-template-columns:1fr 1fr}}

.lsm-pratique{border:1px solid var(--lsm-line);border-radius:10px;overflow:hidden;margin:14px 0 4px}
.lsm-prat-row{display:flex;gap:16px;padding:13px 18px;border-top:1px solid var(--lsm-line)}
.lsm-prat-row:first-child{border-top:0}
.lsm-prat-k{flex:0 0 42%;font-family:var(--lsm-font-sans);font-weight:600;font-size:.9rem;color:var(--lsm-ink)}
.lsm-prat-v{flex:1;font-family:var(--lsm-font-sans);font-size:.92rem;color:var(--lsm-ink-2)}

.lsm-faq-item{border-top:1px solid var(--lsm-line);padding:16px 0}
.lsm-faq-item:first-child{border-top:0}
.lsm-faq-q{font-family:var(--lsm-font-sans)!important;font-size:1.02rem!important;font-weight:600!important;
  color:var(--lsm-ink)!important;margin:0 0 5px!important;border:0!important;padding:0!important}
.lsm-faq-a{color:var(--lsm-muted)!important;line-height:1.65;margin:0!important;font-weight:300}

.lsm-nearby{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.lsm-nearby a{font-family:var(--lsm-font-sans);font-size:.85rem;color:var(--lsm-sea);text-decoration:none;
  background:var(--lsm-sea-soft);border:1px solid #d6e8ec;border-radius:40px;padding:8px 16px;transition:all .2s ease}
.lsm-nearby a:hover{background:#cfe6ea;border-color:var(--lsm-sea);color:var(--lsm-sea)}

@media(max-width:600px){.lsm-prat-k{flex-basis:50%}}
