/* Validated V2 compact: isolated from the previous home/city formula styles. */
.lhw-compact-section { padding: 0; margin: 0; }
.lhw-compact {
  --compact-surface: #E4E9E5;
  --compact-accent: #B8533B;
  --compact-key: #A04731;
  --compact-ink: #353837;
  --compact-muted: #606963;
  --compact-deep: #1D3631;
  --compact-kicker: #E9AC9C;
  --compact-feature: #ffffff80;
  --compact-mobile-card: #ffffff9e;
  --compact-mobile-feature: #ffffffd6;
  --compact-font-story: 'Cormorant Garamond', Georgia, serif;
  --compact-font-ui: Manrope, Arial, sans-serif;
  --compact-ease: cubic-bezier(.32,.72,0,1);
  color: var(--compact-ink);
  font-family: var(--compact-font-ui);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
}
.lhw-compact *, .lhw-compact *::before, .lhw-compact *::after { box-sizing: border-box; }
.lhw-compact p { padding: 0; letter-spacing: normal; }
.lhw-compact button { font-family: inherit; cursor: pointer; }
.lhw-compact button:focus-visible { outline: 2px solid white; outline-offset: 5px; }
.lhw-pricing-context-section .pricing-context { margin-top: 0; }
/* City variants change colours only; geometry and typography remain shared. */
.lhw-compact--annecy { --compact-surface: #E7EFED; --compact-deep: #1D3531; }
.lhw-compact--geneva { --compact-surface: #E4E9E5; --compact-accent: #B8523D; --compact-deep: #223230; }
.lhw-compact--evian {
  --compact-surface: #DFEAE7; --compact-title-color: #335861; --compact-accent: #B8533B; --compact-key: #A04731;
  --compact-ink: #293433; --compact-muted: #526563; --compact-deep: #17363E; --compact-kicker: #B8D2D2;
}
.lhw-compact--chamonix {
  --compact-surface: #DFE6E1; --compact-title-color: #24443D; --compact-accent: #B8533B; --compact-key: #A04731;
  --compact-ink: #303634; --compact-muted: #55625B; --compact-deep: #10241F; --compact-kicker: #BCD0C6;
}
.lhw-compact--megeve {
  --compact-surface: #E6DFD3; --compact-accent: #96513B; --compact-key: #80412D;
  --compact-ink: #2D322E; --compact-muted: #5A6257; --compact-deep: #172820; --compact-kicker: #D6BF95;
}
.lhw-compact--lausanne {
  --compact-surface: #DCE5E1; --compact-accent: #B8523D; --compact-key: #9C4430;
  --compact-ink: #303534; --compact-muted: #53635B; --compact-deep: #183532;
}
.lhw-compact--montreux {
  --compact-surface: #ECE9E2; --compact-accent: #B9543D; --compact-key: #A04731;
  --compact-ink: #333735; --compact-muted: #606963; --compact-deep: #1F3531;
}
    .lhw-compact{padding:80px 0 90px;background:var(--compact-surface)}
    .lhw-compact .lhw-compact-container{width:100%;max-width:1600px;margin:auto;padding:0 7vw}
    .lhw-compact .lhw-compact-header{max-width:850px;margin:0 auto 60px;text-align:center}
    .lhw-compact h2{margin:0 0 22px;font-family:var(--compact-font-story);font-weight:400;font-size:clamp(2.5rem,5vw,4rem);line-height:1.1}
    .lhw-compact .lhw-compact-starting-price{margin:0 0 8px;font-size:1.05rem}
    .lhw-compact .lhw-compact-starting-price strong{font-weight:700}
    .lhw-compact .lhw-compact-price-note{margin:0;color:var(--compact-muted);font-size:.8rem}
    .lhw-compact .lhw-compact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(20px,2.5vw,48px)}
    .lhw-compact .lhw-compact-card{position:relative;display:flex;flex-direction:column;padding:40px clamp(20px,2.5vw,40px);min-width:0}
    .lhw-compact .lhw-compact-card.is-featured{margin:-26px 0 -18px;padding-top:70px;padding-bottom:42px;border-radius:28px;background:var(--compact-feature);box-shadow:inset 0 1px 0 #ffffffd9,0 22px 55px #35383714}
    .lhw-compact .lhw-compact-badge{position:absolute;top:24px;left:50%;transform:translateX(-50%);padding:7px 14px;border-radius:999px;background:var(--compact-accent);color:white;font-size:.58rem;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;white-space:nowrap}
    .lhw-compact .lhw-compact-title{margin:0 0 24px;color:var(--compact-title-color,var(--compact-accent));font-family:var(--compact-font-story);font-size:2.4rem;font-weight:400;line-height:1.1;letter-spacing:2px;text-align:center;text-transform:uppercase}
    .lhw-compact .lhw-compact-intro{min-height:4rem;margin:0 0 26px;font-size:.95rem;font-style:italic;text-align:center}
    .lhw-compact .lhw-compact-card ul{margin:0;padding:0;list-style:none}
    .lhw-compact .lhw-compact-card li{position:relative;margin-bottom:18px;padding-left:22px;font-size:.88rem;line-height:1.75}
    .lhw-compact .lhw-compact-card li::before{content:'-';position:absolute;left:0;color:var(--compact-accent)}
    .lhw-compact .lhw-compact-card li strong{display:block;margin-bottom:3px;font-weight:600}
    .lhw-compact .lhw-compact-key{color:var(--compact-key);font-weight:700}
    .lhw-compact .lhw-compact-audio-link{color:inherit;text-underline-offset:3px}
    .lhw-compact .lhw-compact-presence{margin:auto 0 0;padding-top:24px;color:var(--compact-muted);font-size:.78rem;text-align:center}
    .lhw-compact .lhw-compact-presence strong{display:block;width:fit-content;margin:0 auto 5px;padding:5px 12px;border-radius:999px;background:var(--compact-feature);color:var(--compact-ink);font-weight:600}
    .lhw-compact .lhw-compact-summary{max-width:900px;margin:57px auto 0;color:var(--compact-muted);font-size:.95rem;text-align:center}
    .lhw-compact .lhw-compact-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,350px);align-items:center;gap:clamp(30px,6vw,80px);max-width:1160px;margin:39px auto 0;padding:clamp(30px,4vw,54px);border-radius:32px;background:var(--compact-deep);box-shadow:0 24px 60px #1d363129}
    .lhw-compact .lhw-compact-kicker{display:block;margin-bottom:14px;color:var(--compact-kicker);font-size:.65rem;font-weight:700;letter-spacing:2px;text-transform:uppercase}
    .lhw-compact .lhw-compact-actions h3{margin:0 0 16px;color:white;font-family:var(--compact-font-story);font-size:clamp(1.8rem,2.8vw,2.5rem);font-weight:400;line-height:1.15}
    .lhw-compact .lhw-compact-actions-copy>p{margin:0;color:#ffffffdb;font-size:.88rem;line-height:1.65}
    .lhw-compact .lhw-compact-actions-note{display:block;margin-top:15px;color:#ffffffbd;font-size:.74rem}
    .lhw-compact .lhw-compact-action{display:inline-flex;align-items:center;justify-content:center;gap:14px;width:max-content;max-width:100%;min-height:52px;padding:8px 9px 8px 22px;border:0;border-radius:999px;background:var(--compact-accent);color:white;font-size:.7rem;font-weight:700;letter-spacing:1px;line-height:1.5;text-align:left;text-transform:uppercase;transition:transform .3s var(--compact-ease),background .3s var(--compact-ease)}
    .lhw-compact .lhw-compact-action .lhw-compact-action-icon{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;background:#ffffff1f;font-size:1.2rem;transition:transform .4s var(--compact-ease)}
    .lhw-compact .lhw-compact-button-note{margin:12px 0 0;color:#ffffffdb;font-size:.75rem;text-align:center}
    .lhw-compact .lhw-compact-action:hover{background:var(--compact-key)}
    .lhw-compact .lhw-compact-action:hover .lhw-compact-action-icon{transform:translate(2px,-2px)}
    .lhw-compact .lhw-compact-action:active{transform:scale(.98)}
    .lhw-compact .lhw-compact-action:focus-visible{outline-color:white}
    @media(max-width:1100px){.lhw-compact .lhw-compact-container{padding:0 4vw}.lhw-compact .lhw-compact-grid{gap:16px}.lhw-compact .lhw-compact-card{padding-left:22px;padding-right:22px}.lhw-compact .lhw-compact-title{font-size:2rem;letter-spacing:1px}}
    @media(max-width:900px){.lhw-compact{padding:55px 0}.lhw-compact .lhw-compact-container{padding:0 6vw}.lhw-compact .lhw-compact-header{margin-bottom:36px}.lhw-compact .lhw-compact-grid{grid-template-columns:1fr;gap:18px}.lhw-compact .lhw-compact-card{padding:30px 24px;border:1px solid #35383714;border-radius:26px;background:var(--compact-mobile-card)}.lhw-compact .lhw-compact-card.is-featured{margin:0;padding:72px 24px 22px;background:var(--compact-mobile-feature)}.lhw-compact .lhw-compact-badge{top:20px;font-size:.62rem}.lhw-compact .lhw-compact-title{font-size:2.25rem;text-transform:none;letter-spacing:0}.lhw-compact .lhw-compact-intro{min-height:0;margin-bottom:24px;text-align:left}.lhw-compact .lhw-compact-card li{margin-bottom:18px}.lhw-compact .lhw-compact-presence{padding-top:10px}.lhw-compact .lhw-compact-summary{margin-top:38px}.lhw-compact .lhw-compact-actions{grid-template-columns:1fr;gap:26px;margin-top:38px;padding:30px 24px;border-radius:26px}}
    @media(prefers-reduced-motion:reduce){.lhw-compact .lhw-compact-action,.lhw-compact .lhw-compact-action-icon{transition:none}.lhw-compact .lhw-compact-action:hover .lhw-compact-action-icon,.lhw-compact .lhw-compact-action:active{transform:none}}

/* Montreux uses flex ordering: keep the collection block directly after its budget. */
.montreux-v2 #contenu > .lhw-compact-section { order: 6; }
.lhw-compact .lhw-compact-actions > div:last-child { justify-self: center; text-align: center; }
