/* Scoped experience page; existing pages are unchanged. */
.experience-page{background:#f8faf7;color:#15332b}
.exp-shell{padding-top:28px;padding-bottom:64px}
.exp-back{display:inline-flex;align-items:center;min-height:44px;color:#67635c;font-size:14px;text-underline-offset:4px}
.exp-heading{padding:28px 0 32px;border-bottom:1px solid var(--border)}
.exp-heading h1{max-width:920px;font-size:clamp(30px,4.8vw,54px);line-height:1.12;letter-spacing:-.045em;margin:14px 0 24px;overflow-wrap:break-word;word-break:normal;hyphens:none}
.exp-author{display:flex;gap:8px;align-items:flex-start;flex-direction:column}.exp-author-link{display:inline-flex;align-items:center;gap:16px;color:inherit;text-decoration:none;min-height:44px}.exp-author-link:hover strong,.exp-author-link:focus-visible strong{text-decoration:underline;text-underline-offset:4px}.exp-author strong{font-size:20px}.exp-author span{display:block;color:#67635c;font-size:14px}
.exp-avatar{width:64px;height:64px;object-fit:cover;border-radius:18px}
.exp-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:36px;margin-top:32px;align-items:start}
.exp-body{min-width:0;background:#fffefa;border:1px solid var(--border);border-radius:26px;padding:clamp(22px,3vw,36px);box-shadow:var(--shadow)}
.exp-section+.exp-section{margin-top:28px;padding-top:26px;border-top:1px solid var(--border)}
.exp-section h2,.exp-booking h2{font-size:22px;letter-spacing:-.025em;margin:0 0 14px}
.exp-text{white-space:pre-line;line-height:1.75;overflow-wrap:break-word;margin:0;color:#4d4a45}.exp-share-text{margin-top:16px}
.exp-booking{background:#fffefa;border:1px solid var(--border);border-radius:26px;padding:26px;box-shadow:var(--shadow)}
.exp-booking .rate-pills{margin:20px 0}.exp-booking .rate-pill{text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.exp-book{width:100%;min-height:48px;background:var(--highlight);color:#111;text-align:center}
.exp-booking p{line-height:1.6;margin:18px 0 0}
/* La synthèse facultative met en avant le texte saisi, sans cartes ni formulaire supplémentaire. */
.exp-share-summary{background:#edf4ed;border:1px solid #dce2dc;border-radius:9px;padding:clamp(18px,2.4vw,24px);margin-bottom:22px}
.exp-share-summary h2{margin:0 0 11px;font-size:19px;line-height:1.28}
.exp-share-summary .exp-text{line-height:1.65;color:#45493c}
.exp-story{border-top:1px solid var(--border);padding-top:5px}
.exp-story summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;cursor:pointer}
.exp-story summary::-webkit-details-marker{display:none}
.exp-story summary:focus-visible{outline:3px solid #1b8e87;outline-offset:3px;border-radius:6px}
.exp-story summary>strong{font-size:20px;line-height:1.25;letter-spacing:-.02em}
.exp-story-action{display:inline-flex;align-items:center;gap:8px;color:#54534c;font-size:13px;font-weight:700;text-align:right}
.exp-story .exp-chevron{font-size:21px;line-height:1}
.exp-story .exp-story-open{display:none}
.exp-story[open] .exp-story-open{display:inline}
.exp-story[open] .exp-story-closed{display:none}
.exp-story[open] .exp-chevron{transform:rotate(180deg)}
.exp-story-inner{padding:8px 0 4px}
.exp-story-preview summary{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:13px;align-items:center}
.exp-story-teaser{grid-column:1/-1;min-width:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4;overflow:hidden;white-space:pre-line;line-height:1.65;color:#55514b;font-size:16px;font-weight:400;overflow-wrap:break-word}
.exp-story-preview[open] .exp-story-teaser{display:none}
.exp-story-preview[open] .exp-story-inner{padding-top:17px}
@media(max-width:460px){.exp-story summary>strong{font-size:18px}.exp-story-action{font-size:12px}.exp-share-summary{padding:16px}}
.profile-heading{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.profile-heading h1{margin:8px 0 10px}.profile-avatar{width:108px;height:108px;object-fit:cover;border-radius:24px}.profile-placeholder{width:108px;height:108px;border-radius:24px;background:#e9e7e0;display:grid;place-items:center;font-size:38px;font-weight:700}.profile-subtitle{color:#67635c}.profile-topic-list{display:grid;gap:14px}.profile-topic{border:1px solid var(--border);border-radius:18px;padding:20px;background:#fffefa}.profile-topic h3{margin:0 0 10px;font-size:19px;letter-spacing:-.02em}.profile-topic h3 a{color:inherit;text-decoration:none;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;overflow-wrap:anywhere}.profile-topic h3 a:hover{text-decoration:underline}.profile-topic p{color:#4d4a45;line-height:1.65;white-space:pre-line;overflow-wrap:break-word}.profile-badges{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.profile-badge{display:inline-flex;border:1px solid var(--border);border-radius:99px;padding:5px 11px;font-size:13px}.profile-topic .btn{display:inline-flex;margin-top:10px}.profile-content{margin-top:28px}.profile-content h2{font-size:22px}
@media(max-width:800px){.exp-grid{grid-template-columns:1fr;gap:22px}.exp-booking{grid-row:2}.exp-heading{padding-top:18px}.exp-shell{padding-bottom:36px}}
@media(max-width:420px){.experience-page .nav{gap:8px}.experience-page .brand{font-size:20px}.experience-page .nav>.btn{padding:9px 11px;font-size:12px}.exp-heading h1{font-size:29px}}
/* Harmonisation premium ciblée — modèle partagé d'expérience et de profil.
   Aucune modification des contenus, liens, tarifs ou composants fonctionnels. */
.experience-page .exp-shell{max-width:1240px}
.experience-page .exp-heading:not(.profile-heading){padding-top:19px;padding-bottom:33px}
.experience-page .exp-heading:not(.profile-heading)>.eyebrow{display:inline-flex;align-items:center;min-height:30px;padding:6px 12px;border:1px solid #d7e8dd;border-radius:999px;background:#edf7ef;color:#316655;letter-spacing:.075em}
.experience-page .exp-heading:not(.profile-heading) h1{max-width:970px;line-height:1.09;margin-top:18px}
.experience-page .exp-author{gap:6px}
.experience-page .exp-author-link{gap:14px}
.experience-page .exp-author-link .exp-avatar{width:57px;height:57px;border-radius:15px;box-shadow:0 7px 18px rgba(23,42,35,.10)}
.experience-page .exp-author>span{padding-left:3px}
.experience-page .exp-grid{grid-template-columns:minmax(0,1fr) minmax(292px,330px);gap:27px;margin-top:30px}
.experience-page .exp-grid>.exp-body{padding:clamp(24px,3vw,36px);border-color:#dce2dc;background:#fff;border-radius:9px;box-shadow:none}
/* Contexte géographique : discret, intégré au récit et sans puce de liste native. */
.experience-page .exp-grid>.exp-body>ul.muted:first-child{list-style:none;margin:0 0 26px;padding:13px 16px;border:1px solid #e0e9df;border-radius:15px;background:#f0f7f0;color:#506358;line-height:1.6;font-size:14px}
.experience-page .exp-grid>.exp-body>ul.muted:first-child li{position:relative;padding-left:17px}
.experience-page .exp-grid>.exp-body>ul.muted:first-child li::before{content:"";position:absolute;left:0;top:.53em;width:8px;height:8px;border-radius:50%;background:#208a76}
.experience-page .exp-grid>.exp-body>ul.muted:first-child+.exp-story{border-top:0;padding-top:0}
/* Récit, aperçu et bouton existant : mêmes interactions, hiérarchie renforcée. */
.experience-page .exp-story summary>strong{font-size:23px;letter-spacing:-.035em}
.experience-page .exp-story-preview summary{column-gap:16px;row-gap:17px}
.experience-page .exp-story-action{border:1px solid #dce2dc;border-radius:7px;background:#edf4ed;color:#245944;padding:7px 12px;font-size:13px;white-space:nowrap}
.experience-page .exp-story-teaser{-webkit-line-clamp:5;line-clamp:5;line-height:1.8;color:#4d4a45}
.experience-page .exp-story-inner{padding-top:16px}
.experience-page .exp-story-inner .exp-text{max-width:76ch;line-height:1.87}
/* Réservation : carte présente sans hauteur artificielle ni effet sticky. */
.experience-page .exp-grid>.exp-booking{padding:26px;border:1px solid #dce2dc;border-top:1px solid #dce2dc;border-radius:9px;background:#fff;box-shadow:none}
.experience-page .exp-booking h2{font-size:23px;line-height:1.24;margin-bottom:20px}
.experience-page .exp-booking .rate-pills{display:grid;grid-template-columns:1fr;gap:10px;margin:0 0 23px}
.experience-page .exp-booking .rate-pill{display:flex;justify-content:center;align-items:center;width:100%;min-height:48px;border-radius:7px;border-color:#dce2dc;background:#f8faf7;font-size:13px;line-height:1.3;text-align:center;transition:background .15s,border-color .15s,box-shadow .15s}
.experience-page .exp-booking .rate-pill:hover,.experience-page .exp-booking .rate-pill:focus-visible{background:#f0f9ee;border-color:#8fc9b5;box-shadow:0 5px 16px rgba(19,69,46,.05)}
.experience-page .exp-booking .exp-book{display:flex;align-items:center;justify-content:center;min-height:48px;line-height:1.35;padding:12px 15px;background:#15332b;color:#fff;border-radius:7px;box-shadow:none}
.experience-page .exp-booking p{margin:20px 0 0;padding-top:16px;border-top:1px solid #eae5db;font-size:13px;line-height:1.6;color:#6c6860}
/* Profil public : meilleure largeur de lecture, cartes d'expérience soignées. */
.experience-page .profile-heading .profile-avatar{box-shadow:0 12px 27px rgba(21,37,32,.12)}
.experience-page .profile-content{border-color:#dce2dc;border-radius:9px;box-shadow:none}
.experience-page .profile-content>.exp-section>.exp-text{max-width:78ch;line-height:1.83}
.experience-page .profile-topic{background:#fff;border-color:#dce2dc;border-left:1px solid #dce2dc;border-radius:9px;padding:clamp(19px,2.2vw,26px);transition:border-color .17s}
.experience-page .profile-topic:hover{border-color:#91b59e;box-shadow:none}
.experience-page .profile-topic h3{font-size:20px;line-height:1.3}
.experience-page .profile-topic p{max-width:79ch;line-height:1.74}
@media(max-width:800px){
 .experience-page .exp-grid{grid-template-columns:1fr;gap:20px}
 .experience-page .exp-grid>.exp-booking{padding:26px}
 .experience-page .exp-booking .rate-pills{grid-template-columns:repeat(3,minmax(0,1fr))}
 .experience-page .exp-story-action{padding:7px 10px}
}
@media(max-width:560px){
 .experience-page .exp-heading:not(.profile-heading) h1{font-size:clamp(29px,8vw,39px)}
 .experience-page .exp-grid>.exp-body{padding:24px 20px}
 .experience-page .exp-grid>.exp-booking{padding:26px 22px}
 .experience-page .exp-booking .rate-pills{grid-template-columns:1fr}
 .experience-page .exp-story-preview summary{column-gap:8px}
 .experience-page .exp-story summary>strong{font-size:18px}
 .experience-page .exp-story-action{padding:7px 10px;font-size:13px;gap:5px}
 .experience-page .exp-story-teaser{line-height:1.7}
}
@media(max-width:380px){.experience-page .brand-wrap{flex-direction:row;align-items:center;white-space:nowrap;gap:4px}.experience-page .brand{font-size:18px}}
@media(prefers-reduced-motion:reduce){.experience-page .exp-booking .rate-pill,.experience-page .profile-topic{transition:none}}