/* ETHNOS R800 — finition inscription / géométrie + modèle.
   Base canonique : R799.
   Périmètre strict : centrages demandés sur 01/03/05, sorties des boutons Retour,
   clarification de l'offre 06. Aucun contrat métier/API/validation modifié. */
:root{
  --r800-charcoal:#1f1f1f;
  --r800-blue-deep:#071f2d;
  --r800-blue:#0a3448;
  --r800-blue-bright:#0b526d;
  --r800-orange:#ee8d55;
  --r800-orange-top:#ffad7a;
  --r800-orange-dark:#c96d3d;
  --r800-ink:#071826;
  --r800-light:#fffdf9;
  --r800-muted:#d5e0e5;
}

/* ========================================================================== */
/* 01 — PREMIERS PAS : le panneau entier est centré et gagne la largeur utile. */
/* ========================================================================== */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="age"] .joinCardBody{
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="age"] .joinView[data-view="age"]:not([hidden]){
  box-sizing:border-box!important;
  min-height:100%!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:clamp(16px,2.4vh,30px) clamp(20px,3vw,54px)!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="age"] .joinAgeEntryPanel{
  width:min(1320px,100%)!important;
  max-width:1320px!important;
  margin:auto!important;
  flex:0 1 1320px!important;
}

/* ========================================================================== */
/* 03 — VOS ACCÈS : introduction centrée + retour réellement hors du panneau. */
/* ========================================================================== */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .joinCardBody{
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .joinView[data-view="access"]:not([hidden]){
  box-sizing:border-box!important;
  min-height:100%!important;
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  padding:clamp(16px,2.1vh,26px) clamp(20px,3vw,54px)!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessWorkspace{
  width:min(1360px,100%)!important;
  max-width:1360px!important;
  margin:0 auto!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessIntro{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  margin:0 auto 16px!important;
  text-align:center!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessIntro>.joinSectionLabel{
  margin:0 auto!important;
  text-align:center!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessIntro h2{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  text-align:center!important;
  white-space:nowrap!important;
  font-size:clamp(28px,2.05vw,40px)!important;
  line-height:1.05!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessIntro p{
  width:100%!important;
  max-width:1220px!important;
  margin:0 auto!important;
  text-align:center!important;
  text-justify:auto!important;
  font-size:clamp(12px,.88vw,15px)!important;
  line-height:1.42!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessActions{
  justify-content:flex-end!important;
  margin-top:12px!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessBackOutsideR800{
  box-sizing:border-box!important;
  width:min(1360px,100%)!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  margin:0 auto!important;
  padding:0!important;
  flex:0 0 auto!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessBackOutsideR800 .joinBack{
  min-width:210px!important;
}

/* ========================================================================== */
/* 05 — NOS VALEURS : bloc compact centré, intro unifiée et retour à l'extérieur. */
/* ========================================================================== */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .joinCardBody{
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .joinView[data-view="values"]:not([hidden]){
  box-sizing:border-box!important;
  min-height:100%!important;
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  padding:clamp(14px,2vh,24px) clamp(20px,3vw,54px)!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesWorkspaceR775{
  box-sizing:border-box!important;
  width:min(1440px,100%)!important;
  max-width:1440px!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0 auto!important;
  padding:clamp(18px,2vw,28px)!important;
  gap:12px!important;
  align-content:start!important;
  overflow:visible!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesCompactHeader{
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:0 0 12px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  text-align:center!important;
  border-bottom:1px solid rgba(7,24,38,.16)!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesCompactHeader>.joinSectionLabel{
  margin:0!important;
  text-align:center!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesCompactHeader h2{
  width:100%!important;
  margin:0!important;
  text-align:center!important;
  font-size:clamp(30px,2.5vw,46px)!important;
  line-height:1.02!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesCompactHeader p{
  width:min(100%,980px)!important;
  max-width:980px!important;
  margin:0 auto!important;
  text-align:center!important;
  text-justify:auto!important;
  font-size:clamp(13px,.95vw,16px)!important;
  line-height:1.42!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesCompactCommit{
  width:min(1220px,96%)!important;
  max-width:1220px!important;
  margin:0 auto!important;
  justify-self:center!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesFooterR775{
  display:none!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesBackOutsideR800{
  box-sizing:border-box!important;
  width:min(1440px,100%)!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  margin:0 auto!important;
  padding:0!important;
  flex:0 0 auto!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesBackOutsideR800 .joinBack{
  min-width:210px!important;
}

/* ========================================================================== */
/* 06 — NOTRE MODÈLE : une seule hiérarchie de l'offre, sans répétitions.      */
/* ========================================================================== */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="payment"] .paymentWorkspaceR775{
  width:min(1450px,96%)!important;
  max-width:1450px!important;
  gap:14px!important;
}
body[data-etnos-build="r776"] .joinPage .paymentOfferR800{
  box-sizing:border-box!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(270px,.72fr) minmax(0,1.55fr)!important;
  gap:22px!important;
  padding:22px 24px!important;
  border:0!important;
  border-top:4px solid var(--r800-orange)!important;
  border-radius:6px!important;
  background:linear-gradient(112deg,var(--r800-charcoal) 0%,#202326 24%,var(--r800-blue) 64%,var(--r800-blue-bright) 100%)!important;
  color:#fff!important;
  box-shadow:none!important;
}
body[data-etnos-build="r776"] .joinPage .paymentOfferIntroR800{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:7px!important;
  min-width:0!important;
  padding-right:18px!important;
  border-right:1px solid rgba(255,255,255,.20)!important;
}
body[data-etnos-build="r776"] .joinPage .paymentOfferIntroR800 .joinSectionLabel{
  color:var(--r800-orange-top)!important;
  margin:0!important;
}
body[data-etnos-build="r776"] .joinPage .paymentOfferIntroR800 h2{
  margin:0!important;
  color:#fff!important;
  font-size:clamp(26px,2vw,36px)!important;
  line-height:1.04!important;
  letter-spacing:-.035em!important;
}
body[data-etnos-build="r776"] .joinPage .paymentOfferIntroR800 p{
  margin:0!important;
  max-width:520px!important;
  color:#d9e5e9!important;
  font-size:clamp(12px,.9vw,15px)!important;
  line-height:1.45!important;
  text-align:left!important;
}
body[data-etnos-build="r776"] .joinPage .paymentOfferGridR800{
  display:grid!important;
  grid-template-columns:1.15fr 1fr .8fr!important;
  gap:12px!important;
  min-width:0!important;
  align-items:stretch!important;
}
body[data-etnos-build="r776"] .joinPage .paymentOfferCardR800{
  box-sizing:border-box!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:5px!important;
  padding:16px 17px!important;
  border:1px solid rgba(255,255,255,.24)!important;
  border-radius:5px!important;
  background:rgba(255,255,255,.07)!important;
  color:#fff!important;
}
body[data-etnos-build="r776"] .joinPage .paymentOfferCardR800.isLaunch{
  border-color:rgba(255,173,122,.72)!important;
  background:rgba(255,141,85,.12)!important;
}
body[data-etnos-build="r776"] .joinPage .paymentOfferCardR800>span{
  color:var(--r800-orange-top)!important;
  font-size:11px!important;
  font-weight:850!important;
  letter-spacing:.10em!important;
}
body[data-etnos-build="r776"] .joinPage .paymentOfferCardR800>strong{
  display:block!important;
  color:#fff!important;
  font-size:clamp(27px,2.15vw,42px)!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
}
body[data-etnos-build="r776"] .joinPage .paymentOfferCardR800.isPrice>strong{
  color:var(--r800-orange-top)!important;
  font-size:clamp(34px,2.7vw,50px)!important;
}
body[data-etnos-build="r776"] .joinPage .paymentOfferCardR800>b{
  color:#fff!important;
  font-size:clamp(12px,.95vw,16px)!important;
  line-height:1.25!important;
}
body[data-etnos-build="r776"] .joinPage .paymentOfferCardR800>p{
  margin:2px 0 0!important;
  color:#d9e5e9!important;
  font-size:clamp(10.5px,.76vw,13px)!important;
  line-height:1.38!important;
  text-align:left!important;
}
/* Le pied n'a plus à répéter les offres : il sert seulement à clarifier le flux. */
body[data-etnos-build="r776"] .joinPage .paymentFreeFooterR775 strong{
  font-size:clamp(12px,.9vw,15px)!important;
}
body[data-etnos-build="r776"] .joinPage .paymentFreeFooterR775 span{
  font-size:clamp(10.5px,.75vw,12.5px)!important;
  line-height:1.35!important;
}

/* ========================================================================== */
/* Responsive : centrer quand il y a de la place, démarrer en haut sinon.     */
/* ========================================================================== */
@media (max-width:1100px){
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="age"] .joinView[data-view="age"]:not([hidden]),
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .joinView[data-view="access"]:not([hidden]),
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .joinView[data-view="values"]:not([hidden]){
    justify-content:flex-start!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessIntro h2{
    white-space:normal!important;
  }
  body[data-etnos-build="r776"] .joinPage .paymentOfferR800{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  body[data-etnos-build="r776"] .joinPage .paymentOfferIntroR800{
    padding:0 0 14px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(255,255,255,.20)!important;
    text-align:center!important;
    align-items:center!important;
  }
  body[data-etnos-build="r776"] .joinPage .paymentOfferIntroR800 p{
    max-width:820px!important;
    text-align:center!important;
  }
}
@media (max-width:760px){
  body[data-etnos-build="r776"] .joinPage .paymentOfferGridR800{
    grid-template-columns:1fr!important;
  }
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesWorkspaceR775{
    padding:16px!important;
  }
}
@media (max-height:820px){
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="age"] .joinView[data-view="age"]:not([hidden]),
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .joinView[data-view="access"]:not([hidden]),
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .joinView[data-view="values"]:not([hidden]){
    justify-content:flex-start!important;
  }
}

/* R800 QA — corrections géométriques après rendu multi-résolutions. */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="age"] .joinAgeEntryPanel{
  align-items:stretch!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="age"] .joinAgeEntryCopy,
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="age"] .joinAgeEntryFormCell{
  align-self:stretch!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesWorkspace.valuesWorkspaceR775{
  grid-template-rows:auto auto!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="payment"] .paymentWorkspace.paymentWorkspaceR775{
  height:auto!important;
  min-height:0!important;
  grid-template-rows:auto auto auto auto auto!important;
  align-content:start!important;
  overflow:visible!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="payment"] .paymentFreeFooterR775{
  min-height:0!important;
  height:auto!important;
  padding:10px 12px!important;
  border-left:4px solid var(--r800-orange)!important;
  border-top:0!important;
  background:#eef4f7!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .joinView[data-view="values"]:not([hidden]){
  height:auto!important;
  overflow:visible!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesWorkspace.valuesWorkspaceR775{
  flex:0 0 auto!important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesBackOutsideR800{
  flex:0 0 auto!important;
}
