/* OFFLINE PREVIEW — retouches mineures validées, sans toucher au moteur ni à la transition. */

/* 1) Landing : H1 un peu plus petit, boutons plus présents, prix nettement lisibles. */
@media (min-width:901px){
  .landing-view h1{
    font-size:clamp(39px,3.75vw,56px)!important;
    line-height:1.015!important;
    letter-spacing:-.038em!important;
  }
  .landing-actions{gap:12px!important;margin-top:25px!important;}
  .landing-choice{
    min-height:62px!important;
    padding:14px 18px!important;
    font-size:14px!important;
    border-radius:8px!important;
  }
  .landing-choice > span{
    font-size:14px!important;
    font-weight:820!important;
  }
  .landing-choice small{
    font-size:15px!important;
    line-height:1!important;
    font-weight:900!important;
    opacity:1!important;
    letter-spacing:-.01em!important;
  }
}
@media (max-width:900px){
  .landing-view h1{
    font-size:clamp(35px,9.8vw,47px)!important;
    line-height:1.025!important;
  }
  .landing-choice{
    min-height:60px!important;
    padding:14px 16px!important;
  }
  .landing-choice small{
    font-size:14px!important;
    font-weight:900!important;
    opacity:1!important;
  }
}

/* 2) Livre : header pétrole, marque blanche, saison à droite. */
.book-open .site-header{
  height:76px!important;
  background:rgba(4,63,73,.96)!important;
  backdrop-filter:blur(14px)!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  color:#F0F0E8!important;
}
.book-open .site-header .header-inner{
  width:min(var(--landing-max,1180px),calc(100% - 48px))!important;
  height:100%!important;
  margin:0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
}
.book-open .site-header .brand,
.book-open .site-header a.brand{
  color:#F0F0E8!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:18px!important;
  font-weight:600!important;
  font-style:normal!important;
  letter-spacing:-.015em!important;
  -webkit-text-stroke:0!important;
  text-shadow:none!important;
}
.book-open .site-header .site-header-season{
  color:rgba(240,240,232,.66)!important;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:12px!important;
  font-weight:750!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
}

/* 3) Questionnaire : même header que le livre. */
body.questionnaire-page .site-header{
  height:76px!important;
  background:rgba(4,63,73,.96)!important;
  backdrop-filter:blur(14px)!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  color:#F0F0E8!important;
}
body.questionnaire-page .site-header .header-inner{
  width:min(1180px,calc(100% - 48px))!important;
  height:100%!important;
  margin:0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  padding:0!important;
}
body.questionnaire-page .site-header .brand{
  color:#F0F0E8!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:18px!important;
  font-weight:600!important;
  font-style:normal!important;
  line-height:1!important;
  letter-spacing:-.015em!important;
  -webkit-text-stroke:0!important;
  text-shadow:none!important;
  text-decoration:none!important;
}
body.questionnaire-page .questionnaire-season{
  color:rgba(240,240,232,.66)!important;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:12px!important;
  font-weight:750!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
body.questionnaire-page .standard-main{
  padding-top:122px!important;
}
@media(max-width:680px){
  body.questionnaire-page .site-header{height:68px!important;min-height:68px!important;}
  body.questionnaire-page .site-header .header-inner{width:calc(100% - 28px)!important;gap:12px!important;}
  body.questionnaire-page .site-header .brand{font-size:16px!important;}
  body.questionnaire-page .questionnaire-season{font-size:10px!important;letter-spacing:.08em!important;}
  body.questionnaire-page .standard-main{padding-top:94px!important;}
}


/* MOBILE FRAME LOCK — même cadre landing -> livre, calculé depuis le hero réel. */
@media(max-width:900px){
  .book-open .site-header .header-inner{
    width:calc(100% - 32px)!important;
    max-width:none!important;
  }
  body.vertical-mode.book-open .home-mobile{
    padding-left:0!important;
    padding-right:0!important;
  }
  body.vertical-mode.book-open .mobile-paper{
    width:var(--mobile-frame-width,calc(100% - 32px))!important;
    max-width:none!important;
    margin-left:var(--mobile-frame-left,16px)!important;
    margin-right:0!important;
  }
}


/* RESPONSIVE LOCK V3 — même mode landing/livre jusqu'à 1024 px.
   Évite le faux desktop sur fenêtres étroites / tablettes portrait. */
@media (min-width:1025px){
  .landing-view h1{
    font-size:clamp(39px,3.75vw,56px)!important;
  }
}
@media (max-width:1024px){
  /* Landing : pile verticale cohérente et jamais rognée. */
  .landing-main{padding-top:34px!important;}
  .landing-hero{
    height:auto!important;
    min-height:0!important;
    grid-template-columns:1fr!important;
    overflow:hidden!important;
  }
  .landing-intro{
    padding:42px clamp(26px,6vw,48px) 38px!important;
  }
  .landing-photo{
    width:100%!important;
    max-width:none!important;
    height:clamp(230px,54vw,390px)!important;
    margin:0!important;
  }
  .landing-photo img{object-position:50% 46%!important;}
  .landing-photo::after{display:none!important;}
  .landing-view h1{
    font-size:clamp(35px,7.2vw,47px)!important;
    line-height:1.025!important;
  }
  .landing-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
    margin-top:22px!important;
  }
  .landing-choice{
    min-height:64px!important;
    padding:14px 18px!important;
  }
  .landing-choice > span{font-size:14px!important;}
  .landing-choice small{
    font-size:15px!important;
    font-weight:900!important;
    opacity:1!important;
  }

  /* Livre : même mode vertical et même cadre horizontal que le hero. */
  .book-open .site-header .header-inner{
    width:calc(100% - 32px)!important;
    max-width:none!important;
  }
  body.vertical-mode.book-open .home-mobile{
    padding-left:0!important;
    padding-right:0!important;
  }
  body.vertical-mode.book-open .mobile-paper{
    width:var(--mobile-frame-width,calc(100% - 32px))!important;
    max-width:none!important;
    margin-left:var(--mobile-frame-left,16px)!important;
    margin-right:0!important;
  }
}
@media (max-width:560px){
  .landing-main{padding-top:24px!important;}
  .landing-intro{padding:30px 22px 27px!important;}
  .landing-view h1{
    font-size:clamp(34px,10vw,46px)!important;
    line-height:1.02!important;
  }
  .landing-actions{grid-template-columns:1fr!important;}
  .landing-photo{height:230px!important;}
}


/* MOBILE POSITION LOCK V4 — le livre prend exactement le même Y que le hero.
   Aucun scroll de compensation : le padding du conteneur est la position mesurée. */
@media (max-width:1024px){
  body.vertical-mode.book-open .home-mobile{
    padding-top:var(--mobile-frame-top,110px)!important;
    padding-bottom:50px!important;
  }
  body.vertical-mode.book-open .mobile-paper{
    margin-top:0!important;
  }
}

/* MOBILE UNIFIED V4 — landing / livre / questionnaire partagent le même cadre mobile.
   Le livre reste la référence visuelle et n'est pas modifié. */
@media (max-width:1024px){
  /* Landing : même largeur, rayon et ombre que le livre mobile. */
  .landing-nav,
  .landing-main,
  .landing-footer{
    width:calc(100% - 32px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .landing-hero{
    width:100%!important;
    border-radius:8px!important;
    box-shadow:0 24px 48px rgba(0,0,0,.22)!important;
  }
  .landing-intro{border-radius:8px 8px 0 0!important;}
  .landing-photo,
  .landing-photo img{border-radius:0 0 8px 8px!important;}

  /* Livre : géométrie existante conservée ; rappel explicite du rayon/ombre de référence. */
  body.vertical-mode.book-open .mobile-paper{
    border-radius:8px!important;
    box-shadow:0 24px 48px rgba(0,0,0,.22)!important;
  }

  /* Questionnaire Aix : même cadre que landing/livre. */
  body.questionnaire-page .standard-main{
    padding-left:0!important;
    padding-right:0!important;
    padding-top:110px!important;
  }
  body.questionnaire-page .standard-main > .paper,
  body.questionnaire-page article.paper{
    width:calc(100% - 32px)!important;
    max-width:none!important;
    margin:0 auto!important;
    border-radius:8px!important;
    box-shadow:0 24px 48px rgba(0,0,0,.22)!important;
  }

  /* Questionnaire Puyricard : même cadre que landing/livre. */
  body.questionnaire-page > main{
    padding-top:110px!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.questionnaire-page > main > .container{
    width:calc(100% - 32px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.questionnaire-page .card.page-panel{
    margin:0!important;
    border-radius:8px!important;
    box-shadow:0 24px 48px rgba(0,0,0,.22)!important;
  }
}

@media (max-width:560px){
  /* Sur petit mobile, la landing commence à 64px + 24px = 88px ; questionnaire aligné au même Y. */
  body.questionnaire-page .standard-main,
  body.questionnaire-page > main{
    padding-top:88px!important;
  }
  body.questionnaire-page .standard-main > .paper,
  body.questionnaire-page article.paper,
  body.questionnaire-page > main > .container{
    width:calc(100% - 32px)!important;
  }
  body.questionnaire-page .card.page-panel,
  body.questionnaire-page .paper{
    border-radius:8px!important;
  }
}
