/* Réseau chalets : blocs propres à la vitrine chalet-fontromeu.fr et au site Pic Llory (utilise les variables de site.css) */
.formules{background:var(--cream); padding-block:72px}
.formules .sec-head{text-align:center; margin-bottom:34px}
.formules .sec-head h2{font-size:clamp(26px,4vw,38px); margin-top:14px}
.formules .sec-head p{color:var(--ink-soft); margin-top:10px}
.formule-grid{display:grid; gap:18px; grid-template-columns:1fr; max-width:1080px; margin-inline:auto}
@media(min-width:900px){.formule-grid{grid-template-columns:repeat(3,1fr)}}
.formule{position:relative; background:var(--card); border:1px solid var(--border); border-radius:20px; padding:26px 24px 24px; display:flex; flex-direction:column; gap:10px; box-shadow:0 8px 24px rgba(28,22,18,.06)}
.formule.feat{border:2px solid var(--gold); box-shadow:0 14px 34px rgba(242,140,40,.25)}
.formule .tag{position:absolute; top:-12px; left:20px; background:var(--gold); color:#2a1203; font-size:12px; font-weight:700; padding:5px 12px; border-radius:999px}
.formule .big{font-size:54px; line-height:1; font-weight:800; letter-spacing:-.03em; color:var(--bg)}
.formule .big small{font-size:15px; font-weight:600; letter-spacing:0; color:var(--ink-soft); margin-left:6px}
.formule h3{font-size:20px}
.formule p{color:var(--ink-soft); font-size:15px}
.formule .price{font-weight:700; color:var(--bg)}
.formule .more{font-size:14px; color:var(--ink-soft)}
.formule .more a{color:var(--gold-ink); text-decoration:underline}
.formule .btn{margin-top:auto; font-size:15px; padding:13px 22px}
.formule .btn.ghost-dark{background:transparent; color:var(--bg); border:1px solid var(--border); box-shadow:none}
.formule-note{max-width:1080px; margin:22px auto 0; text-align:center; font-size:13.5px; color:var(--ink-soft)}
.formule-note a{text-decoration:underline; color:var(--ink-soft)}
.biath{background:var(--paper); padding-block:48px}
.biath-in{display:flex; flex-wrap:wrap; gap:18px 28px; align-items:center; justify-content:space-between; background:var(--bg); color:#fff; border-radius:22px; padding:28px 30px}
.biath-in h2{font-size:clamp(20px,3vw,26px)}
.biath-in p{color:rgba(255,255,255,.7); margin-top:6px; max-width:560px}
.foot-net{display:flex; flex-wrap:wrap; gap:6px 18px; align-items:center; font-size:14px; opacity:.9}
.foot-net b{letter-spacing:.12em; text-transform:uppercase; font-size:12px; color:var(--gold)}
.pl-grid{display:grid; gap:14px; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); margin-top:22px}
.pl-box{background:var(--card); border:1px solid var(--border); border-radius:16px; padding:18px 18px}
.pl-box b{display:block; margin-bottom:4px}
.upsell{background:var(--bg); color:#fff; border-radius:22px; padding:30px 28px; text-align:center}
.upsell h2{font-size:clamp(22px,3.4vw,30px)}
.upsell p{color:rgba(255,255,255,.72); margin:10px auto 0; max-width:560px}
.upsell .btn{margin-top:20px}

/* Menu : au survol, le titre disparaît et laisse place aux choix 17 / 31 / 40 couchages */
@media (min-width:1100px){
.navlinks .dd>a{transition:opacity .12s}
.navlinks .dd:hover>a,.navlinks .dd:focus-within>a{opacity:0}
.navlinks .dd .dd-menu{top:-12px!important;left:0!important;right:auto!important;transform:none!important}
.navlinks .dd:nth-last-child(-n+2) .dd-menu{left:auto!important;right:0!important}
}

/* Tablettes et mobiles (jusqu'à 1099 px) : menu burger, chaque titre est suivi de ses choix 17 / 31 / 40 */
@media (max-width:1099px){
.navlinks{display:none!important}
.burger{display:flex!important}
.mobile-menu:not([hidden]){display:block!important}
}
.mobile-menu li>a[role="button"]{pointer-events:none;cursor:default}
.navlinks .dd>a[role="button"]{cursor:default}

/* Confort tactile (mobile et tablette) : cibles de clic plus grandes */
@media (max-width:1099px){
summary{padding-top:14px!important;padding-bottom:14px!important;min-height:44px;box-sizing:border-box}
.langs a,.langs-m a,.langs-f a{display:inline-flex!important;align-items:center;justify-content:center;min-width:38px;min-height:38px}
.brand{display:inline-flex;align-items:center;min-height:44px}
.crumbs a{display:inline-block;padding:8px 2px}
footer a{display:inline-block;padding:7px 2px}
}
