/* V9.6.67 — bundle non destructif. Sources originales conservées dans le thème. */

/* ===== SOURCE: assets/css/home-v9-6-1-safe.css ===== */
/* =====================================================================
   V9.6.1 SAFE — accueil compact + hero zoom continu + pêle-mêle éditorial
   Base : V9.6 fonctionnelle. Aucune nouvelle couche PHP métier.
   ===================================================================== */

/* HERO — continuité optique entre deux fondus.
   Impair : 1 -> 1.04 ; pair : 1.04 -> 1.
   L'image sortante est figée à sa valeur finale pendant le crossfade :
   elle ne revient donc jamais brutalement au transform de base. */
.v9-hero .v84-hero-slide:nth-of-type(odd).is-active img{
  animation:v961ZoomIn 3000ms ease-in-out both!important;
}
.v9-hero .v84-hero-slide:nth-of-type(even).is-active img{
  animation:v961ZoomOut 3000ms ease-in-out both!important;
}
.v9-hero .v84-hero-slide:nth-of-type(odd).is-leaving img{
  animation:none!important;transform:scale(1.04)!important;
}
.v9-hero .v84-hero-slide:nth-of-type(even).is-leaving img{
  animation:none!important;transform:scale(1)!important;
}
@keyframes v961ZoomIn{from{transform:scale(1)}to{transform:scale(1.04)}}
@keyframes v961ZoomOut{from{transform:scale(1.04)}to{transform:scale(1)}}

/* Les deux informations utiles du haut deviennent une seule rangée compacte. */
.v961-compact-proof-row{
  width:min(calc(100% - 80px),1180px);
  margin:0 auto 72px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:16px;
  align-items:stretch;
}

/* Disponibilités accueil : garder visuellement uniquement le titre demandé + les dates. */
.v961-compact-proof-row .v96-availability-compact{
  width:100%;margin:0;padding:18px 18px 16px;background:#f6f5f3;
  border:1px solid rgba(77,55,44,.10);
}
.v961-compact-proof-row .v96-availability-inner{width:100%;margin:0}
.v961-compact-proof-row .v96-availability-head{max-width:none;margin:0 0 10px;text-align:left}
.v961-compact-proof-row .v96-availability-head .v9-kicker,
.v961-compact-proof-row .v96-availability-head p{display:none!important}
.v961-compact-proof-row .v96-availability-head h2{
  margin:0!important;font-size:25px!important;line-height:1!important;
}
.v961-compact-proof-row .v96-periods{grid-template-columns:repeat(3,1fr);border:0;background:transparent;gap:7px}
.v961-compact-proof-row .v96-period{
  min-height:0;padding:10px 11px;background:#fff;display:block;border:1px solid rgba(77,55,44,.07)
}
.v961-compact-proof-row .v96-period>span{display:none}
.v961-compact-proof-row .v96-period strong{display:block;font-size:15px;line-height:1.05}
.v961-compact-proof-row .v96-period i{display:block;width:18px;margin:4px 0;background:#b6a596}
.v961-compact-proof-row .v96-period small{display:block;margin-top:5px;font-size:9px}
.v961-compact-proof-row .v96-machine-facts,
.v961-compact-proof-row .v96-availability-foot{display:none!important}

/* E-réputation : une preuve compacte, plus un énorme encart éditorial. */
.v961-compact-proof-row .v94-reputation{
  width:100%;margin:0;padding:18px;background:#fff;display:block;overflow:visible;
  border:1px solid rgba(77,55,44,.10);
}
.v961-compact-proof-row .v94-reputation:after,
.v961-compact-proof-row .v94-reputation-copy{display:none!important}
.v961-compact-proof-row .v94-reputation-proof{
  display:grid;grid-template-columns:1.35fr repeat(3,1fr);box-shadow:none;border:0;background:#fff
}
.v961-compact-proof-row .v94-reputation-proof>div{
  min-height:60px;padding:8px 10px;border-right:1px solid #ebe4de
}
.v961-compact-proof-row .v94-airbnb-label span{font-size:8px}
.v961-compact-proof-row .v94-airbnb-label strong{font-size:18px;margin-top:4px}
.v961-compact-proof-row .v94-rep-stat strong{font-size:21px}
.v961-compact-proof-row .v94-rep-stat span{font-size:7px;margin-top:5px}
.v961-compact-proof-row .v94-reputation-date{
  margin:5px 0 0;text-align:right;font-size:8px;line-height:1.3
}

/* Pêle-mêle éditorial — asymétrique, statique, proportions naturelles, sans crop. */
.v961-collage-section{padding:20px 0 105px!important;overflow:hidden}
.v961-collage-copy{width:min(calc(100% - 80px),760px);margin:0 auto 32px;text-align:center}
.v961-collage-copy h2{font-size:clamp(45px,4.4vw,65px)!important;margin:8px 0 14px;line-height:.96}
.v961-collage-copy p{max-width:620px;margin:0 auto;line-height:1.7}
.v961-collage{
  position:relative;width:min(calc(100% - 56px),1360px);height:760px;margin:0 auto;
}
.v961-collage:before{
  content:"";position:absolute;left:28%;top:8%;width:47%;height:72%;background:#f3f0ec;z-index:0
}
.v961-shot{
  position:absolute;margin:0;padding:8px;background:#fff;
  box-shadow:0 18px 42px rgba(55,39,30,.13);z-index:2
}
.v961-shot img{display:block;width:100%;height:auto;object-fit:contain}
.v961-shot-salon{left:3%;top:12%;width:41%;transform:rotate(-.8deg);z-index:3}
.v961-shot-table{left:45%;top:0;width:30%;transform:rotate(.9deg);z-index:4}
.v961-shot-room{right:1%;top:27%;width:27%;transform:rotate(-.7deg);z-index:5}
.v961-shot-kitchen{left:18%;top:57%;width:25%;transform:rotate(.65deg);z-index:6}
.v961-shot-stairs{left:47%;top:60%;width:23%;transform:rotate(-.9deg);z-index:7}
.v961-collage-link{width:min(calc(100% - 80px),1180px);margin:4px auto 0;text-align:right}

@media(max-width:1019px){
  .v961-compact-proof-row{width:calc(100% - 40px);grid-template-columns:1fr;margin-bottom:58px}
  .v961-compact-proof-row .v94-reputation-proof>div{min-height:54px}
  .v961-collage{width:calc(100% - 40px);height:auto;display:grid;grid-template-columns:1.15fr .85fr;gap:14px}
  .v961-collage:before{left:8%;top:9%;width:84%;height:82%}
  .v961-shot{position:relative!important;left:auto!important;right:auto!important;top:auto!important;width:auto!important;transform:none!important}
  .v961-shot-salon{grid-column:1/-1}
  .v961-shot-table,.v961-shot-room,.v961-shot-kitchen,.v961-shot-stairs{align-self:start}
  .v961-collage-link{width:calc(100% - 40px)}
}

@media(max-width:620px){
  .v961-compact-proof-row{width:calc(100% - 24px);gap:10px;margin-bottom:46px}
  .v961-compact-proof-row .v96-availability-compact,
  .v961-compact-proof-row .v94-reputation{padding:14px}
  .v961-compact-proof-row .v96-availability-head h2{font-size:22px!important}
  .v961-compact-proof-row .v96-periods{grid-template-columns:1fr;gap:5px}
  .v961-compact-proof-row .v96-period{display:grid;grid-template-columns:1fr auto 1fr auto;align-items:center;gap:6px;padding:8px 10px}
  .v961-compact-proof-row .v96-period strong{font-size:13px}
  .v961-compact-proof-row .v96-period i{width:13px;margin:0}
  .v961-compact-proof-row .v96-period small{margin:0;font-size:8px;text-align:right}
  .v961-compact-proof-row .v94-reputation-proof{grid-template-columns:1fr 1fr}
  .v961-compact-proof-row .v94-reputation-proof>div{min-height:48px;padding:6px 8px;border-bottom:1px solid #ebe4de}
  .v961-compact-proof-row .v94-reputation-proof>div:nth-child(2n){border-right:0}
  .v961-compact-proof-row .v94-airbnb-label strong{font-size:16px}
  .v961-compact-proof-row .v94-rep-stat strong{font-size:18px}
  .v961-compact-proof-row .v94-reputation-date{display:none}

  .v961-collage-section{padding-bottom:75px!important}
  .v961-collage-copy{width:calc(100% - 40px);text-align:left;margin-bottom:24px}
  .v961-collage-copy h2{font-size:41px!important}
  .v961-collage{width:100vw;margin-left:calc(50% - 50vw);display:block;background:#17130f}
  .v961-collage:before{display:none}
  .v961-shot{padding:0!important;background:#17130f;box-shadow:none;margin:0!important;width:100vw!important}
  .v961-shot-salon,.v961-shot-table,.v961-shot-room{display:flex!important;min-height:calc(100svh - 70px);align-items:center;justify-content:center;border-bottom:1px solid rgba(255,255,255,.08)}
  .v961-shot-salon img,.v961-shot-table img,.v961-shot-room img{width:100%;height:auto;max-height:calc(100svh - 70px);object-fit:contain}
  .v961-shot-kitchen,.v961-shot-stairs{display:none!important}
  .v961-collage-link{width:calc(100% - 40px);text-align:left;margin-top:20px}
}

@media(prefers-reduced-motion:reduce){
  .v9-hero .v84-hero-slide.is-active img,.v9-hero .v84-hero-slide.is-leaving img{animation:none!important;transform:none!important}
}


/* ===== SOURCE: assets/css/search-ai-v9-6-54.css ===== */
/* V9.6.54 — calendrier annuel volontairement discret, placé en bas de l'accueil */
.v9653-year-layer{max-width:1160px;margin:18px auto 32px;padding:0 24px}
body.home .v9653-year-layer{margin-top:12px;margin-bottom:24px}
body.home .v9653-year-details{opacity:.92}
body.home .v9653-year-details>summary{padding:10px 0}
body.home .v9653-year-details>summary strong{font-size:14px}
body.home .v9653-year-details>summary small{font-size:10px}
@media(max-width:680px){.v9653-year-layer{width:auto;max-width:none;margin:10px 14px 24px;padding:0}}

/* V9.6.67 — lisibilité du résumé crawler dans le bloc annuel EXISTANT. */
.v9667-availability-heading{margin:0 0 16px;padding:0 0 14px;border-bottom:1px solid rgba(91,72,57,.14)}
.v9667-availability-heading h2{margin:0 0 6px;font-size:clamp(22px,2.2vw,30px)}
.v9667-availability-heading p{margin:0;max-width:980px;line-height:1.6}
.v9667-monthly-text{margin:18px 0 22px;padding:14px 16px;background:rgba(255,255,255,.42);border-radius:10px}
.v9667-monthly-text h3{margin:0 0 8px;font-size:18px}
.v9667-monthly-text ul{columns:2;column-gap:28px;margin:0;padding-left:18px;font-size:13px;line-height:1.55}
.v9667-monthly-text li{break-inside:avoid;margin:0 0 5px}
@media(max-width:700px){.v9667-monthly-text ul{columns:1}.v9667-monthly-text{padding:12px}}


/* ===== SOURCE: assets/css/master-adjustments-v9-6-5.css ===== */

/* =====================================================================
   V9.6.5 SAFE — petits ajustements dérivés du CSS maître V9.
   Le fichier global-reference-v9.css reste la référence visuelle.
   ===================================================================== */

/* Galerie compacte : reprend la capture fournie mais avec les variables V9. */
.v965-gallery{
  padding:20px 0 120px;
  background:var(--v9-white);
}
.v965-gallery-inner{
  width:min(calc(100% - 80px),1120px);
  margin:0 auto;
  display:grid;
  grid-template-columns:430px 1fr;
  gap:78px;
  align-items:center;
}
.v965-gallery-card{
  position:relative;
  display:block;
  height:310px;
  overflow:hidden;
  background:var(--v9-paper);
  color:var(--v9-brown);
  text-decoration:none;
  box-shadow:0 14px 38px rgba(74,58,47,.10);
  transition:transform .45s ease,box-shadow .45s ease;
}
.v965-gallery-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 46px rgba(74,58,47,.15);
}
.v965-g{position:absolute;margin:0;overflow:hidden;background:#ddd3ca}
.v965-g img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.1s ease}
.v965-gallery-card:hover .v965-g img{transform:scale(1.035)}
.v965-g1{left:20px;top:18px;width:29%;height:96px}
.v965-g2{left:34%;top:18px;width:58%;height:96px}
.v965-g3{left:34%;top:126px;width:28%;height:74px}
.v965-g4{left:65%;top:126px;width:27%;height:130px}
.v965-gallery-word{
  position:absolute;
  left:24px;
  bottom:24px;
  font-family:var(--v9-display);
  font-size:37px;
  line-height:1;
  color:var(--v9-brown);
}
.v965-gallery-copy{max-width:490px}
.v965-gallery-copy h2{
  margin:10px 0 17px;
  font-size:54px;
  line-height:.98;
}
.v965-gallery-copy p{
  margin:0 0 22px;
  max-width:500px;
  font-size:14px;
  line-height:1.78;
  color:#554b45;
}
.v965-gallery-copy strong{font-weight:600;color:var(--v9-brown)}

/* Les 3 blocs historiques gardent leur texte, mais suivent la grammaire
   du CSS maître : grande image + carte blanche avec ombre légère. */
.v942-keypoints-grid{
  display:grid!important;
  gap:70px!important;
  border:0!important;
}
.v965-editorial-card{
  position:relative!important;
  display:block!important;
  min-height:600px;
  padding:0!important;
  border:0!important;
  background:var(--v9-paper)!important;
}
.v965-editorial-photo{
  position:absolute;
  left:0;
  top:0;
  width:72%;
  height:520px;
  margin:0;
  overflow:hidden;
}
.v965-editorial-photo img{width:100%;height:100%;object-fit:cover;display:block}
.v965-editorial-card .v942-keypoint-body{
  position:absolute!important;
  right:0;
  top:115px;
  width:39%;
  min-height:360px;
  padding:42px 44px!important;
  background:#fff!important;
  box-shadow:0 14px 38px rgba(74,58,47,.12);
  z-index:3;
}
.v965-editorial-card .v942-keypoint-no{
  position:absolute!important;
  right:34%;
  top:86px;
  z-index:4;
}
.v965-editorial-reverse .v965-editorial-photo{left:auto;right:0}
.v965-editorial-reverse .v942-keypoint-body{right:auto;left:0}
.v965-editorial-reverse .v942-keypoint-no{right:auto;left:34%}
.v965-editorial-card .v942-keypoint-body h3{font-size:36px!important;line-height:1!important;margin:8px 0 18px!important}
.v965-editorial-card .v942-keypoint-body ul{display:block!important}
.v965-editorial-card .v942-keypoint-body li{margin:0 0 10px!important}

/* Journal = même logique que Pattern 5 du CSS maître. */
.v965-journal{
  position:relative;
  width:min(calc(100% - 80px),1120px);
  min-height:590px;
  margin:0 auto 130px;
}
.v965-journal-photo{
  margin:0;
  width:76%;
  height:500px;
  overflow:hidden;
}
.v965-journal-photo img{width:100%;height:100%;object-fit:cover;display:block}
.v965-journal-card{
  position:absolute;
  right:0;
  top:115px;
  width:39%;
  min-height:330px;
  padding:42px 44px;
  background:#fff;
  box-shadow:0 14px 38px rgba(74,58,47,.12);
}
.v965-journal-card h2{font-size:42px;line-height:.98;margin:8px 0 18px}
.v965-journal-card p{font-size:14px;line-height:1.72;color:#554b45}

/* Les encarts utilitaires V9.6.1 restent petits. */
.v961-compact-proof-row{margin-bottom:54px!important}

@media(max-width:1019px){
  .v965-gallery-inner{width:calc(100% - 40px);grid-template-columns:380px 1fr;gap:42px}
  .v965-editorial-card{min-height:520px}
  .v965-editorial-photo{width:69%;height:440px}
  .v965-editorial-card .v942-keypoint-body{width:46%;top:82px}
  .v965-journal{width:calc(100% - 40px)}
}
@media(max-width:720px){
  .v965-gallery{padding:10px 0 85px}
  .v965-gallery-inner{width:calc(100% - 28px);grid-template-columns:1fr;gap:30px}
  .v965-gallery-card{height:280px}
  .v965-g1{left:14px;top:14px;width:29%;height:86px}
  .v965-g2{left:34%;top:14px;width:61%;height:86px}
  .v965-g3{left:34%;top:113px;width:28%;height:68px}
  .v965-g4{left:65%;top:113px;width:30%;height:118px}
  .v965-gallery-word{left:19px;bottom:20px;font-size:34px}
  .v965-gallery-copy h2{font-size:43px}

  .v942-keypoints-grid{gap:50px!important}
  .v965-editorial-card{min-height:0!important;padding-bottom:0!important}
  .v965-editorial-photo,
  .v965-editorial-reverse .v965-editorial-photo{
    position:relative!important;left:auto!important;right:auto!important;width:100%!important;height:300px!important;
  }
  .v965-editorial-card .v942-keypoint-body,
  .v965-editorial-reverse .v942-keypoint-body{
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;width:calc(100% - 26px)!important;
    margin:-36px auto 0!important;padding:30px 25px!important;
  }
  .v965-editorial-card .v942-keypoint-no,
  .v965-editorial-reverse .v942-keypoint-no{left:24px!important;right:auto!important;top:272px!important}

  .v965-journal{width:calc(100% - 28px);min-height:0;margin-bottom:90px}
  .v965-journal-photo{width:100%;height:330px}
  .v965-journal-card{position:relative;right:auto;top:auto;width:calc(100% - 26px);min-height:0;margin:-36px auto 0;padding:30px 25px}
  .v965-journal-card h2{font-size:39px}
}
@media(prefers-reduced-motion:reduce){
  .v965-gallery-card,.v965-g img{transition:none!important}
}


/* ===== SOURCE: assets/css/deduplicated-gallery-v9-6-6.css ===== */

/* =====================================================================
   V9.6.6 SAFE — déduplication + galerie plein écran.
   Toujours dérivé du CSS maître V9 GLOBAL REFERENCE.
   ===================================================================== */

/* GALERIE : 100% largeur / 100% viewport, aucune écriture visible. */
.v966-gallery-full{
  position:relative;
  width:100%;
  height:100svh;
  min-height:620px;
  overflow:hidden;
  background:var(--v9-paper);
}
.v966-gallery-link{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:repeat(12,1fr);
  grid-template-rows:repeat(10,1fr);
  gap:8px;
  padding:8px;
  text-decoration:none;
  background:var(--v9-paper);
}
.v966-gallery-tile{
  position:relative;
  margin:0;
  overflow:hidden;
  background:#ded4cb;
}
.v966-gallery-tile img{
  width:100%;
  height:calc(100% + 28px);
  margin-top:-14px;
  object-fit:cover;
  display:block;
  transform:translate3d(0,var(--v966-shift,0px),0) scale(1.035);
  transition:transform .12s linear;
  will-change:transform;
}
.v966-g1{grid-column:1 / 8;grid-row:1 / 11}
.v966-g2{grid-column:8 / 13;grid-row:1 / 6}
.v966-g3{grid-column:8 / 10;grid-row:6 / 11}
.v966-g4{grid-column:10 / 13;grid-row:6 / 11}

/* L'effet au scroll reste volontairement très faible. */
.v966-gallery-full.is-inview .v966-gallery-tile{
  box-shadow:0 0 0 1px rgba(255,255,255,.06);
}

/* On annule les grandes cartes ajoutées en V9.6.5 sur les anciens points clés :
   la section a été retirée pour supprimer la redondance. */
.v965-editorial-card,
.v965-editorial-photo{all:revert-layer}

/* Journal : on garde la grammaire maître image + carte, car elle apporte
   une information différente et ne répète pas les données du chalet. */

/* Disponibilités / réputation restent compactes. */
.v961-compact-proof-row{margin-bottom:54px!important}

@media(max-width:720px){
  .v966-gallery-full{
    height:100svh;
    min-height:560px;
  }
  .v966-gallery-link{
    grid-template-columns:repeat(6,1fr);
    grid-template-rows:repeat(12,1fr);
    gap:5px;
    padding:5px;
  }
  .v966-g1{grid-column:1 / 7;grid-row:1 / 7}
  .v966-g2{grid-column:1 / 4;grid-row:7 / 10}
  .v966-g3{grid-column:4 / 7;grid-row:7 / 10}
  .v966-g4{grid-column:1 / 7;grid-row:10 / 13}
}
@media(prefers-reduced-motion:reduce){
  .v966-gallery-tile img{transform:scale(1.02)!important;transition:none!important}
}


/* ===== SOURCE: assets/css/seasons-restored-ai-feed-v9-6-7.css ===== */

/* =====================================================================
   V9.6.7 SAFE
   - "Le Jura au Fil des Saisons" restauré strictement depuis V9.6.5.
   - aucune liste de "prochaines périodes disponibles" affichée aux visiteurs.
   - le JSON HBook complet reste disponible aux moteurs/agents.
   ===================================================================== */

.v961-compact-proof-row{
  display:block!important;
  width:min(calc(100% - 80px),760px)!important;
  margin:0 auto 58px!important;
}
.v961-compact-proof-row .v94-reputation{
  width:100%!important;
}

@media(max-width:620px){
  .v961-compact-proof-row{
    width:calc(100% - 24px)!important;
    margin-bottom:44px!important;
  }
}

