*{box-sizing:border-box}body{margin:0;background:#f6f8fc;color:#15253e;font:14px/1.65 'Poppins',Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:#d62936}.container{width:min(1180px,calc(100% - 44px));margin:0 auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.23}h1{font-size:36px;font-weight:800;letter-spacing:-1px}h1 span{color:#d72533}h2{font-size:24px;font-weight:800}h3{font-size:17px}p{color:#66758d}.topline{background:#f0f3f8;font-size:11px;color:#6f7b8f}.topline .container{display:flex;justify-content:space-between;padding:7px 0}.header{background:white;border-bottom:1px solid #e9edf4;position:sticky;top:0;z-index:10}.headin{min-height:75px;display:flex;align-items:center;gap:30px;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-weight:800;white-space:nowrap;line-height:1.2}.brandicon{background:#d62936;color:white;border-radius:10px;width:39px;height:42px;display:grid;place-items:center;font-size:17px}.brand em{color:#d62936;font-style:normal}.brand small{display:block;font-size:9px;color:#7d8aa0;font-weight:500;margin-top:5px}.nav{display:flex;gap:22px;font-weight:600;font-size:12px}.nav a:hover{color:#ce2734}.btn{border:1px solid transparent;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;font-weight:700;font-family:inherit;cursor:pointer;font-size:12px;white-space:nowrap}.btn.red{background:#d72b38;color:white}.btn.red:hover{background:#b91e2c}.btn.outline{background:white;border-color:#e0e5ee;color:#cf2937}.btn.outline:hover{background:#fff2f3}.btn.small{font-size:11px;padding:9px 13px}.btn.full{width:100%}.hero{background:linear-gradient(115deg,#eff7ff,#e8f1fb 75%,#dce9f7);overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.55fr .75fr;min-height:340px;align-items:center;gap:20px}.hero-copy{padding:30px 0}.hero h1{max-width:630px;font-size:42px}.hero p{max-width:550px;font-size:14px;color:#52667f}.eyebrow,.sectionheading small{color:#d22e3e;font-weight:800;letter-spacing:1.4px;font-size:10px}.hero-graphic{position:relative;align-self:stretch;display:flex;justify-content:center;align-items:center;background:radial-gradient(circle at center,#b7d4eb,#e7f3fc 75%);border-radius:100% 0 0 0}.hero-graphic-symbol{display:grid;place-items:center;width:200px;height:200px;border-radius:50%;background:linear-gradient(140deg,#e23c4b,#9e192c);color:white;font-size:80px;letter-spacing:-10px;font-weight:800;box-shadow:0 20px 50px #27496334}.hero-stamp{position:absolute;top:30px;right:5px;color:#1b3151;font-weight:700;transform:rotate(-7deg);text-align:center}.searchbox{display:flex;gap:8px;padding:10px;background:white;border:1px solid #e5e9f0;border-radius:13px;box-shadow:0 7px 27px #17294413;max-width:810px}.searchbox input,.searchbox select{min-width:0;flex:1;border:1px solid #e8edf4;border-radius:8px;padding:11px 15px;background:#fff;color:#25344f;font:inherit;font-size:12px}.searchpopular{margin-top:14px;font-size:11px;font-weight:600}.searchpopular a{display:inline-block;background:white;border:1px solid #e3e8ef;border-radius:20px;padding:3px 10px;margin:2px;color:#50647d}.quicklinks{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:24px 0}.quicklinks a{display:grid;gap:2px;background:white;border:1px solid #e6ebf2;border-radius:11px;padding:18px;color:#d32835;font-size:24px}.quicklinks strong{font-size:13px;color:#172843}.quicklinks small{font-size:10px;color:#8090a5}.section{margin-top:36px;margin-bottom:45px}.sectionheading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.sectionheading h2{margin:3px 0}.sectionheading p{margin:3px 0;font-size:12px}.sectionheading>a{color:#1164ad;font-size:12px;font-weight:600}.jobs{display:grid;gap:11px}.jobcard{background:white;border:1px solid #e2e8f0;border-radius:11px;padding:18px;display:flex;align-items:center;gap:16px;min-width:0;box-shadow:0 2px 7px #15274706}.joblogo,.emplogo,.profilelogo{background:white;border:1px solid #e7ebf2;border-radius:10px;display:grid;place-items:center;overflow:hidden;flex-shrink:0}.joblogo{width:68px;height:68px}.emplogo{height:66px;width:66px}.profilelogo{height:105px;width:105px}.company-logo{width:100%;height:100%;object-fit:contain;padding:7px}.company-initial{width:100%;height:100%;display:grid;place-items:center;background:#eaf0fc;color:#164d95;font-weight:800;font-size:18px;text-transform:uppercase}.jobbody{min-width:0;flex:1}.jobtitle{display:block;font-weight:800;font-size:15px;color:#1b2c49;margin:4px 0;line-height:1.4}.companytext{display:block;color:#65758f;font-size:12px;font-weight:600}.metas{display:flex;gap:20px;flex-wrap:wrap;color:#5c718c;font-size:11px;margin-top:10px}.chips{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.chip{display:inline-block;border-radius:5px;background:#e9f1ff;color:#1b65bd;padding:3px 8px;font-size:10px;font-weight:800}.chip.privado{background:#fff0f1;color:#cb2736}.chip.practicas{background:#e8f8ef;color:#167c4a}.chip.cas{background:#e9f2ff;color:#2162ab}.muted{color:#718198}.tiny{font-size:10px}.catgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.catgrid a{border:1px solid #e1e8f1;border-radius:10px;background:white;padding:18px;display:flex;flex-direction:column;gap:4px}.caticon{font-size:23px;color:#d32937}.catgrid b{font-size:12px}.catgrid small{font-size:10px;color:#8291a4}.empgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.empcard{background:white;border:1px solid #e3e8f0;border-radius:11px;padding:18px}.emphead{display:flex;gap:13px;align-items:center}.empcard p{margin:14px 0;font-size:11px}.cardfoot{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px}.pagehero{padding:35px 0;background:linear-gradient(110deg,#eff6ff,#e5eef9);border-bottom:1px solid #dfebf7}.pagehero h1{margin:10px 0;font-size:36px}.pagehero p{font-size:13px}.crumb{font-size:11px;color:#71829b;margin-bottom:16px}.crumb a{color:#2467af}.pagehero .searchbox{margin-top:20px}.listlayout{display:grid;grid-template-columns:255px minmax(0,1fr);gap:25px;align-items:start}.filters,.sidebarbox,.detailhero,.infoblock,.empprofile{background:white;border:1px solid #e3e8f0;border-radius:12px;padding:22px}.filters{position:sticky;top:94px}.filters label{display:block;font-weight:700;font-size:11px;margin-top:12px}.filters input,.filters select{display:block;margin-top:5px;width:100%;border:1px solid #dde5ef;padding:11px;border-radius:7px;font-family:inherit;color:#314363;background:white}.filters .btn{margin-top:20px}.clean{display:block;text-align:center;margin-top:14px;color:#ca2532;font-size:12px}.resultbar h2{margin:0}.resultbar p{font-size:12px;margin:3px 0 16px}.empty{padding:28px;background:white;border:1px dashed #cdd7e4;border-radius:12px;color:#70809a}.pages{display:flex;justify-content:center;margin:22px}.pages nav{display:flex;align-items:center;gap:15px}.pages a,.pages span{color:#2367a6}.detailgrid{display:grid;grid-template-columns:minmax(0,1fr) 325px;gap:20px;align-items:start}.detailhero{margin-bottom:12px}.detailheading{display:flex;align-items:center;gap:19px}.detailheading h1{font-size:28px;margin:8px 0}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.facts>div{border:1px solid #e1e6ef;border-radius:9px;padding:12px}.facts small,.facts strong{display:block}.facts small{color:#7e8ba0;font-size:10px}.facts strong{font-size:15px}.cta{margin-top:18px}.infoblock{margin-bottom:12px}.infoblock h2{font-size:17px}.preserve{white-space:pre-line;overflow-wrap:anywhere;color:#4d5e77;font-size:13px}.detailgrid aside{display:grid;gap:12px}.empcardtop{display:flex;align-items:center;gap:12px;margin-bottom:15px}.empcardtop strong{display:block;font-size:13px}.empcardtop a{color:#1466ba;font-size:11px}.summaryrow{padding:12px 0;border-top:1px solid #edf0f6;display:flex;justify-content:space-between;gap:14px;font-size:12px}.summaryrow span{color:#7a8aa1}.summaryrow strong{text-align:right;overflow-wrap:anywhere}.related{display:block;border-top:1px solid #e5eaf2;padding:13px 0}.related b,.related small{display:block}.related b{font-size:12px}.related small{font-size:10px;color:#7889a2}.empprofile{display:flex;align-items:center;gap:22px;margin-bottom:20px}.empprofile h1{margin:8px 0;font-size:29px}.empprofile a{color:#1470b3}.footer{background:#eff3f9;border-top:1px solid #e4eaf3;margin-top:45px;padding-top:35px}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:35px}.footergrid>div{display:flex;flex-direction:column;gap:6px}.footergrid strong{font-size:12px}.footergrid a:not(.brand),.footergrid p{font-size:11px;color:#7b889e}.copyright{border-top:1px solid #dae3ef;margin-top:28px;padding:16px 0;font-size:10px;color:#8090a6}@media(max-width:950px){.nav{gap:8px;flex-wrap:wrap}.headin{flex-wrap:wrap;padding:13px 0}.quicklinks,.catgrid{grid-template-columns:repeat(2,1fr)}.empgrid{grid-template-columns:repeat(2,1fr)}.detailgrid{grid-template-columns:1fr}.hero-inner{grid-template-columns:1fr}.hero-graphic{display:none}.listlayout{grid-template-columns:1fr}.filters{position:static}}@media(max-width:600px){h1,.hero h1,.pagehero h1{font-size:27px}.topline span{display:none}.container{width:min(100% - 26px,1180px)}.nav{overflow-x:auto;width:100%;justify-content:space-between}.searchbox{flex-direction:column}.quicklinks,.catgrid,.empgrid,.footergrid{grid-template-columns:1fr 1fr}.jobcard{flex-wrap:wrap}.jobcard .btn{margin-left:auto}.facts{grid-template-columns:1fr}.detailheading{align-items:start}.footergrid{gap:24px}}

/* Correccion puntual: cadenas largas y descripciones sin espacios */
.infoblock, .empprofile, .detailgrid, .detailgrid > *, .sidebarbox, .jobs, .job-row {min-width:0;max-width:100%;}
.infoblock p, .infoblock .preserve, .empprofile p, .empprofile h1, .summaryrow strong, .related b, .companytext {overflow-wrap:anywhere;word-break:normal;white-space:pre-wrap;}
.infoblock p {max-width:100%;}
.infoblock .preserve {white-space:pre-wrap;}

/* TP_TIPOGRAFIA_152: texto base homogéneo, títulos mantienen jerarquía. */
html{font-size:15.2px}
body{font-family:'Poppins',Arial,sans-serif;font-size:15.2px;line-height:1.65}
input,select,textarea,button{font-family:'Poppins',Arial,sans-serif;font-size:15.2px}
.tp-filtros-152 label,.tp-filtros-152 select,.tp-filtros-152 button{font-size:15.2px}
.tp-filtros-152 select{width:100%;max-width:100%;min-height:44px}
.jobcard .metas{display:flex;flex-wrap:wrap;gap:8px 14px}
.jobcard .metas span{overflow-wrap:anywhere}
.jobbody{min-width:0}
body :is(p,li,td,th,label,input,select,textarea,button,small,.nav a,.metas span,.jobtitle,.companytext){font-size:15.2px}
.header .headin{flex-wrap:wrap}
@media(max-width:800px){.tp-filtros-152{min-width:0}.jobcard{min-width:0}}
