/* Civora CV rendering system v5 — shared by editor, exports, dashboard and public gallery */
.cv-page{--cv-accent:#5b5bd6;width:210mm;min-height:297mm;background:#fff;color:#17191f;box-shadow:0 18px 60px rgba(20,25,35,.12);transform-origin:top center;overflow:hidden;position:relative}
.cv-page,.cv-page *{box-sizing:border-box}.cv-template{min-height:297mm}.cv-name{margin:0;letter-spacing:-.045em}.cv-role{font-weight:750;color:var(--cv-accent)}.cv-contact{display:flex;flex-wrap:wrap;gap:8px 14px;color:#59606b}.cv-section{margin-top:19px}.cv-section>h2,.cv-mini-section>h2{margin:0 0 10px;text-transform:uppercase;letter-spacing:.12em;color:var(--cv-accent);font-weight:850}.cv-summary{color:#3e454f;line-height:1.62}.cv-item{margin:0 0 14px}.cv-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.cv-item-head strong{color:#20242b}.cv-item-head span,.cv-item p{color:#555d68;line-height:1.5}.cv-item p{margin:7px 0}.cv-achievements>strong{display:block;margin-top:7px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#777e88}.cv-bullet-list{padding-left:16px;margin:6px 0 0}.cv-bullet-list li{color:#555d68;line-height:1.5;margin:3px 0}.cv-chip-list{display:flex;flex-wrap:wrap;gap:6px}.cv-chip-list span{border-radius:999px;padding:5px 8px;background:color-mix(in srgb,var(--cv-accent) 9%,#fff);color:color-mix(in srgb,var(--cv-accent) 82%,#111);font-weight:700}.cv-contact-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.cv-contact-list li{display:flex;gap:8px;align-items:flex-start;color:#4e5661}.cv-icon{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--cv-accent) 10%,#fff);color:var(--cv-accent);font-size:9px;font-weight:900;flex:none}.cv-photo{width:78px;height:78px;border-radius:18px;overflow:hidden;border:1px solid #e6e8ec;background:#f2f4f6;flex:none}.cv-photo img{width:100%;height:100%;object-fit:cover;display:block}.cv-photo-round{border-radius:50%}.cv-photo-large{width:124px;height:124px;border-radius:50%;margin:0 auto 18px}.cv-photo-square{border-radius:12px}.cv-overline{font-size:9px;text-transform:uppercase;letter-spacing:.18em;font-weight:850;color:#7b818a}

/* 1 — CLÁSICO ATS: single column, photo intentionally hidden */
.template-classic{padding:16mm 17mm;font-family:Arial,Helvetica,sans-serif}.template-classic .cv-head{padding-bottom:14px;border-bottom:1.5px solid #1f242d}.template-classic .cv-photo{display:none}.template-classic .cv-name{font-size:31px}.template-classic .cv-role{font-size:13px;margin-top:4px}.template-classic .cv-contact{font-size:10.5px;margin-top:9px}.template-classic .cv-section>h2{font-size:10.5px;color:#20242b;border-bottom:1px solid #dfe3e8;padding-bottom:6px}.template-classic .cv-summary{font-size:11.2px}.template-classic .cv-item-head strong{font-size:12.6px}.template-classic .cv-item-head span,.template-classic .cv-item p,.template-classic .cv-bullet-list li{font-size:10.6px}.template-classic .cv-chip-list span{background:#f1f3f5;color:#353a42;font-size:9.8px;border-radius:5px}

/* 2 — PERFIL: photo + soft sidebar */
.template-sidebar{display:grid;grid-template-columns:34% 1fr;font-family:Arial,Helvetica,sans-serif}.template-sidebar .cv-side{min-height:297mm;padding:15mm 9mm;background:linear-gradient(180deg,color-mix(in srgb,var(--cv-accent) 10%,#f7f9fc),#f6f7f9)}.template-sidebar .cv-main{padding:17mm 15mm}.template-sidebar .cv-side-name{text-align:center;font-size:23px;font-weight:850;letter-spacing:-.035em;line-height:1.08}.template-sidebar .cv-side-role{text-align:center;color:var(--cv-accent);font-size:10px;font-weight:850;margin:6px 0 20px}.template-sidebar .cv-mini-section{margin-top:20px}.template-sidebar .cv-mini-section>h2{font-size:9.6px;color:#27303b}.template-sidebar .cv-contact-list li{font-size:9.5px}.template-sidebar .cv-chip-list{display:grid;gap:7px}.template-sidebar .cv-chip-list span{background:transparent;color:#39414b;padding:0;border-radius:0;font-size:9.8px}.template-sidebar .cv-chip-list span:before{content:'•';color:var(--cv-accent);margin-right:6px}.template-sidebar .cv-section>h2{font-size:10.5px}.template-sidebar .cv-summary{font-size:11.3px}.template-sidebar .cv-item-head strong{font-size:12.8px}.template-sidebar .cv-item-head span,.template-sidebar .cv-item p,.template-sidebar .cv-bullet-list li{font-size:10.5px}

/* 3 — EDITORIAL: oversized serif name + strong rhythm */
.template-modern{padding:15mm 16mm 17mm;font-family:Arial,Helvetica,sans-serif}.template-modern .cv-modern-hero{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end;padding-bottom:15px;border-bottom:3px solid var(--cv-accent)}.template-modern .cv-name{font-family:Georgia,'Times New Roman',serif;font-weight:500;font-size:38px;line-height:.94;letter-spacing:-.035em}.template-modern .cv-role{font-size:11px;text-transform:uppercase;letter-spacing:.14em;margin-top:8px}.template-modern .cv-photo{width:92px;height:92px;border-radius:4px}.template-modern .cv-contact{font-size:9.7px;margin-top:10px}.template-modern .cv-modern-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:22px}.template-modern .cv-section>h2{font-size:9.8px;color:#232830}.template-modern .cv-summary{font-family:Georgia,'Times New Roman',serif;font-size:12px;line-height:1.67}.template-modern .cv-item{padding-bottom:12px;border-bottom:1px solid #e5e8ec}.template-modern .cv-item:last-child{border-bottom:0}.template-modern .cv-item-head strong{font-size:12.7px}.template-modern .cv-item-head span,.template-modern .cv-item p,.template-modern .cv-bullet-list li{font-size:10.4px}.template-modern .cv-chip-list span{border-radius:3px;font-size:9.5px}

/* 4 — MINIMAL: elegant and airy */
.template-minimal{padding:18mm 18mm;font-family:Arial,Helvetica,sans-serif}.template-minimal .cv-minimal-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.template-minimal .cv-name{font-size:34px;font-weight:550;letter-spacing:-.055em}.template-minimal .cv-role{font-size:11px;color:#59606b;margin-top:6px}.template-minimal .cv-photo{width:70px;height:70px;border-radius:50%}.template-minimal>.cv-contact{margin:14px 0 24px;padding:10px 0;border-top:1px solid #e6e8ec;border-bottom:1px solid #e6e8ec;font-size:9.8px}.template-minimal .cv-section{margin-top:25px}.template-minimal .cv-section>h2{font-size:9px;color:#5b626c}.template-minimal .cv-summary{font-size:11.5px;max-width:92%}.template-minimal .cv-item-head strong{font-size:12.4px}.template-minimal .cv-item-head span,.template-minimal .cv-item p,.template-minimal .cv-bullet-list li{font-size:10.4px}.template-minimal .cv-minimal-columns{display:grid;grid-template-columns:1.1fr .9fr;gap:24px}.template-minimal .cv-chip-list span{background:transparent;border:1px solid #dfe3e8;color:#363c45;font-size:9.5px}

/* 5 — EJECUTIVO: dark masthead + refined sidebar */
.template-executive{font-family:Arial,Helvetica,sans-serif}.template-executive .cv-exec-head{min-height:54mm;background:#172033;color:#fff;padding:14mm 16mm 12mm;display:flex;justify-content:space-between;gap:18px;align-items:flex-end}.template-executive .cv-name{font-size:34px}.template-executive .cv-role{color:#d8deff;font-size:11px;text-transform:uppercase;letter-spacing:.14em;margin-top:6px}.template-executive .cv-photo{width:88px;height:88px;border-radius:50%;border:3px solid rgba(255,255,255,.72)}.template-executive .cv-exec-grid{display:grid;grid-template-columns:1fr 30%;gap:20px;padding:13mm 16mm 16mm}.template-executive .cv-side-panel{padding-left:15px;border-left:1px solid #e2e6eb}.template-executive .cv-mini-section+.cv-mini-section{margin-top:20px}.template-executive .cv-section>h2,.template-executive .cv-mini-section>h2{font-size:9.8px}.template-executive .cv-summary{font-size:11.4px}.template-executive .cv-item-head strong{font-size:12.7px}.template-executive .cv-item-head span,.template-executive .cv-item p,.template-executive .cv-bullet-list li,.template-executive .cv-contact-list li{font-size:10.3px}.template-executive .cv-chip-list span{font-size:9.2px}

/* 6 — TECH: modern grid with accent blocks, no photo required */
.template-tech{padding:15mm 16mm 17mm;font-family:Arial,Helvetica,sans-serif}.template-tech .cv-tech-head{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:start}.template-tech .cv-name{font-size:32px;font-weight:900}.template-tech .cv-role{font-size:11px;margin-top:5px}.template-tech .cv-tech-badge{width:52px;height:52px;border-radius:14px;background:var(--cv-accent);color:#fff;display:grid;place-items:center;font-weight:950;font-size:16px;box-shadow:0 10px 24px color-mix(in srgb,var(--cv-accent) 24%,transparent)}.template-tech>.cv-contact{font-size:9.7px;margin:12px 0 18px;padding:8px 10px;background:#f5f7fa;border-radius:8px}.template-tech .cv-tech-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:20px}.template-tech .cv-section>h2,.template-tech .cv-mini-section>h2{font-size:9.6px}.template-tech .cv-section>h2:before,.template-tech .cv-mini-section>h2:before{content:'';display:inline-block;width:14px;height:3px;background:var(--cv-accent);vertical-align:middle;margin-right:7px;border-radius:99px}.template-tech .cv-summary{font-size:11.2px}.template-tech .cv-item-head strong{font-size:12.5px}.template-tech .cv-item-head span,.template-tech .cv-item p,.template-tech .cv-bullet-list li{font-size:10.3px}.template-tech .cv-tech-side{background:#f8f9fb;border:1px solid #e8ebef;border-radius:12px;padding:12px;height:max-content}.template-tech .cv-tech-side .cv-mini-section+.cv-mini-section{margin-top:18px}.template-tech .cv-chip-list{display:grid}.template-tech .cv-chip-list span{border-radius:6px;font-size:9.4px;text-align:center}

/* Thumbnail mode */
.cv-page.cv-thumbnail{box-shadow:none;pointer-events:none}.cv-thumbnail .cv-template{min-height:297mm}

@media print{.cv-page{box-shadow:none!important;transform:none!important;width:210mm!important;min-height:297mm!important}.template-sidebar,.template-modern .cv-modern-grid,.template-minimal .cv-minimal-columns,.template-executive .cv-exec-grid,.template-tech .cv-tech-grid{display:grid!important}}

/* v6 — photo refinements and new templates */
.cv-page{--cv-accent:#635BFF}
.cv-photo-soft{border:2px solid color-mix(in srgb,var(--cv-accent) 12%,#fff);box-shadow:0 12px 24px rgba(24,28,38,.08)}
.cv-photo-elevated{box-shadow:0 14px 32px rgba(20,25,35,.14);border-color:#eceff4}
.cv-photo-card{width:96px;height:118px;border-radius:20px;box-shadow:0 16px 34px rgba(20,25,35,.12)}
.cv-photo-portrait{width:94px;height:94px;border-radius:22px}
.cv-photo-xl{width:108px;height:108px;border-radius:28px}
.cv-photo-bright{border:4px solid #fff;box-shadow:0 16px 38px rgba(99,91,255,.16)}
.cv-photo-outline{border:3px solid color-mix(in srgb,var(--cv-accent) 45%,#fff);box-shadow:0 14px 30px rgba(20,25,35,.09)}
.cv-hero-split,.cv-lumen-head,.cv-wave-head,.cv-prisma-head,.cv-orbita-head,.cv-brisa-head,.cv-cumbre-head,.cv-elite-head,.cv-atlas-head{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}
.cv-lumen-head,.cv-orbita-head{grid-template-columns:auto 1fr}
.cv-lumen-copy{display:grid;gap:6px}
.cv-atlas-grid,.cv-elite-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:22px}
.cv-elite-grid{grid-template-columns:1.18fr .82fr}
.template-aurora,.template-lumen,.template-atlas,.template-marea,.template-prisma,.template-nexo,.template-orbita,.template-cumbre,.template-brisa,.template-elite{padding:15mm 16mm 17mm;font-family:Arial,Helvetica,sans-serif}
.template-aurora .cv-hero-split,.template-prisma .cv-prisma-head,.template-elite .cv-elite-head{padding-bottom:14px;border-bottom:2px solid color-mix(in srgb,var(--cv-accent) 65%,#fff)}
.template-aurora .cv-hero-copy,.template-prisma .cv-prisma-copy,.template-elite .cv-elite-copy{display:grid;align-content:start}
.template-aurora .cv-name,.template-prisma .cv-name,.template-elite .cv-name,.template-atlas .cv-name,.template-lumen .cv-name,.template-marea .cv-name,.template-orbita .cv-name,.template-cumbre .cv-name,.template-brisa .cv-name{font-size:33px;line-height:.96;letter-spacing:-.048em}
.template-aurora .cv-role,.template-atlas .cv-role,.template-lumen .cv-role,.template-marea .cv-role,.template-prisma .cv-role,.template-nexo .cv-role,.template-orbita .cv-role,.template-cumbre .cv-role,.template-brisa .cv-role,.template-elite .cv-role{font-size:11px;margin-top:5px}
.template-aurora .cv-modern-grid,.template-marea .cv-modern-grid{display:grid;grid-template-columns:.84fr 1.16fr;gap:22px}
.template-aurora .cv-section>h2,.template-lumen .cv-section>h2,.template-atlas .cv-section>h2,.template-atlas .cv-mini-section>h2,.template-marea .cv-section>h2,.template-prisma .cv-section>h2,.template-nexo .cv-section>h2,.template-nexo .cv-mini-section>h2,.template-orbita .cv-section>h2,.template-cumbre .cv-section>h2,.template-cumbre .cv-mini-section>h2,.template-brisa .cv-section>h2,.template-elite .cv-section>h2,.template-elite .cv-mini-section>h2{font-size:9.8px}
.template-aurora .cv-summary,.template-lumen .cv-summary,.template-atlas .cv-summary,.template-marea .cv-summary,.template-prisma .cv-summary,.template-nexo .cv-summary,.template-orbita .cv-summary,.template-cumbre .cv-summary,.template-brisa .cv-summary,.template-elite .cv-summary{font-size:11.2px;line-height:1.62}
.template-aurora .cv-item-head strong,.template-lumen .cv-item-head strong,.template-atlas .cv-item-head strong,.template-marea .cv-item-head strong,.template-prisma .cv-item-head strong,.template-nexo .cv-item-head strong,.template-orbita .cv-item-head strong,.template-cumbre .cv-item-head strong,.template-brisa .cv-item-head strong,.template-elite .cv-item-head strong{font-size:12.5px}
.template-aurora .cv-item-head span,.template-aurora .cv-item p,.template-aurora .cv-bullet-list li,.template-lumen .cv-item-head span,.template-lumen .cv-item p,.template-lumen .cv-bullet-list li,.template-atlas .cv-item-head span,.template-atlas .cv-item p,.template-atlas .cv-bullet-list li,.template-marea .cv-item-head span,.template-marea .cv-item p,.template-marea .cv-bullet-list li,.template-prisma .cv-item-head span,.template-prisma .cv-item p,.template-prisma .cv-bullet-list li,.template-nexo .cv-item-head span,.template-nexo .cv-item p,.template-nexo .cv-bullet-list li,.template-orbita .cv-item-head span,.template-orbita .cv-item p,.template-orbita .cv-bullet-list li,.template-cumbre .cv-item-head span,.template-cumbre .cv-item p,.template-cumbre .cv-bullet-list li,.template-brisa .cv-item-head span,.template-brisa .cv-item p,.template-brisa .cv-bullet-list li,.template-elite .cv-item-head span,.template-elite .cv-item p,.template-elite .cv-bullet-list li,.template-atlas .cv-contact-list li,.template-nexo .cv-contact-list li,.template-cumbre .cv-contact-list li,.template-elite .cv-contact-list li{font-size:10.3px}
.template-lumen .cv-lumen-head{padding:8px 0 16px;border-bottom:1px solid #e4e8ee}.template-lumen .cv-contact{font-size:9.8px;margin-top:7px}.template-lumen .cv-photo{width:96px;height:96px}.template-lumen .cv-minimal-columns,.template-brisa .cv-minimal-columns,.template-prisma .cv-minimal-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.template-lumen .cv-chip-list span,.template-brisa .cv-chip-list span{background:#f3f4ff;color:#4743b7;font-size:9.3px}
.template-atlas .cv-atlas-head{padding-bottom:14px;border-bottom:3px solid #202531}.template-atlas .cv-overline{color:#66707e}.template-atlas .cv-atlas-grid aside{padding-right:16px;border-right:1px solid #e5e9ee}.template-atlas .cv-atlas-grid main{padding-left:6px}.template-atlas .cv-chip-list span{font-size:9.2px}
.template-marea .cv-wave-head{padding:12px 14px;border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--cv-accent) 11%,#fff),#f7f9fb)}.template-marea .cv-contact{font-size:9.8px}
.template-prisma .cv-prisma-head{position:relative}.template-prisma .cv-prisma-head:after{content:'';position:absolute;right:0;bottom:-2px;width:86px;height:4px;background:linear-gradient(90deg,var(--cv-accent),color-mix(in srgb,var(--cv-accent) 15%,#fff));border-radius:999px}.template-prisma .cv-chip-list span{font-size:9.2px}
.template-nexo .cv-tech-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:20px}.template-nexo .cv-tech-side{background:#f8f9fc;border:1px solid #e8ebef;border-radius:14px;padding:12px}.template-nexo .cv-mini-section+.cv-mini-section{margin-top:16px}.template-nexo .cv-chip-list{display:grid}
.template-orbita .cv-orbita-head{padding-bottom:14px;border-bottom:1px solid #e5e8ee}.template-orbita .cv-photo{width:82px;height:82px}
.template-cumbre .cv-cumbre-head{padding:14px 15px;border-radius:18px;background:#141c2f;color:#fff}.template-cumbre .cv-role{color:#dfe5ff}.template-cumbre .cv-contact{color:#d0d7e7;font-size:9.6px}.template-cumbre .cv-exec-grid{display:grid;grid-template-columns:1fr .68fr;gap:20px;margin-top:18px}.template-cumbre .cv-side-panel{padding:12px;border-radius:14px;background:#f7f8fb;border:1px solid #e7ebef}
.template-brisa .cv-brisa-head{padding-bottom:12px;border-bottom:1px solid #e8ebef}.template-brisa>.cv-contact{margin:14px 0 18px;font-size:9.7px}.template-brisa .cv-photo{width:82px;height:82px}
.template-elite .cv-elite-head{padding:15px 16px;border-radius:20px;background:linear-gradient(140deg,#121a2c,#202841);color:#fff}.template-elite .cv-role{color:#dfe4ff}.template-elite .cv-contact{color:#cfd7eb;font-size:9.7px}.template-elite .cv-elite-grid{margin-top:18px}.template-elite aside{padding:12px;border-radius:14px;background:#fafbff;border:1px solid #eceef6}.template-elite .cv-mini-section+.cv-mini-section{margin-top:16px}
@media print{.cv-hero-split,.cv-lumen-head,.cv-wave-head,.cv-prisma-head,.cv-orbita-head,.cv-brisa-head,.cv-cumbre-head,.cv-elite-head,.cv-atlas-head,.template-aurora .cv-modern-grid,.template-marea .cv-modern-grid,.template-lumen .cv-minimal-columns,.template-prisma .cv-minimal-columns,.template-brisa .cv-minimal-columns,.template-atlas .cv-atlas-grid,.template-elite .cv-elite-grid,.template-nexo .cv-tech-grid,.template-cumbre .cv-exec-grid{display:grid!important}}

/* v6.2 — 10 formal templates */
.template-regent,.template-oxford,.template-sterling,.template-monarca,.template-senatorial,.template-heritage,.template-vanguard,.template-diplomat,.template-prestige{padding:15mm 16mm 17mm}
.template-meridian{display:grid;grid-template-columns:64mm 1fr;min-height:297mm;padding:0}
.cv-regent-head,.cv-sterling-head,.cv-monarca-head,.cv-senatorial-head,.cv-heritage-head,.cv-vanguard-head,.cv-diplomat-head,.cv-prestige-head{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center}
.cv-sterling-head,.cv-monarca-head,.cv-vanguard-head,.cv-prestige-head{grid-template-columns:1fr auto}
.cv-regent-grid,.cv-vanguard-grid,.cv-prestige-grid,.cv-diplomat-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:22px}
.cv-diplomat-grid{grid-template-columns:.8fr 1.2fr}.cv-prestige-grid{grid-template-columns:1.25fr .75fr}
.template-regent .cv-regent-head{padding-bottom:14px;border-bottom:3px solid #202735}.template-regent .cv-regent-grid{margin-top:18px}.template-regent aside{padding:12px;background:#f7f8fa;border:1px solid #e6e9ed;border-radius:14px}.template-regent .cv-name{font-family:Georgia,serif;font-size:34px;letter-spacing:-.04em}
.template-oxford{font-family:Georgia,serif}.template-oxford .cv-oxford-head{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding-bottom:14px;border-bottom:1px solid #b8bec7}.template-oxford .cv-name{font-size:36px;font-weight:500}.template-oxford .cv-role,.template-oxford .cv-contact,.template-oxford .cv-section{font-family:Arial,Helvetica,sans-serif}.template-oxford .cv-section>h2{color:#323841;border-bottom:1px solid #d5d9df;padding-bottom:6px}
.template-meridian .cv-meridian-side{background:#edf1f5;padding:17mm 10mm;color:#202631}.template-meridian .cv-meridian-main{padding:17mm 15mm}.template-meridian .cv-name{font-size:28px;margin-top:12px}.template-meridian .cv-role{font-size:10px}.template-meridian .cv-photo{width:92px;height:92px}.template-meridian .cv-mini-section{margin-top:18px}.template-meridian .cv-mini-section>h2{color:#263246}.template-meridian .cv-chip-list{display:grid}.template-meridian .cv-chip-list span{background:#fff;border:1px solid #d7dee7}
.template-sterling .cv-sterling-head{padding:12px 0 16px;border-bottom:1px solid #d8dbe0}.template-sterling .cv-name{font-family:Georgia,serif;font-size:35px;font-weight:500}.template-sterling>.cv-contact{margin:12px 0 18px}.template-sterling .cv-modern-grid{grid-template-columns:.78fr 1.22fr}
.template-monarca .cv-monarca-head{background:#171d2b;color:#fff;padding:16px 18px;border-radius:18px}.template-monarca .cv-role{color:#dce3f3}.template-monarca .cv-monarca-strip{margin:12px 0 18px;padding-bottom:10px;border-bottom:1px solid #e1e4e9}.template-monarca .cv-exec-grid{grid-template-columns:1.1fr .9fr}.template-monarca .cv-exec-grid aside{background:#f8f9fb;border-radius:14px;padding:12px;border:1px solid #e8eaee}
.template-senatorial .cv-senatorial-head{grid-template-columns:auto 1fr;padding-bottom:14px;border-bottom:2px double #8f969f}.template-senatorial .cv-name{font-family:Georgia,serif;font-size:34px;font-weight:500}.template-senatorial .cv-minimal-columns{grid-template-columns:1fr 1fr}
.template-heritage{font-family:Georgia,serif}.template-heritage .cv-heritage-head{grid-template-columns:1fr auto}.template-heritage .cv-name{font-size:37px;font-weight:500}.template-heritage .cv-role,.template-heritage .cv-contact,.template-heritage .cv-section{font-family:Arial,Helvetica,sans-serif}.template-heritage .cv-heritage-rule{height:4px;background:linear-gradient(90deg,#2b3038 0 25%,#d9dde2 25% 100%);margin:13px 0 18px}
.template-vanguard .cv-vanguard-head{padding:14px 15px;background:#f2f4f8;border-left:6px solid var(--cv-accent);border-radius:12px}.template-vanguard .cv-vanguard-grid{margin-top:18px}.template-vanguard aside{padding-left:16px;border-left:1px solid #dfe3e8}
.template-diplomat .cv-diplomat-head{padding-bottom:14px;border-bottom:1px solid #d9dde2}.template-diplomat .cv-photo{width:86px;height:86px}.template-diplomat .cv-diplomat-grid{margin-top:18px}.template-diplomat .cv-diplomat-grid>div:first-child{background:#f8f9fb;padding:13px;border-radius:14px;border:1px solid #e6e9ee}
.template-prestige .cv-prestige-head{padding:16px;border-radius:18px;background:linear-gradient(135deg,#121827,#20293c);color:#fff}.template-prestige .cv-role,.template-prestige .cv-contact{color:#dbe2f0}.template-prestige .cv-prestige-grid{margin-top:18px}.template-prestige aside{padding:13px;border:1px solid #e5e8ee;background:#fafbfc;border-radius:14px}.template-prestige .cv-name{font-family:Georgia,serif;font-size:35px;font-weight:500}
.template-regent .cv-section>h2,.template-oxford .cv-section>h2,.template-meridian .cv-section>h2,.template-meridian .cv-mini-section>h2,.template-sterling .cv-section>h2,.template-monarca .cv-section>h2,.template-monarca .cv-mini-section>h2,.template-senatorial .cv-section>h2,.template-heritage .cv-section>h2,.template-vanguard .cv-section>h2,.template-vanguard .cv-mini-section>h2,.template-diplomat .cv-section>h2,.template-prestige .cv-section>h2,.template-prestige .cv-mini-section>h2{font-size:9.7px}
.template-regent .cv-summary,.template-oxford .cv-summary,.template-meridian .cv-summary,.template-sterling .cv-summary,.template-monarca .cv-summary,.template-senatorial .cv-summary,.template-heritage .cv-summary,.template-vanguard .cv-summary,.template-diplomat .cv-summary,.template-prestige .cv-summary{font-size:10.8px;line-height:1.58}
@media print{.cv-regent-head,.cv-regent-grid,.cv-sterling-head,.cv-monarca-head,.cv-senatorial-head,.cv-heritage-head,.cv-vanguard-head,.cv-vanguard-grid,.cv-diplomat-head,.cv-diplomat-grid,.cv-prestige-head,.cv-prestige-grid,.template-meridian{display:grid!important}}


/* =========================================================
   Civora v8 — familias de plantilla realmente diferentes
   ========================================================= */

/* Timeline — la experiencia se lee como progresión, no como tarjeta genérica. */
.template-timeline{padding:15mm 16mm 17mm;font-family:Arial,Helvetica,sans-serif}
.template-timeline .cv-timeline-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:9mm;border-bottom:4px solid var(--cv-accent)}
.template-timeline .cv-name{font-size:34px;line-height:.96;letter-spacing:-.055em}
.template-timeline .cv-role{font-size:11px;margin-top:7px;color:#555d68;text-transform:uppercase;letter-spacing:.11em}
.template-timeline .cv-photo{width:78px;height:78px;border-radius:16px}
.template-timeline .cv-timeline-layout{display:grid;grid-template-columns:minmax(0,1fr) 31%;gap:10mm;padding-top:8mm}
.template-timeline .cv-timeline-layout>aside{border-left:1px solid #e3e6ea;padding-left:6mm}
.template-timeline .cv-timeline-section .cv-item{position:relative;padding-left:18px;margin-left:4px;border-left:2px solid #e2e5e9}
.template-timeline .cv-timeline-section .cv-item:before{content:"";position:absolute;width:8px;height:8px;border-radius:50%;left:-5px;top:5px;background:var(--cv-accent);box-shadow:0 0 0 4px #fff}
.template-timeline .cv-section>h2,.template-timeline .cv-mini-section>h2{font-size:9.4px;letter-spacing:.12em}
.template-timeline .cv-summary{font-size:11px;line-height:1.6}
.template-timeline .cv-item-head strong{font-size:12.5px}
.template-timeline .cv-item-head span,.template-timeline .cv-item p,.template-timeline .cv-bullet-list li,.template-timeline .cv-contact-list li{font-size:9.8px}
.template-timeline .cv-chip-list span{font-size:9px}

/* Swiss — tipografía grande, sin fotografía, retícula racional. */
.template-swiss{padding:14mm 15mm 17mm;font-family:Arial,Helvetica,sans-serif}
.template-swiss .cv-swiss-head{display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:start;padding-bottom:8mm}
.template-swiss .cv-swiss-index{width:54px;height:54px;background:var(--cv-accent);color:#fff;display:grid;place-items:center;font-size:14px;font-weight:900;letter-spacing:.08em}
.template-swiss .cv-name{font-size:42px;line-height:.88;letter-spacing:-.075em;max-width:520px}
.template-swiss .cv-role{font-size:11.5px;margin-top:8px;text-transform:uppercase;letter-spacing:.16em;color:#4b515a}
.template-swiss>.cv-contact{padding:8px 0 9px;margin:0;border-top:1px solid #20242a;border-bottom:1px solid #20242a;justify-content:flex-start;gap:18px;font-size:9.5px}
.template-swiss .cv-swiss-grid{display:grid;grid-template-columns:34% 1fr;gap:10mm;padding-top:9mm}
.template-swiss .cv-swiss-grid>div:first-child{padding-right:5mm;border-right:1px solid #dfe2e6}
.template-swiss .cv-section{margin-top:0;margin-bottom:8mm}
.template-swiss .cv-section>h2{font-size:9px;letter-spacing:.18em}
.template-swiss .cv-summary{font-size:11.2px;line-height:1.65}
.template-swiss .cv-item{padding:0 0 13px;margin-bottom:13px;border-bottom:1px solid #e4e6e9}
.template-swiss .cv-item-head strong{font-size:12.7px}
.template-swiss .cv-item-head span,.template-swiss .cv-item p,.template-swiss .cv-bullet-list li{font-size:9.8px}
.template-swiss .cv-chip-list{gap:4px}.template-swiss .cv-chip-list span{background:transparent;border:1px solid #222830;border-radius:0;color:#222830;font-size:8.9px;padding:4px 6px}

/* Compact — densidad alta para experiencia extensa sin sacrificar jerarquía. */
.template-compact{padding:12mm 13mm 14mm;font-family:Arial,Helvetica,sans-serif}
.template-compact .cv-compact-head{display:grid;grid-template-columns:1fr 38%;gap:16px;align-items:start;padding-bottom:6mm;border-bottom:2px solid #1e232a}
.template-compact .cv-name{font-size:30px;letter-spacing:-.05em}
.template-compact .cv-role{font-size:10px;margin-top:4px;color:#616873;text-transform:uppercase;letter-spacing:.1em}
.template-compact .cv-compact-contact .cv-contact-list{display:grid;grid-template-columns:1fr;gap:3px;margin:0}
.template-compact .cv-compact-contact .cv-contact-list li{font-size:8.7px}
.template-compact>.cv-section{margin-top:6mm}
.template-compact .cv-compact-columns{display:grid;grid-template-columns:minmax(0,1fr) 31%;gap:7mm;margin-top:5mm}
.template-compact .cv-compact-columns>aside{background:#f4f5f7;padding:5mm;border-radius:4px}
.template-compact .cv-section,.template-compact .cv-mini-section{margin-top:0;margin-bottom:5mm}
.template-compact .cv-section>h2,.template-compact .cv-mini-section>h2{font-size:8.5px;letter-spacing:.14em}
.template-compact .cv-summary{font-size:10px;line-height:1.5}
.template-compact .cv-item{margin-bottom:9px;padding-bottom:8px;border-bottom:1px solid #e1e4e8}
.template-compact .cv-item-head strong{font-size:11.3px}
.template-compact .cv-item-head span,.template-compact .cv-item p,.template-compact .cv-bullet-list li{font-size:8.8px;line-height:1.45}
.template-compact .cv-chip-list{gap:4px}.template-compact .cv-chip-list span{font-size:8.2px;padding:4px 5px}

/* Studio — rail visual completo, claramente diferente del sidebar estándar. */
.template-studio{display:grid;grid-template-columns:34% 66%;min-height:297mm;font-family:Arial,Helvetica,sans-serif}
.template-studio .cv-studio-rail{position:relative;background:var(--cv-accent);color:#fff;padding:15mm 8mm 14mm;overflow:hidden}
.template-studio .cv-studio-rail:after{content:"";position:absolute;width:120px;height:120px;border:28px solid rgba(255,255,255,.08);border-radius:50%;right:-65px;bottom:20mm}
.template-studio .cv-photo{width:100%;height:54mm;border-radius:3px;margin-bottom:9mm;box-shadow:0 12px 28px rgba(0,0,0,.16)}
.template-studio .cv-studio-monogram{font-size:11px;font-weight:900;letter-spacing:.28em;text-transform:uppercase;margin-bottom:8mm;opacity:.8}
.template-studio .cv-mini-section{position:relative;z-index:1;margin-top:8mm}
.template-studio .cv-mini-section>h2{color:#fff;border-color:rgba(255,255,255,.35);font-size:8.8px}
.template-studio .cv-contact-list li,.template-studio .cv-contact-list .cv-icon{color:#fff;font-size:9px}
.template-studio .cv-chip-list span{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.24);color:#fff;font-size:8.7px}
.template-studio .cv-studio-main{padding:16mm 14mm 16mm 12mm}
.template-studio .cv-studio-main>header{padding-bottom:9mm;border-bottom:1px solid #dfe2e6}
.template-studio .cv-overline{color:var(--cv-accent)}
.template-studio .cv-name{font-size:38px;line-height:.92;letter-spacing:-.065em}
.template-studio .cv-role{font-size:11px;margin-top:8px;color:#626974}
.template-studio .cv-section{margin-top:8mm}
.template-studio .cv-section>h2{font-size:9px}
.template-studio .cv-summary{font-size:11px;line-height:1.63}
.template-studio .cv-item-head strong{font-size:12.4px}
.template-studio .cv-item-head span,.template-studio .cv-item p,.template-studio .cv-bullet-list li{font-size:9.8px}

@media print{
  .template-studio{min-height:297mm}
}


/* ============================================================
   Civora v9 — familias adicionales. Cada bloque cambia retícula,
   jerarquía y composición; no son variaciones de color.
   ============================================================ */

/* Blueprint — retícula técnica con numeración de secciones. */
.template-blueprint{padding:13mm 14mm 15mm;font-family:Arial,Helvetica,sans-serif;background:#fff}
.template-blueprint .cv-blueprint-head{display:grid;grid-template-columns:58px minmax(0,1fr) 42%;gap:15px;align-items:end;padding-bottom:7mm;border-bottom:2px solid #1f2933}
.template-blueprint .cv-blueprint-code{height:58px;border:1px solid #1f2933;display:grid;place-items:center;font-size:9px;font-weight:900;letter-spacing:.12em}
.template-blueprint .cv-name{font-size:29px;line-height:.94;letter-spacing:-.055em}
.template-blueprint .cv-role{font-size:10px;margin-top:5px;text-transform:uppercase;letter-spacing:.12em;color:var(--cv-accent)}
.template-blueprint .cv-blueprint-contact .cv-contact{justify-content:flex-end;font-size:8.8px;line-height:1.3;gap:5px 12px}
.template-blueprint .cv-blueprint-grid{display:grid;grid-template-columns:29% minmax(0,1fr);gap:0;margin-top:8mm}
.template-blueprint .cv-blueprint-grid>aside{padding-right:7mm;border-right:1px solid #bfc5cb}
.template-blueprint .cv-blueprint-grid>main{padding-left:9mm}
.template-blueprint .cv-section,.template-blueprint .cv-mini-section{position:relative;margin:0 0 8mm}
.template-blueprint .cv-section-index{display:block;font-size:8px;font-weight:900;letter-spacing:.16em;color:#9aa1a9;margin-bottom:5px}
.template-blueprint .cv-section>h2,.template-blueprint .cv-mini-section>h2{font-size:8.8px;color:#20262d;letter-spacing:.16em;border-top:1px solid #cfd4d9;padding-top:6px}
.template-blueprint .cv-summary{font-size:10.6px;line-height:1.6}
.template-blueprint .cv-item{padding-bottom:10px;margin-bottom:11px;border-bottom:1px solid #e1e4e7}
.template-blueprint .cv-item-head strong{font-size:11.8px}.template-blueprint .cv-item-head span,.template-blueprint .cv-item p,.template-blueprint .cv-bullet-list li{font-size:9.2px}
.template-blueprint .cv-chip-list{display:grid;gap:5px}.template-blueprint .cv-chip-list span{border-radius:0;border-left:3px solid var(--cv-accent);background:#f3f5f6;color:#27303a;font-size:8.8px;padding:5px 7px}

/* Ledger — financiero / jurídico, serif y reglas finas. */
.template-ledger{padding:15mm 16mm;font-family:Georgia,"Times New Roman",serif;color:#202224}
.template-ledger .cv-ledger-head{display:grid;grid-template-columns:1fr 37%;gap:12mm;align-items:end}
.template-ledger .cv-overline{font-family:Arial,sans-serif;color:#777;font-size:7.8px;letter-spacing:.2em}
.template-ledger .cv-name{font-size:36px;font-weight:500;letter-spacing:-.04em}
.template-ledger .cv-role{font-family:Arial,sans-serif;color:#5a5d61;font-size:10px;margin-top:5px}
.template-ledger .cv-ledger-contact .cv-contact-list{gap:3px}
.template-ledger .cv-ledger-contact .cv-contact-list li{font-family:Arial,sans-serif;font-size:8.5px;justify-content:flex-end;text-align:right}
.template-ledger .cv-ledger-contact .cv-icon{display:none}
.template-ledger .cv-ledger-rule{height:5px;border-top:1px solid #25282b;border-bottom:1px solid #cfd2d5;margin:7mm 0 9mm}
.template-ledger .cv-ledger-grid{display:grid;grid-template-columns:minmax(0,1fr) 31%;gap:11mm}
.template-ledger .cv-ledger-grid>aside{padding-left:8mm;border-left:1px solid #d9dcdf}
.template-ledger .cv-section,.template-ledger .cv-mini-section{margin-top:0;margin-bottom:8mm}
.template-ledger .cv-section>h2,.template-ledger .cv-mini-section>h2{font-family:Arial,sans-serif;color:#222;font-size:8.5px;letter-spacing:.18em;border-bottom:1px solid #1f2225;padding-bottom:5px}
.template-ledger .cv-summary{font-size:10.7px;line-height:1.7;color:#3f4245}
.template-ledger .cv-item-head strong{font-size:12px}.template-ledger .cv-item-head span,.template-ledger .cv-item p,.template-ledger .cv-bullet-list li{font-family:Arial,sans-serif;font-size:9.2px}
.template-ledger .cv-chip-list span{font-family:Arial,sans-serif;border-radius:0;background:#f2f2ef;color:#2d3033;font-size:8.5px}

/* Clínica — limpia, calmada y con credenciales al costado. */
.template-clinical{position:relative;padding:0 15mm 15mm;font-family:Arial,Helvetica,sans-serif}
.template-clinical .cv-clinical-band{height:9mm;margin:0 -15mm 0;background:var(--cv-accent)}
.template-clinical .cv-clinical-head{display:flex;align-items:center;gap:8mm;padding:9mm 0 8mm;border-bottom:1px solid #dce4e5}
.template-clinical .cv-clinical-photo{width:28mm;height:28mm;border:5px solid #fff;box-shadow:0 0 0 1px #dce4e5}
.template-clinical .cv-overline{color:#728185;font-size:8px}
.template-clinical .cv-name{font-size:31px;letter-spacing:-.05em}.template-clinical .cv-role{font-size:10.5px;margin-top:5px;color:var(--cv-accent)}
.template-clinical .cv-clinical-grid{display:grid;grid-template-columns:minmax(0,1fr) 31%;gap:9mm;padding-top:8mm}
.template-clinical .cv-clinical-grid>aside{background:#f2f7f7;border-radius:5mm;padding:7mm}
.template-clinical .cv-section,.template-clinical .cv-mini-section{margin-top:0;margin-bottom:7mm}
.template-clinical .cv-section>h2,.template-clinical .cv-mini-section>h2{font-size:8.8px;color:#334244;letter-spacing:.15em}
.template-clinical .cv-summary{font-size:10.8px}.template-clinical .cv-item-head strong{font-size:12.1px}
.template-clinical .cv-item-head span,.template-clinical .cv-item p,.template-clinical .cv-bullet-list li,.template-clinical .cv-contact-list li{font-size:9.2px}
.template-clinical .cv-chip-list span{background:#fff;border:1px solid #d6e1e1;color:#334244;font-size:8.5px}

/* Hospitalidad — cabecera elegante + cinta de contacto. */
.template-hospitality{padding:14mm 16mm 16mm;font-family:Georgia,"Times New Roman",serif}
.template-hospitality .cv-hospitality-head{display:grid;grid-template-columns:30mm 1fr;gap:8mm;align-items:center}
.template-hospitality .cv-hospitality-photo{width:30mm;height:34mm;border-radius:1mm}
.template-hospitality .cv-overline{font-family:Arial,sans-serif;color:#8b7b6c;font-size:8px}
.template-hospitality .cv-name{font-size:34px;font-weight:500;letter-spacing:-.04em}
.template-hospitality .cv-role{font-family:Arial,sans-serif;font-size:10.5px;color:var(--cv-accent);margin-top:5px}
.template-hospitality .cv-hospitality-contact{margin:8mm -16mm 0;padding:4mm 16mm;background:#f1eee9}
.template-hospitality .cv-hospitality-contact .cv-contact{font-family:Arial,sans-serif;font-size:8.8px;justify-content:center}
.template-hospitality .cv-hospitality-grid{display:grid;grid-template-columns:37% 1fr;gap:10mm;padding-top:9mm}
.template-hospitality .cv-hospitality-grid>div:first-child{padding-right:7mm;border-right:1px solid #d9d2ca}
.template-hospitality .cv-section{margin-top:0;margin-bottom:8mm}
.template-hospitality .cv-section>h2{font-family:Arial,sans-serif;font-size:8.7px;color:#6d6258;letter-spacing:.17em}
.template-hospitality .cv-summary{font-size:10.8px;line-height:1.7}.template-hospitality .cv-item-head strong{font-size:12px}
.template-hospitality .cv-item-head span,.template-hospitality .cv-item p,.template-hospitality .cv-bullet-list li{font-family:Arial,sans-serif;font-size:9.1px}
.template-hospitality .cv-chip-list span{font-family:Arial,sans-serif;background:#f5f1ed;color:#544b43;font-size:8.4px}

/* Terra — cabecera orgánica, cercana y cálida. */
.template-terra{padding:12mm 14mm 15mm;font-family:Arial,Helvetica,sans-serif}
.template-terra .cv-terra-head{position:relative;display:grid;grid-template-columns:1fr 34mm;gap:8mm;align-items:center;background:color-mix(in srgb,var(--cv-accent) 12%,#f5efe8);border-radius:9mm;padding:9mm 10mm}
.template-terra .cv-terra-head:after{content:"";position:absolute;right:25mm;bottom:-9mm;width:18mm;height:18mm;border-radius:50%;background:color-mix(in srgb,var(--cv-accent) 18%,#fff);z-index:0}
.template-terra .cv-terra-head>*{position:relative;z-index:1}.template-terra .cv-terra-photo{width:34mm;height:34mm;border:4px solid #fff}
.template-terra .cv-overline{color:#6d665f}.template-terra .cv-name{font-size:31px}.template-terra .cv-role{font-size:10.5px;margin-top:5px}
.template-terra .cv-terra-contact{padding:5mm 2mm;border-bottom:1px solid #ded8d2}.template-terra .cv-terra-contact .cv-contact{font-size:8.8px}
.template-terra .cv-terra-grid{display:grid;grid-template-columns:34% 1fr;gap:9mm;padding-top:8mm}
.template-terra .cv-terra-grid>aside{padding-right:7mm;border-right:1px solid #e1dcd7}
.template-terra .cv-section,.template-terra .cv-mini-section{margin-top:0;margin-bottom:8mm}
.template-terra .cv-section>h2,.template-terra .cv-mini-section>h2{font-size:8.7px;color:#554f49;letter-spacing:.15em}
.template-terra .cv-summary{font-size:10.5px}.template-terra .cv-item-head strong{font-size:12px}
.template-terra .cv-item-head span,.template-terra .cv-item p,.template-terra .cv-bullet-list li{font-size:9.1px}
.template-terra .cv-chip-list span{background:#f3eee8;color:#5d544b;font-size:8.4px}

/* Noir — sidebar negro de gran presencia. */
.template-noir{display:grid;grid-template-columns:37% 1fr;min-height:297mm;font-family:Arial,Helvetica,sans-serif}
.template-noir .cv-noir-side{background:#17191d;color:#fff;padding:15mm 9mm;position:relative}
.template-noir .cv-noir-photo{width:100%;height:52mm;border:0;border-radius:0;margin-bottom:8mm}
.template-noir .cv-noir-monogram{font-size:28px;font-weight:900;letter-spacing:-.05em;color:rgba(255,255,255,.16);position:absolute;right:8mm;top:74mm}
.template-noir .cv-mini-section{margin-top:10mm;position:relative;z-index:1}.template-noir .cv-mini-section>h2{color:#fff;font-size:8.5px;border-bottom:1px solid rgba(255,255,255,.22);padding-bottom:5px}
.template-noir .cv-contact-list li{color:#d8dade;font-size:8.8px}.template-noir .cv-icon{background:rgba(255,255,255,.08);color:#fff}
.template-noir .cv-chip-list span{background:transparent;border:1px solid rgba(255,255,255,.28);color:#fff;font-size:8.4px}
.template-noir .cv-noir-main{padding:16mm 14mm}
.template-noir .cv-noir-main>header{padding-bottom:9mm;border-bottom:5px solid var(--cv-accent)}
.template-noir .cv-overline{color:#777d86}.template-noir .cv-name{font-size:39px;line-height:.9}.template-noir .cv-role{font-size:10.5px;margin-top:7px}
.template-noir .cv-section{margin-top:9mm}.template-noir .cv-section>h2{font-size:8.7px;color:#222}
.template-noir .cv-summary{font-size:10.7px}.template-noir .cv-item-head strong{font-size:12px}
.template-noir .cv-item-head span,.template-noir .cv-item p,.template-noir .cv-bullet-list li{font-size:9.2px}

/* Impacto — comercial y resultados, nombre de gran escala. */
.template-impact{padding:14mm 16mm 15mm;font-family:Arial,Helvetica,sans-serif}
.template-impact .cv-impact-head{display:grid;grid-template-columns:1fr 38%;gap:10mm;align-items:end;padding-bottom:8mm;border-bottom:1px solid #20242a}
.template-impact .cv-impact-name{font-weight:950;font-size:42px;line-height:.82;letter-spacing:-.075em;text-transform:uppercase}
.template-impact .cv-impact-name span{display:block}.template-impact .cv-impact-name .is-last{color:var(--cv-accent)}
.template-impact .cv-impact-meta{text-align:right}.template-impact .cv-impact-meta>strong{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}
.template-impact .cv-impact-meta .cv-contact{justify-content:flex-end;font-size:8.6px;gap:4px 12px}
.template-impact .cv-impact-intro{display:grid;grid-template-columns:1fr 36%;gap:9mm;padding:8mm 0;border-bottom:5px solid #1f2329}
.template-impact .cv-impact-intro .cv-summary{font-size:11px;line-height:1.65}.template-impact .cv-chip-list{align-content:start}
.template-impact .cv-chip-list span{background:#1f2329;color:#fff;border-radius:2px;font-size:8.6px}
.template-impact .cv-section{margin-top:9mm}.template-impact .cv-section>h2{font-size:9px;color:#20242a}
.template-impact .cv-item{display:grid;grid-template-columns:1fr;gap:2px;border-bottom:1px solid #dfe2e5;padding-bottom:11px;margin-bottom:12px}
.template-impact .cv-item-head strong{font-size:12.5px}.template-impact .cv-item-head span,.template-impact .cv-item p,.template-impact .cv-bullet-list li{font-size:9.4px}
.template-impact .cv-impact-edu{display:grid;grid-template-columns:28% 1fr;gap:8mm}

/* Impulso — educación primero para estudiantes/egresados. */
.template-graduate{padding:14mm 15mm 16mm;font-family:Arial,Helvetica,sans-serif}
.template-graduate .cv-graduate-head{display:grid;grid-template-columns:18mm 1fr;gap:6mm;align-items:start;padding-bottom:8mm;border-bottom:1px solid #d7dbe0}
.template-graduate .cv-graduate-badge,.template-graduate .cv-graduate-number{width:18mm;height:18mm;border-radius:50%;display:grid;place-items:center;background:var(--cv-accent);color:#fff;font-size:9px;font-weight:900}
.template-graduate .cv-name{font-size:34px;line-height:.92}.template-graduate .cv-role{font-size:10.5px;margin-top:5px}
.template-graduate .cv-contact{font-size:8.7px;margin-top:8px}
.template-graduate .cv-graduate-grid{display:grid;grid-template-columns:minmax(0,1fr) 29%;gap:10mm;padding-top:9mm}
.template-graduate .cv-graduate-grid>aside{padding-left:7mm;border-left:1px solid #dfe2e6}
.template-graduate .cv-graduate-number{width:11mm;height:11mm;margin-bottom:9mm;background:#eef0f3;color:#4e555e}
.template-graduate .cv-section,.template-graduate .cv-mini-section{margin-top:0;margin-bottom:8mm}
.template-graduate .cv-section>h2,.template-graduate .cv-mini-section>h2{font-size:8.8px;color:#24292f}
.template-graduate .cv-graduate-education{background:#f5f6f8;padding:6mm;border-radius:4mm}
.template-graduate .cv-summary{font-size:10.7px}.template-graduate .cv-item-head strong{font-size:12px}
.template-graduate .cv-item-head span,.template-graduate .cv-item p,.template-graduate .cv-bullet-list li{font-size:9.2px}
.template-graduate .cv-chip-list{display:grid}.template-graduate .cv-chip-list span{background:#fff;border:1px solid #dfe2e6;color:#38404a;font-size:8.5px}

/* Portfolio — etiqueta vertical + foto editorial. */
.template-portfolio{display:grid;grid-template-columns:14mm 1fr;min-height:297mm;font-family:Arial,Helvetica,sans-serif}
.template-portfolio .cv-portfolio-label{background:var(--cv-accent);display:flex;align-items:flex-end;justify-content:center;padding-bottom:15mm;overflow:hidden}
.template-portfolio .cv-portfolio-label span{writing-mode:vertical-rl;transform:rotate(180deg);color:#fff;font-size:8px;font-weight:900;letter-spacing:.32em}
.template-portfolio .cv-portfolio-main{padding:14mm 14mm 16mm 12mm}
.template-portfolio .cv-portfolio-head{display:grid;grid-template-columns:1fr 35mm;gap:8mm;align-items:end}
.template-portfolio .cv-portfolio-photo{width:35mm;height:46mm;border-radius:0}
.template-portfolio .cv-name{font-size:39px;line-height:.88}.template-portfolio .cv-role{font-size:10.5px;margin-top:7px}
.template-portfolio .cv-portfolio-contact{padding:5mm 0;border-top:1px solid #dfe2e6;border-bottom:1px solid #dfe2e6;margin-top:7mm}
.template-portfolio .cv-portfolio-contact .cv-contact{font-size:8.8px}
.template-portfolio .cv-portfolio-grid{display:grid;grid-template-columns:35% 1fr;gap:9mm;padding-top:8mm}
.template-portfolio .cv-portfolio-grid>aside{padding-right:7mm;border-right:1px solid #dfe2e6}
.template-portfolio .cv-section,.template-portfolio .cv-mini-section{margin-top:0;margin-bottom:8mm}
.template-portfolio .cv-section>h2,.template-portfolio .cv-mini-section>h2{font-size:8.7px}
.template-portfolio .cv-summary{font-size:10.4px}.template-portfolio .cv-item-head strong{font-size:12px}
.template-portfolio .cv-item-head span,.template-portfolio .cv-item p,.template-portfolio .cv-bullet-list li{font-size:9.1px}
.template-portfolio .cv-chip-list span{border-radius:0;background:#f2f2f5;color:#2f3339;font-size:8.4px}

/* Zen — ultra minimal y sin fotografía. */
.template-zen{padding:13mm 18mm 17mm;font-family:Arial,Helvetica,sans-serif}
.template-zen .cv-zen-top{min-height:8mm;border-bottom:1px solid #dfe2e5;padding-bottom:4mm}
.template-zen .cv-zen-top .cv-contact{font-size:8.5px;justify-content:flex-end}
.template-zen .cv-zen-head{padding:14mm 0 12mm;max-width:135mm}
.template-zen .cv-overline{color:#8c9198}.template-zen .cv-name{font-size:47px;font-weight:650;line-height:.88;letter-spacing:-.075em}
.template-zen .cv-role{font-size:10px;margin-top:9px;color:#656b73;text-transform:uppercase;letter-spacing:.16em}
.template-zen>.cv-section{max-width:142mm;margin:0 0 12mm}.template-zen .cv-summary{font-size:11.3px;line-height:1.75}
.template-zen .cv-zen-grid{display:grid;grid-template-columns:1fr 32%;gap:12mm;border-top:1px solid #22272d;padding-top:8mm}
.template-zen .cv-section,.template-zen .cv-mini-section{margin-top:0;margin-bottom:8mm}
.template-zen .cv-section>h2,.template-zen .cv-mini-section>h2{font-size:8.2px;color:#777d84}
.template-zen .cv-item-head strong{font-size:11.8px}.template-zen .cv-item-head span,.template-zen .cv-item p,.template-zen .cv-bullet-list li{font-size:9.1px}
.template-zen .cv-chip-list span{background:transparent;border:1px solid #dfe2e5;color:#343a41;font-size:8.4px}

/* Metro — módulos de contenido claramente separados. */
.template-metro{padding:12mm 13mm 14mm;font-family:Arial,Helvetica,sans-serif;background:#f4f5f6}
.template-metro .cv-metro-head{display:grid;grid-template-columns:15mm 1fr 26mm;gap:6mm;align-items:center;background:#171a20;color:#fff;padding:7mm;border-radius:3mm 3mm 0 0}
.template-metro .cv-metro-id{width:15mm;height:15mm;display:grid;place-items:center;background:var(--cv-accent);font-weight:900;font-size:10px}
.template-metro .cv-name{font-size:28px}.template-metro .cv-role{font-size:9.5px;color:#d7d9de;margin-top:4px}
.template-metro .cv-metro-photo{width:26mm;height:26mm;border:0;border-radius:2mm}
.template-metro .cv-metro-contact{background:#fff;padding:4mm 6mm;border:1px solid #e0e3e6;border-top:0}.template-metro .cv-metro-contact .cv-contact{font-size:8.5px}
.template-metro .cv-metro-grid{display:grid;grid-template-columns:37% 1fr;gap:4mm;padding-top:4mm}
.template-metro .cv-metro-card{background:#fff;border:1px solid #e0e3e6;border-radius:2mm;padding:6mm;margin:0}
.template-metro .cv-metro-summary{grid-column:1/2}.template-metro .cv-metro-work{grid-column:2/3;grid-row:1/span 2}
.template-metro .cv-metro-card>h2{font-size:8.5px;color:#252b32}
.template-metro .cv-summary{font-size:10.2px}.template-metro .cv-item-head strong{font-size:11.7px}
.template-metro .cv-item-head span,.template-metro .cv-item p,.template-metro .cv-bullet-list li{font-size:8.9px}
.template-metro .cv-chip-list span{background:#f1f2f4;color:#343b44;font-size:8.2px}

/* Consultora — monograma, experiencia principal y columna estratégica. */
.template-consultant{padding:14mm 15mm 16mm;font-family:Arial,Helvetica,sans-serif}
.template-consultant .cv-consultant-head{display:grid;grid-template-columns:18mm 1fr 35%;gap:6mm;align-items:center;padding-bottom:8mm;border-bottom:3px double #2b3036}
.template-consultant .cv-consultant-mark{width:18mm;height:18mm;border:1px solid #24292f;border-radius:50%;display:grid;place-items:center;font-size:9px;font-weight:900;letter-spacing:.05em}
.template-consultant .cv-name{font-family:Georgia,serif;font-size:30px;font-weight:500;letter-spacing:-.04em}.template-consultant .cv-role{font-size:9.5px;margin-top:4px}
.template-consultant .cv-overline{font-size:7px}.template-consultant .cv-consultant-contact .cv-contact-list{gap:2px}
.template-consultant .cv-consultant-contact .cv-contact-list li{font-size:8.3px;justify-content:flex-end;text-align:right}.template-consultant .cv-consultant-contact .cv-icon{display:none}
.template-consultant .cv-consultant-grid{display:grid;grid-template-columns:1fr 33%;gap:11mm;padding-top:9mm}
.template-consultant .cv-consultant-grid>aside{padding-left:8mm;border-left:1px solid #d9dde1}
.template-consultant .cv-section,.template-consultant .cv-mini-section{margin-top:0;margin-bottom:8mm}
.template-consultant .cv-section>h2,.template-consultant .cv-mini-section>h2{font-size:8.5px;color:#2b3036}
.template-consultant .cv-summary{font-size:10.5px}.template-consultant .cv-item-head strong{font-size:12px}
.template-consultant .cv-item-head span,.template-consultant .cv-item p,.template-consultant .cv-bullet-list li{font-size:9.1px}
.template-consultant .cv-chip-list span{border-radius:0;background:#f1f2f3;color:#343a42;font-size:8.4px}

/* Columna — dos zonas de peso equivalente tras cabecera completa. */
.template-column{padding:14mm 15mm 16mm;font-family:Arial,Helvetica,sans-serif}
.template-column .cv-column-head{display:grid;grid-template-columns:1fr 43%;gap:9mm;align-items:end}
.template-column .cv-name{font-size:35px}.template-column .cv-role{font-size:10px;margin-top:5px;color:var(--cv-accent)}
.template-column .cv-column-contact .cv-contact{justify-content:flex-end;font-size:8.5px}
.template-column .cv-column-rule{height:6mm;margin:7mm 0 9mm;background:linear-gradient(90deg,var(--cv-accent) 0 31%,#20252b 31% 100%)}
.template-column .cv-column-grid{display:grid;grid-template-columns:1fr 1fr;gap:11mm}
.template-column .cv-column-grid>div:first-child{padding-right:9mm;border-right:1px solid #d9dde1}
.template-column .cv-section{margin-top:0;margin-bottom:8mm}.template-column .cv-section>h2{font-size:8.6px;color:#252a31}
.template-column .cv-summary{font-size:10.7px}.template-column .cv-item-head{display:block}.template-column .cv-item-head>span{display:block;margin-top:2px}
.template-column .cv-item-head strong{font-size:11.7px}.template-column .cv-item-head span,.template-column .cv-item p,.template-column .cv-bullet-list li{font-size:9px}
.template-column .cv-chip-list span{background:#f1f2f4;color:#363c44;font-size:8.3px}

@media print{
  .template-noir,.template-portfolio{min-height:297mm}
  .template-blueprint,.template-ledger,.template-clinical,.template-hospitality,.template-terra,.template-impact,.template-graduate,.template-zen,.template-metro,.template-consultant,.template-column{break-inside:avoid}
}


/* Marco — clásico enmarcado, sin foto y con cabecera centrada. */
.template-frame{padding:10mm;font-family:Georgia,"Times New Roman",serif;background:#fff}
.template-frame .cv-frame-inner{min-height:277mm;border:1.2px solid #272a2e;padding:12mm 13mm 11mm;position:relative}
.template-frame .cv-frame-inner:before{content:"";position:absolute;inset:3mm;border:1px solid #d9dcdf;pointer-events:none}
.template-frame .cv-frame-inner>*{position:relative;z-index:1}
.template-frame .cv-frame-head{text-align:center;padding:3mm 6mm 8mm;border-bottom:1px solid #24272b}
.template-frame .cv-overline{font-family:Arial,sans-serif;font-size:7.5px;color:#8b8e93;letter-spacing:.25em}
.template-frame .cv-name{font-size:36px;font-weight:500;letter-spacing:-.04em;margin-top:4px}
.template-frame .cv-role{font-family:Arial,sans-serif;font-size:9.8px;color:var(--cv-accent);text-transform:uppercase;letter-spacing:.13em;margin-top:5px}
.template-frame .cv-contact{font-family:Arial,sans-serif;justify-content:center;font-size:8.4px;margin-top:8px}
.template-frame>.cv-section,.template-frame .cv-frame-inner>.cv-section{margin-top:8mm}
.template-frame .cv-section>h2,.template-frame .cv-mini-section>h2{font-family:Arial,sans-serif;font-size:8.4px;color:#25282c;letter-spacing:.18em;text-align:center}
.template-frame .cv-summary{font-size:10.7px;line-height:1.7;text-align:center;max-width:145mm;margin:auto}
.template-frame .cv-frame-work .cv-item{padding-bottom:10px;margin-bottom:11px;border-bottom:1px solid #e0e2e5}
.template-frame .cv-item-head strong{font-size:11.9px}.template-frame .cv-item-head span,.template-frame .cv-item p,.template-frame .cv-bullet-list li{font-family:Arial,sans-serif;font-size:9px}
.template-frame .cv-frame-bottom{display:grid;grid-template-columns:1fr 1fr;gap:10mm;border-top:1px solid #24272b;padding-top:7mm;margin-top:8mm}
.template-frame .cv-frame-bottom>section+section{border-left:1px solid #d9dcdf;padding-left:9mm}
.template-frame .cv-chip-list{justify-content:center}.template-frame .cv-chip-list span{font-family:Arial,sans-serif;background:#f2f2f0;color:#303338;border-radius:0;font-size:8.3px}

/* v17.2 — Idiomas y cursos (todas las plantillas) */
.cv-lang-list{list-style:none;margin:0;padding:0;display:grid;gap:5px}
.cv-lang-list li{display:flex;justify-content:space-between;gap:10px;align-items:baseline;font-size:10.4px;color:#454c57;line-height:1.35}
.cv-lang-list li strong{color:#20242b;font-weight:750}
.cv-lang-list li span{color:#6b7280;white-space:nowrap}
.cv-mini-section .cv-lang-list li{font-size:9.6px}
.cv-course{margin-bottom:8px}
.cv-mini-section.cv-extra{margin-top:12px}
.cv-course .cv-item-head strong{font-size:11px}
.cv-course .cv-item-head span{font-size:9.8px}
.cv-course .cv-item-head .cv-course-org{font-size:10.2px;color:#5b626e}

/* 25 — ANDES ATS: una columna, fechas en margen izquierdo, jerarquía sobria */
.template-andes{padding:15mm 16mm 16mm;font-family:Arial,Helvetica,sans-serif;color:#1d2129}
.template-andes .cv-andes-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10mm;align-items:end;padding-bottom:5mm;border-bottom:2px solid var(--cv-accent)}
.template-andes .cv-name{font-size:30px;line-height:1.02;letter-spacing:-.035em;font-weight:800;color:#15181f}
.template-andes .cv-role{font-size:12.5px;margin-top:5px;color:var(--cv-accent);font-weight:700}
.template-andes .cv-andes-contact{display:grid;justify-items:end;gap:2px;font-size:9.8px;color:#4b5260;text-align:right}
.template-andes .cv-section{margin-top:6.5mm}
.template-andes .cv-section>h2{display:grid;grid-template-columns:auto 1fr;gap:4mm;align-items:center;font-size:10px;letter-spacing:.1em;color:#1d2129;margin-bottom:3.5mm;white-space:nowrap}
.template-andes .cv-section>h2::after{content:"";height:1px;background:#d9dde3}
.template-andes .cv-summary{font-size:11px;line-height:1.6;padding-left:26mm}
.template-andes .cv-andes-item{display:grid;grid-template-columns:26mm minmax(0,1fr);margin-bottom:4.2mm}
.template-andes .cv-andes-date{font-size:9.6px;color:#6a7180;padding-top:2px;padding-right:3mm;line-height:1.35}
.template-andes .cv-item-head strong{font-size:12.2px;color:#15181f;display:block}
.template-andes .cv-andes-org{display:block;font-size:10.4px;color:var(--cv-accent);font-weight:700;margin-top:1px}
.template-andes .cv-item p,.template-andes .cv-bullet-list li{font-size:10.4px;color:#434a56}
.template-andes .cv-bullet-list{padding-left:13px}
.template-andes p.cv-andes-skills{display:block;margin:0;padding-left:26mm;font-size:10.4px;line-height:1.7;color:#343a45}
.template-andes .cv-extra .cv-lang-list,.template-andes .cv-extra .cv-course{margin-left:26mm}
.template-andes .cv-lang-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:8mm}
.template-andes .cv-lang-list li{justify-content:flex-start}
.template-andes .cv-lang-list li span:before{content:"· "}
.template-andes .cv-photo{display:none}
.template-andes .cv-course .cv-item-head strong{display:inline}
