/* panoramique-demo-fixes 0.1.8 — header/burger/contraste. Chargé après design.css. */
:root{--pdf-ink:#062b35;--pdf-h:76px}
/* 1. En-tête : fixe, fond sombre lisible partout */
body>header,.elementor-location-header,header:has(.header-expanded){position:fixed;top:0;left:0;right:0;z-index:9990;background:rgba(6,43,53,.97);transition:background .25s,box-shadow .25s}
body.pano-accueil:not(.pdf-scrolled):not(.pdf-open)>header,body.pano-accueil:not(.pdf-scrolled):not(.pdf-open) header:has(.header-expanded){background:transparent}
body.pdf-scrolled>header,body.pdf-scrolled header:has(.header-expanded){box-shadow:0 6px 24px rgba(0,0,0,.25)}
header .header{margin:0 auto!important;padding:10px 0!important;gap:16px!important;align-items:center!important;flex-wrap:nowrap!important;height:var(--pdf-h);min-height:0}
header .header .nav-link .elementor-button,header .brand p,header .brand,header .brand span{color:#fff!important}
header .header-book .elementor-button{background:#fff!important;color:var(--pdf-ink)!important;min-height:44px}
header .brand img{width:auto!important;height:48px!important;max-width:none!important}
/* espace réservé sous l'en-tête fixe (pages secondaires) */
body:not(.pano-accueil){padding-top:var(--pdf-h)}
body:not(.pano-accueil) .elementor .e-con.hero{margin-top:0!important}
/* 2. Desktop : navigation en ligne */
.pdf-burger{display:none}
@media(min-width:1025px){
 html body .elementor .header.header-expanded>.e-con.nav-links{gap:4px 8px!important;flex-basis:auto!important}
 header .nav-link .elementor-button{padding:10px 14px!important;min-height:44px}
}
/* 3. Mobile / tablette : logo | Réserver | burger, menu plein écran */
@media(max-width:1024px){
 header .header{width:calc(100% - 32px)!important;justify-content:space-between!important}
 header .header .brand{margin-right:auto}
 header .header-book{margin-left:auto!important;order:2}
 .pdf-burger{display:inline-flex;order:3;align-items:center;justify-content:center;width:48px!important;min-width:0!important;height:48px;flex:0 0 48px;border:1px solid rgba(255,255,255,.4);border-radius:12px;background:transparent;color:#fff;cursor:pointer;padding:0;background-color:transparent!important;box-shadow:none}
 .pdf-burger:hover,.pdf-burger:focus{background:rgba(255,255,255,.12)!important;color:#fff}
 .pdf-burger:focus-visible{outline:3px solid #5ae0dc;outline-offset:2px}
 .pdf-burger span,.pdf-burger span:before,.pdf-burger span:after{display:block;width:22px;height:2px;background:#fff;border-radius:2px;position:relative;transition:transform .2s,background .2s;content:''}
 .pdf-burger span:before{position:absolute;top:-7px;left:0}.pdf-burger span:after{position:absolute;top:7px;left:0}
 body.pdf-open .pdf-burger span{background:transparent}
 body.pdf-open .pdf-burger span:before{transform:translateY(7px) rotate(45deg)}
 body.pdf-open .pdf-burger span:after{transform:translateY(-7px) rotate(-45deg)}
 html body .elementor .header.header-expanded>.e-con.nav-links{display:none!important;position:fixed!important;top:var(--pdf-h);left:0;right:0;bottom:0;background:var(--pdf-ink)!important;border-radius:0!important;z-index:1;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important;padding:16px 20px calc(24px + env(safe-area-inset-bottom))!important;overflow-y:auto;order:4;width:100%!important;flex-basis:auto!important}
 html body.pdf-open .elementor .header.header-expanded>.e-con.nav-links{display:flex!important}
 header .nav-links .nav-link,header .nav-links .elementor-widget{width:100%!important;margin:0!important}
 html body .elementor .header .nav-links .elementor-button{display:flex!important;justify-content:flex-start!important;width:100%;min-height:56px;padding:14px 8px!important;font-size:20px!important;border-bottom:1px solid rgba(255,255,255,.14);border-radius:0!important;background:transparent!important}
 body.pdf-open{overflow:hidden}
}
/* 4. Titres nets : pas de flou d'apparition */
.elementor h1,.elementor h1 *,.elementor .hero h1{filter:none!important;-webkit-filter:none!important}
@media(prefers-reduced-motion:reduce){header,header *{transition:none!important}}
/* 5. Pas de flou d'apparition (lisibilité immédiate, LCP) */
.pano-reveal{filter:none!important;transform:translateY(20px)}
.pano-reveal.is-visible,.pano-reveal.pano-in{transform:none}
@keyframes panoHeroRise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
.pano-motion-live .header:before{display:none!important}
@media(prefers-reduced-motion:reduce){.pano-reveal{opacity:1!important;transform:none!important}}
/* 6. Marque compacte en mobile */
@media(max-width:1024px){
 html body .elementor .header.header-expanded .brand{flex-direction:row!important;align-items:center!important;gap:10px!important;flex:0 1 auto!important;min-width:0!important;width:auto!important}
 html body .elementor .header .brand .elementor-widget{width:auto!important;margin:0!important}
 html body .elementor .header .brand p{font-size:14px!important;line-height:1.1!important;margin:0!important}
 html body .elementor .header-book{flex:0 0 auto}
}
@media(max-width:420px){html body .elementor .header .brand .elementor-widget-text-editor,html body .elementor .header .brand .elementor-widget-heading{display:none!important}}
/* 7. Page hub « Découvrir » (contenu dans la page WordPress, pas dans le plugin) */
body:has(.pdf-hub) .page-header,body:has(.pdf-hub) .entry-title{display:none}
body:has(.pdf-hub) .page-content,body:has(.pdf-hub) main{max-width:none;padding:0}
.pdf-hub{max-width:1100px;margin:0 auto;padding:40px 20px 72px;color:var(--pdf-ink)}
.pdf-hub .pdf-eyebrow{font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#007f84;margin:0 0 12px}
.pdf-hub h1{font-size:clamp(32px,6vw,56px);line-height:1.1;margin:0 0 20px;color:var(--pdf-ink)}
.pdf-hub .pdf-answer{font-size:clamp(17px,2.4vw,20px);line-height:1.55;max-width:720px;margin:0 0 36px}
.pdf-hub .pdf-cards{list-style:none;margin:0;padding:0;display:grid;gap:16px;grid-template-columns:1fr}
.pdf-hub .pdf-card a{display:block;padding:24px;border-radius:24px;background:#e8f7f1;color:var(--pdf-ink);text-decoration:none;min-height:44px;border:1px solid transparent;transition:transform .2s,border-color .2s}
.pdf-hub .pdf-card a:hover,.pdf-hub .pdf-card a:focus-visible{transform:translateY(-3px);border-color:#00adb3;outline:none}
.pdf-hub .pdf-card h2{font-size:24px;margin:0 0 6px;color:var(--pdf-ink)}
.pdf-hub .pdf-card p{margin:0;font-size:17px}
.pdf-hub .pdf-cta{display:inline-flex;align-items:center;min-height:48px;margin-top:32px;padding:0 28px;border-radius:999px;background:#007f84;color:#fff;font-weight:700;text-decoration:none}
.pdf-hub .pdf-note{margin-top:28px;font-size:14px;opacity:.75}
@media(min-width:768px){.pdf-hub .pdf-cards{grid-template-columns:repeat(3,1fr)}.pdf-hub{padding:64px 32px 96px}}
/* 8. Robustesse : en-tête toujours en ligne, police de la démo sur le hub */
html body .elementor .header.header-expanded{flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;width:calc(100% - 32px)}
@media(min-width:600px) and (max-width:1024px){html body .elementor .header.header-expanded{width:calc(100% - 64px)!important}}
@media(min-width:1025px){html body .elementor .header.header-expanded{width:calc(100% - 132px);max-width:1224px}}
html body .pdf-hub,html body .pdf-hub *{font-family:Evolventa,Arial,sans-serif}
html body .elementor .header-book .elementor-button{border-radius:999px!important;padding:12px 22px!important}
/* 9. Barre d'actions mobile (Appeler | Découvrir | Réserver) */
.pdf-bar{display:none}
@media(max-width:767px){
 .pdf-bar{position:fixed;left:0;right:0;bottom:0;z-index:9980;display:flex;gap:8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:rgba(6,43,53,.98);transform:translateY(110%);transition:transform .25s}
 body.pdf-bar-on .pdf-bar{transform:none}
 body.pdf-open .pdf-bar{display:none}
 .pdf-bar a{flex:1 1 0;display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:999px;font-weight:700;font-size:16px;text-decoration:none;color:#fff;border:1px solid rgba(255,255,255,.45)}
 .pdf-bar a.pdf-bar-book{flex:1.4 1 0;background:#fff;color:#062b35;border-color:#fff}
 html body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){.pdf-bar{transition:none}}
/* 10. Ancrage exact de l'en-tête, bouton burger de taille fixe */
html body header:has(.header-expanded){top:0!important}
html body .elementor .header .pdf-burger{width:48px!important;min-width:48px!important;max-width:48px!important;flex:0 0 48px!important}
html body .elementor .header .pdf-burger{padding:0!important;box-sizing:border-box!important}

/* Sous-menu Découvrir */
.pdf-sub{list-style:none;margin:0;padding:0}
.pdf-sub a{display:block;text-decoration:none;color:inherit;font-family:inherit}
@media (min-width:1025px){
 html body .nav-link.pdf-has-sub{position:relative}
 .pdf-sub{position:absolute;top:100%;left:50%;min-width:200px;padding:8px;border-radius:16px;background:rgba(6,43,53,.98);box-shadow:0 12px 32px rgba(0,0,0,.28);opacity:0;visibility:hidden;transform:translate(-50%,6px);transition:opacity .18s,transform .18s,visibility .18s}
 .pdf-has-sub:hover .pdf-sub,.pdf-has-sub:focus-within .pdf-sub{opacity:1;visibility:visible;transform:translate(-50%,0)}
 .pdf-sub a{padding:12px 16px;border-radius:10px;color:#fff;font-size:15px;white-space:nowrap}
 .pdf-sub a:hover,.pdf-sub a:focus-visible{background:rgba(255,255,255,.12)}
}
@media (max-width:1024px){
 .pdf-sub{padding:0 0 0 20px}
 .pdf-sub a{color:rgba(255,255,255,.82);font-size:17px;min-height:48px;display:flex;align-items:center}
}

/* Bloc carte (page Contact) */
.pdf-map{max-width:1180px;margin:0 auto;padding:64px 20px;font-family:Evolventa,Arial,sans-serif;color:#062b35}
.pdf-map-eyebrow{margin:0 0 8px;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#0e7f86;font-weight:700}
.pdf-map h2{margin:0 0 12px;font-size:clamp(28px,4vw,44px);line-height:1.1;color:#062b35}
.pdf-map-lead{margin:0 0 24px;max-width:60ch;font-size:18px;line-height:1.5}
.pdf-map-box{position:relative;min-height:340px;border-radius:24px;overflow:hidden;background:linear-gradient(135deg,#dff1ee,#f4efe6)}
.pdf-map-box:before{content:"";position:absolute;inset:0;opacity:.5;background-image:linear-gradient(rgba(6,43,53,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(6,43,53,.07) 1px,transparent 1px);background-size:44px 44px}
.pdf-map-face{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:340px;padding:24px;text-align:center}
.pdf-map-pin{width:34px;height:34px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#0e7f86;box-shadow:0 6px 16px rgba(14,127,134,.4);margin-bottom:10px}
.pdf-map-load{margin-top:12px;min-height:48px;padding:12px 26px;border:0;border-radius:999px;background:#062b35;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.pdf-map-load:hover,.pdf-map-load:focus-visible{background:#0e7f86}
.pdf-map-box iframe{position:absolute;inset:0;width:100%;height:100%;min-height:340px;border:0}
.pdf-map-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.pdf-map-actions a{display:inline-flex;align-items:center;min-height:48px;padding:12px 22px;border-radius:999px;border:2px solid #062b35;color:#062b35;text-decoration:none;font-weight:700}
.pdf-map-actions a.pdf-map-main{background:#0e7f86;border-color:#0e7f86;color:#fff}
.pdf-map-note{margin:16px 0 0;font-size:14px;opacity:.7}
@media (max-width:767px){.pdf-map{padding:44px 16px}.pdf-map-actions a{flex:1 1 100%;justify-content:center}}

/* Accueil (décision Florin 25/09) : cadre blanc et coins arrondis du hero d'origine ; l'en-tête reste à l'intérieur de la carte au repos, puis passe plein écran au défilement */
:root{--pdf-gap:24px}
@media (max-width:767px){:root{--pdf-gap:12px}}
html body.pano-accueil .elementor .hero.panel:first-of-type,html body.pano-accueil .elementor .e-con.hero.panel{margin-top:var(--pdf-gap)!important}
html body.pano-accueil:not(.pdf-scrolled):not(.pdf-open) header:has(.header-expanded),html body.pano-accueil:not(.pdf-scrolled):not(.pdf-open)>header{top:var(--pdf-gap)!important}
body>header,header:has(.header-expanded){transition:background .25s,box-shadow .25s,top .25s}

/* Hub Découvrir : cartes visuelles */
.pdf-hub2{max-width:1180px;margin:0 auto;padding:48px 20px 72px;font-family:Evolventa,Arial,sans-serif;color:#062b35}
.pdf-hub2 .pdf-hub-eyebrow{margin:0 0 8px;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#0e7f86;font-weight:700}
.pdf-hub2 h1{margin:0 0 16px;font-size:clamp(30px,5vw,52px);line-height:1.08;max-width:20ch}
.pdf-hub2 .pdf-hub-lead{margin:0 0 32px;max-width:62ch;font-size:18px;line-height:1.55}
.pdf-u-grid{display:grid;gap:20px;grid-template-columns:1fr}
@media (min-width:768px){.pdf-u-grid{grid-template-columns:repeat(3,1fr)}}
.pdf-u{display:flex;flex-direction:column;border-radius:24px;overflow:hidden;background:#e8f5f2;color:#062b35;text-decoration:none;transition:transform .2s,box-shadow .2s}
.pdf-u:hover,.pdf-u:focus-visible{transform:translateY(-4px);box-shadow:0 14px 32px rgba(6,43,53,.16)}
.pdf-u-img{display:block;aspect-ratio:8/5;overflow:hidden}
.pdf-u-img img{width:100%;height:100%;object-fit:cover;display:block}
.pdf-u-body{display:flex;flex-direction:column;gap:8px;padding:20px 22px 24px}
.pdf-u-t{font-size:24px;font-weight:700}
.pdf-u-d{font-size:16px;line-height:1.5}
.pdf-u-go{font-weight:700;color:#0e7f86}
.pdf-u-cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:40px}
.pdf-u-cta p{margin:0 12px 0 0;font-size:20px;font-weight:700}
.pdf-u-btn{display:inline-flex;align-items:center;min-height:48px;padding:12px 26px;border-radius:999px;background:#062b35;color:#fff;text-decoration:none;font-weight:700}
.pdf-u-btn.pdf-u-alt{background:#0e7f86}
@media (max-width:767px){.pdf-u-btn{flex:1 1 100%;justify-content:center}}

/* 0.2.2 — /le-camping/ : titres de la rangée à 4 colonnes (« Hébergements » 32px dans 140px) débordaient à 768px */
@media (max-width:1100px){
html body .elementor .elementor-element-0001149 .elementor-heading-title{font-size:clamp(17px,2.3vw,32px)!important;overflow-wrap:anywhere;hyphens:auto}
}

/* 0.2.3 — contrastes mesurés (Lighthouse) : texte atténué 4,2:1 -> >=6:1 ; cartes et boutons du hub */
:root{--muted:#5b5e66}
html body .pdf-hub .pdf-u-d{color:#062b35!important}
html body .pdf-hub .pdf-u-t{color:#062b35!important}
html body .pdf-hub .pdf-u-go{color:#0a5f66!important}
html body .pdf-hub .pdf-u-btn{color:#fff!important}
html body .pdf-hub .pdf-u-btn.pdf-u-alt{background:#0a5f66!important;color:#fff!important}

/* 0.2.7 — accueil défilé : la démo repasse l'en-tête en absolute (pano-scrolled) ; il doit rester fixe, plein écran, sombre */
html body.pano-accueil.pdf-scrolled>header,html body.pano-accueil.pano-motion-live.pano-scrolled>header,html body.pano-accueil.pdf-open>header{position:fixed!important;top:0!important}

/* 0.2.8 — Infos pratiques premium (gabarit plugin-fixes/templates/infos-pratiques.html) */
.pdf-info{font-family:Evolventa,Arial,sans-serif;color:#062b35;line-height:1.55}
html body .pdf-info,html body .pdf-info *{font-family:Evolventa,Arial,sans-serif}
body:has(.pdf-info) .page-header,body:has(.pdf-info) .entry-title{display:none}
.pdf-info .pdf-i-in{max-width:1180px;margin:0 auto;padding:0 20px}
.pdf-info .pdf-i-narrow{max-width:820px}
.pdf-info .pdf-i-hero{background:#062b35;color:#fff;border-radius:0 0 32px 32px;padding:132px 0 64px}
.pdf-info .pdf-i-eyebrow{margin:0 0 12px;font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7fe0e0}
.pdf-info h1{margin:0 0 18px;font-size:clamp(34px,6vw,60px);line-height:1.06;max-width:18ch;color:#fff}
.pdf-info .pdf-i-lead{margin:0 0 28px;max-width:60ch;font-size:clamp(17px,2.2vw,20px);color:#e6f3f1}
.pdf-info .pdf-i-actions{display:flex;flex-wrap:wrap;gap:12px}
.pdf-info .pdf-i-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 28px;border-radius:999px;background:#fff;color:#062b35;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s}
.pdf-info .pdf-i-btn:hover,.pdf-info .pdf-i-btn:focus-visible{transform:translateY(-2px);box-shadow:0 8px 20px rgba(6,43,53,.22)}
.pdf-info .pdf-i-btn.pdf-i-ghost{background:transparent;color:#fff;border:2px solid #fff}
.pdf-info .pdf-i-btn.pdf-i-teal{background:#0a5f66;color:#fff}
.pdf-info .pdf-i-btn.pdf-i-line{background:transparent;color:#062b35;border:2px solid #062b35}
.pdf-info .pdf-i-sec{padding:64px 0}
.pdf-info .pdf-i-tint{background:#e8f7f1}
.pdf-info .pdf-i-dark{background:#062b35;color:#fff;border-radius:32px;margin:0 12px}
.pdf-info .pdf-i-dark h2,.pdf-info .pdf-i-dark h3{color:#fff}
.pdf-info h2{margin:0 0 28px;font-size:clamp(28px,4vw,42px);line-height:1.12;color:#062b35}
.pdf-info h3{margin:0 0 8px;font-size:21px;line-height:1.25;color:#062b35}
.pdf-info .pdf-i-grid{list-style:none;margin:0;padding:0;display:grid;gap:16px;grid-template-columns:1fr}
.pdf-info .pdf-i-card{padding:24px;border-radius:24px;background:#f6f1e7;border:1px solid rgba(6,43,53,.08)}
.pdf-info .pdf-i-card.pdf-i-mint{background:#e8f7f1}
.pdf-info .pdf-i-card p{margin:0;font-size:17px;color:#062b35}
.pdf-info .pdf-i-card a{color:#0a5f66;font-weight:700}
.pdf-info .pdf-i-k{display:block;margin-bottom:8px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#0a5f66}
.pdf-info .pdf-i-steps{list-style:none;counter-reset:s;margin:0;padding:0;display:grid;gap:16px;grid-template-columns:1fr}
.pdf-info .pdf-i-steps li{counter-increment:s;position:relative;padding:24px 24px 24px 76px;border-radius:24px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16)}
.pdf-info .pdf-i-steps li:before{content:counter(s);position:absolute;left:22px;top:22px;width:40px;height:40px;border-radius:50%;background:#7fe0e0;color:#062b35;font-weight:700;display:flex;align-items:center;justify-content:center}
.pdf-info .pdf-i-steps p{margin:0;color:#e6f3f1}
.pdf-info .pdf-i-split{display:grid;gap:32px;align-items:center}
.pdf-info .pdf-i-lead2{margin:0 0 16px;max-width:52ch;font-size:18px}
.pdf-info .pdf-i-addr{margin:0 0 24px;font-size:20px;font-weight:700}
.pdf-info .pdf-i-img img{display:block;width:100%;height:auto;border-radius:28px;aspect-ratio:4/3;object-fit:cover}
.pdf-info details{margin:0 0 12px;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16)}
.pdf-info summary{cursor:pointer;min-height:48px;padding:14px 20px;font-weight:700;font-size:18px;color:#fff;list-style-position:inside}
.pdf-info summary:focus-visible{outline:3px solid #7fe0e0;outline-offset:2px;border-radius:20px}
.pdf-info details p{margin:0;padding:0 20px 18px;color:#e6f3f1}
.pdf-info .pdf-i-final{text-align:center}
.pdf-info .pdf-i-final .pdf-i-actions{justify-content:center}
.pdf-info .pdf-i-final h2{margin-bottom:24px}
@media(min-width:768px){.pdf-info .pdf-i-sec{padding:88px 0}.pdf-info .pdf-i-in{padding:0 32px}.pdf-info .pdf-i-hero{padding:168px 0 88px}.pdf-info .pdf-i-g4{grid-template-columns:repeat(4,1fr)}.pdf-info .pdf-i-g3,.pdf-info .pdf-i-steps{grid-template-columns:repeat(3,1fr)}.pdf-info .pdf-i-split{grid-template-columns:1.1fr 1fr}.pdf-info .pdf-i-dark{margin:0 24px}}
@media(max-width:767px){.pdf-info .pdf-i-btn{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){.pdf-info .pdf-i-btn{transition:none}}

/* 0.2.9 — menu accueil un peu plus bas dans le cadre ; liens toujours lisibles sur la barre sombre après scroll */
html body.pano-accueil:not(.pdf-scrolled):not(.pdf-open) header:has(.header-expanded),html body.pano-accueil:not(.pdf-scrolled):not(.pdf-open)>header{top:calc(var(--pdf-gap) + 18px)!important}
html body.pdf-scrolled header .nav-link a,html body.pdf-scrolled header .nav-link .elementor-button,html body.pdf-scrolled header .nav-link .elementor-button-text,html body.pano-scrolled header .nav-link a,html body.pano-scrolled header .nav-link .elementor-button,html body.pano-scrolled header .nav-link .elementor-button-text,html body.pdf-open header .nav-link a{color:#fff!important;opacity:1!important}
html body header .header-book a,html body header .header-book .elementor-button,html body header .header-book .elementor-button-text{color:#062b35!important}
/* 0.2.10 — spécificité supérieure à design.css (.pano-*.pano-scrolled .header .nav-link .elementor-button) */
html body.pdf-scrolled.pdf-scrolled header .header .nav-link a.elementor-button.elementor-button-link,html body.pdf-scrolled.pdf-scrolled header .header .nav-link a.elementor-button.elementor-button-link .elementor-button-text,html body.pdf-open.pdf-open header .header .nav-link a.elementor-button.elementor-button-link{color:#fff!important}
html body.pdf-scrolled.pdf-scrolled header .header .header-book a.elementor-button.elementor-button-link,html body.pdf-scrolled.pdf-scrolled header .header .header-book a.elementor-button .elementor-button-text{color:#062b35!important}

/* 0.3.0 — Contact V3 / Properties V3 adaptés (gabarits plugin-fixes/templates/contact.html et hebergements.html) */
.pdf-x .pdf-x-eyebrow{margin:0 0 12px;font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#0a5f66}
.pdf-x .pdf-x-ey-light{color:#7fe0e0}
.pdf-x .pdf-x-center{text-align:center;margin-left:auto;margin-right:auto}
.pdf-x .pdf-x-lead{margin:0 0 24px;max-width:52ch;font-size:clamp(17px,2.2vw,20px);color:#062b35}
.pdf-x .pdf-x-leadlight{color:#e6f3f1;margin-bottom:40px}
.pdf-x .pdf-x-sec{padding:56px 0}
.pdf-x .pdf-x-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 32px;margin-bottom:32px}
.pdf-x .pdf-x-head h2{margin:0}
.pdf-x .pdf-x-headnote{margin:0;max-width:44ch;font-size:17px}
.pdf-x .pdf-x-link{display:inline-block;min-height:44px;padding-top:10px;color:#0a5f66;font-weight:700;text-decoration:underline;text-underline-offset:4px}
/* Contact : intro */
.pdf-x .pdf-x-intro{padding:132px 0 24px}
.pdf-x .pdf-x-intro h1{color:#062b35;max-width:12ch;margin:0}
.pdf-x .pdf-x-introgrid{display:grid;gap:24px;align-items:end}
/* Contact : grand panneau formulaire + coordonnées */
.pdf-x .pdf-x-panel{display:grid;gap:32px;padding:24px;border-radius:32px;background:#e8f7f1}
.pdf-x .pdf-x-form h2,.pdf-x .pdf-x-side h2{margin:0 0 20px;font-size:clamp(24px,3vw,32px)}
.pdf-x .pdf-x-fields{display:grid;gap:14px;grid-template-columns:1fr;margin-bottom:20px}
.pdf-x .pdf-x-fields label{display:block;font-size:15px;font-weight:700;color:#062b35}
.pdf-x .pdf-x-fields input,.pdf-x .pdf-x-fields select,.pdf-x .pdf-x-fields textarea{display:block;width:100%;box-sizing:border-box;margin-top:6px;min-height:48px;padding:12px 18px;border:1px solid rgba(6,43,53,.15);border-radius:24px;background:#fff;color:#062b35;font:inherit;font-weight:400}
.pdf-x .pdf-x-fields textarea{border-radius:20px;resize:vertical}
.pdf-x .pdf-x-fields input:focus-visible,.pdf-x .pdf-x-fields select:focus-visible,.pdf-x .pdf-x-fields textarea:focus-visible{outline:3px solid #0a5f66;outline-offset:2px}
.pdf-x .pdf-x-form button[disabled]{opacity:1;cursor:not-allowed;background:#5b5e66}
.pdf-x .pdf-x-note{margin:12px 0 0;font-size:14px;color:#3f4550}
.pdf-x .pdf-x-item{display:flex;gap:16px;align-items:flex-start;padding:0 0 22px;margin:0 0 22px;border-bottom:1px solid rgba(6,43,53,.12)}
.pdf-x .pdf-x-item:last-child{border:0;margin:0;padding:0}
.pdf-x .pdf-x-ico{flex:0 0 48px;width:48px;height:48px;border-radius:50%;background:#fff;color:#0a5f66;display:flex;align-items:center;justify-content:center}
.pdf-x .pdf-x-item h3{margin:0 0 4px;font-size:20px}
.pdf-x .pdf-x-item p{margin:0 0 4px;font-size:16px;color:#062b35}
/* Contact : localisation */
.pdf-x .pdf-x-loc{display:grid;gap:20px}
.pdf-x .pdf-x-acc{padding:8px 20px;border-radius:28px;background:#f6f1e7}
.pdf-x .pdf-x-acc details{margin:0;border-radius:0;background:transparent;border:0;border-bottom:1px solid rgba(6,43,53,.12)}
.pdf-x .pdf-x-acc details:last-child{border:0}
.pdf-x .pdf-x-acc summary{color:#062b35;font-size:20px;padding:18px 0}
.pdf-x .pdf-x-accbody{padding:0 0 18px}
.pdf-x .pdf-x-accbody p{margin:0 0 8px;padding:0;color:#062b35;font-size:17px}
.pdf-x .pdf-x-accbody.pdf-map-actions{display:flex;flex-wrap:wrap;gap:10px}
.pdf-x .pdf-x-accbody.pdf-map-actions a{display:inline-flex;align-items:center;min-height:44px;padding:10px 20px;border-radius:999px;border:2px solid #062b35;color:#062b35;font-weight:700;text-decoration:none}
.pdf-x .pdf-x-accbody.pdf-map-actions a.pdf-map-main{background:#0a5f66;border-color:#0a5f66;color:#fff}
.pdf-x .pdf-x-map{min-height:360px;height:100%;border-radius:28px}
.pdf-x .pdf-x-map .pdf-map-face{min-height:360px}
.pdf-x .pdf-x-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.pdf-x .pdf-x-faq h2{color:#fff;margin-bottom:24px}
.pdf-x .pdf-x-faq,.pdf-x .pdf-x-faqlight{}
.pdf-x .pdf-x-faqlight details{background:#f6f1e7;border-color:rgba(6,43,53,.08)}
.pdf-x .pdf-x-faqlight summary{color:#062b35}
.pdf-x .pdf-x-faqlight details p{color:#062b35}
/* Hébergements : héros inset + carte à la une */
.pdf-x .pdf-x-hero{margin:12px 12px 0;padding:120px 0 64px;border-radius:32px;background:#062b35;color:#fff;position:relative}
.pdf-x .pdf-x-hero h1{color:#fff;max-width:16ch;margin-bottom:16px}
.pdf-x .pdf-x-feat{display:grid;gap:24px;align-items:center;margin-top:8px}
.pdf-x .pdf-x-feat-img img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:28px}
.pdf-x .pdf-x-feat-body h2{margin:0 0 12px;color:#fff;font-size:clamp(26px,3.4vw,38px)}
.pdf-x .pdf-x-feat-body p{margin:0 0 16px;color:#e6f3f1;font-size:18px}
.pdf-x .pdf-x-tag{color:#7fe0e0!important;font-size:13px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px!important}
.pdf-x .pdf-x-chips{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pdf-x .pdf-x-chips li{padding:8px 16px;border-radius:999px;background:rgba(255,255,255,.12);color:#fff;font-size:15px}
.pdf-x .pdf-x-bar{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:40px auto 0;padding:12px;border-radius:999px;background:rgba(255,255,255,.08);max-width:max-content}
.pdf-x .pdf-x-bar a{display:inline-flex;align-items:center;min-height:44px;padding:10px 20px;border-radius:999px;background:#fff;color:#062b35;font-weight:700;text-decoration:none;font-size:15px}
.pdf-x .pdf-x-bar a.pdf-x-bar-cta{background:#7fe0e0}
/* Hébergements : grille de cartes */
.pdf-x .pdf-x-cards{list-style:none;margin:0;padding:0;display:grid;gap:32px;grid-template-columns:1fr}
.pdf-x .pdf-x-card h3{margin:16px 0 6px;font-size:24px}
.pdf-x .pdf-x-card p{margin:0 0 12px;font-size:17px;color:#062b35}
.pdf-x .pdf-x-card-img{position:relative;display:block}
.pdf-x .pdf-x-card-img img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:28px}
.pdf-x .pdf-x-plus{position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:50%;background:#e8f7f1;color:#062b35;display:flex;align-items:center;justify-content:center;font-size:26px;line-height:1;transition:transform .2s}
.pdf-x .pdf-x-card-img:hover .pdf-x-plus,.pdf-x .pdf-x-card-img:focus-visible .pdf-x-plus{transform:rotate(90deg)}
.pdf-x .pdf-x-meta{list-style:none;margin:0 0 8px;padding:12px 0 0;border-top:1px solid rgba(6,43,53,.12);display:flex;flex-wrap:wrap;gap:6px 18px;font-size:15px;font-weight:700;color:#062b35}
.pdf-x .pdf-x-help{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:32px;border-radius:28px;background:#062b35}
.pdf-x .pdf-x-help h3{margin-top:0;color:#fff}
.pdf-x .pdf-x-help p{color:#e6f3f1}
.pdf-x .pdf-x-help .pdf-i-btn.pdf-i-ghost{color:#fff}
@media(min-width:768px){
.pdf-x .pdf-x-sec{padding:88px 0}
.pdf-x .pdf-x-intro{padding:168px 0 40px}
.pdf-x .pdf-x-introgrid{grid-template-columns:1.2fr 1fr}
.pdf-x .pdf-x-panel{grid-template-columns:1.25fr 1fr;padding:48px;gap:56px}
.pdf-x .pdf-x-fields{grid-template-columns:1fr 1fr}
.pdf-x .pdf-x-fields .pdf-x-full{grid-column:1/-1}
.pdf-x .pdf-x-loc{grid-template-columns:1fr 1.2fr;align-items:stretch}
.pdf-x .pdf-x-hero{margin:24px 24px 0;padding:140px 0 72px}
.pdf-x .pdf-x-feat{grid-template-columns:1.15fr 1fr;gap:48px}
.pdf-x .pdf-x-cards{grid-template-columns:repeat(2,1fr)}
}
@media(min-width:1024px){.pdf-x .pdf-x-cards{grid-template-columns:repeat(3,1fr)}}
@media(max-width:767px){.pdf-x .pdf-x-bar{border-radius:28px}.pdf-x .pdf-x-bar a{flex:1 1 100%;justify-content:center}}
/* 0.3.1 */
html body .pdf-x .pdf-map-load{background:#062b35!important;color:#fff!important;border-radius:999px!important;border:0!important}
html body .pdf-x .pdf-map-load:hover,html body .pdf-x .pdf-map-load:focus-visible{background:#0a5f66!important}
.pdf-x .pdf-x-lead.pdf-x-center{margin-left:auto;margin-right:auto}

/* 0.3.2 — Hébergements : 6 cartes, prix, visuel provisoire */
.pdf-x .pdf-x-ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;aspect-ratio:4/3;border-radius:28px;background:linear-gradient(135deg,#e8f7f1,#cfe6e2);color:#0a5f66;font-size:15px;font-weight:700}
.pdf-x .pdf-x-price{margin:0 0 12px;font-size:16px;color:#062b35}
.pdf-x .pdf-x-price strong{font-size:24px;color:#0a5f66}
.pdf-x .pdf-x-featprice{margin:0 0 20px;font-size:17px;color:#e6f3f1}
.pdf-x .pdf-x-featprice strong{font-size:28px;color:#fff}
.pdf-x .pdf-x-card.pdf-x-help{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px}
.pdf-x .pdf-x-card.pdf-x-help h3,.pdf-x .pdf-x-card.pdf-x-help p{margin:0}

/* 0.3.3 — menu mobile équilibré (accueil et pages) + héros centré */
@media (max-width:767px){
html body:not(.pdf-scrolled) header .elementor-element-000100b{padding-left:30px!important;padding-right:30px!important;align-items:center!important;gap:10px!important}
html body header .elementor-element-0001003,html body header .elementor-element-0001001{width:auto!important;height:auto!important;flex:0 0 auto!important}
html body header .elementor-element-0001001 img.attachment-full{width:58px!important;height:58px!important;max-width:none!important}
html body .elementor .header-book .elementor-button{min-height:40px!important;padding:9px 18px!important;font-size:15px!important}
html body header .elementor-element-000100a.header-book,html body header .header-book{margin-left:auto!important}
html body .elementor .header .pdf-burger{width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;flex:0 0 44px!important;border:0!important;border-radius:50%!important;background:rgba(255,255,255,.16)!important;margin-left:0!important}
html body.pdf-scrolled .elementor .header .pdf-burger{background:rgba(255,255,255,.16)!important}
html body .hero .hero-landmarks{display:flex!important;flex-wrap:wrap;justify-content:center!important;gap:10px 22px!important;grid-template-columns:none!important}
html body .hero .hero-landmarks>.elementor-widget{width:auto!important;flex:0 0 auto!important;text-align:center}
html body .hero p{text-wrap:balance}
}
@media (max-width:767px){html body:not(.pano-accueil):not(.pdf-scrolled) header .elementor-element-000100b{padding-left:20px!important;padding-right:20px!important}}

/* 0.3.5 — mobile : héros complet + bandeau défilant visibles à l'ouverture */
@media (max-width:767px){
html body.pano-accueil .elementor .e-con.hero.panel{min-height:0!important;height:calc(100svh - var(--pdf-gap) - var(--pdf-gap) - 63px)!important;max-height:none!important;box-sizing:border-box}
html body.pano-accueil .elementor .e-con.hero.panel h1{font-size:clamp(30px,9vw,38px)!important;line-height:1.05!important}
html body.pano-accueil .elementor .hero .hero-landmarks{gap:6px 18px!important}
}
@media (max-width:767px){
html body.pano-accueil .elementor .e-con.hero.panel{flex-wrap:nowrap!important;justify-content:center!important;padding-top:104px!important;padding-bottom:22px!important;gap:14px!important}
html body.pano-accueil .elementor .hero .hero-bottom{margin-top:0!important;gap:10px!important}
}

/* 0.3.7 — mobile : Réserver retiré de la barre, placé dans le menu déroulant */
.pdf-nav-book{display:none}
@media (max-width:767px){
html body header .header-book,html body .elementor .header .header-book{display:none!important}
html body .elementor .header .pdf-burger{margin-left:auto!important}
html body:not(.pdf-scrolled) header .elementor-element-000100b{padding-left:24px!important;padding-right:24px!important}
html body header .nav-links a.pdf-nav-book{display:flex!important;align-items:center;justify-content:center;align-self:stretch;min-height:52px;margin-top:12px;padding:12px 24px;border-radius:999px;background:#fff;color:#062b35!important;font-weight:700;font-size:18px;text-align:center;text-decoration:none}
}

/* 0.3.8 — Visite 360° refaite (gabarit plugin-fixes/templates/visite-virtuelle.html) */
.pdf-vt .pdf-vt-hero h1{max-width:16ch;margin-left:auto;margin-right:auto}
.pdf-vt .pdf-vt-hero .pdf-x-lead{margin-left:auto;margin-right:auto}
.pdf-vt .pdf-vt-actions{justify-content:center}
.pdf-vt .pdf-vt-viewsec{padding-bottom:24px}
.pdf-vt .pdf-vt-frame{position:relative;aspect-ratio:16/9;width:100%;box-sizing:border-box;border-radius:32px;overflow:hidden;background:#062b35;box-shadow:0 18px 40px rgba(6,43,53,.18)}
.pdf-vt .pdf-vt-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.pdf-vt .pdf-vt-frame:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(6,43,53,.08),rgba(6,43,53,.5))}
.pdf-vt .pdf-vt-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:2}
.pdf-vt .pdf-vt-play{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:12px;min-height:56px;padding:14px 30px;border:0;border-radius:999px;background:#fff;color:#062b35;font:inherit;font-weight:700;font-size:17px;cursor:pointer;white-space:nowrap;transition:transform .2s,box-shadow .2s}
.pdf-vt .pdf-vt-play:hover,.pdf-vt .pdf-vt-play:focus-visible{transform:translate(-50%,-52%);box-shadow:0 10px 24px rgba(6,43,53,.3)}
.pdf-vt .pdf-vt-play:focus-visible{outline:3px solid #7fe0e0;outline-offset:3px}
.pdf-vt .pdf-vt-ico{width:0;height:0;border-style:solid;border-width:9px 0 9px 15px;border-color:transparent transparent transparent #0a5f66}
.pdf-vt .pdf-vt-hint{margin:16px 0 0;text-align:center;font-size:15px;color:#3f4550}
.pdf-vt .pdf-vt-how{padding-top:56px}
.pdf-vt .pdf-vt-steps{grid-template-columns:1fr}
.pdf-vt .pdf-vt-final{padding-bottom:104px;margin-bottom:0}
@media(min-width:768px){
.pdf-vt .pdf-vt-hero{padding-bottom:88px}
.pdf-vt .pdf-vt-frame{min-height:0;width:100%;box-sizing:border-box}
.pdf-vt .pdf-vt-steps{grid-template-columns:repeat(3,1fr)}
.pdf-vt .pdf-vt-how{padding-top:72px}
.pdf-vt .pdf-vt-final{padding-bottom:128px}
}
@media(max-width:767px){.pdf-vt .pdf-vt-frame{aspect-ratio:4/5;border-radius:28px}.pdf-vt .pdf-vt-play{padding:14px 22px;font-size:16px}}

/* 0.4.0 — cibles tactiles ≥ 44 px, pastilles lisibles */
.pdf-plus-tap{min-width:44px;min-height:44px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center}
.faq-list summary{min-height:44px;box-sizing:border-box;padding-top:12px;padding-bottom:12px}
@media(max-width:1023px){
 .elementor-element-000101e a.elementor-button,.elementor-element-0001023 a.elementor-button{min-height:44px;box-sizing:border-box;display:inline-flex;align-items:center}
}
.elementor-element-000102e p{font-size:13px!important}

/* 0.4.1 — Hébergements : placeholders élégants, comparateur, hero mobile allégé ; Contact : relief */
.pdf-x .pdf-x-ph{position:relative;overflow:hidden;background:radial-gradient(120% 90% at 20% 10%,#f6f1e7 0%,#e8f7f1 55%,#cfe6e2 100%);border:1px dashed rgba(10,95,102,.28);font-size:14px;letter-spacing:.02em}
.pdf-x .pdf-x-ph svg{width:44px;height:44px;padding:10px;border-radius:50%;background:#fff;box-shadow:0 6px 16px rgba(6,43,53,.12)}
.pdf-x .pdf-x-ph span{font-weight:600;color:#062b35}
.pdf-x .pdf-x-compare{margin-top:72px}
.pdf-x .pdf-x-compare h2{margin:0 0 8px}
.pdf-x .pdf-x-compare .pdf-x-headnote{margin:0 0 24px}
.pdf-x .pdf-x-tablewrap{overflow-x:auto;border-radius:28px;background:#f6f1e7;padding:8px 8px 4px}
.pdf-x .pdf-x-tablewrap:focus-visible{outline:3px solid #0a5f66;outline-offset:2px}
.pdf-x .pdf-x-table{width:100%;border-collapse:collapse;font-size:16px;color:#062b35}
.pdf-x .pdf-x-table th,.pdf-x .pdf-x-table td{padding:14px 16px;text-align:left;border-bottom:1px solid rgba(6,43,53,.1)}
.pdf-x .pdf-x-table thead th{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#0a5f66}
.pdf-x .pdf-x-table tbody tr:last-child th,.pdf-x .pdf-x-table tbody tr:last-child td{border-bottom:0}
.pdf-x .pdf-x-table tbody th{font-weight:700}
.pdf-x .pdf-x-table td:nth-child(4){font-weight:700;color:#0a5f66;white-space:nowrap}
.pdf-x .pdf-x-panel{box-shadow:0 24px 60px rgba(6,43,53,.12)}
.pdf-x .pdf-x-acc{box-shadow:0 14px 36px rgba(6,43,53,.08)}
.pdf-x .pdf-x-map{box-shadow:0 14px 36px rgba(6,43,53,.14)}
@media(max-width:767px){
 .pdf-hb .pdf-x-hero{padding-bottom:40px}
 .pdf-hb .pdf-x-feat-body>p:not(.pdf-x-tag):not(.pdf-x-featprice){display:none}
 .pdf-hb .pdf-x-chips li:nth-child(3){display:none}
 .pdf-hb .pdf-x-bar{margin-top:24px}
 .pdf-hb .pdf-x-bar a{flex:1 1 100%}
 .pdf-x .pdf-x-table th,.pdf-x .pdf-x-table td{padding:12px 10px;font-size:15px}
 .pdf-x .pdf-x-table thead th{font-size:12px}
 .pdf-x .pdf-x-compare{margin-top:48px}
}
/* pied de page tablette : cible tactile Découvrir */
.pdf-tap44{min-height:44px;display:inline-flex;align-items:center}

/* 0.4.1 — menu burger après scroll : une transform sur l'en-tête (animation de la démo) emprisonnait le panneau fixe */
@media(max-width:1024px){
 html body>header,html body header:has(.header-expanded),html body.pdf-scrolled>header,html body.pano-scrolled>header{transform:none!important;filter:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;will-change:auto!important}
 html body.pdf-open .elementor .header.header-expanded>.e-con.nav-links{position:fixed!important;top:var(--pdf-h,76px)!important;bottom:0!important;height:auto!important;max-height:calc(100dvh - var(--pdf-h,76px))}
}

/* 0.4.2 — l'animation d'entrée de l'en-tête (panoNavDrop) restait active et emprisonnait le menu ouvert après scroll */
@media(max-width:1024px){
 html body>header,html body header:has(.header-expanded){animation:none!important}
}

/* 0.4.3 — fiches hébergement + cartes entièrement cliquables */
.pdf-x .pdf-x-card{position:relative}
.pdf-x .pdf-x-card h3 a{color:inherit;text-decoration:none}
.pdf-x .pdf-x-card h3 a::after{content:"";position:absolute;inset:0;z-index:1;border-radius:28px}
.pdf-x .pdf-x-card .pdf-x-link{position:relative;z-index:2;display:inline-flex;align-items:center;min-height:44px}
.pdf-x .pdf-x-card:hover .pdf-x-plus{transform:rotate(90deg)}
.pdf-x .pdf-x-card:hover .pdf-x-card-img img{filter:brightness(1.04)}
.pdf-fc .pdf-fc-hero{padding-bottom:40px}
.pdf-fc .pdf-fc-crumb{margin:0 0 20px;font-size:14px;color:#cfe6e2}
.pdf-fc .pdf-fc-crumb a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.pdf-fc .pdf-fc-hero-grid{display:grid;gap:28px;align-items:center}
.pdf-fc .pdf-fc-hero-body h1{margin:0 0 14px;color:#fff;font-size:clamp(32px,5vw,56px);line-height:1.08}
.pdf-fc .pdf-fc-hero-img img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:28px}
.pdf-fc .pdf-fc-hero-ph .pdf-x-ph{display:flex;min-height:260px;border-radius:28px}
.pdf-fc .pdf-fc-h2{margin:0 0 16px;font-size:clamp(26px,3.4vw,38px)}
.pdf-fc .pdf-fc-grid{display:grid;gap:16px;grid-template-columns:1fr}
.pdf-fc .pdf-fc-ph{margin:0}
.pdf-fc .pdf-fc-ph img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:24px}
.pdf-fc .pdf-fc-two{display:grid;gap:28px}
.pdf-fc .pdf-fc-about{margin:0 0 14px;font-size:19px;line-height:1.6}
.pdf-fc .pdf-fc-card{background:#e8f7f1;border-radius:28px;padding:26px;box-shadow:0 10px 30px rgba(6,43,53,.08)}
.pdf-fc .pdf-fc-card h3{margin:0 0 14px;font-size:22px}
.pdf-fc .pdf-fc-card dl{margin:0 0 20px}
.pdf-fc .pdf-fc-card dl div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid rgba(6,43,53,.12)}
.pdf-fc .pdf-fc-card dt{color:#3d5a5f}.pdf-fc .pdf-fc-card dd{margin:0;font-weight:700;color:#062b35;text-align:right}
.pdf-fc .pdf-fc-lovegrid{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.pdf-fc .pdf-fc-lovegrid li{background:#fff;border-radius:24px;padding:24px;box-shadow:0 8px 24px rgba(6,43,53,.07)}
.pdf-fc .pdf-fc-lovegrid h3{margin:0 0 8px;font-size:20px}.pdf-fc .pdf-fc-lovegrid p{margin:0}
.pdf-fc .pdf-x-head{align-items:flex-end}
@media(min-width:768px){
.pdf-fc .pdf-fc-grid-2,.pdf-fc .pdf-fc-grid-3{grid-template-columns:repeat(3,1fr)}
.pdf-fc .pdf-fc-lovegrid{grid-template-columns:repeat(3,1fr)}
}
@media(min-width:1024px){
.pdf-fc .pdf-fc-hero-grid{grid-template-columns:1fr 1.05fr;gap:56px}
.pdf-fc .pdf-fc-two{grid-template-columns:1.5fr 1fr;gap:56px;align-items:start}
}

/* 0.4.5 — fiche : pas de débordement du héros sur mobile */
.pdf-fc .pdf-fc-hero-grid,.pdf-fc .pdf-fc-two,.pdf-fc .pdf-fc-grid,.pdf-fc .pdf-fc-lovegrid{grid-template-columns:minmax(0,1fr)}
.pdf-fc .pdf-fc-hero-grid>*,.pdf-fc .pdf-fc-two>*{min-width:0}
.pdf-fc .pdf-fc-hero .pdf-i-actions{flex-wrap:wrap}
@media(min-width:768px){.pdf-fc .pdf-fc-grid-2,.pdf-fc .pdf-fc-grid-3,.pdf-fc .pdf-fc-lovegrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1024px){.pdf-fc .pdf-fc-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}.pdf-fc .pdf-fc-two{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}}

/* 0.4.6 — section Avis (remplace le carrousel) : grille filtrable, sans défilement latéral */
.pdf-rv-host{padding:0!important;margin:0!important}
.pdf-rv{box-sizing:border-box;margin:clamp(24px,5vw,64px) clamp(12px,2.4vw,24px);border-radius:32px;background:#f6f1e7;color:#062b35;font-family:inherit;overflow:hidden}
.pdf-rv *{box-sizing:border-box}
.pdf-rv-in{max-width:1240px;margin:0 auto;padding:clamp(28px,5vw,64px) clamp(20px,4vw,48px);display:grid;gap:28px;grid-template-columns:minmax(0,1fr)}
.pdf-rv-eyebrow{margin:0 0 10px;font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#0a5f66}
.pdf-rv h2{margin:0 0 20px;font-size:clamp(30px,4.4vw,52px);line-height:1.08;color:#062b35}
.pdf-rv-score{display:flex;flex-direction:column;gap:4px;margin:0 0 22px}
.pdf-rv-stars{font-size:28px;letter-spacing:4px;color:#0a5f66;line-height:1}
.pdf-rv-score strong{font-size:20px}
.pdf-rv-score span:last-child{font-size:15px;color:#3d5a5f}
.pdf-rv-chips{display:flex;flex-wrap:wrap;gap:8px}
.pdf-rv-chips button{min-height:44px;padding:0 18px;border-radius:999px;border:1.5px solid #0a5f66;background:transparent;color:#0a5f66;font:inherit;font-weight:600;font-size:15px;cursor:pointer;transition:background .2s,color .2s}
.pdf-rv-chips button:hover{background:#e8f7f1}
.pdf-rv-chips button[aria-pressed="true"]{background:#0a5f66;color:#fff}
.pdf-rv-chips button:focus-visible{outline:3px solid #062b35;outline-offset:2px}
.pdf-rv-list{display:grid;gap:16px;grid-template-columns:minmax(0,1fr);align-content:start}
.pdf-rv-card{margin:0;padding:26px;border-radius:24px;background:#fff;box-shadow:0 8px 24px rgba(6,43,53,.08);display:flex;flex-direction:column;gap:18px;justify-content:space-between}
.pdf-rv-card[hidden]{display:none}
.pdf-rv-card blockquote{margin:0;font-size:18px;line-height:1.55;color:#062b35}
.pdf-rv-card blockquote::before{content:"“";display:block;font-size:56px;line-height:.6;color:#0a5f66;margin-bottom:8px;font-family:Georgia,serif}
.pdf-rv-feat{background:#062b35;color:#fff}
.pdf-rv-feat blockquote{color:#fff;font-size:clamp(20px,2.4vw,26px);line-height:1.4}
.pdf-rv-feat blockquote::before{color:#7fe3d0}
.pdf-rv-card figcaption{display:flex;align-items:center;gap:12px;font-size:14px}
.pdf-rv-av{flex:none;width:44px;height:44px;border-radius:50%;background:#e8f7f1;color:#0a5f66;display:grid;place-items:center;font-weight:700}
.pdf-rv-feat .pdf-rv-av{background:#0a5f66;color:#fff}
.pdf-rv-card figcaption b{display:block;font-size:15px}
.pdf-rv-card figcaption span span{color:#5b7378}
.pdf-rv-feat figcaption span span{color:#b9d6d3}
.pdf-rv-note{grid-column:1/-1;margin:0;font-size:13px;color:#5b7378}
@media(min-width:768px){.pdf-rv-list{grid-template-columns:repeat(2,minmax(0,1fr))}.pdf-rv-feat{grid-column:1/-1}}
@media(min-width:1024px){.pdf-rv-in{grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:56px}.pdf-rv-side{align-self:start;position:sticky;top:110px}}

/* 0.4.7 — avis : lisibilité carte vedette, pas d'italique, dernière carte pleine largeur */
.pdf-rv-card figcaption,.pdf-rv-card figcaption *{font-style:normal}
.pdf-rv-feat figcaption b{color:#fff}
@media(min-width:768px){.pdf-rv-list>.pdf-rv-card:nth-child(4){grid-column:1/-1}}

/* 0.4.8 — menu : « Découvrir » aligné sur la même ligne ; bouton Réserver lisible au survol */
@media(min-width:1025px){
html body header .nav-links>.nav-link{display:flex!important;align-items:center;height:44px}
html body header .nav-links>.nav-link>a.elementor-button{display:inline-flex!important;align-items:center;line-height:1.2}
}
html body header a.elementor-button[href*="reservit"]:hover,html body header a.elementor-button[href*="reservit"]:focus-visible,html body header a.pdf-nav-book:hover{background:#fff!important;color:#062b35!important;box-shadow:0 0 0 2px #7fe3d0}

/* 0.4.8 — en-tête collant : pas de décalage (animation d'entrée figée à -24px hors accueil) */
html body.pdf-scrolled header,html body.pano-scrolled header{animation:none!important;transform:none!important}
html body.pdf-scrolled header,html body.pano-scrolled header{top:0!important}
html body.pdf-scrolled header .header-book a.elementor-button,html body.pano-scrolled header .header-book a.elementor-button{background:#fff!important}
html body.pdf-scrolled.pdf-scrolled header .header .header-book a.elementor-button:hover{background:#e8f7f1!important;color:#062b35!important}
html body.pano-motion-live.pano-scrolled.pdf-scrolled>header{top:0!important;animation:none!important;transform:none!important}

/* 0.4.13 — icônes tricolores (bibliothèque assets/icons) sur pastille claire */
.pdf-ico-wrap{display:inline}
.pdf-ico{display:inline-block;box-sizing:content-box;width:1.15em;height:1.15em;padding:.32em;margin-right:.5em;border-radius:999px;background:#fffbf2;vertical-align:middle;flex:none;object-fit:contain}
.pdf-ico:last-child{margin-right:0}
.pdf-ico-star{padding:0;background:none;width:1.1em;height:1.1em;margin-right:2px;border-radius:0}
.pdf-rv-stars{display:inline-flex;gap:2px;font-size:22px;letter-spacing:0;line-height:1}
.pdf-rv-stars .pdf-ico-star{width:1em;height:1em;margin:0}
.pdf-ico-arrow{padding:.2em;margin:0 0 0 .4em}
.phone-search .pdf-ico{margin:0;padding:.2em}
.pdf-ico-bare{display:block;width:26px;height:26px;padding:0;margin:0;background:none;border-radius:0}
.pdf-x .pdf-x-ph .pdf-ico-bare{width:44px;height:44px;padding:9px;border-radius:50%;background:#fff;box-sizing:border-box;box-shadow:0 6px 16px rgba(6,43,53,.12)}
/* 0.4.14 — Réserver (en-tête) : fond blanc + texte foncé aussi en haut de page, toutes pages */
html body header .header-book a.elementor-button,html body header .header-book a.elementor-button .elementor-button-text{background-color:#fff!important;color:#062b35!important}
html body header .header-book a.elementor-button:hover,html body header .header-book a.elementor-button:focus-visible{background-color:#e8f7f1!important;box-shadow:0 0 0 2px #7fe3d0}
.pdf-ico-bare{width:30px;height:30px}
/* 0.4.16 — pastilles rondes alignées (héros accueil / le camping) */
html body .pdf-ico{border-radius:50%!important;background:#fffbf2!important;object-fit:contain}
html body .elementor-widget-text-editor p:has(>.pdf-ico-wrap){display:inline-flex;align-items:center;gap:12px;margin:0}
html body .elementor-widget-text-editor p>.pdf-ico-wrap{display:inline-flex;align-items:center;gap:12px}
html body .elementor-widget-text-editor p>.pdf-ico-wrap>.pdf-ico:not(.pdf-ico-star):not(.pdf-ico-arrow){box-sizing:border-box;width:42px;height:42px;padding:8px;margin:0;flex:none;box-shadow:0 4px 14px rgba(0,0,0,.25)}
/* 0.4.18 — icône de recherche du téléphone : taille fixe (elle étirait l'écran et masquait les photos) */
html body .phone-search .pdf-ico{width:16px!important;height:16px!important;min-height:0!important;max-height:16px!important;padding:2px!important;margin:0!important;box-sizing:border-box!important;display:inline-block!important;vertical-align:middle}
html body .phone-search span{display:inline-flex!important;align-items:center}

/* 0.4.20 — mobile : boutons parfaitement centrés dans toutes les sections */
@media(max-width:767px){
html body .elementor-widget-button .elementor-button-wrapper{display:flex!important;justify-content:center!important;text-align:center!important;width:100%}
html body .elementor-widget-button .elementor-button{margin-left:auto!important;margin-right:auto!important;justify-content:center;text-align:center}
html body .pdf-i-actions,html body .pdf-u-cta,html body .pdf-vt-actions,html body .pdf-x-feat-body .pdf-i-btn{justify-content:center!important;align-items:center!important;text-align:center}
html body .pdf-i-actions,html body .pdf-u-cta{display:flex!important;flex-direction:column;align-items:center!important}
html body .pdf-i-btn,html body .pdf-u-btn{justify-content:center;text-align:center;margin-left:auto!important;margin-right:auto!important}
html body .pdf-x-feat-body .pdf-i-btn{display:flex;width:fit-content}
}
@media(max-width:767px){
html body .e-con:has(>.elementor-widget-button){justify-content:center!important;align-items:center!important;align-content:center!important;text-align:center!important}
html body .e-con.e-con-full:has(>.elementor-widget-button):not([class*=row]){align-items:center!important}
html body .e-con>.elementor-widget-button{margin-left:auto!important;margin-right:auto!important;align-self:center!important;width:auto!important;max-width:100%}
}
@media(max-width:767px){html body .pdf-x-form .pdf-i-btn{display:flex!important;margin-left:auto!important;margin-right:auto!important;justify-content:center}}

/* 0.4.23 — Réserver en-tête identique partout : fond turquoise, texte blanc, y compris survol ; petit espace blanc sous le menu sur les sous-pages */
html body header .header-book a.elementor-button,html body.pdf-scrolled header .header-book a.elementor-button,html body.pano-scrolled header .header-book a.elementor-button,html body.pdf-scrolled.pdf-scrolled header .header .header-book a.elementor-button.elementor-button-link{background:#00767A!important;background-color:#00767A!important;color:#fff!important;box-shadow:none!important}
html body header .header-book a.elementor-button .elementor-button-text,html body header .header-book a.elementor-button .elementor-button-content-wrapper,html body.pdf-scrolled.pdf-scrolled header .header .header-book a.elementor-button .elementor-button-text{background:transparent!important;background-color:transparent!important;color:#fff!important}
html body header .header-book a.elementor-button:hover,html body header .header-book a.elementor-button:focus-visible,html body.pdf-scrolled.pdf-scrolled header .header .header-book a.elementor-button:hover{background:#00696d!important;background-color:#00696d!important;color:#fff!important;box-shadow:none!important}
html body header .header-book a.elementor-button:hover .elementor-button-text{color:#fff!important;background:transparent!important}
html body:not(.home):not(.pano-accueil){padding-top:calc(var(--pdf-h,76px) + 12px)!important;background:#fff}

/* 0.4.25 — choix Florin : Réserver blanc / texte vert foncé ; survol turquoise / texte blanc (identique partout) */
html body header .header-book a.elementor-button,html body.pdf-scrolled header .header-book a.elementor-button,html body.pano-scrolled header .header-book a.elementor-button,html body.pdf-scrolled.pdf-scrolled header .header .header-book a.elementor-button.elementor-button-link{background:#fff!important;background-color:#fff!important;color:#062b35!important;box-shadow:none!important;transition:background-color .2s,color .2s}
html body header .header-book a.elementor-button .elementor-button-text,html body header .header-book a.elementor-button .elementor-button-content-wrapper,html body.pdf-scrolled.pdf-scrolled header .header .header-book a.elementor-button .elementor-button-text{background:transparent!important;background-color:transparent!important;color:inherit!important}
html body header .header-book a.elementor-button:hover,html body header .header-book a.elementor-button:focus-visible,html body.pdf-scrolled header .header-book a.elementor-button:hover,html body.pano-scrolled header .header-book a.elementor-button:hover,html body.pdf-scrolled.pdf-scrolled header .header .header-book a.elementor-button:hover{background:#00ADB3!important;background-color:#00ADB3!important;color:#fff!important;box-shadow:none!important}
html body header .header-book a.elementor-button:hover .elementor-button-text,html body header .header-book a.elementor-button:hover .elementor-button-content-wrapper{color:#fff!important;background:transparent!important}

/* 0.4.26 — priorité maximale : Réserver blanc au repos / turquoise au survol, sur toutes les pages et états */
html body.pdf-scrolled.pdf-scrolled.pdf-scrolled header .header a.elementor-button[href*="reservit"],html body:not(.zz) header .header a.elementor-button[href*="reservit"],html body:not(.zz):not(.yy) header .header .nav-link a.elementor-button[href*="reservit"]:not(:hover){background:#fff!important;background-color:#fff!important;color:#062b35!important}
html body:not(.zz):not(.yy) header .header a.elementor-button[href*="reservit"]:not(:hover) .elementor-button-text{color:#062b35!important}
html body:not(.zz):not(.yy) header .header a.elementor-button[href*="reservit"]:hover,html body.pdf-scrolled.pdf-scrolled.pdf-scrolled header .header a.elementor-button[href*="reservit"]:hover{background:#00ADB3!important;background-color:#00ADB3!important;color:#fff!important}
html body:not(.zz):not(.yy) header .header a.elementor-button[href*="reservit"]:hover .elementor-button-text{color:#fff!important}

/* 0.4.27 — héros : coins arrondis en haut aussi (Infos pratiques) */
html body .pdf-i-hero{border-radius:32px!important;overflow:hidden}
@media(max-width:767px){html body .pdf-i-hero{border-radius:24px!important}}

/* 0.4.28 — Blog + article (gabarits plugin-fixes/templates/blog.html, article.html) */
.pdf-bl .pdf-bl-hero{padding:96px 0 56px;text-align:center}
.pdf-bl .pdf-bl-hero h1,.pdf-bl .pdf-bl-hero .pdf-i-lead{margin-left:auto;margin-right:auto}
.pdf-bl ul{list-style:none;margin:0;padding:0}
.pdf-bl a{color:inherit}
.pdf-bl .pdf-bl-meta{display:flex;align-items:center;gap:12px;margin:0;font-size:14px;color:#4b6470}
.pdf-bl .pdf-bl-chip{display:inline-flex;align-items:center;padding:6px 14px;border-radius:999px;background:#e8f7f1;color:#062b35;font-weight:700;font-size:14px}
.pdf-bl .pdf-bl-feat{display:grid;gap:24px;align-items:center;margin-bottom:40px}
.pdf-bl .pdf-bl-feat-img,.pdf-bl .pdf-bl-img{display:block;overflow:hidden;border-radius:24px}
.pdf-bl .pdf-bl-feat-img img,.pdf-bl .pdf-bl-img img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:16/10;transition:transform .5s}
.pdf-bl .pdf-bl-feat-img:hover img,.pdf-bl .pdf-bl-img:hover img{transform:scale(1.04)}
.pdf-bl .pdf-bl-feat h2{margin:0 0 12px;font-size:clamp(26px,3.4vw,38px);line-height:1.12}
.pdf-bl .pdf-bl-feat h2 a,.pdf-bl .pdf-bl-card h3 a{text-decoration:none}
.pdf-bl .pdf-bl-feat p{margin:0 0 16px;color:#3f5560}
.pdf-bl .pdf-bl-duo,.pdf-bl .pdf-bl-grid{display:grid;gap:28px}
.pdf-bl .pdf-bl-card{display:grid;gap:14px;align-content:start}
.pdf-bl .pdf-bl-card h3{margin:0 0 6px;font-size:21px;line-height:1.2}
.pdf-bl .pdf-bl-card p{margin:0 0 12px;color:#3f5560}
.pdf-bl .pdf-bl-card .pdf-bl-meta{margin:0}
.pdf-bl .pdf-bl-newsbox{border-radius:32px;padding:44px 32px;color:#fff;background-size:cover;background-position:center;background-color:#062b35}
.pdf-bl .pdf-bl-newsbox h2{margin:0 0 10px;color:#fff;font-size:clamp(26px,3.4vw,38px)}
.pdf-bl .pdf-bl-newsbox p{margin:0 0 20px;max-width:52ch;color:#e6f3f1}
.pdf-bl .pdf-bl-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}
.pdf-bl .pdf-bl-head h2{margin:0}
.pdf-bl .pdf-bl-filters{display:flex;flex-wrap:wrap;gap:8px;padding:6px;border-radius:999px;background:#f3faf7}
.pdf-bl .pdf-bl-filter{appearance:none;border:0;background:transparent;color:#062b35;font:inherit;font-weight:700;padding:9px 18px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s}
.pdf-bl .pdf-bl-filter:hover{background:#d7f0e6}
.pdf-bl .pdf-bl-filter.is-on{background:#062b35;color:#fff}
.pdf-bl .pdf-bl-card[hidden]{display:none}
.pdf-bl .pdf-i-final{text-align:center}
@media(min-width:768px){
.pdf-bl .pdf-bl-feat{grid-template-columns:1.25fr 1fr;gap:40px}
.pdf-bl .pdf-bl-duo{grid-template-columns:1fr 1fr}
.pdf-bl .pdf-bl-grid{grid-template-columns:1fr 1fr}
.pdf-bl .pdf-bl-duo .pdf-bl-card{grid-template-columns:.9fr 1fr;align-items:center}
}
@media(min-width:1025px){.pdf-bl .pdf-bl-grid{grid-template-columns:repeat(3,1fr)}}
.pdf-ba .pdf-ba-head{padding:24px 0 8px;text-align:center}
.pdf-ba .pdf-ba-head .pdf-bl-meta{justify-content:center;margin-bottom:16px}
.pdf-ba .pdf-ba-head h1{margin:0 auto 14px;max-width:20ch;color:#062b35;font-size:clamp(32px,5vw,52px)}
.pdf-ba .pdf-ba-lead{margin:0 auto;max-width:60ch;font-size:clamp(17px,2vw,20px);color:#3f5560}
.pdf-ba .pdf-ba-cover{max-width:1180px;margin:32px auto 0;padding:0 20px}
.pdf-ba .pdf-ba-cover img{display:block;width:100%;max-height:520px;object-fit:cover;border-radius:28px}
.pdf-ba .pdf-ba-body{max-width:760px;padding:48px 20px 24px}
.pdf-ba .pdf-ba-body h2{margin:0 0 14px;font-size:clamp(26px,3.2vw,34px);color:#062b35}
.pdf-ba .pdf-ba-body h3{margin:32px 0 10px;font-size:22px;color:#062b35}
.pdf-ba .pdf-ba-body p,.pdf-ba .pdf-ba-body li{font-size:18px;line-height:1.7;color:#33505c}
.pdf-ba .pdf-ba-body ul{list-style:disc;padding-left:22px;margin:0 0 18px}
.pdf-ba .pdf-ba-fig{margin:28px 0}
.pdf-ba .pdf-ba-fig img{display:block;width:100%;border-radius:20px}
.pdf-ba .pdf-ba-fig figcaption{margin-top:8px;font-size:14px;color:#4b6470;text-align:center}
.pdf-ba blockquote{margin:28px 0;padding:28px 30px;border-radius:24px;background:#062b35;color:#fff;font-size:clamp(20px,2.6vw,26px);font-weight:700;line-height:1.35;text-align:center}
.pdf-ba .pdf-ba-note{font-size:14px!important;color:#4b6470!important;font-style:italic}
.pdf-ba .pdf-ba-cta{margin-top:24px}
.pdf-ba .pdf-bl-grid3{grid-template-columns:1fr}
@media(min-width:768px){.pdf-ba .pdf-bl-grid3{grid-template-columns:repeat(3,1fr)}.pdf-ba .pdf-bl-grid3 .pdf-bl-card{grid-template-columns:none}}

/* 0.4.29 vidéo du camping (page Le camping) */
html body .pdf-vid{width:100%;padding:56px 20px 8px;box-sizing:border-box}
html body .pdf-vid-in{max-width:1180px;margin:0 auto}
html body .pdf-vid-head{text-align:center;margin:0 auto 26px;max-width:720px}
html body .pdf-vid-head .pdf-vid-eyebrow{margin:0 0 8px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#0a5f66}
html body .pdf-vid-head h2{margin:0 0 10px;font-size:clamp(26px,3.4vw,40px);line-height:1.15;color:#062b35}
html body .pdf-vid-head p{margin:0;color:#4a5b60;font-size:17px;line-height:1.55}
html body .pdf-vid-frame{position:relative;border-radius:28px;overflow:hidden;background:#062b35;aspect-ratio:16/9;box-shadow:0 18px 50px rgba(6,43,53,.18)}
html body .pdf-vid-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
html body .pdf-vid-sound{position:absolute;right:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;padding:10px 16px 10px 12px;border:0;border-radius:999px;background:#fff;color:#062b35;font:600 14px/1 inherit;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.25);transition:background .2s,color .2s}
html body .pdf-vid-sound:hover,html body .pdf-vid-sound:focus-visible{background:#00ADB3;color:#fff}
html body .pdf-vid-sound svg{width:20px;height:20px;flex:none}
html body .pdf-vid-sound .pdf-vid-on{display:none}
html body .pdf-vid-sound.is-on .pdf-vid-on{display:block}
html body .pdf-vid-sound.is-on .pdf-vid-off{display:none}
@media(max-width:767px){html body .pdf-vid{padding:40px 16px 0}html body .pdf-vid-frame{border-radius:20px;aspect-ratio:4/3}html body .pdf-vid-sound{right:12px;bottom:12px;padding:9px 14px 9px 10px;font-size:13px}}
html body .pdf-ba .pdf-ba-cover{align-self:center;width:min(1180px,100%);box-sizing:border-box;margin-left:auto!important;margin-right:auto!important}

/* 0.4.30 jamais d'image collée au pied de page : espace sous la dernière section */
html body .elementor-location-footer{margin-top:0}
html body .e-con.image-cta:last-child,html body .elementor > .e-con.e-parent:last-child{margin-bottom:56px!important}
@media(max-width:767px){html body .e-con.image-cta:last-child,html body .elementor > .e-con.e-parent:last-child{margin-bottom:36px!important}}

/* 0.4.31 police de la charte sur la section vidéo */
html body .pdf-vid,html body .pdf-vid *{font-family:Evolventa,Arial,sans-serif}

/* 0.4.32 blog/article : début de page sous l'en-tête fixe */
html body.pano-blog .pdf-bl>:first-child{margin-top:60px}
@media(max-width:767px){html body.pano-blog .pdf-bl>:first-child{margin-top:40px}}

/* 0.4.33 espace entre la vidéo et la galerie ; textes sous les photos alignés en haut ; bouton son aux couleurs de la charte */
html body .pdf-vid{padding-bottom:64px}
@media(max-width:767px){html body .pdf-vid{padding-bottom:40px}}
html body .elementor-element-0001149{align-items:flex-start!important}
html body .elementor-element-0001149>.e-con{justify-content:flex-start!important;align-self:flex-start!important}
html body .pdf-vid-sound,html body .pdf-vid-sound:focus,html body .pdf-vid-sound:active,html body .pdf-vid-sound.is-on{background:#fff!important;color:#062b35!important;outline:0}
html body .pdf-vid-sound:hover,html body .pdf-vid-sound:focus-visible{background:#00ADB3!important;color:#fff!important}

/* 0.4.35 — mobile : menu haut escamotable + barre du bas plus fine */
@media(max-width:900px){
 html body>header,html body .elementor-location-header{transition:background .25s,box-shadow .25s,transform .3s ease!important}
 
 .pdf-bar{padding:6px 12px calc(6px + env(safe-area-inset-bottom))!important;gap:8px}
 .pdf-bar a{min-height:44px!important;font-size:15px!important}
}
@media(max-width:900px) and (prefers-reduced-motion:reduce){html body>header{transition:none!important}}
@media(max-width:900px){
 
}
/* 0.4.36 — mobile : bandeau sticky = logo + même marge dessus/dessous (marge basse de 36px supprimée) */
@media(max-width:900px){
 html body>header .elementor-location-header>.elementor>.elementor-element,html body>header .elementor.elementor-655>.elementor-element,html body>header .elementor.elementor-655>.e-con{margin-bottom:0!important}
}
/* 0.4.37 — la marge "avant pied de page" ne doit jamais toucher le conteneur du menu */
html body>header .elementor.elementor-655>.e-con.e-parent:last-child,html body>header .elementor>.e-con.e-parent:last-child,html body>header .elementor-location-header .e-con.e-parent:last-child{margin-bottom:0!important}

/* 0.4.39 — mobile/tablette : menu sticky compact au défilement (56 px), accueil compris */
@media(max-width:900px){
 html body.pdf-scrolled:not(.pdf-open)>header .header{height:56px!important;padding:6px 0!important;min-height:0!important}
 html body.pdf-scrolled:not(.pdf-open)>header .header .e-con,html body.pdf-scrolled:not(.pdf-open)>header .header .elementor-widget-image{height:auto!important;min-height:0!important;max-height:44px!important}
 html body.pdf-scrolled:not(.pdf-open)>header img{height:42px!important;max-height:42px!important;width:auto!important}
 html body.pdf-scrolled:not(.pdf-open)>header .elementor-location-header>.elementor>.e-con,html body.pdf-scrolled:not(.pdf-open)>header .elementor.elementor-655>.e-con{height:56px!important;min-height:0!important;padding-top:6px!important;padding-bottom:6px!important;box-sizing:border-box}
 html body.pdf-scrolled:not(.pdf-open)>header .pdf-burger{width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;flex:0 0 40px!important}
 html body>header .header,html body>header img{transition:height .25s,padding .25s,max-height .25s}
}

/* 0.4.41 — barre mobile du bas plus fine (même principe que le menu du haut) : 3 boutons conservés, ~46 px */
@media(max-width:900px){
 html body .pdf-bar{padding:6px 12px calc(6px + env(safe-area-inset-bottom))!important;gap:8px!important}
 html body .pdf-bar a{min-height:34px!important;height:34px;padding:0 10px!important;font-size:14px!important;line-height:1!important}
}

/* 0.4.44 — titres équilibrés (pas de mot ou de ponctuation orphelin), zone tactile de la barre mobile ≈ 46 px sans changer son aspect */
h1,h2,h3,h4,summary{text-wrap:balance}
p,li{text-wrap:pretty}
a[href^="tel"]{white-space:nowrap}
@media(max-width:900px){
 html body .pdf-bar a{position:relative}
 html body .pdf-bar a::after{content:"";position:absolute;left:-4px;right:-4px;top:-6px;bottom:-6px}
}

/* 0.4.45 — fiches hébergement : plus de fil d’Ariane « Hébergements › … » en haut (retour via le menu) */
.pdf-fc-crumb{display:none!important}

/* 0.4.46 — comparateur Hébergements sur petit mobile : une carte par hébergement (plus de tableau comprimé) */
@media(max-width:600px){
 html body .pdf-x .pdf-x-tablewrap{overflow:visible;background:transparent;padding:0;border-radius:0}
 html body .pdf-x .pdf-x-table,html body .pdf-x .pdf-x-table tbody{display:block;width:100%}
 html body .pdf-x .pdf-x-table thead{display:none}
 html body .pdf-x .pdf-x-table tbody tr{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px 10px;background:#f6f1e7;border-radius:20px;padding:16px 16px 14px;margin:0 0 12px}
 html body .pdf-x .pdf-x-table tbody th{grid-column:1/-1;padding:0 0 8px;border:0;font-size:18px;line-height:1.25}
 html body .pdf-x .pdf-x-table tbody td{display:block;padding:8px 0 0;border:0;border-top:1px solid rgba(6,43,53,.12);font-size:16px;font-weight:700;white-space:nowrap}
 html body .pdf-x .pdf-x-table tbody td::before{display:block;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#0a5f66;margin-bottom:2px}
 html body .pdf-x .pdf-x-table tbody td:nth-of-type(1)::before{content:"Surface"}
 html body .pdf-x .pdf-x-table tbody td:nth-of-type(2)::before{content:"Couchages"}
 html body .pdf-x .pdf-x-table tbody td:nth-of-type(3)::before{content:"À partir de"}
 html body .pdf-x .pdf-x-table tbody td:nth-child(4){color:#0a5f66}
}

/* 0.4.47 — bouton « Voir l'hébergement » du comparateur (mobile uniquement) */
.pdf-x .pdf-x-table td.pdf-x-cta{display:none}
@media(max-width:600px){
 html body .pdf-x .pdf-x-table tbody td.pdf-x-cta{display:block;grid-column:1/-1;padding:12px 0 0;margin-top:6px;border-top:1px solid rgba(6,43,53,.12)}
 html body .pdf-x .pdf-x-table tbody td.pdf-x-cta::before{content:none}
 html body .pdf-x .pdf-x-table td.pdf-x-cta a{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:999px;background:#0a5f66;color:#fff;font-size:15px;font-weight:700;text-decoration:none}
 html body .pdf-x .pdf-x-table td.pdf-x-cta a:hover,html body .pdf-x .pdf-x-table td.pdf-x-cta a:focus-visible{background:#062b35;color:#fff}
}

/* 0.4.54 — hero accueil : le slogan (bas) doit se voir clairement plus grand
   que les repères (Résidence du plein air / Piscine / Hébergements / Vue
   panoramique) : écart de taille agrandi + le slogan seul en gras, les
   repères en graisse normale, pour que la différence soit sans ambiguïté.
   Cause du "aucune différence" en 0.4.53 : design.css du plugin de base
   fixe le <p> des repères lui-même (pas le widget) via
   ".pano-accueil .elementor .hero .hero-landmarks p{font-size:clamp(...)!important}"
   — plus spécifique que notre règle posée sur le widget, donc elle gagnait
   silencieusement (une valeur directe sur l'élément bat toujours l'héritage,
   quelle que soit la spécificité du parent). Une autre règle voisine impose
   aussi font-weight:700 sur ces <p>, ce qui explique le gras non désiré.
   Correction : cibler le <p> lui-même avec une spécificité au moins égale
   (5 classes ici contre 4 côté design.css). */
html body .elementor-element-0001029 p{font-size:22px!important;font-weight:700!important}
body.pano-accueil .elementor-element.elementor-element-000102a.elementor-widget.elementor-widget-text-editor p,
body.pano-accueil .elementor-element.elementor-element-000102b.elementor-widget.elementor-widget-text-editor p,
body.pano-accueil .elementor-element.elementor-element-000102c.elementor-widget.elementor-widget-text-editor p,
body.pano-accueil .elementor-element.elementor-element-000102d.elementor-widget.elementor-widget-text-editor p{font-size:14px!important;font-weight:400!important}

/* 0.4.59 pied de page : logo plus grand, sans cadre blanc (demande Florin : logo seul, pas dans un carré) */
html body .footer-brand>.elementor-element-0001014{width:220px!important;flex-basis:220px!important}
html body .footer-brand img.wp-image-678{width:220px!important;height:auto!important;padding:0!important;background:transparent!important;border-radius:0!important}

/* 0.4.60 pied de page mobile : logo et texte centrés, logo réduit pour rester proportionné à l'écran (demande Florin : plus joli centré, pas trop énorme sur téléphone) */
@media(max-width:767px){
 html body .footer-brand{align-items:center!important;text-align:center!important}
 html body .footer-brand>.elementor-element-0001014{width:150px!important;flex-basis:150px!important;margin-left:auto!important;margin-right:auto!important}
 html body .footer-brand img.wp-image-678{width:150px!important}
 html body .footer-brand p{text-align:center!important}
}


/* 0.4.63 — SEQ 002 : bloc « Avis voyageurs » de démonstration masqué (faux avis / « Note Google à importer »).
   À remplacer par des avis réels vérifiables (source identifiée) avant production. Le code du bloc est conservé (templates/avis-home.html). */
.pdf-rv-host{display:none!important}


/* 0.4.66 — logo permanent du héros (accueil) : emplacement réservé (pas de CLS), apparition douce après l'intro */
.pdf-hero-logo{position:static;display:block;flex:0 0 auto;width:var(--pdf-logo);height:var(--pdf-logo);margin:auto;object-fit:contain;opacity:0;pointer-events:none;filter:drop-shadow(0 10px 18px rgba(0,0,0,.30));max-width:none}
.pdf-hero-logo.is-in{opacity:1;animation:pdfLogoIn .9s cubic-bezier(.22,1,.36,1) both}
@keyframes pdfLogoIn{0%{opacity:0;transform:translateY(14px) scale(.78)}60%{opacity:1;transform:translateY(-4px) scale(1.03)}100%{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.pdf-hero-logo.is-in{animation:none}}

/* 0.4.68 — photo de héros d'essai (piscine, vraie photo du camping) ; l'image Elementor d'origine reste en place : retirer ce bloc = retour à l'ancienne image */
html body.pano-accueil .elementor-element-0001030.hero{background-image:url('img/hero-piscine-panorama-castellane.webp')!important;background-size:cover!important;background-position:50% 58%!important}

/* 0.4.71 — héros de l'accueil : TOUT tient dans le premier écran (photo, texte, logo, ligne fine ET bandeau défilant) sur ordinateur, tablette et téléphone.
   Tailles pilotées par la hauteur de l'écran (vh) ; testé 1920x1080, 1440x900, 1280x720, 1024x768, 768x1024, 412x915, 390x844, 360x740.
   Surcouche teintée sur la photo pour retrouver l'ambiance sombre/teal d'origine et garder le texte lisible. */
@media (max-width:600px){
 html body.pano-accueil .elementor .e-con.hero{height:calc(100svh - 24px - 63px)!important;min-height:0!important;padding:clamp(84px,11.2vh,96px) 18px 14px!important;gap:clamp(8px,1.3vh,12px)!important}
 html body.pano-accueil .elementor .hero h1.elementor-heading-title{font-size:clamp(25px,3.9vh,32px)!important;line-height:1.1!important}
 html body.pano-accueil .elementor .hero-caption p{font-size:clamp(12.5px,1.75vh,15px)!important;line-height:1.38!important}
 html body.pano-accueil .elementor .hero .elementor-element-0001028 a{padding-top:12px!important;padding-bottom:12px!important}
 html body.pano-accueil .elementor .e-con.hero{--pdf-logo:clamp(66px,11.2vh,100px)}
 html body.pano-accueil .elementor .hero>.hero-bottom{padding-top:0!important;gap:6px!important}
 html body.pano-accueil .elementor .hero-bottom .elementor-element-0001029 p{font-size:clamp(15.5px,2.4vh,20px)!important;line-height:1.25!important}
 html body.pano-accueil .elementor .hero-bottom .elementor-element-0001029 span{font-size:12.5px!important;margin-top:clamp(6px,1.2vh,12px)!important}
}
html body.pano-accueil .elementor .hero:before{background:linear-gradient(180deg,rgba(6,43,53,.66) 0%,rgba(6,43,53,.46) 38%,rgba(6,43,53,.52) 62%,rgba(2,25,23,.82) 100%)!important}
@media (min-width:601px){
 html body.pano-accueil .elementor .e-con.hero{height:calc(100svh - 108px)!important;min-height:0!important;padding:clamp(92px,12.5vh,140px) 40px 18px!important;gap:clamp(8px,1.5vh,16px)!important}
 html body.pano-accueil .elementor .hero h1.elementor-heading-title{font-size:clamp(36px,min(7vh,8vw),80px)!important;line-height:1.1!important}
 html body.pano-accueil .elementor .hero-caption p{font-size:clamp(14px,min(1.9vh,2.2vw),18px)!important;line-height:1.4!important}
 html body.pano-accueil .elementor .e-con.hero{--pdf-logo:clamp(80px,min(14vh,16vw),180px)}
 html body.pano-accueil .elementor .hero>.hero-bottom{padding-top:0!important;gap:8px!important}
 html body.pano-accueil .elementor .hero-bottom .elementor-element-0001029 p{font-size:clamp(15.5px,min(2.2vh,2.6vw),20px)!important;line-height:1.25!important}
 html body.pano-accueil .elementor .hero-bottom .elementor-element-0001029 span{font-size:clamp(12.5px,1.6vh,14px)!important;margin-top:clamp(8px,1.8vh,18px)!important}
}

/* 0.4.72 — logo du héros : élément du héros placé entre le bouton et la phrase ; l'espace libre se répartit à égalité au-dessus et en dessous => centré sur tous les formats */
html body.pano-accueil .elementor .e-con.hero{justify-content:flex-start!important}
html body.pano-accueil .elementor .e-con.hero>.e-con.hero-bottom{margin-top:0!important}
html body.pano-accueil .elementor .hero>.pdf-hero-logo{margin:auto!important}

/* 0.4.74 — titre H1 du héros : taille fluide (ni trop gros ni trop petit) et distance garantie sous le menu, sur tous les formats (sélecteurs .panel pour passer devant les anciennes règles) */
@media (min-width:601px){
 html body.pano-accueil .elementor .e-con.hero.panel{padding-top:clamp(118px,17vh,160px)!important}
 html body.pano-accueil .elementor .e-con.hero.panel h1.elementor-heading-title{font-size:clamp(32px,min(6.1vh,7.2vw),76px)!important}
}
@media (max-width:600px){
 html body.pano-accueil .elementor .e-con.hero.panel{padding-top:clamp(100px,14.2vh,116px)!important}
 html body.pano-accueil .elementor .e-con.hero.panel h1.elementor-heading-title{font-size:clamp(25px,min(8.6vw,3.9vh),33px)!important}
}

/* 0.4.75 — héros : phrase plus petite sur téléphone, logo un peu plus grand, formats paysage (téléphone/tablette). Testé en direct : 1920x1080, 1440x900, 1366x768, 1280x720, 1180x820, 1100x640, 1024x768, 1024x600, 960x540, 820x1180, 768x1024, 915x412, 844x390, 812x375, 667x375, 412x915, 390x844, 375x812, 375x667, 360x740 */
@media (max-width:600px){
 html body.pano-accueil .elementor .e-con.hero.panel{--pdf-logo:clamp(84px,15vh,136px)}
 html body.pano-accueil .elementor .hero-bottom .elementor-element-0001029 p{font-size:clamp(13.5px,1.9vh,16px)!important}
}
@media (min-width:601px){
 html body.pano-accueil .elementor .e-con.hero.panel{--pdf-logo:clamp(104px,min(21vh,26vw),280px)}
}
@media (min-width:601px) and (max-height:820px){
 html body.pano-accueil .elementor .e-con.hero.panel{--pdf-logo:clamp(90px,min(15.5vh,20vw),170px)}
}
@media (min-width:601px) and (max-height:700px){
 html body.pano-accueil .elementor .e-con.hero.panel{--pdf-logo:clamp(86px,min(17vh,21vw),190px)}
}
@media (orientation:landscape) and (max-height:430px){
 html body.pano-accueil .elementor .e-con.hero.panel{height:calc(100svh - 108px)!important;min-height:0!important;padding:90px 24px 8px!important;gap:5px!important;--pdf-logo:42px}
 html body.pano-accueil .elementor .e-con.hero.panel h1.elementor-heading-title{font-size:clamp(20px,5.8vh,26px)!important;line-height:1.1!important}
 html body.pano-accueil .elementor .hero h1 br{display:none!important}
 html body.pano-accueil .elementor .hero-caption{display:none!important}
 html body.pano-accueil .elementor .hero-bottom .elementor-element-0001029 p{font-size:14px!important}
 html body.pano-accueil .elementor .hero-bottom .elementor-element-0001029 span{font-size:11.5px!important;margin-top:4px!important}
}
@media (orientation:landscape) and (max-height:400px){
 html body.pano-accueil .elementor .hero>.pdf-hero-logo{display:none!important}
}
@media (orientation:landscape) and (min-height:431px) and (max-height:620px){
 html body.pano-accueil .elementor .e-con.hero.panel{padding-top:100px!important;--pdf-logo:clamp(58px,14vh,88px)}
 html body.pano-accueil .elementor .e-con.hero.panel h1.elementor-heading-title{font-size:clamp(24px,5.4vh,34px)!important}
 html body.pano-accueil .elementor .hero h1 br{display:none!important}
 html body.pano-accueil .elementor .hero-caption p{font-size:13px!important}
}

/* 0.4.80 — en-tete : seul le logo reste (cliquable vers l'accueil) ; le nom reste lisible pour les lecteurs d'ecran */
html body .elementor .e-con.brand>.elementor-element-0001002{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;padding:0!important;border:0!important}
html body .elementor .e-con.brand a.pdf-logo-link{display:block;line-height:0;border-radius:50%}
html body .elementor .e-con.brand a.pdf-logo-link:focus-visible{outline:3px solid #fff;outline-offset:3px}
/* 0.4.82 - logo du heros en tablette portrait : plafonne a 170 px (au lieu de 200 px, plus grand qu'en bureau) ; autres formats inchanges */
@media (min-width:601px) and (max-width:1100px) and (orientation:portrait){
 html body.pano-accueil .elementor .e-con.hero.panel{--pdf-logo:clamp(104px,min(21vh,26vw),170px)}
}
