/* RecruTalento — modelos de CV e carta (A4 = 794×1123 px a 96 dpi) */
.cv{--a:#1B1342;--a2:#B65D44;--fs:10.4pt;--lh:1.45;--gap:16px;font-family:var(--ff,'Inter',Arial,sans-serif);font-size:var(--fs);line-height:var(--lh);color:#1d1f24;width:794px;min-height:1123px;padding:52px 56px;position:relative;word-wrap:break-word}
.cv *{box-sizing:border-box}
.cv h1,.cv h2,.cv h3{margin:0;font-weight:700}
.cv p{margin:0 0 6px}
.cv ul{margin:4px 0 0;padding-left:16px}
.cv li{margin:0 0 3px}
.cv a{color:inherit;text-decoration:none}
.cv .name{font-family:var(--fh2,var(--ff));font-size:27pt;line-height:1.05;letter-spacing:-.3px;color:var(--a)}
.cv .role{font-size:12.5pt;font-weight:600;color:var(--a2);margin-top:5px}
.cv .contact{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:10px;font-size:9.3pt;color:#3d424b}
.cv .contact span{white-space:nowrap}
.cv .sec{margin-top:var(--gap);break-inside:avoid-page}
.cv .sec>h2{font-size:10.5pt;text-transform:uppercase;letter-spacing:1.3px;color:var(--a);padding-bottom:5px;border-bottom:1.5px solid var(--a);margin-bottom:8px}
.cv .ent{margin-bottom:10px;break-inside:avoid}
.cv .ent .hd{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.cv .ent .hd b{font-size:10.8pt;color:#111}
.cv .ent .dt{font-size:9pt;color:#5b616b;white-space:nowrap;font-weight:500}
.cv .ent .sub{color:#4b505a;font-size:9.6pt;font-weight:500}
.cv .chips{display:flex;flex-wrap:wrap;gap:5px}
.cv .chips span{background:color-mix(in srgb,var(--a) 9%,#fff);color:var(--a);border-radius:5px;padding:2px 8px;font-size:9.2pt;font-weight:500}
.cv .plain-list{margin:0}
.cv .lang{display:flex;justify-content:space-between;font-size:9.6pt;padding:2px 0}
.cv .photo{width:108px;height:108px;border-radius:50%;object-fit:cover;flex:none}
.cv .wm{position:absolute;left:0;right:0;bottom:14px;text-align:center;font-size:7.5pt;color:#9aa0aa;letter-spacing:.3px}
.cv .lv{display:flex;gap:3px;margin-top:3px}.cv .lv i{width:16px;height:4px;border-radius:2px;background:#e3e3ea}.cv .lv i.on{background:var(--a2)}

/* 1. ATS Clássico — uma coluna, sóbrio */
.cv.t-ats{--ff:'Inter',Arial,sans-serif}
.cv.t-ats .head{text-align:left;border-bottom:2px solid #111;padding-bottom:12px}
.cv.t-ats .name{color:#111;font-size:25pt}
.cv.t-ats .role{color:#333}
.cv.t-ats .sec>h2{color:#111;border-bottom:1px solid #999}
.cv.t-ats .chips span{background:none;padding:0;color:#222;font-weight:400}
.cv.t-ats .chips span:not(:last-child):after{content:" ·"}

/* 2. Moderno */
.cv.t-moderno .head{display:flex;gap:22px;align-items:center;padding-bottom:16px;border-bottom:3px solid var(--a2)}
.cv.t-moderno .sec>h2{border:0;padding:0 0 0 12px;position:relative;color:var(--a)}
.cv.t-moderno .sec>h2:before{content:"";position:absolute;left:0;top:1px;bottom:1px;width:4px;border-radius:3px;background:var(--a2)}

/* 3. Simples — centrado e elegante */
.cv.t-simples{--ff:'Lato','Inter',Arial,sans-serif;--fh2:'Playfair Display',Georgia,serif}
.cv.t-simples .head{text-align:center;padding-bottom:14px}
.cv.t-simples .contact{justify-content:center}
.cv.t-simples .photo{margin:0 auto 12px;display:block}
.cv.t-simples .sec>h2{text-align:center;border:0;letter-spacing:3px;font-size:10pt;color:var(--a);position:relative}
.cv.t-simples .sec>h2:after{content:"";display:block;width:36px;height:2px;background:var(--a2);margin:6px auto 0}

/* 4. Executivo — faixa escura + duas colunas */
.cv.t-executivo{padding:0}
.cv.t-executivo .head{background:var(--a);color:#fff;padding:44px 56px 34px;display:flex;gap:24px;align-items:center}
.cv.t-executivo .name{color:#fff}
.cv.t-executivo .role{color:color-mix(in srgb,var(--a2) 55%,#fff)}
.cv.t-executivo .contact{color:#dcdcea}
.cv.t-executivo .photo{border:3px solid rgba(255,255,255,.7)}
.cv.t-executivo .body{display:grid;grid-template-columns:1fr 228px;gap:30px;padding:26px 56px 50px}
.cv.t-executivo .side .sec>h2{font-size:9.6pt}
.cv.t-executivo .side .chips span{background:color-mix(in srgb,var(--a2) 12%,#fff);color:color-mix(in srgb,var(--a2) 80%,#000)}

/* 5. Criativo — barra lateral colorida (o conteúdo principal vem primeiro no HTML para leitura ATS) */
.cv.t-criativo{padding:0;display:grid;grid-template-columns:252px 1fr;--ff:'Poppins','Inter',sans-serif;--fs:9.9pt}
.cv.t-criativo .main{grid-column:2;grid-row:1;padding:48px 44px 50px 36px}
.cv.t-criativo .side{grid-column:1;grid-row:1;background:var(--a);color:#eceaf6;padding:44px 26px;min-height:1123px}
.cv.t-criativo .side .photo{width:140px;height:140px;margin:0 auto 18px;display:block;border:4px solid color-mix(in srgb,var(--a2) 70%,#fff)}
.cv.t-criativo .side .sec>h2{color:#fff;border-color:color-mix(in srgb,var(--a2) 80%,#fff);font-size:9.6pt}
.cv.t-criativo .side .contact{flex-direction:column;gap:6px;color:#eceaf6;margin:0}
.cv.t-criativo .side .chips span{background:rgba(255,255,255,.12);color:#fff}
.cv.t-criativo .side .lang{color:#eceaf6}
.cv.t-criativo .side .lv i{background:rgba(255,255,255,.2)}.cv.t-criativo .side .lv i.on{background:var(--a2)}
.cv.t-criativo .name{font-size:30pt}
.cv.t-criativo .main .sec>h2{border:0;color:var(--a2);font-size:11pt;padding:0}
.cv.t-criativo .main .sec>h2:after{content:"";display:block;height:2px;width:40px;background:var(--a);margin-top:5px}
.cv.t-criativo .main .ent{padding-left:14px;border-left:2px solid color-mix(in srgb,var(--a) 15%,#fff)}

/* 6. Técnico — compacto, competências em grelha */
.cv.t-tecnico{--ff:'IBM Plex Sans','Inter',sans-serif;--fs:9.8pt}
.cv.t-tecnico .head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;padding-bottom:12px;border-bottom:2px solid var(--a)}
.cv.t-tecnico .name{font-family:'IBM Plex Mono',monospace;font-size:23pt;letter-spacing:-1px}
.cv.t-tecnico .contact{flex-direction:column;align-items:flex-end;gap:2px;margin:0;font-family:'IBM Plex Mono',monospace;font-size:8.6pt}
.cv.t-tecnico .sec>h2{font-family:'IBM Plex Mono',monospace;border:0;padding:0;color:var(--a2);text-transform:none;letter-spacing:0;font-size:11pt}
.cv.t-tecnico .sec>h2:before{content:"// "}
.cv.t-tecnico .chips span{font-family:'IBM Plex Mono',monospace;border:1px solid color-mix(in srgb,var(--a) 25%,#fff);background:#fff;font-size:8.6pt}

/* 7. Saúde — linha do tempo suave */
.cv.t-saude{--ff:'Nunito Sans','Inter',sans-serif}
.cv.t-saude .head{display:flex;gap:22px;align-items:center;background:color-mix(in srgb,var(--a) 7%,#fff);margin:-52px -56px 0;padding:40px 56px 26px;border-bottom:4px solid var(--a)}
.cv.t-saude .sec>h2{border:0;color:var(--a);display:flex;align-items:center;gap:8px}
.cv.t-saude .sec>h2:after{content:"";flex:1;height:1px;background:color-mix(in srgb,var(--a) 30%,#fff)}
.cv.t-saude .ent{position:relative;padding-left:18px}
.cv.t-saude .ent:before{content:"";position:absolute;left:0;top:5px;width:8px;height:8px;border-radius:50%;background:var(--a2)}
.cv.t-saude .ent:after{content:"";position:absolute;left:3.5px;top:16px;bottom:-8px;width:1px;background:color-mix(in srgb,var(--a) 25%,#fff)}

/* 8. Primeiro Emprego — moderno, foco em formação e projectos */
.cv.t-primeiro{--ff:'Poppins','Inter',sans-serif;--fs:10pt}
.cv.t-primeiro .head{display:flex;gap:22px;align-items:center}
.cv.t-primeiro .name{background:linear-gradient(90deg,var(--a),var(--a2));-webkit-background-clip:text;background-clip:text;color:transparent}
.cv.t-primeiro .sec{background:color-mix(in srgb,var(--a) 4%,#fff);border-radius:12px;padding:12px 16px}
.cv.t-primeiro .sec>h2{border:0;padding:0;color:var(--a2)}

/* ---------- Carta de apresentação ---------- */
.letter{font-family:var(--ff,'Inter',Arial,sans-serif);font-size:10.8pt;line-height:1.6;color:#1d1f24;width:794px;min-height:1123px;padding:60px 70px;position:relative}
.letter .lh{display:flex;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:2px solid var(--a);margin-bottom:26px}
.letter .lh .name{font-family:var(--fh2,var(--ff));font-size:22pt;font-weight:700;color:var(--a);line-height:1.1}
.letter .lh .role{color:var(--a2);font-weight:600;margin-top:4px}
.letter .lh .ct{text-align:right;font-size:9.3pt;color:#3d424b;line-height:1.55}
.letter .meta{margin-bottom:22px;font-size:10pt;color:#333}
.letter .subject{font-weight:700;margin:0 0 18px;color:#111}
.letter p{margin:0 0 12px;text-align:justify}
.letter .sign{margin-top:26px}
.letter .sign b{display:block;color:var(--a);font-size:12pt}
.letter.t-executivo .lh{background:var(--a);color:#fff;margin:-60px -70px 30px;padding:40px 70px 28px;border:0}
.letter.t-executivo .lh .name{color:#fff}.letter.t-executivo .lh .ct{color:#dcdcea}
.letter.t-criativo{border-left:18px solid var(--a)}
.letter.t-simples .lh{flex-direction:column;align-items:center;text-align:center}.letter.t-simples .lh .ct{text-align:center}
.letter .wm{position:absolute;left:0;right:0;bottom:14px;text-align:center;font-size:7.5pt;color:#9aa0aa}
