/* Lisboa Careers. Une seule feuille de style, polices systeme, aucune requete externe. */

:root{
  --papier:#EFECE5;
  --encre:#14120F;
  --gris:#6B645A;
  --rouge:#B3352A;
  --ligne:#CFC8BC;
  --blanc:#FFFFFF;
  --max:1080px;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
  margin:0;background:var(--papier);color:var(--encre);
  font-family:var(--sans);font-size:17px;line-height:1.6;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
h1,h2,h3{margin:0;line-height:1.08;letter-spacing:-0.025em;font-weight:800;}
h1{font-size:clamp(32px,5vw,54px);}
h2{font-size:clamp(24px,3.4vw,36px);max-width:24ch;}
h3{font-size:18px;font-weight:600;letter-spacing:-0.01em;}
p{margin:0 0 1em;max-width:66ch;}
img{max-width:100%;height:auto;}
a{color:var(--encre);}
a:hover{color:var(--rouge);}
:focus-visible{outline:3px solid var(--rouge);outline-offset:2px;}

.skip{position:absolute;left:-9999px;}
.skip:focus{left:8px;top:8px;background:var(--encre);color:var(--papier);padding:10px 14px;z-index:99;}

.wrap{max-width:var(--max);margin:0 auto;padding:0 24px;}
.wrap.etroit{max-width:760px;}
.kicker{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--rouge);margin:0 0 12px;}
.intro{color:var(--gris);margin-top:16px;}

/* Entete */
.entete{border-bottom:1px solid var(--encre);}
.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:var(--max);margin:0 auto;padding:14px 24px;}
.marque{font-weight:800;font-size:19px;letter-spacing:-0.03em;text-decoration:none;}
.marque.blanc{color:#fff;}
.nav-liens{display:flex;gap:20px;font-family:var(--mono);font-size:12px;letter-spacing:.05em;text-transform:uppercase;}
.nav-liens a{text-decoration:none;}
.nav-droite{display:flex;align-items:center;gap:12px;}
.langues{display:flex;border:1px solid var(--encre);}
.langues a{font-family:var(--mono);font-size:12px;padding:7px 10px;text-decoration:none;color:var(--gris);}
.langues a[aria-current]{background:var(--encre);color:var(--papier);}

.bouton{
  display:inline-block;background:var(--encre);color:var(--papier);text-decoration:none;
  font-weight:600;font-size:15.5px;padding:13px 22px;border:none;cursor:pointer;font-family:inherit;
}
.bouton:hover{background:var(--rouge);color:var(--papier);}
.bouton.compact{padding:10px 16px;font-size:14px;}

/* Hero */
.hero{display:grid;grid-template-columns:1.3fr .7fr;max-width:var(--max);margin:0 auto;border-bottom:1px solid var(--encre);}
.hero-g{padding:48px 24px 52px;border-right:1px solid var(--encre);}
.hero h1{max-width:15ch;}
.chapo{font-size:18px;color:var(--gris);margin-top:18px;max-width:46ch;}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:26px;}
.tampon{font-family:var(--mono);font-size:11.5px;color:var(--rouge);border:1.5px solid var(--rouge);padding:6px 10px;transform:rotate(-2.5deg);letter-spacing:.05em;}
.hero-d{padding:32px 24px;}
.fiche{margin:0;}
.fiche dt{font-family:var(--mono);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--gris);}
.fiche dd{margin:2px 0 14px;font-weight:600;font-size:16px;}
.a-remplir{background:rgba(179,53,42,.12);border-bottom:1px dashed var(--rouge);display:inline-block;padding:0 5px;font-weight:500;}

/* Sections */
.section{border-bottom:1px solid var(--encre);padding:52px 0;}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:30px;}
.bloc{border-top:2px solid var(--encre);padding-top:14px;}
.bloc h3{margin-bottom:8px;}
.liste{list-style:none;margin:0;padding:0;}
.liste li{padding:11px 0 11px 22px;border-bottom:1px solid var(--ligne);position:relative;color:var(--gris);font-size:16px;}
.liste li::before{content:"";position:absolute;left:0;top:19px;width:10px;height:2px;background:var(--rouge);}
.liste.non li::before{background:var(--ligne);}

.etapes{list-style:none;margin:30px 0 0;padding:0;border-top:2px solid var(--encre);}
.etapes li{display:grid;grid-template-columns:82px 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--ligne);align-items:baseline;}
.etapes .n{font-family:var(--mono);font-size:12px;color:var(--rouge);}
.etapes h3{margin-bottom:4px;}
.etapes p{margin:0;font-size:15.5px;color:var(--gris);}

.cartes{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px;}
.cartes.trois{grid-template-columns:repeat(3,1fr);}
.carte{background:var(--blanc);border:1px solid var(--ligne);border-top:4px solid var(--rouge);padding:22px;}
.carte h2,.carte h3{font-size:18px;font-weight:600;margin:6px 0 8px;}
.carte h2 a,.carte h3 a{text-decoration:none;}
.carte p{font-size:15.5px;color:var(--gris);margin:0;}
.tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--gris);margin:0;}

/* Formulaire */
.filtre{border:2px solid var(--encre);background:var(--blanc);padding:24px;margin-top:26px;}
.grille{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0 0;}
.champ{display:flex;flex-direction:column;gap:6px;margin:0;}
.champ.large{grid-column:1/-1;}
label{font-family:var(--mono);font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--gris);}
input,select,button,textarea{font-family:inherit;font-size:16px;}
input[type=text],input[type=email],input[type=file],select{
  padding:11px 12px;border:1px solid var(--ligne);background:var(--papier);color:var(--encre);border-radius:0;
}
.etape2{margin-top:24px;padding-top:22px;border-top:1px dashed var(--ligne);}
.consent{display:flex;gap:10px;align-items:flex-start;margin-top:18px;max-width:66ch;}
.consent label{font-family:var(--sans);font-size:14.5px;letter-spacing:0;text-transform:none;color:var(--gris);}
.consent input{margin-top:4px;}
.piege{position:absolute;left:-9999px;height:0;overflow:hidden;}
.note-refus{margin-top:18px;color:var(--rouge);font-size:15.5px;}
.message{padding:14px 16px;border-left:4px solid var(--rouge);background:var(--blanc);margin-top:20px;max-width:66ch;}
.message.ok{border-left-color:#2F7D4F;}

/* FAQ */
.faq{margin-top:26px;}
details{border-bottom:1px solid var(--ligne);padding:16px 0;max-width:74ch;}
summary{font-weight:600;font-size:17px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:18px;}
summary::-webkit-details-marker{display:none;}
summary::after{content:"+";color:var(--rouge);font-weight:400;}
details[open] summary::after{content:"\2013";}
details p{margin:10px 0 0;font-size:16px;color:var(--gris);}

/* Article */
.article .contenu{font-size:18px;}
.article .contenu h2{margin:34px 0 12px;font-size:26px;}
.article .contenu h3{margin:26px 0 10px;}
.article .contenu ul,.article .contenu ol{padding-left:20px;color:var(--gris);}
.article .contenu li{margin-bottom:8px;}
.article .contenu p{color:var(--gris);}
.vignette{margin:24px 0;}
.retour{margin-top:34px;}
.pagination{margin-top:30px;font-family:var(--mono);font-size:14px;}

/* Pied */
.pied{background:var(--encre);color:#A69F93;padding:40px 0 34px;font-size:15px;}
.pied-grille{display:flex;flex-wrap:wrap;gap:26px;justify-content:space-between;}
.pied-desc{margin-top:10px;max-width:34ch;color:#A69F93;}
.pied-liens{display:flex;flex-direction:column;gap:9px;}
.pied a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.3);}

@media (max-width:860px){
  .hero{grid-template-columns:1fr;}
  .hero-g{border-right:none;border-bottom:1px solid var(--encre);}
  .duo,.cartes,.cartes.trois,.grille{grid-template-columns:1fr;gap:24px;}
  .nav-liens{display:none;}
  .etapes li{grid-template-columns:68px 1fr;gap:12px;}
  .section{padding:44px 0;}
}
@media (max-width:420px){
  body{font-size:16px;}
  .nav{gap:10px;}
  .bouton.compact{padding:9px 12px;font-size:13px;}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}

@media print{
  .entete,.pied,.filtre{display:none;}
  body{background:#fff;}
}
