/* MYNEWJOB — design system v3, premium product UI */
:root {
  --bg:#ffffff;
  --surface:#f6f7fb;
  --surface-2:#eef1f7;
  --ink:#0b1220;
  --muted:#667085;
  --line:#e4e8f0;
  --acc:#5b5cf0;
  --acc-dark:#4748d4;
  --acc-soft:#eeeeff;
  --green:#07875e;
  --red:#d23f57;
  --dark:#080b14;
  --dark-2:#111625;
  --dark-muted:#a8b0c2;
  --radius:18px;
  --radius-sm:12px;
  --shadow:0 26px 70px -34px rgba(15,23,42,.34),0 12px 28px -20px rgba(15,23,42,.22);
  --font-display:'Sora',system-ui,sans-serif;
  --font-body:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{font-family:var(--font-body);color:var(--ink);line-height:1.55;background:var(--bg);overflow-x:hidden;-webkit-font-smoothing:antialiased}
::selection{background:#c7c8ff;color:#0b1220}
h1,h2,h3,h4{font-family:var(--font-display);line-height:1.08;letter-spacing:-.035em}
a{color:var(--acc);text-decoration:none}
p{color:var(--muted)}
button,input{font:inherit}
.wrap{width:min(1160px,100%);margin:0 auto;padding-left:28px;padding-right:28px}

/* Navigation */
nav{position:sticky;top:0;z-index:80;height:66px;background:rgba(8,11,20,.82);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:saturate(160%) blur(18px);-webkit-backdrop-filter:saturate(160%) blur(18px)}
nav .wrap{height:100%;display:flex;align-items:center;justify-content:space-between}
.logo{display:inline-flex;align-items:center;font-family:var(--font-display);font-weight:800;font-size:1.12rem;color:#fff;letter-spacing:-.045em}
.logo::before{content:'';width:9px;height:9px;margin-right:10px;border-radius:3px;background:var(--acc);box-shadow:10px 0 0 rgba(91,92,240,.42)}
.logo span{color:#aaaaff}
nav .links{display:flex;align-items:center;gap:4px}
nav .links a{margin:0;padding:9px 11px;color:#aeb5c4;font-size:.84rem;font-weight:500;border-radius:8px;transition:color .18s,background .18s}
nav .links a:hover{color:#fff;background:rgba(255,255,255,.07)}
nav .links .btn{margin-left:10px;padding:10px 17px;color:#fff;background:var(--acc)}

/* Buttons */
.btn{display:inline-flex;min-height:44px;align-items:center;justify-content:center;background:var(--acc);color:#fff;font-weight:650;font-size:.9rem;padding:11px 22px;border:0;border-radius:10px;box-shadow:0 9px 22px -12px rgba(91,92,240,.8);transition:transform .18s,background .18s,box-shadow .18s;cursor:pointer}
.btn:hover{background:var(--acc-dark);transform:translateY(-2px);box-shadow:0 15px 28px -14px rgba(91,92,240,.85)}
.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid rgba(91,92,240,.33);outline-offset:3px}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line);box-shadow:none}
.btn.ghost:hover{background:var(--surface);border-color:#d6dbe6}

/* Hero */
.hero,.pagehead{width:100%;max-width:none;position:relative;isolation:isolate;background:var(--dark);overflow:hidden}
.hero::before,.pagehead::before{content:'';position:absolute;z-index:-2;inset:-30% -10% auto;height:680px;background:radial-gradient(circle at 50% 20%,rgba(91,92,240,.34),transparent 58%)}
.hero::after,.pagehead::after{content:'';position:absolute;z-index:-1;inset:0;opacity:.3;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,#000,transparent 72%)}
.hero{text-align:center;padding-top:112px;padding-bottom:96px;padding-left:max(24px,calc((100vw - 1160px)/2));padding-right:max(24px,calc((100vw - 1160px)/2))}
.hero .kicker,.pagehead .kicker{display:inline-flex;align-items:center;gap:9px;margin-bottom:26px;padding:7px 13px;color:#c5c6ff;background:rgba(91,92,240,.11);border:1px solid rgba(160,161,255,.22);border-radius:999px;font-size:.69rem;font-weight:700;letter-spacing:.115em;text-transform:uppercase}
.hero .kicker::before,.pagehead .kicker::before{content:'';width:6px;height:6px;border-radius:50%;background:#8c8dff;box-shadow:0 0 0 5px rgba(140,141,255,.1)}
.hero h1{max-width:930px;margin:0 auto;color:#fff;font-size:clamp(2.65rem,6.1vw,5.2rem);line-height:1.01;letter-spacing:-.062em;text-wrap:balance}
.hero h1 em{font-style:normal;color:#aaaaff}
.hero>p{max-width:650px;margin:27px auto 34px;color:var(--dark-muted);font-size:clamp(1rem,1.6vw,1.16rem);letter-spacing:-.012em}
.hero .ctas{display:flex;justify-content:center;gap:12px}
.hero .ctas .btn{margin:0}
.hero .ctas .btn.ghost{color:#f1f2f7;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.035)}
.hero .ctas .btn.ghost:hover{background:rgba(255,255,255,.09)}

/* Product window */
.window{position:relative;max-width:960px;margin:70px auto 0;text-align:left;background:#fff;border:1px solid rgba(255,255,255,.13);border-radius:18px;overflow:hidden;box-shadow:0 54px 120px -42px rgba(0,0,0,.92),0 0 0 1px rgba(255,255,255,.05)}
.window::after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 1px rgba(255,255,255,.65)}
.window .bar{display:flex;align-items:center;gap:7px;height:43px;padding:0 17px;background:#f7f8fb;border-bottom:1px solid var(--line)}
.window .bar i{width:10px;height:10px;border-radius:50%;display:block}
.window .bar i:nth-child(1){background:#ff6961}.window .bar i:nth-child(2){background:#ffbf3f}.window .bar i:nth-child(3){background:#32cc58}
.window .bar span{margin-left:10px;padding:4px 11px;border-radius:6px;background:#edf0f5;color:#7a8497;font-size:.7rem}
.window .body{padding:25px;background:linear-gradient(180deg,#fff,#fafbfe)}
.preview-label{display:flex;align-items:center;justify-content:space-between;margin:22px 2px 12px;color:#7b8496;font-size:.76rem}
.preview-label strong{color:#253047;font-size:.82rem}
.preview-jobs{display:grid;grid-template-columns:1.1fr .9fr;gap:12px}
.preview-job{position:relative;padding:18px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 25px -24px #101828}
.preview-job.featured{border-color:#cfd0ff;background:linear-gradient(135deg,#fff 55%,#f0f0ff)}
.preview-job .match{position:absolute;right:15px;top:15px;color:var(--acc);font-family:var(--font-display);font-size:1.12rem;font-weight:700}
.preview-job small{display:block;margin-bottom:9px;color:#737d90;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}
.preview-job h4{max-width:78%;font-size:.94rem;line-height:1.25;letter-spacing:-.025em}
.preview-job p{margin-top:7px;font-size:.75rem}

/* Search */
.searchbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.42fr) auto;background:#fff;border:1px solid #dfe4ee;border-radius:11px;box-shadow:0 8px 25px -22px #101828;overflow:hidden;transition:border-color .18s,box-shadow .18s}
.searchbar:focus-within{border-color:#a7a8ff;box-shadow:0 0 0 4px rgba(91,92,240,.1)}
.searchbar input{min-width:0;border:0;padding:15px 17px;background:transparent;color:var(--ink);outline:none;font-size:.9rem}
.searchbar input::placeholder{color:#99a1b1}
.searchbar input:last-of-type{border-left:1px solid var(--line)}
.searchbar button{border:0;margin:5px;padding:0 20px;border-radius:8px;background:var(--acc);color:#fff;font-weight:650;cursor:pointer;transition:background .18s}
.searchbar button:hover{background:var(--acc-dark)}

/* Job cards */
.jobcard{position:relative;margin-bottom:12px;padding:19px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 8px 25px -24px #101828;transition:transform .18s,border-color .18s,box-shadow .18s}
.jobcard:hover{transform:translateY(-2px);border-color:#d3d5df;box-shadow:var(--shadow)}
.jobcard .row{display:flex;justify-content:space-between;align-items:center}
.jobcard .tag,.card .tag{display:inline-flex;padding:4px 9px;border-radius:6px;background:var(--acc-soft);color:var(--acc-dark);font-size:.68rem;font-weight:700}
.jobcard .pct{font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--acc)}
.jobcard h4{margin:11px 0 3px;font-size:1rem;overflow-wrap:break-word}
.jobcard .meta{margin-bottom:9px;color:var(--muted);font-size:.8rem}
.jobcard p{font-size:.84rem}
.jobcard .actions{display:flex;gap:8px;margin-top:13px}
.jobcard .actions span{flex:1;padding:9px;text-align:center;border-radius:8px;font-size:.82rem;font-weight:650;cursor:pointer}
.jobcard .actions .no{background:#fff1f3;color:var(--red)}
.jobcard .actions .yes{background:#ecfdf5;color:var(--green)}

/* Sections */
section{padding:108px 0;background:var(--surface)}
section.alt{background:var(--surface)}
.sec-head{max-width:660px;margin:0 auto 56px;text-align:center}
.sec-head .kicker{display:block;margin-bottom:13px;color:var(--acc);font-size:.68rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase}
.sec-head h2{margin-bottom:13px;font-size:clamp(2rem,4vw,3.05rem);letter-spacing:-.052em;text-wrap:balance}
.sec-head p{font-size:1rem}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;padding:10px;background:var(--surface);border:1px solid var(--line);border-radius:18px}
.stats .t{padding:28px 18px;text-align:center;background:#fff}
.stats .t:first-child{border-radius:10px 0 0 10px}.stats .t:last-child{border-radius:0 10px 10px 0}
.stats .t strong{display:block;color:var(--ink);font-family:var(--font-display);font-size:clamp(1.7rem,3vw,2.35rem);font-weight:700;letter-spacing:-.055em;font-variant-numeric:tabular-nums}
.stats .t span{color:var(--muted);font-size:.79rem}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.step{position:relative;min-height:220px;padding:31px;background:#fff;border:1px solid var(--line);border-radius:16px;transition:transform .18s,background .18s,border-color .18s}
.step:hover{transform:translateY(-4px);background:#fff;border-color:var(--line);box-shadow:var(--shadow)}
.step .num,.feature .points .num{display:inline-flex;margin-bottom:43px;color:var(--acc);font-family:var(--font-display);font-size:.72rem;font-weight:750;letter-spacing:.09em}
.step h3{margin-bottom:10px;font-size:1.08rem}
.step p{font-size:.89rem}
.step p a{font-weight:650}

/* Pricing */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}
.plan{position:relative;display:flex;flex-direction:column;padding:31px;background:#fff;border:1px solid var(--line);border-radius:16px;transition:transform .18s,box-shadow .18s}
.plan:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.plan.pop{z-index:1;color:#fff;background:var(--dark-2);border-color:var(--dark-2);box-shadow:0 28px 60px -32px rgba(8,11,20,.7)}
.plan.pop .sub,.plan.pop li{color:#b8c0d0}.plan.pop .price{color:#fff}.plan.pop li::before{color:#9293ff}
.plan .rec{position:absolute;top:16px;right:16px;padding:4px 9px;border-radius:6px;background:rgba(143,144,255,.15);color:#bebfff;font-size:.65rem;font-weight:700}
.plan h3{font-size:1rem}
.plan .price{margin:18px 0 4px;font-family:var(--font-display);font-size:2.45rem;font-weight:700;letter-spacing:-.06em;font-variant-numeric:tabular-nums}
.plan .price small{font-family:var(--font-body);font-size:.75rem;font-weight:400;letter-spacing:0;color:var(--muted)}
.plan .sub{margin-bottom:22px;color:var(--muted);font-size:.78rem}
.plan ul{flex:1;margin-bottom:25px;list-style:none}
.plan li{padding:6px 0;color:#394357;font-size:.84rem}
.plan li::before{content:'✓';display:inline-block;width:19px;color:var(--green);font-weight:800}
.plan .btn{text-align:center}
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:47px;text-align:center}
.trust .t strong{display:block;margin-bottom:3px;font-size:.85rem}.trust .t span{color:var(--muted);font-size:.77rem}

/* FAQ */
.faq{max-width:760px;margin:0 auto}
.faq details{margin-bottom:9px;padding:0 20px;background:#fff;border:1px solid var(--line);border-radius:12px;transition:border-color .18s,background .18s}
.faq details[open]{background:var(--surface);border-color:#d6dbe6}
.faq summary{padding:19px 30px 19px 0;font-size:.9rem;font-weight:650;cursor:pointer;list-style:none;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';position:absolute;right:0;top:13px;color:var(--muted);font-family:var(--font-display);font-size:1.4rem;font-weight:400}
.faq details[open] summary::after{content:'−'}
.faq p{padding:0 0 18px;font-size:.87rem}

/* Internal pages */
.pagehead{padding:90px max(24px,calc((100vw - 1160px)/2)) 74px;text-align:center}
.pagehead h1{max-width:820px;margin:0 auto;color:#fff;font-size:clamp(2.35rem,5vw,4rem);letter-spacing:-.055em;text-wrap:balance}
.pagehead p{max-width:600px;margin:17px auto 0;color:var(--dark-muted);font-size:1rem}
.feature{max-width:880px;margin:0 auto}
.feature .points{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:52px}
.feature .points .p{padding:25px;background:#fff;border:1px solid var(--line);border-radius:14px}
.feature .points .num{margin-bottom:27px}
.feature .points h3{margin-bottom:7px;font-size:.98rem}.feature .points p{font-size:.85rem}
.feature .cta{margin-top:52px;text-align:center}

/* Demo components */
.contactcard,.letter,.board .col{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 13px 32px -30px #101828}
.contactcard{padding:23px}.contactcard .company{font-family:var(--font-display);font-size:1.02rem;font-weight:700}
.contactcard .recrute{display:inline-block;margin:7px 0 14px;padding:4px 9px;border-radius:6px;background:#ecfdf5;color:var(--green);font-size:.68rem;font-weight:700}
.contactcard .person{display:flex;align-items:center;gap:11px;margin-bottom:10px}.contactcard .avatar{display:flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:10px;background:var(--acc-soft);color:var(--acc);font-weight:750}
.contactcard .mail{overflow-wrap:anywhere;color:var(--muted);font-family:ui-monospace,monospace;font-size:.78rem}.contactcard .sent{margin-top:14px;padding:10px;text-align:center;border-radius:8px;background:#ecfdf5;color:var(--green);font-size:.8rem;font-weight:650}
.letter{padding:28px;font-family:Georgia,serif}.letter h4{margin-bottom:13px;color:var(--muted);font-family:var(--font-body);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.letter p{margin-bottom:10px;color:var(--ink);font-size:.9rem}.letter .pdf{margin-top:14px;color:var(--green);font-size:.78rem;font-weight:650}
.board{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.board .col{padding:17px;background:var(--surface)}.board .col>div:first-child{margin-bottom:12px;font-size:.84rem;font-weight:650}.board .mini{margin-bottom:8px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:9px;font-size:.78rem}

/* Swipe */
.swipe-intro{max-width:590px;margin:0 auto 46px;text-align:center}
.dropzone{position:relative;max-width:500px;margin:0 auto;padding:54px 26px;text-align:center;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#d8d9ff,#e4e8f0) border-box;border:2px dashed transparent;border-radius:17px;cursor:pointer;transition:transform .18s,box-shadow .18s}
.dropzone:hover,.dropzone.over{transform:translateY(-3px);box-shadow:var(--shadow)}
.dropzone .icon{display:grid;width:58px;height:58px;margin:0 auto 16px;place-items:center;border-radius:15px;background:var(--acc-soft);font-size:1.7rem}.dropzone p{font-size:.87rem}.dropzone input{display:none}
.cv-result{display:none;max-width:600px;margin:28px auto 0}.cv-result .domaine{margin-bottom:12px;font-size:1.05rem;font-weight:650}.chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px}.chips span{padding:5px 10px;border-radius:6px;background:var(--acc-soft);color:var(--acc-dark);font-size:.74rem;font-weight:650}
.deck{position:relative;height:420px;max-width:430px;margin:0 auto;perspective:1000px}
.card{position:absolute;inset:0;padding:29px;background:linear-gradient(145deg,#fff,#fafbff);border:1px solid var(--line);border-radius:20px;box-shadow:0 34px 75px -32px rgba(15,23,42,.45);touch-action:none;user-select:none;cursor:grab;transition:transform .35s ease,opacity .35s ease}
.card.dragging{cursor:grabbing;transition:none}.card .head{display:flex;justify-content:space-between;align-items:flex-start}.card .pct-big{color:var(--acc);font-family:var(--font-display);font-size:1.85rem;font-weight:700;letter-spacing:-.055em}.card h3{margin:24px 0 7px;font-size:1.35rem}.card .meta{margin-bottom:18px;color:var(--muted);font-size:.84rem}.card .skills{color:var(--muted);font-size:.88rem}
.badge{position:absolute;z-index:3;top:25px;left:25px;display:none;padding:5px 13px;border-radius:8px;font-size:1.35rem;font-weight:800}.badge.no{color:var(--red);border:3px solid var(--red);transform:rotate(-12deg)}.badge.yes{right:25px;left:auto;color:var(--green);border:3px solid var(--green);transform:rotate(12deg)}
.card.fly-right{transform:translate(130%,20px) rotate(18deg)!important;opacity:0}.card.fly-left{transform:translate(-130%,20px) rotate(-18deg)!important;opacity:0}
.swipe-actions{display:flex;justify-content:center;gap:18px;margin-top:28px}.swipe-actions .act{display:flex;width:62px;height:62px;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:50%;box-shadow:0 11px 26px -18px #101828;font-size:1.35rem;cursor:pointer;transition:transform .18s,border-color .18s,box-shadow .18s}.swipe-actions .act:hover{transform:translateY(-3px) scale(1.04);box-shadow:var(--shadow)}.swipe-actions .act.no:hover{border-color:var(--red)}.swipe-actions .act.yes:hover{border-color:var(--green)}
.swipe-count{margin-top:15px;text-align:center;color:var(--muted);font-size:.79rem}.deck-end{display:none;padding:48px 0;text-align:center}

/* Footer */
footer{padding:65px 0 37px;background:var(--dark);color:#9da6b8}
footer .wrap{display:flex;align-items:flex-start;justify-content:space-between;gap:35px;flex-wrap:wrap}
footer .cols{display:grid;grid-template-columns:repeat(3,minmax(125px,1fr));gap:50px}
footer .cols b{display:block;margin-bottom:12px;color:#e8eaf0;font-size:.82rem;font-weight:650}
footer .cols a,footer .cols small{display:inline-block;margin-bottom:7px;color:#788296;font-size:.78rem}footer .cols a:hover{color:#fff}
footer .legal{display:flex;width:100%;margin-top:12px;padding-top:23px;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.08);color:#5e687a;font-size:.73rem}
#cookies{position:fixed;z-index:100;right:20px;bottom:20px;left:auto;display:none;max-width:500px;align-items:center;gap:15px;padding:14px 16px;background:rgba(8,11,20,.95);border:1px solid rgba(255,255,255,.1);border-radius:13px;box-shadow:0 20px 50px -20px #000;color:#cbd1dc;font-size:.79rem;backdrop-filter:blur(14px)}
#cookies .btn{min-height:36px;padding:7px 14px;font-size:.78rem}

/* Responsive */
@media(max-width:960px){
  nav .links a{display:none}nav .links .btn{display:inline-flex;margin:0}
  .hero{padding-top:88px;padding-bottom:72px}
  section{padding:78px 0}
  .plans{grid-template-columns:1fr;max-width:580px;margin:0 auto}.plan.pop{order:-1}
  .steps{grid-template-columns:1fr}.step{min-height:auto}.step .num{margin-bottom:28px}
  .stats{grid-template-columns:repeat(2,1fr)}.stats .t:first-child,.stats .t:last-child{border-radius:0}
  .trust{grid-template-columns:repeat(2,1fr)}
  .feature .points,.board{grid-template-columns:1fr}
}
@media(max-width:620px){
  .wrap{padding-left:18px;padding-right:18px}nav{height:60px}.logo{font-size:1rem}nav .links .btn{min-height:38px;padding:8px 13px;font-size:.78rem}
  .hero{padding:72px 18px 55px}.hero h1{font-size:2.55rem}.hero>p{margin:21px auto 27px;font-size:.96rem}.hero .ctas{flex-direction:column}.hero .ctas .btn{width:100%}
  .window{margin-top:48px;border-radius:14px}.window .body{padding:14px}.window .bar{height:38px;padding:0 12px}.window .bar span{font-size:.63rem}
  .searchbar{grid-template-columns:1fr}.searchbar input:last-of-type{border-top:1px solid var(--line);border-left:0}.searchbar button{min-height:46px;margin:5px}
  .preview-jobs{grid-template-columns:1fr}.preview-job:not(.featured){display:none}.preview-job{padding:16px}.preview-job h4{font-size:.88rem}
  section{padding:64px 0}.sec-head{margin-bottom:38px}.sec-head h2{font-size:2rem}.stats{grid-template-columns:1fr}.stats .t{padding:21px}.steps{gap:10px}.step{padding:25px}.plan{padding:25px}.trust{grid-template-columns:1fr;gap:16px}
  .pagehead{padding:67px 18px 56px}.pagehead h1{font-size:2.25rem}.pagehead p{font-size:.92rem}
  .feature .points{margin-top:38px}.dropzone{padding:42px 20px}.cv-result>div[style*="display:flex"]{flex-direction:column!important}.deck{height:390px}.card{padding:23px}
  footer{padding-top:52px}footer .cols{width:100%;grid-template-columns:1fr 1fr;gap:26px}footer .legal{flex-direction:column}
  #cookies{right:12px;bottom:12px;left:12px;max-width:none}
}
@media(max-width:420px){
  .hero h1{font-size:2.18rem}.hero .kicker,.pagehead .kicker{font-size:.61rem}.window{margin-left:-5px;margin-right:-5px}
  .stats .t strong{font-size:1.8rem}.plan .price{font-size:2.15rem}.deck{height:370px}.swipe-actions .act{width:56px;height:56px}
  footer .cols{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
