.landing-body { min-width: 320px; background: var(--navy); color: white; }

.choice-page {
  position: relative;
  min-height: 720px;
  height: 100svh;
  overflow: hidden;
  isolation: isolate;
  background: var(--navy);
}

.choice-header {
  position: absolute;
  z-index: 20;
  top: 0;
  right: 0;
  left: 0;
  min-height: 108px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 28px;
  padding: 20px clamp(24px, 5vw, 78px);
  border-bottom: 1px solid rgba(255,255,255,.2);
  background: linear-gradient(180deg, rgba(4,17,29,.86), rgba(4,17,29,0));
}

.choice-brand { width: fit-content; }
.choice-brand img { width: clamp(150px, 16vw, 220px); filter: brightness(0) invert(1); }
.choice-header > p { margin: 0; font-size: .7rem; font-weight: 800; letter-spacing: .2em; text-align: center; text-transform: uppercase; }
.choice-contact { justify-self: end; display: flex; align-items: center; gap: 10px; font-size: .76rem; font-weight: 800; }
.choice-contact span { width: 7px; height: 7px; border-radius: 50%; background: var(--teal); box-shadow: 0 0 0 5px rgba(18,166,161,.16); }

.choice-grid { min-height: 720px; height: 100%; display: grid; grid-template-columns: 1fr 1fr; transition: grid-template-columns 500ms cubic-bezier(.2,.8,.2,1); }
.choice-grid:has(.choice-private:hover) { grid-template-columns: 1.08fr .92fr; }
.choice-grid:has(.choice-professional:hover) { grid-template-columns: .92fr 1.08fr; }

.choice-panel { position: relative; min-width: 0; display: flex; align-items: flex-end; overflow: hidden; padding: 150px clamp(28px,5vw,80px) 92px; isolation: isolate; }
.choice-background, .choice-overlay { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; }
.choice-background { object-fit: cover; transition: transform 800ms ease; }
.choice-panel:hover .choice-background, .choice-panel:focus-within .choice-background { transform: scale(1.035); }
.choice-overlay { z-index: -1; background: linear-gradient(180deg, rgba(5,24,39,.2), rgba(5,24,39,.48) 42%, rgba(5,24,39,.98)); }
.choice-private .choice-overlay { background: linear-gradient(180deg, rgba(5,24,39,.21), rgba(5,24,39,.48) 42%, rgba(5,24,39,.98)), linear-gradient(90deg, rgba(18,166,161,.16), transparent 60%); }
.choice-professional .choice-overlay { background: linear-gradient(180deg, rgba(5,24,39,.2), rgba(5,24,39,.52) 42%, rgba(5,24,39,.98)), linear-gradient(270deg, rgba(244,183,25,.13), transparent 60%); }

.choice-content { position: relative; z-index: 2; width: min(580px,100%); transition: transform 350ms ease; }
.choice-panel:hover .choice-content, .choice-panel:focus-within .choice-content { transform: translateY(-8px); }
.choice-number { position: absolute; top: -110px; right: 0; margin: 0; color: rgba(255,255,255,.18); font: 400 clamp(5rem,9vw,9rem)/1 Georgia,"Times New Roman",serif; }
.choice-kicker { display: inline-flex; align-items: center; gap: 12px; margin: 0 0 24px; color: #5ee0dc; font-size: .7rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.choice-professional .choice-kicker { color: #ffd157; }
.choice-kicker::before { content: ""; width: 34px; height: 2px; background: currentColor; }
.choice-panel h1, .choice-panel h2 { margin: 0; font: 400 clamp(2.7rem,4.7vw,5rem)/.98 Georgia,"Times New Roman",serif; letter-spacing: -.045em; }
.choice-panel h1 em, .choice-panel h2 em { display: block; color: var(--gold); font-weight: 400; font-style: italic; }
.choice-private h1 em { color: #45d0cb; }
.choice-description { max-width: 520px; margin: 25px 0 0; color: #d7e1e6; font-size: clamp(.92rem,1.25vw,1.05rem); line-height: 1.7; }
.choice-features { display: flex; flex-wrap: wrap; gap: 9px 18px; margin: 25px 0 0; padding: 0; color: #eaf0f3; font-size: .72rem; font-weight: 700; list-style: none; }
.choice-features li { display: inline-flex; align-items: center; gap: 7px; }
.choice-features li::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--teal); }
.choice-professional .choice-features li::before { background: var(--gold); }

.choice-button { width: fit-content; min-height: 56px; display: inline-flex; align-items: center; justify-content: space-between; gap: 34px; margin-top: 34px; padding: 15px 22px; border: 1px solid rgba(255,255,255,.62); background: rgba(7,29,48,.28); color: white; font-size: .78rem; font-weight: 800; backdrop-filter: blur(10px); transition: transform 200ms ease, background 200ms ease, color 200ms ease; }
.choice-private .choice-button:hover, .choice-private .choice-button:focus-visible { background: var(--teal); color: var(--navy); transform: translateX(4px); }
.choice-professional .choice-button:hover, .choice-professional .choice-button:focus-visible { background: var(--gold); color: var(--navy); transform: translateX(4px); }

.choice-divider { position: absolute; z-index: 10; top: 108px; bottom: 45px; left: 50%; width: 1px; background: linear-gradient(180deg, rgba(255,255,255,.6), rgba(255,255,255,.12)); pointer-events: none; }
.choice-divider span { position: absolute; top: 43%; left: 50%; width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; background: rgba(7,29,48,.86); color: white; font-size: .59rem; font-weight: 800; letter-spacing: .1em; transform: translate(-50%,-50%); }
.choice-signature { position: absolute; z-index: 12; right: 0; bottom: 0; left: 0; margin: 0; padding: 15px 20px; background: rgba(4,17,29,.76); color: rgba(255,255,255,.72); font-size: .62rem; font-weight: 700; letter-spacing: .15em; text-align: center; text-transform: uppercase; }

@media (max-width: 820px) {
  .choice-page, .choice-grid { height: auto; min-height: 100svh; }
  .choice-header { position: relative; min-height: 94px; grid-template-columns: 1fr auto; padding: 18px 22px; background: var(--navy); }
  .choice-header > p { display: none; }
  .choice-grid, .choice-grid:has(.choice-private:hover), .choice-grid:has(.choice-professional:hover) { grid-template-columns: 1fr; }
  .choice-panel { min-height: 540px; padding: 100px 24px 72px; }
  .choice-content { width: min(100%,620px); }
  .choice-number { top: -72px; }
  .choice-panel h1, .choice-panel h2 { font-size: clamp(2.65rem,12vw,4rem); }
  .choice-divider { top: calc(94px + 540px); right: 24px; bottom: auto; left: 24px; width: auto; height: 1px; }
  .choice-signature { position: relative; }
}

@media (max-width: 480px) {
  .choice-contact { font-size: 0; }
  .choice-contact::after { content: "Contact"; font-size: .7rem; }
  .choice-button { width: 100%; }
  .choice-features { display: grid; }
  .choice-signature { line-height: 1.6; }
}


/* Horodatage de publication */
.site-last-update {
  margin: -8px auto 0;
  padding: 0 20px 18px;
  text-align: center;
  font-size: 11px;
  line-height: 1.4;
  letter-spacing: .04em;
  color: rgba(255,255,255,.55);
}
@media (max-width: 700px) {
  .site-last-update {
    margin-top: -4px;
    padding-bottom: 14px;
    font-size: 10px;
  }
}
