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

/* ===== SOURCE: assets/css/seo2-archiveplus-v9-5.css ===== */

/* ================================================================
   V9.5 — SEO2 Archive+ restored without reverting the V9 design
   ================================================================ */

/* Longer validated SEO H1s remain editorial and elegant. */
.v9-hero-copy h1{
  max-width:11.5ch!important;
  font-size:clamp(54px,5.5vw,90px)!important;
}
.v92-rooms-hero-copy h1{
  max-width:1080px!important;
  font-size:clamp(46px,4.5vw,67px)!important;
  line-height:.94!important;
}
body:not(.home) .hero-copy h1,
body:not(.home) .herocopy h1{
  max-width:1000px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Contextual SEO2 internal links in the same V9 visual language. */
.v95-seo-links{
  background:#fff;
  padding:78px 0 92px;
  border-top:1px solid rgba(77,55,44,.07);
}
.v95-seo-links-inner{
  width:min(calc(100% - 80px),1180px);
  margin:auto;
}
.v95-seo-links-list{
  margin-top:24px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--v9-line);
}
.v95-seo-links-list a{
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:18px 20px 18px 0;
  border-bottom:1px solid var(--v9-line);
  color:var(--v9-brown);
  text-decoration:none;
  font-family:var(--v9-display);
  font-size:23px;
  line-height:1.08;
}
.v95-seo-links-list a:nth-child(3n+2),
.v95-seo-links-list a:nth-child(3n+3){
  padding-left:24px;
  border-left:1px solid var(--v9-line);
}
.v95-seo-links-list i{
  flex:0 0 28px;
  height:1px;
  background:var(--v9-taupe2);
  transition:width .25s ease,flex-basis .25s ease;
}
.v95-seo-links-list a:hover i{
  flex-basis:42px;
}
@media(max-width:1019px){
  .v9-hero-copy h1{max-width:12ch!important;font-size:46px!important}
  .v92-rooms-hero-copy h1{font-size:46px!important}
  .v95-seo-links{padding:60px 0 76px}
  .v95-seo-links-inner{width:calc(100% - 40px)}
  .v95-seo-links-list{grid-template-columns:1fr 1fr}
  .v95-seo-links-list a:nth-child(3n+2),
  .v95-seo-links-list a:nth-child(3n+3){
    padding-left:0;
    border-left:0;
  }
  .v95-seo-links-list a:nth-child(2n){
    padding-left:20px;
    border-left:1px solid var(--v9-line);
  }
}
@media(max-width:620px){
  .v9-hero-copy h1{font-size:40px!important;max-width:none!important}
  .v92-rooms-hero-copy h1{font-size:38px!important}
  .v95-seo-links-list{grid-template-columns:1fr}
  .v95-seo-links-list a,
  .v95-seo-links-list a:nth-child(2n){
    min-height:68px;
    padding:15px 0;
    border-left:0;
    font-size:21px;
  }
}


/* ===== SOURCE: assets/css/bundles/hbook-ai-core-v9-6-66.css ===== */
/* V9.6.66 — bundle non destructif. Ordre CSS historique conservé. */

/* SOURCE: assets/css/hbook-public-v9-6.css */

/* ===========================================================
   V9.6 — Phase 4 Archive+ : HBook lisible humain + machine
   =========================================================== */
.v96-availability{
  position:relative;
  background:#f6f5f3;
  padding:88px 0 94px;
  border-top:1px solid rgba(77,55,44,.08);
  border-bottom:1px solid rgba(77,55,44,.08);
}
.v96-availability-inner{
  width:min(calc(100% - 80px),1180px);
  margin:auto;
}
.v96-availability-head{
  max-width:860px;
  margin:0 auto 42px;
  text-align:center;
}
.v96-availability-head h2{
  font-family:var(--v9-display);
  font-size:clamp(42px,4.6vw,64px);
  font-weight:400;
  line-height:.98;
  color:var(--v9-brown);
  margin:12px 0 20px;
}
.v96-availability-head p{
  max-width:760px;
  margin:auto;
  line-height:1.8;
  color:#5a5049;
}
.v96-periods{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--v9-line);
  border:1px solid var(--v9-line);
}
.v96-period{
  min-height:190px;
  background:#fff;
  padding:28px 28px 30px;
  display:grid;
  grid-template-columns:1fr auto;
  align-content:start;
  column-gap:13px;
}
.v96-period>span{
  grid-column:1/-1;
  font:600 9px/1.3 var(--v9-sans);
  letter-spacing:.16em;
  color:var(--v9-muted);
  margin-bottom:26px;
}
.v96-period strong{
  grid-column:1/-1;
  font-family:var(--v9-display);
  color:var(--v9-brown);
  font-size:26px;
  font-weight:400;
  line-height:1.05;
}
.v96-period i{
  grid-column:1/-1;
  width:38px;
  height:1px;
  background:var(--v9-taupe2);
  font-size:0;
  margin:11px 0;
}
.v96-period small{
  grid-column:1/-1;
  margin-top:15px;
  color:#8a7d73;
  font-size:11px;
  letter-spacing:.05em;
}
.v96-machine-facts{
  margin-top:28px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--v9-line);
  border-bottom:1px solid var(--v9-line);
}
.v96-machine-facts>div{
  padding:20px 22px;
  border-right:1px solid var(--v9-line);
}
.v96-machine-facts>div:last-child{border-right:0}
.v96-machine-facts b,
.v96-machine-facts span{display:block}
.v96-machine-facts b{
  color:var(--v9-brown);
  font-family:var(--v9-display);
  font-size:19px;
  font-weight:400;
  margin-bottom:5px;
}
.v96-machine-facts span{
  color:#766a62;
  font-size:11px;
  line-height:1.5;
}
.v96-availability-foot{
  margin-top:27px;
  display:flex;
  align-items:center;
  gap:28px;
  flex-wrap:wrap;
}
.v96-availability-foot p{
  flex:1 1 360px;
  margin:0;
  color:#857970;
  font-size:11px;
  line-height:1.6;
}
.v96-json-link{
  color:#8a7d73;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.v96-no-window{
  background:#fff;
  border:1px solid var(--v9-line);
  padding:28px;
  text-align:center;
}
.v96-availability-compact{
  padding:64px 0 72px;
  background:#fff;
}
.v96-availability-compact .v96-availability-head h2{
  font-size:clamp(38px,4vw,55px);
}
.v96-availability-compact .v96-machine-facts{
  display:none;
}
.v96-availability-compact .v96-availability-foot{
  justify-content:center;
}
@media(max-width:1019px){
  .v96-availability{padding:68px 0 76px}
  .v96-availability-inner{width:calc(100% - 40px)}
  .v96-periods{grid-template-columns:1fr 1fr}
  .v96-machine-facts{grid-template-columns:1fr 1fr}
  .v96-machine-facts>div:nth-child(2){border-right:0}
  .v96-machine-facts>div:nth-child(-n+2){border-bottom:1px solid var(--v9-line)}
}
@media(max-width:620px){
  .v96-availability-head{text-align:left}
  .v96-availability-head h2{font-size:39px}
  .v96-periods{grid-template-columns:1fr}
  .v96-period{min-height:0}
  .v96-machine-facts{grid-template-columns:1fr}
  .v96-machine-facts>div{
    border-right:0!important;
    border-bottom:1px solid var(--v9-line);
  }
  .v96-machine-facts>div:last-child{border-bottom:0}
  .v96-availability-foot{display:block}
  .v96-availability-foot>*{margin-bottom:18px!important}
}


/* SOURCE: assets/css/search-ai-v9-6-53.css */
/* V9.6.53 — couche 12 mois discrète : fermée par défaut, design principal intact. */
.v9653-year-layer{width:min(1180px,calc(100% - 40px));margin:16px auto 8px;font-family:var(--v9-body,inherit)}
.v9653-year-details{border-top:1px solid var(--v9-line,#ddd);border-bottom:1px solid var(--v9-line,#ddd);background:transparent}
.v9653-year-details>summary{list-style:none;cursor:pointer;padding:12px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;color:inherit}
.v9653-year-details>summary::-webkit-details-marker{display:none}
.v9653-year-details>summary span{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.v9653-year-details>summary strong{font-size:15px}.v9653-year-details>summary small,.v9653-year-details>summary em{font-size:11px;font-style:normal;color:#766d66;font-weight:400}
.v9653-year-details>summary:after{content:'+';font-size:20px;line-height:1;color:#786d63}.v9653-year-details[open]>summary:after{content:'–'}
.v9653-year-body{padding:12px 0 24px}.v9653-intro{max-width:1000px;color:#6b625b;font-size:13px;line-height:1.7;margin:0 0 14px}
.v9653-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:11px;color:#6f665f;margin:0 0 14px}.v9653-legend span{display:flex;align-items:center;gap:6px}.v9653-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.v9653-dot-free{background:#6f8b69}.v9653-dot-busy{background:#c8c1bb}
.v9653-month-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.v9653-month{border:1px solid var(--v9-line,#e5ded7);padding:10px;background:#fff}.v9653-month header{display:flex;justify-content:space-between;gap:8px;align-items:baseline;margin-bottom:7px}.v9653-month h3{font-size:13px;margin:0;text-transform:capitalize}.v9653-month header p{font-size:9px;color:#81776f;margin:0;text-align:right}
.v9653-weekdays,.v9653-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.v9653-weekdays span{text-align:center;font-size:8px;color:#9a918a;padding:1px}.v9653-days time,.v9653-days>span{text-align:center;font-size:9px;line-height:20px;height:20px;border-radius:2px}.v9653-available{background:#edf3eb;color:#30452e}.v9653-unavailable{background:#f1efed;color:#9c928a;text-decoration:line-through}.v9653-out{color:#c7c1bc}.v9653-empty{visibility:hidden}
.v9653-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--v9-line,#e5ded7);margin:14px 0 0;background:#fff}.v9653-facts>div{padding:10px 12px;border-right:1px solid var(--v9-line,#e5ded7);border-bottom:1px solid var(--v9-line,#e5ded7)}.v9653-facts>div:nth-child(3n){border-right:0}.v9653-facts b{display:block;font-size:11px;margin-bottom:3px}.v9653-facts span{font-size:10px;line-height:1.45;color:#756b64}
.v9653-year-foot{font-size:10px;color:#776e67;line-height:1.55;margin-top:12px}.v9653-year-foot p{margin:5px 0}.v9653-json-link{margin-left:14px;color:inherit;text-decoration:underline;text-underline-offset:2px}
@media(max-width:960px){.v9653-month-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v9653-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.v9653-facts>div:nth-child(3n){border-right:1px solid var(--v9-line,#e5ded7)}.v9653-facts>div:nth-child(2n){border-right:0}}
@media(max-width:680px){.v9653-year-layer{width:calc(100% - 28px);margin-top:10px}.v9653-year-details>summary{align-items:flex-start}.v9653-year-details>summary em{display:none}.v9653-month-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v9653-facts{grid-template-columns:1fr}.v9653-facts>div{border-right:0!important}.v9653-json-link{display:block;margin:8px 0 0}}
@media(max-width:430px){.v9653-month-grid{grid-template-columns:1fr}}



/* ===== 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}}

