/* Thomas Lévy — page d’attente 2027. Aucun script, suivi ou ressource externe. */
:root { color-scheme: dark; --white:#f3f1ef; --dim:#b7b4b2; --dark:#070809; --line:rgba(232,229,226,.38); }
* { box-sizing:border-box; }
html,body { min-height:100%; margin:0; }
body { background:var(--dark); color:var(--white); font-family:Arial,Helvetica,sans-serif; }
a { color:inherit; }
.site { position:relative; min-height:100svh; isolation:isolate; overflow:hidden; background:radial-gradient(ellipse 35% 55% at 29% 45%,#252526 0%,#101113 57%,transparent 95%),linear-gradient(120deg,#08090a 5%,#0b0c0e 45%,#060708 100%); }
.site:after { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(90deg,transparent 0%,rgba(3,4,5,.04) 42%,#08090b 72%); }
.photo { position:absolute; z-index:-2; pointer-events:none; height:117%; max-width:none; width:auto; left:clamp(0px,4.4vw,88px); bottom:-5.5%; filter:contrast(1.06) brightness(.96); user-select:none; }
.nav { position:absolute; z-index:3; top:clamp(23px,4vw,39px); right:clamp(24px,3.1vw,55px); display:flex; flex-wrap:wrap; justify-content:flex-end; gap:14px; }
.nav a { min-width:120px; height:42px; display:inline-flex; justify-content:center; align-items:center; border:1px solid var(--line); border-radius:4px; text-decoration:none; padding:0 18px; color:#d4d1d0; font-size:14px; letter-spacing:.025em; background:rgba(8,8,9,.16); transition:border-color .18s, color .18s, background .18s; }
.nav a:hover, .nav a:focus-visible { border-color:var(--white); color:#fff; background:rgba(255,255,255,.09); }
.nav a:focus-visible,.back:focus-visible{ outline:2px solid #f5f5f5; outline-offset:4px; }
.main { position:relative; z-index:2; margin-left:65.1%; min-height:100svh; display:flex; justify-content:center; flex-direction:column; padding:115px clamp(25px,4.3vw,75px) 75px 0; }
.heading { font-family:Arial,Helvetica,sans-serif; font-size:clamp(60px,6.15vw,112px); font-weight:800; line-height:.99; letter-spacing:-.063em; margin:0; text-transform:none; text-wrap:nowrap; color:#f4f1ee; text-shadow:0 1px 1px rgba(255,255,255,.04); }
.heading span { display:block; font-size:1.14em; line-height:1.13; letter-spacing:-.05em; }
.rule { width:170px; height:1px; background:linear-gradient(90deg,rgba(230,230,230,.7),transparent); margin:31px 0 23px; }
.signature { margin:0; font-size:clamp(20px,2vw,32px); line-height:1.4; font-weight:300; letter-spacing:.22em; white-space:nowrap; color:#eae7e6; }
.subheading { font-size:clamp(39px,4.15vw,70px); font-weight:800; line-height:1.06; letter-spacing:-.05em; margin:0; text-wrap:balance; }
.caption { margin:0; color:#dedad8; font-size:clamp(17px,1.5vw,22px); letter-spacing:.055em; }
.back { display:inline-block; width:max-content; text-decoration:none; border-bottom:1px solid rgba(255,255,255,.6); padding-bottom:5px; margin-top:33px; color:#eee; font-size:14px; letter-spacing:.045em; }
.back:hover { border-bottom-color:#fff; color:#fff; }
@media (min-width:1900px) { .photo { left:8vw; } }
@media (max-width:1100px) { .photo { height:106%; left:-4%; bottom:-3%; } .main { margin-left:60%; padding-right:28px; } .heading {font-size:clamp(55px,6.5vw,75px)} .heading span{font-size:1.12em} .signature{letter-spacing:.15em} }
@media (max-width:720px) {
  .site { min-height:100svh; display:flex; flex-direction:column; }
  .nav { position:relative; top:auto;right:auto; padding:19px 17px 0; justify-content:center; gap:8px; }
  .nav a { min-width:0; flex:1; max-width:150px; padding:0 7px; height:40px; font-size:12px; }
  .photo {height:74svh; max-height:690px; left:50%; transform:translateX(-54%); bottom:auto; top:8svh; opacity:.97; }
  .site:after { background:linear-gradient(to bottom,transparent 5%,rgba(5,6,7,.05) 32%,rgba(5,6,7,.63) 59%,#070809 79%); }
  .main { margin:0; padding:0 24px 10svh; justify-content:flex-end; align-items:center; text-align:center; flex:1; min-height:calc(100svh - 59px); }
  .heading {font-size:clamp(52px,11vw,84px); letter-spacing:-.055em; }
  .rule { margin:23px auto 17px; }
  .signature {font-size:clamp(19px,4vw,26px);letter-spacing:.17em;}
  .subheading {font-size:clamp(43px,10vw,67px)}
  .caption {font-size:18px}
}
@media (prefers-reduced-motion:reduce) { .nav a { transition:none; } }
