/* Public candidate/employer pages only. Shared tokens come from design-tokens.css. */
.pa-public-profile .jobsearch-main-content { padding:32px 0 48px; margin:0; color:var(--pa-text); }
.pa-public-profile .jobsearch-job-subheader { height:200px; min-height:0; padding:0; margin:0; }
.pa-public-profile .jobsearch-job-subheader.pa-profile-no-cover { display:none; }
.pa-public-profile .jobsearch-main-section { margin:0; padding:0; }
.pa-public-profile .pa-profile-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(280px,1fr); gap:24px; margin:0; }
.pa-public-profile .pa-profile-layout:before,.pa-public-profile .pa-profile-layout:after { display:none; }
.pa-public-profile .pa-profile-layout > :is(.pa-profile-main,.pa-profile-side,.pa-profile-hero-wrap) { float:none; width:auto; min-width:0; margin:0; padding:0; }
.pa-public-profile .pa-profile-hero-wrap { grid-column:1/-1; grid-row:1; }
.pa-public-profile .pa-profile-main { grid-column:1; grid-row:2; }
.pa-public-profile .pa-profile-side { grid-column:2; grid-row:2; }
.pa-public-profile :is(.pa-profile-hero,.jobsearch-employer-box-section,.jobsearch_side_box,.dash-reviews-list,.restrict-candidate-sec) {
 box-sizing:border-box; background:#fff; border:1px solid var(--pa-border); border-radius:var(--pa-radius); padding:24px; margin:0 0 24px; box-shadow:0 3px 14px #29203408; min-width:0;
}
.pa-public-profile .pa-profile-hero { margin:0; padding:32px; }
.pa-public-profile .container-wrapper { padding:0; margin:0; background:none; border:0; box-shadow:none; }
.pa-public-profile .jobsearch-employer-box-section .jobsearch-employer-box-section { box-shadow:none; }
.pa-public-profile .pa-profile-hero :is(h1,h2) { margin:0 0 16px; padding:0; color:var(--pa-text); font-size:32px; line-height:1.25; font-weight:600; letter-spacing:normal; overflow-wrap:anywhere; text-transform:none; }
.pa-public-profile .pa-profile-hero figure { margin:0; }
.pa-public-profile .pa-profile-photo { display:flex; align-items:center; justify-content:center; width:144px; height:144px; float:none; overflow:hidden; border:1px solid var(--pa-border); border-radius:12px; background:#fff; margin:0; padding:0; box-shadow:none; }
.pa-public-profile .pa-profile-photo img { display:block; width:100%; height:100%; max-width:100%; max-height:100%; margin:0; border-radius:0; object-fit:contain; }
.pa-public-profile.single-candidate .pa-profile-photo img { object-fit:cover; }
.pa-public-profile .pa-profile-placeholder { display:none; align-items:center; justify-content:center; width:100%; height:100%; background:var(--pa-surface); color:var(--pa-neutral); }
.pa-public-profile .pa-profile-placeholder svg { width:56px; height:56px; }
.pa-public-profile .pa-profile-photo-missing img { display:none; }
.pa-public-profile .pa-profile-photo-missing .pa-profile-placeholder { display:flex; }
.pa-public-profile .pa-profile-icon { display:inline-block; width:22px; height:22px; flex:none; vertical-align:middle; }
.pa-public-profile .pa-profile-outline:before { content:none!important; }
.pa-public-profile .pa-profile-outline { color:var(--pa-purple); font-style:normal; }
.pa-public-profile .jobsearch-jobdetail-list.pa-profile-hero { display:flex; gap:28px; align-items:flex-start; float:none; }
.pa-public-profile .pa-profile-hero .jobsearch-jobdetail-listthumb { flex:0 0 144px; }
.pa-public-profile .pa-profile-hero figcaption { float:none; flex:1; min-width:0; margin:0; padding:0; }
.pa-public-profile .jobsearch-jobdetail-options { display:flex; flex-wrap:wrap; gap:12px 24px; padding:0; margin:0 0 20px; }
.pa-public-profile .jobsearch-jobdetail-options li { display:flex; align-items:center; flex-wrap:wrap; gap:8px; float:none; margin:0; padding:0; font-size:14px; line-height:1.6; min-width:0; overflow-wrap:anywhere; color:var(--pa-neutral); }
.pa-public-profile .jobsearch-jobdetail-options li a { color:var(--pa-purple); border-radius:6px; font:inherit; padding:0; background:none; }
.pa-public-profile .jobsearch_candidate_info > .pa-profile-name { margin:0; padding:0; border:0; }
.pa-public-profile .jobsearch-cand-details-btns { display:flex; align-items:center; flex-wrap:wrap; gap:10px; width:auto; margin:8px 0 0; }
.pa-public-profile .jobsearch-cand-details-btns > div { float:none; width:auto; margin:0; }
.pa-public-profile :is(.jobsearch-employerdetail-btn,.jobsearch-candinvite-btn,.jobsearch-candidate-download-btn,.jobsearch-cand-details-btns a,.lodmore-empactjobs-btn,.load-more-team,.jobsearch-whatsapp-msgcon a) {
 display:inline-flex; align-items:center; justify-content:center; gap:8px; float:none; width:auto; min-height:44px; padding:10px 16px; margin:4px 8px 4px 0; border:1px solid var(--pa-border); border-radius:6px; background:#fff; color:var(--pa-purple); font-family:inherit; font-size:14px; line-height:22px; text-transform:none; box-shadow:none; white-space:normal;
}
.pa-public-profile .jobsearch-whatsapp-msgcon { margin:0; }
.pa-public-profile .jobsearch-whatsapp-msgcon a small { font:inherit; color:inherit; }
.pa-public-profile :is(a,button,input,textarea,select):focus-visible { outline:3px solid #92278f44; outline-offset:3px; }
.pa-public-profile .jobsearch-main-content :is(h1,h2,h3,h4,label,button,a,small) { text-transform:none; letter-spacing:normal; }
.pa-public-profile .jobsearch-main-content :is(p,li,a) { overflow-wrap:anywhere; }
.pa-public-profile .jobsearch-main-content :is(.jobsearch-content-title,.jobsearch-candidate-title) { float:none; margin:0 0 20px; padding:0 0 12px; border-bottom:1px solid var(--pa-border); }
.pa-public-profile .jobsearch-main-content :is(.jobsearch-content-title,.jobsearch-candidate-title) h2 { color:var(--pa-purple); font-size:21px; line-height:1.4; margin:0; }
.pa-public-profile .jobsearch-main-content .pa-profile-name { border:0; padding:0; margin:0; }
.pa-public-profile .jobsearch-main-content .pa-profile-name h2 { font-size:32px; color:var(--pa-text); }
.pa-public-profile .jobsearch-description { font-size:16px; line-height:1.75; }
.pa-public-profile .jobsearch-description p { margin:0 0 16px; }
.pa-public-profile .jobsearch-description :is(img,video,audio,iframe) { max-width:100%; }
.pa-public-profile .jobsearch-jobdetail-services > ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:0 0 24px; padding:0; }
.pa-public-profile .jobsearch-jobdetail-services > ul > li { display:flex; align-items:flex-start; gap:10px; float:none; width:auto; min-width:0; padding:0; margin:0; list-style:none; }
.pa-public-profile .jobsearch-jobdetail-services li > i { position:static; float:none; margin:0; width:24px; flex:0 0 24px; }
.pa-public-profile .jobsearch-services-text { float:none; padding:0; margin:0; min-width:0; font-size:14px; line-height:1.6; color:var(--pa-neutral); }
.pa-public-profile .jobsearch-services-text small { display:block; color:var(--pa-text); font-size:14px; line-height:1.6; }
.pa-public-profile .jobsearch-candidate-timeline-text { min-width:0; overflow-wrap:anywhere; }
.pa-public-profile .jobsearch-candidate-timeline-text h2 { color:var(--pa-text); font-size:18px; line-height:1.5; }
.pa-public-profile .jobsearch-candidate-timeline-text p { font-size:15px; line-height:1.7; }
.pa-public-profile .jobsearch_box_map { padding:0; overflow:hidden; min-height:260px; }
.pa-public-profile .jobsearch_box_contact_form h2 { margin:0 0 20px; font-size:21px; line-height:1.4; color:var(--pa-purple); }
.pa-public-profile .jobsearch_box_contact_form form { margin:0; padding:0; border:0; background:none; }
.pa-public-profile .jobsearch_box_contact_form ul { margin:0; padding:0; }
.pa-public-profile .jobsearch_box_contact_form li { padding:0; margin:0 0 16px; width:100%; }
.pa-public-profile .jobsearch_box_contact_form :is(input:not([type=checkbox]):not([type=hidden]):not([type=submit]),textarea) { width:100%; min-width:0; box-sizing:border-box; border:1px solid var(--pa-border); border-radius:6px; min-height:48px; padding:11px 12px; font-family:inherit; font-size:16px; line-height:24px; background:#fff; color:var(--pa-text); }
.pa-public-profile .jobsearch_box_contact_form textarea { min-height:120px; resize:vertical; }
.pa-public-profile .jobsearch_box_contact_form li > i { display:none; }
.pa-public-profile .jobsearch_box_contact_form label { display:block; margin-bottom:8px; font-size:14px; line-height:1.5; color:var(--pa-text); }
.pa-public-profile .jobsearch_box_contact_form input[type=submit] { width:100%; }
.pa-public-profile .jobsearch_box_contact_form :is(.recaptcha-reload,.g-recaptcha) { max-width:100%; overflow:auto; }
.pa-public-profile .elementor-location-footer > .e-parent { margin-left:0; margin-right:0; max-width:100%; }
@media(max-width:991px) {
 .pa-public-profile .pa-profile-layout { grid-template-columns:minmax(0,1fr); }
 .pa-public-profile .pa-profile-main { grid-column:1; grid-row:2; }
 .pa-public-profile .pa-profile-side { grid-column:1; grid-row:3; }
}
@media(max-width:600px) {
 .pa-public-profile .jobsearch-main-content { padding:20px 0 32px; }
 .pa-public-profile .jobsearch-job-subheader { height:140px; }
 .pa-public-profile :is(.pa-profile-hero,.jobsearch-employer-box-section,.jobsearch_side_box,.dash-reviews-list) { padding:20px; }
 .pa-public-profile .pa-profile-hero :is(h1,h2),.pa-public-profile .jobsearch-main-content .pa-profile-name h2 { font-size:26px; }
 .pa-public-profile .jobsearch-jobdetail-list.pa-profile-hero { flex-direction:column; gap:20px; }
 .pa-public-profile .pa-profile-hero .jobsearch-jobdetail-listthumb { flex-basis:auto; }
 .pa-public-profile .jobsearch-jobdetail-services > ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .pa-public-profile .jobsearch_box_map { padding:0; }
}
/* Clear the old sidebar-card chrome now that its intact contents live in the hero. */
.pa-public-profile .pa-profile-hero .jobsearch_candidate_info { border:0; box-shadow:none; background:none; padding:0; }
.pa-public-profile .pa-profile-hero .jobsearch_candidate_info > :is(ul,div) { justify-content:flex-start; text-align:left; }
.pa-public-profile .pa-profile-hero .jobsearch-cand-details-btns { padding:0; border:0; justify-content:flex-start; }
.pa-public-profile .pa-profile-hero .jobsearch-whatsapp-msgcon { text-align:left; padding:0; border:0; background:none; }
.pa-public-profile .pa-profile-hero .jobsearch-whatsapp-msgcon a { color:var(--pa-purple)!important; background:var(--pa-surface)!important; border:1px solid var(--pa-border); border-radius:6px; }
.pa-public-profile .pa-profile-hero .jobsearch-whatsapp-msgcon :is(i,small) { position:static; background:none; border:0; color:inherit; margin:0; }
.pa-public-profile .jobsearch-candidate-editor { border:0; padding:0; box-shadow:none; background:none; }
.pa-public-profile .jobsearch-candidate-editor > .jobsearch-jobdetail-services > ul { padding:24px; border:1px solid var(--pa-border); border-radius:var(--pa-radius); background:var(--pa-surface); }
.pa-public-profile :is(.jobsearch-employerdetail-btn,.jobsearch-candinvite-btn,.jobsearch-cand-details-btns a,.lodmore-empactjobs-btn,.load-more-team):hover { background:var(--pa-surface); border-color:var(--pa-purple); color:var(--pa-purple); }
.pa-public-profile .jobsearch_box_contact_form input[type=submit]:hover,.pa-public-profile .pa-profile-hero .jobsearch-candidate-download-btn:hover { background:#782075; color:#fff; }
.pa-public-profile .jobsearch_box_contact_form :disabled { opacity:.6; cursor:not-allowed; }

.pa-public-profile .pa-profile-meta { display:flex; align-items:center; gap:8px; }
.pa-public-profile .pa-profile-meta .pa-profile-icon { color:var(--pa-purple); width:18px; height:18px; }

.pa-public-profile .pa-profile-hero .jobsearch-cand-details-btns a { margin:0; width:100%; }
.pa-public-profile .pa-profile-hero .jobsearch-whatsapp-msgcon a { width:100%; min-height:44px; margin:0; padding:10px 16px; justify-content:center; }
.pa-public-profile .pa-profile-hero .jobsearch-whatsapp-msgcon :is(i,small) { width:auto; height:auto; padding:0; line-height:22px; }
.pa-public-profile .pa-profile-hero .jobsearch-whatsapp-msgcon i { font-size:22px; }
@media(max-width:991px) {
}
@media(max-width:600px) {
}
.pa-public-profile .jobsearch-jobdetail-services > ul:before,.pa-public-profile .jobsearch-jobdetail-services > ul:after { display:none; }
.pa-public-profile .pa-profile-hero .pa-profile-photo { min-width:144px; max-width:144px; }

.pa-public-profile .pa-profile-layout.pa-profile-single-column { grid-template-columns:minmax(0,1fr); }
.pa-public-profile .pa-profile-single-column > .pa-profile-main { grid-column:1; }
.pa-public-profile .pa-profile-single-column > .pa-profile-side { grid-column:1; grid-row:3; }

/* Candidate composition uses the same hero/card foundation as the employer. */
.pa-public-profile.single-candidate .jobsearch_candidate_info {
 display:grid; grid-template-columns:minmax(0,1fr); align-items:start; gap:24px; min-height:0;
}
.pa-public-profile.single-candidate .jobsearch_candidate_info.pa-candidate-has-photo { grid-template-columns:144px minmax(0,1fr); }
.pa-public-profile.single-candidate .jobsearch_candidate_info.pa-candidate-has-actions { grid-template-columns:minmax(0,1fr) 230px; }
.pa-public-profile.single-candidate .jobsearch_candidate_info.pa-candidate-has-photo.pa-candidate-has-actions { grid-template-columns:144px minmax(0,1fr) 230px; }
.pa-public-profile .pa-candidate-identity { min-width:0; text-align:left; }
.pa-public-profile .pa-candidate-facts { display:flex; flex-wrap:wrap; gap:8px 20px; margin:0 0 12px; }
.pa-public-profile .pa-candidate-facts p { width:auto; max-width:100%; float:none; margin:0; font-size:14px; line-height:1.6; color:var(--pa-neutral); }
.pa-public-profile .pa-candidate-identity > :is(small,strong) { display:block; margin:0 0 12px; color:var(--pa-neutral); font-size:14px; line-height:1.6; }
.pa-public-profile .pa-candidate-identity > :is(small,strong,p):empty { display:none; }
.pa-public-profile .pa-candidate-identity > ul { display:flex; justify-content:flex-start; width:100%; float:none; flex-wrap:wrap; gap:8px; margin:0; padding:0; }
.pa-public-profile .pa-candidate-identity > ul li { float:none; list-style:none; margin:0; }
.pa-public-profile .pa-candidate-identity > ul a { display:flex; align-items:center; justify-content:center; width:40px; height:40px; min-height:40px; border-radius:6px; background:var(--pa-surface); color:var(--pa-purple); font-size:22px; line-height:1; }
.pa-public-profile .pa-candidate-actions { display:flex; flex-direction:column; gap:10px; min-width:0; }
.pa-public-profile .pa-profile-hero .pa-candidate-actions :is(.jobsearch-cand-details-btns,.jobsearch-whatsapp-msgcon) { display:flex; flex-direction:column; gap:10px; margin:0; width:100%; }
.pa-public-profile .pa-profile-hero .pa-candidate-actions .jobsearch-cand-details-btns > div { width:100%; }
.pa-public-profile .pa-profile-hero .pa-candidate-actions a {
 display:flex; justify-content:center; align-items:center; gap:8px; box-sizing:border-box; width:100%; min-height:44px; margin:0; padding:10px 16px; text-align:center;
}
.pa-public-profile .pa-candidate-actions .jobsearch-candidate-download-btn i { position:static; float:none; margin:0; padding:0; }
.pa-public-profile.single-candidate .pa-profile-layout { gap:20px; }
.pa-public-profile.single-candidate .pa-candidate-content { border:0; padding:0; box-shadow:none; background:none; }
.pa-public-profile.single-candidate .jobsearch-employer-box-section { padding:20px; margin-bottom:20px; }
.pa-public-profile.single-candidate .jobsearch-candidate-editor > .jobsearch-jobdetail-services { border:0; padding:0; box-shadow:none; background:none; }
.pa-public-profile.single-candidate .jobsearch-candidate-editor > .jobsearch-jobdetail-services > ul { display:flex; flex-wrap:wrap; gap:12px 28px; padding:14px 20px; margin:0 0 20px; border:0; }
.pa-public-profile.single-candidate .jobsearch-candidate-editor > .jobsearch-jobdetail-services > ul > li { flex:0 1 auto; }
.pa-public-profile.single-candidate .services-group-vzhled ul { width:100%; float:none; clear:both; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px 20px; margin:0; padding:0; }
.pa-public-profile.single-candidate .services-group-vzhled ul:before,.pa-public-profile.single-candidate .services-group-vzhled ul:after { display:none; }
.pa-public-profile.single-candidate .services-group-vzhled li { width:auto; min-width:0; padding:0; margin:0; }
.pa-public-profile.single-candidate .jobsearch_box_map { min-height:0; }
.pa-public-profile.single-candidate .jobsearch_box_map .mapboxgl-map { height:280px!important; }
@media(max-width:991px) {
 .pa-public-profile.single-candidate .jobsearch_candidate_info.pa-candidate-has-actions { grid-template-columns:minmax(0,1fr); }
 .pa-public-profile.single-candidate .jobsearch_candidate_info.pa-candidate-has-photo.pa-candidate-has-actions { grid-template-columns:144px minmax(0,1fr); }
 .pa-public-profile.single-candidate .pa-candidate-actions { grid-column:1/-1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
 .pa-public-profile.single-candidate .pa-candidate-actions .jobsearch-cand-details-btns { display:contents; }
}
@media(max-width:600px) {
 .pa-public-profile.single-candidate .pa-profile-hero .jobsearch_candidate_info[class] { grid-template-columns:minmax(0,1fr); gap:20px; }
 .pa-public-profile.single-candidate .pa-candidate-actions { display:flex; }
 .pa-public-profile.single-candidate .services-group-vzhled ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .pa-public-profile.single-candidate .jobsearch_box_map .mapboxgl-map { height:260px!important; }
}
