/* MAJERTY.eu — site de vente OVH, sans framework ni traqueur */
:root{
  --bg:#0b1016;--bg2:#101720;--panel:#151d27;--panel2:#1b2530;--line:#2a3745;
  --ink:#f4f7f9;--soft:#b9c5d0;--mute:#7f8d9c;--green:#39b54a;--green2:#2d963d;
  --green-soft:#11291a;--amber:#e4a33e;--red:#e27373;--blue:#70a7ff;
  --radius:18px;--max:1180px;--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased}
a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}
code{font-family:var(--mono);font-size:.92em;color:#d7f6dc;background:#0e151d;border:1px solid var(--line);padding:.08em .35em;border-radius:6px}
.wrap{width:min(var(--max),calc(100% - 40px));margin:0 auto}.narrow{width:min(850px,calc(100% - 40px));margin:0 auto}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:12px;background:#fff;color:#000;padding:10px 14px;z-index:1000;border-radius:8px}
.nav{position:sticky;top:0;z-index:60;border-bottom:1px solid rgba(42,55,69,.9);background:rgba(11,16,22,.90);backdrop-filter:blur(12px)}
.nav-inner{height:72px;display:flex;align-items:center;gap:22px}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-weight:900;letter-spacing:.04em}.brand:hover{text-decoration:none}.brand img{width:30px;height:30px;border-radius:8px}
.navlinks{display:flex;align-items:center;gap:6px;margin-left:auto}.navlinks a{color:var(--soft);font-size:.91rem;font-weight:700;padding:9px 10px;border-radius:9px}.navlinks a:hover,.navlinks a.active{color:var(--ink);background:var(--panel);text-decoration:none}.navlinks .buy{background:var(--green);color:#07260e}.navlinks .buy:hover{background:var(--green2);color:#061d0a}
.menu-btn{display:none;margin-left:auto;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:9px 12px;font-weight:750}
.hero{padding:82px 0 64px;background:radial-gradient(circle at 82% 20%,rgba(57,181,74,.11),transparent 30%),linear-gradient(180deg,#0b1016 0,#0e151d 100%)}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:52px;align-items:center}.eyebrow{color:var(--amber);font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;font-weight:850;margin-bottom:14px}
h1,h2,h3{letter-spacing:-.025em;line-height:1.12;margin:0 0 .55em}h1{font-size:clamp(2.65rem,6vw,5rem);font-weight:920}h2{font-size:clamp(1.75rem,3.5vw,2.65rem);font-weight:870}h3{font-size:1.14rem;font-weight:820}
.lead{font-size:clamp(1.08rem,1.5vw,1.28rem);color:var(--soft);max-width:64ch}.accent{color:var(--green)}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 20px;border-radius:11px;border:1px solid transparent;background:var(--green);color:#08280f;font:inherit;font-weight:850;cursor:pointer}.btn:hover{text-decoration:none;background:var(--green2)}.btn.ghost{background:transparent;border-color:var(--line);color:var(--ink)}.btn.ghost:hover{background:var(--panel)}.btn.secondary{background:#e8edf2;color:#111820}.btn.danger{background:#6d2f2f;color:white}.btn.small{padding:9px 13px;font-size:.9rem}.btn[disabled]{opacity:.5;cursor:not-allowed}
.os-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:7px 11px;color:var(--soft);background:rgba(21,29,39,.65);font-size:.88rem;font-weight:680}.pill .d{width:7px;height:7px;background:var(--green);border-radius:50%}
.keyboard-card{background:linear-gradient(145deg,var(--panel),#0f161e);border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:0 24px 80px rgba(0,0,0,.22)}.keyboard-top{display:flex;align-items:center;gap:10px;color:var(--soft);font-size:.9rem;margin-bottom:17px}.status{margin-left:auto;border-radius:999px;background:var(--green-soft);border:1px solid #285d34;color:#8de99a;padding:5px 9px;font-weight:850;font-size:.72rem;letter-spacing:.06em}.keyrow{display:grid;grid-template-columns:repeat(10,1fr);gap:7px;margin-bottom:7px}.key{aspect-ratio:1/1;background:#eef2f5;color:#131820;border-radius:9px;display:flex;align-items:center;justify-content:center;font-weight:860;border:1px solid #fff}.key.on{background:var(--green);border-color:#68db76;color:#08280f}.keyrow.secondary{grid-template-columns:1.7fr repeat(7,1fr) 1.7fr}.key.dark{background:var(--panel2);border-color:var(--line);color:var(--soft);font-size:.74rem}.key-space{height:50px;background:var(--panel2);border:1px solid var(--line);border-radius:9px;display:flex;align-items:center;justify-content:center;color:var(--soft);font-weight:760;font-size:.86rem}.keyboard-note{font-size:.82rem;color:var(--mute);margin:14px 2px 0}
.section{padding:70px 0;border-top:1px solid var(--line)}.section.alt{background:var(--bg2)}.section-head{max-width:780px;margin-bottom:31px}.section-head p{color:var(--soft);margin:0}.kicker{color:var(--green);font-weight:850;font-size:.78rem;text-transform:uppercase;letter-spacing:.11em;margin-bottom:9px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:25px}.card p{color:var(--soft);margin:0 0 1em}.card p:last-child{margin-bottom:0}.card strong{color:var(--ink)}.card .icon{width:42px;height:42px;border-radius:11px;background:var(--green-soft);border:1px solid #285f35;display:flex;align-items:center;justify-content:center;color:#91e99c;font-weight:900;margin-bottom:16px}.card.selected{border-color:#397f47;box-shadow:0 0 0 1px rgba(57,181,74,.15)}
.callout{border:1px solid #285f35;border-left:4px solid var(--green);background:var(--green-soft);border-radius:12px;padding:19px 21px;color:#dcede0}.callout p:last-child{margin-bottom:0}.callout.amber{background:#271f12;border-color:#705123;border-left-color:var(--amber);color:#f5e5c8}.callout.red{background:#2a1717;border-color:#6c3434;border-left-color:var(--red);color:#f4d8d8}
.price{font-size:3rem;font-weight:920;color:var(--green);letter-spacing:-.04em}.price small{font-size:.95rem;color:var(--mute);font-weight:700}.fine{font-size:.84rem;color:var(--mute)}.muted{color:var(--mute)}
.stat{padding:24px;border-radius:var(--radius);background:var(--panel);border:1px solid var(--line)}.stat .num{font-size:2.2rem;font-weight:920;letter-spacing:-.04em;color:var(--green)}.stat .label{color:var(--soft);font-size:.9rem}.stat .sub{color:var(--mute);font-size:.8rem;margin-top:5px}
.page-hero{padding:68px 0 42px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#0f161f,#0b1016)}.page-hero p{color:var(--soft);font-size:1.13rem;max-width:76ch}.page-hero h1{font-size:clamp(2.35rem,5vw,4rem)}
.field{margin-bottom:19px}.field label{display:block;font-weight:820;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;background:#0d141c;color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:12px 14px;font:inherit}.field textarea{min-height:130px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid rgba(57,181,74,.45);outline-offset:1px;border-color:#377f45}.field-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.check{display:flex;align-items:flex-start;gap:10px;color:var(--soft);font-size:.93rem}.check input{margin-top:.34em}.required{color:#f0a4a4}.hint{color:var(--mute);font-size:.87rem;margin-top:6px}.form-errors{background:#2a1717;border:1px solid #6c3434;border-radius:12px;padding:15px 18px;margin-bottom:20px;color:#f4d8d8}.form-errors ul{margin:7px 0 0;padding-left:1.2em}.success{background:var(--green-soft);border:1px solid #285f35;border-radius:12px;padding:15px 18px;color:#dbefdf}.reference{font-family:var(--mono);font-size:1.05rem;letter-spacing:.03em;background:#0e151d;border:1px solid var(--line);border-radius:10px;padding:12px 14px;display:inline-block}
.download-card{display:flex;flex-direction:column;min-height:100%}.download-card .actions{margin-top:auto}.osmark{font-size:2rem;margin-bottom:10px}.hash{word-break:break-all;font-family:var(--mono);font-size:.72rem;color:var(--mute);margin-top:12px}.available{color:#83e68f;font-weight:800}.missing{color:#e6ba75;font-weight:800}
.steps{counter-reset:step;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.steps .card{position:relative;padding-top:60px}.steps .card:before{counter-increment:step;content:"0" counter(step);position:absolute;top:22px;left:25px;color:var(--green);font-family:var(--mono);font-weight:900;letter-spacing:.08em}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius)}table{width:100%;border-collapse:collapse;min-width:700px;background:var(--panel)}th,td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:#1a2430;color:var(--ink);font-size:.86rem}td{color:var(--soft);font-size:.9rem}tr:last-child td{border-bottom:0}.yes{color:#83e68f;font-weight:800}.no{color:#ef9797}.mid{color:#f0c980}
.prose p,.prose li{color:var(--soft)}.prose h2{margin-top:1.55em}.prose h3{margin-top:1.45em}.prose ul{padding-left:1.25em}.prose li{margin:.45em 0}.prose strong{color:var(--ink)}.prose .lede{font-size:1.18rem;color:#d9e0e6}
.footer{border-top:1px solid var(--line);padding:44px 0 34px;background:#090d12}.footer-grid{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:30px}.footer h3{font-size:.88rem;text-transform:uppercase;letter-spacing:.09em;color:var(--mute)}.footer a{display:block;color:var(--soft);margin:7px 0;font-size:.9rem}.footer-copy{margin-top:32px;padding-top:18px;border-top:1px solid var(--line);color:var(--mute);font-size:.83rem;display:flex;gap:14px;justify-content:space-between;flex-wrap:wrap}
.badge{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:5px 9px;color:var(--soft);font-size:.78rem;font-weight:750}.badge.sandbox{border-color:#6f5123;color:#f2ca88;background:#251e13}
.notice-top{background:#261f12;color:#f1cf91;border-bottom:1px solid #705123;padding:8px 0;font-size:.86rem}.notice-top .wrap{display:flex;justify-content:center;text-align:center}
@media(max-width:1000px){.navlinks{display:none;position:absolute;top:72px;left:0;right:0;background:#0b1016;border-bottom:1px solid var(--line);padding:12px 20px 18px;flex-direction:column;align-items:stretch}.navlinks.open{display:flex}.menu-btn{display:block}.hero-grid{grid-template-columns:1fr}.keyboard-card{max-width:650px}.grid4{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){body{font-size:16px}.hero{padding:54px 0 42px}.section{padding:52px 0}.grid2,.grid3,.grid4,.steps,.field-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.keyrow{gap:4px}.keyrow.secondary{grid-template-columns:1.5fr repeat(7,1fr) 1.5fr}.key{border-radius:6px;font-size:.75rem}.keyboard-card{padding:14px}.wrap,.narrow{width:min(100% - 28px,var(--max))}.nav-inner{height:66px}.navlinks{top:66px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
