/* Aedova — landing « Plan d'architecte / cyanotype ». DA singulière, anti-template SaaS.
   Scopée à body.lp → n'affecte PAS le studio. Charge APRÈS style.css (override).
   Monde : bleu de plan profond, grille technique, panneaux fantômes à coins vifs + repères
   de coupe, cartouche, cotes, libellés monospace, accent ocre (crayon du dessinateur).
   Le produit = bâtir (aedificare) → on te livre le PLAN et le bâtiment (le code). */

.lp{
  --bp-bg:#07193F; --bp-bg2:#0A2150; --bp-ink:#E2EBFF; --bp-dim:#93AEE6;
  --bp-line:rgba(150,184,255,.20); --bp-line-strong:rgba(150,184,255,.42);
  --bp-accent:#F4B23E; --bp-accent-ink:#1A1304; --bp-live:#5FD2FF;
  --mono:ui-monospace,"SF Mono","Cascadia Code","JetBrains Mono",Menlo,monospace;
  background:var(--bp-bg); color:var(--bp-ink);
  --line:var(--bp-line); --ink:var(--bp-ink); --muted:var(--bp-dim);
}
/* grille de plan partout + repères de coupe en coin de page */
.lp::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(var(--bp-line) 1px,transparent 1px),linear-gradient(90deg,var(--bp-line) 1px,transparent 1px);
  background-size:46px 46px}
.lp>*{position:relative;z-index:1}
.lp ::selection{background:var(--bp-accent);color:var(--bp-accent-ink)}

/* libellés techniques en mono + cote */
.lp .eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:var(--bp-accent);font-weight:500;display:inline-flex;align-items:center;gap:10px}
.lp .eyebrow::before{content:"";width:34px;height:1px;background:var(--bp-accent)}
.lp h1,.lp h2,.lp h3,.lp .pc-name,.lp .logo,.lp .step .no,.lp .result .meta .nm{color:var(--bp-ink)}

/* ---------- Header ---------- */
.lp .hdr{background:color-mix(in srgb,var(--bp-bg) 86%,transparent);border-bottom:1px solid transparent}
.lp .hdr.scrolled{border-color:var(--bp-line)}
.lp .hdr nav a{opacity:.78;font-family:var(--mono);font-size:.82rem;letter-spacing:.04em;text-transform:lowercase}
.lp .hdr nav a:hover{opacity:1;color:var(--bp-accent)}
.lp .logo img{border-radius:0;border:1px solid var(--bp-line-strong)}
.lp .lang{border:1px solid var(--bp-line-strong);border-radius:0;color:var(--bp-ink);font-family:var(--mono)}

/* ---------- Boutons techniques (fini les pilules) ---------- */
.lp .btn{border-radius:3px;font-weight:600;letter-spacing:.01em;padding:13px 22px;transition:transform .15s,background .2s,color .2s,border-color .2s}
.lp .btn-accent,.lp .btn-cream,.lp .btn-primary{background:var(--bp-accent);color:var(--bp-accent-ink);border:1px solid var(--bp-accent);box-shadow:none}
.lp .btn-accent:hover,.lp .btn-cream:hover,.lp .btn-primary:hover{transform:translateY(-2px);background:#ffc658}
.lp .btn-outline{background:transparent;color:var(--bp-ink);border:1px solid var(--bp-line-strong)}
.lp .btn-outline:hover{border-color:var(--bp-accent);color:var(--bp-accent)}

/* ---------- HERO = planche de dessin cotée ---------- */
.lp .hero{color:var(--bp-ink);padding-block:clamp(64px,9vw,128px);border-bottom:1px solid var(--bp-line-strong)}
.lp .hero::before{background:radial-gradient(120% 90% at 78% 0,rgba(95,210,255,.10),transparent 60%);animation:none}
.lp .blueprint{opacity:0}
.lp .hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.lp .hero h1{font-family:var(--display);font-size:clamp(3rem,2rem + 5.2vw,6.6rem);line-height:.94;letter-spacing:-.04em;max-width:none;font-weight:700}
.lp .hero h1 .g{background:none;-webkit-text-fill-color:var(--bp-accent);color:var(--bp-accent)}
.lp .hero p.sub{max-width:48ch;opacity:.86;font-size:1.08rem}
.lp .hero .cta-row{margin-top:30px}
.lp .hero .trust{font-family:var(--mono);font-size:.78rem;letter-spacing:.02em;opacity:.66;color:var(--bp-dim)}
/* cote verticale décorative à gauche du titre */
.lp .hero h1::before{content:"";position:absolute;left:-22px;top:6%;bottom:6%;width:1px;background:var(--bp-line-strong)}
.lp .hero h1{position:relative;padding-left:0}
/* cartouche (title block) façon plan d'architecte, colonne droite */
.lp .hero-plate{border:1px solid var(--bp-line-strong);background:linear-gradient(180deg,rgba(95,210,255,.05),transparent);position:relative}
.lp .hero-plate::before,.lp .hero-plate::after{content:"";position:absolute;width:9px;height:9px;border:1px solid var(--bp-accent)}
.lp .hero-plate::before{top:-1px;left:-1px;border-right:0;border-bottom:0}
.lp .hero-plate::after{bottom:-1px;right:-1px;border-left:0;border-top:0}
.lp .hp-row{display:flex;font-family:var(--mono);font-size:.74rem;color:var(--bp-dim);border-bottom:1px solid var(--bp-line)}
.lp .hp-row:last-child{border-bottom:0}
.lp .hp-row .k{flex:0 0 42%;padding:11px 14px;border-right:1px solid var(--bp-line);letter-spacing:.06em;text-transform:uppercase;opacity:.7}
.lp .hp-row .v{padding:11px 14px;color:var(--bp-ink)}
.lp .hp-row .v.acc{color:var(--bp-accent)}
.lp .hp-title{font-family:var(--mono);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--bp-accent);padding:10px 14px;border-bottom:1px solid var(--bp-line-strong);display:flex;justify-content:space-between}
@media(max-width:900px){.lp .hero .wrap{grid-template-columns:1fr;gap:30px}.lp .hero-plate{max-width:420px}}

/* ---------- Sections : séparées par filets de plan, pas de blocs blancs ---------- */
.lp .section{border-top:1px solid var(--bp-line-strong);background:transparent!important}
.lp .section.dark{background:var(--bp-bg2)!important}
.lp h2{font-family:var(--display);font-size:clamp(2rem,1.4rem + 2.4vw,3.4rem);letter-spacing:-.025em;line-height:1.02}
.lp .muted{color:var(--bp-dim)}

/* ---------- Demo = planche « live build » ---------- */
.lp .console{background:rgba(10,33,80,.62);border:1px solid var(--bp-line-strong);border-radius:4px;backdrop-filter:blur(3px);box-shadow:0 40px 90px -50px #000;position:relative}
.lp .console::before,.lp .console::after{content:"";position:absolute;width:12px;height:12px;border:1px solid var(--bp-accent);z-index:2}
.lp .console::before{top:-1px;left:-1px;border-right:0;border-bottom:0}
.lp .console::after{bottom:-1px;right:-1px;border-left:0;border-top:0}
.lp .console .bar{background:var(--bp-bg2);color:var(--bp-dim);border-bottom:1px solid var(--bp-line-strong)}
.lp .console .bar .d{background:transparent;border:1px solid var(--bp-line-strong);width:9px;height:9px}
.lp .console .bar b{font-family:var(--mono);color:var(--bp-live)}
.lp .prompt-row input{background:rgba(7,25,63,.6);border:1px solid var(--bp-line-strong);border-radius:3px;color:var(--bp-ink);font-family:var(--mono)}
.lp .prompt-row input:focus{border-color:var(--bp-accent);box-shadow:0 0 0 3px rgba(244,178,62,.16)}
.lp .prompt-row input::placeholder{color:var(--bp-dim)}
.lp .chips .lbl{font-family:var(--mono);color:var(--bp-dim);text-transform:uppercase;letter-spacing:.1em;font-size:.74rem}
.lp .chip{background:transparent;border:1px solid var(--bp-line-strong);border-radius:3px;color:var(--bp-ink);font-family:var(--mono);font-size:.78rem}
.lp .chip:hover{border-color:var(--bp-accent);color:var(--bp-accent)}
.lp .build-seq{border-top:1px solid var(--bp-line-strong)}
.lp .build-seq .bh{font-family:var(--mono);color:var(--bp-live)}
.lp .bstep .dot{background:var(--bp-bg2);border-color:var(--bp-line-strong);color:var(--bp-dim);border-radius:50%}
.lp .bstep .lbl{color:var(--bp-dim);font-family:var(--mono);font-size:.86rem}
.lp .bstep.active .lbl,.lp .bstep.done .lbl{color:var(--bp-ink)}
.lp .result{border-top:1px solid var(--bp-line-strong)}
.lp .badge{background:rgba(95,210,255,.12);color:var(--bp-live);border-radius:3px;font-family:var(--mono)}
.lp .ent-card{background:rgba(7,25,63,.55);border:1px solid var(--bp-line-strong);border-radius:3px}
.lp .ent-card .h .ic{background:var(--bp-accent);color:var(--bp-accent-ink);border-radius:2px}
.lp .ent-card .fld .ty{font-family:var(--mono);color:var(--bp-live)}
.lp .demo-preview{border:1px solid var(--bp-line-strong);border-radius:4px}

/* ---------- How = annotations de plan numérotées ---------- */
.lp .steps{gap:0;border:1px solid var(--bp-line-strong);border-radius:4px;overflow:hidden}
.lp .step{padding:30px 26px;border-right:1px solid var(--bp-line);position:relative}
.lp .step:last-child{border-right:0}
.lp .step .no{font-family:var(--mono);font-size:1rem;color:var(--bp-accent);letter-spacing:.1em}
.lp .step h3{font-family:var(--display);margin-top:14px}
.lp .step p{color:var(--bp-dim)}
@media(max-width:780px){.lp .step{border-right:0;border-bottom:1px solid var(--bp-line)}}

/* ---------- Sovereign = panneaux fantômes à repères de coupe ---------- */
.lp .sov-grid .card{background:rgba(10,33,80,.4);border:1px solid var(--bp-line-strong);border-radius:4px;padding:26px;position:relative}
.lp .sov-grid .card::before{content:"";position:absolute;top:-1px;left:-1px;width:11px;height:11px;border-top:1px solid var(--bp-accent);border-left:1px solid var(--bp-accent)}
.lp .sov-grid .card .ic{background:transparent;border:1px solid var(--bp-accent);color:var(--bp-accent);border-radius:3px}
.lp .sov-grid .card h3{font-family:var(--display)}
.lp .sov-grid .card p{color:var(--bp-dim)}

/* ---------- Comparison ---------- */
.lp .section.dark.kinetic{background:var(--bp-bg2)!important;animation:none}
.lp .cmp{border:1px solid var(--bp-line-strong);border-radius:4px}
.lp .cmp th,.lp .cmp td{border-bottom:1px solid var(--bp-line)}
.lp .cmp thead th{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;color:var(--bp-dim)}
.lp .cmp thead th:last-child{color:var(--bp-accent)}
.lp .cmp .ok{color:var(--bp-live)}.lp .cmp .pt{color:var(--bp-accent)}.lp .cmp .x{color:var(--bp-dim);opacity:.6}

/* ---------- Pricing = fiches techniques (spec sheets) ---------- */
.lp .price-card{background:rgba(10,33,80,.4);border:1px solid var(--bp-line-strong);border-radius:4px;box-shadow:none}
.lp .price-card:hover{transform:translateY(-3px);border-color:var(--bp-accent);box-shadow:none}
.lp .price-card.hot{border-color:var(--bp-accent);box-shadow:0 0 0 1px var(--bp-accent)}
.lp .pc-badge{background:var(--bp-accent);color:var(--bp-accent-ink);border-radius:2px;font-family:var(--mono)}
.lp .pc-name{font-family:var(--display)}
.lp .price-card.sov .pc-name{color:var(--bp-accent)}
.lp .pc-amt{font-family:var(--display)}
.lp .pc-feat li{color:var(--bp-ink)}
.lp .pc-feat li::before{content:"+";background:transparent;border:1px solid var(--bp-line-strong);color:var(--bp-accent);border-radius:2px;font-family:var(--mono)}
.lp .price-card.sov .pc-feat li::before{color:var(--bp-dim)}

/* ---------- Waitlist + footer ---------- */
.lp #waitlist{background:var(--bp-bg2)!important}
.lp .wl-box input{background:rgba(7,25,63,.6);border:1px solid var(--bp-line-strong);border-radius:3px;color:var(--bp-ink);font-family:var(--mono)}
.lp .wl-box input:focus{border-color:var(--bp-accent);box-shadow:0 0 0 3px rgba(244,178,62,.16)}
.lp .foot{border-top:1px solid var(--bp-line-strong)}
.lp .foot .wrap{color:var(--bp-dim);font-family:var(--mono);font-size:.8rem}

/* ---------- Polish mobile ---------- */
.lp{overflow-x:hidden}
@media(max-width:560px){
  .lp .hero h1{font-size:clamp(2.2rem,1.2rem + 7vw,3rem);line-height:.98}
  .lp .hero h1::before{display:none}
  .lp .hp-title{flex-wrap:wrap;gap:3px;font-size:.6rem;letter-spacing:.12em}
  .lp .hp-row .k{flex-basis:38%}
  .lp .hero-plate{max-width:none}
}

@media (prefers-reduced-motion:reduce){.lp .console,.lp .bstep .dot{transition:none}}
