/* ==========================================================
   Halaman Perusahaan (single company) — GeneratePress child
   ========================================================== */
.post-type-archive-job .page-header, .post-type-archive-company .page-header, .tax-job-category .page-header,
.tax-education .page-header {display:none;}


/* ---------- Header / hero ---------- */
.sc-single-company .sc-hero {background: linear-gradient(135deg, var(--background), #fff 70%);border: 1px solid var(--sc-border);border-radius: var(--sc-radius);padding: 28px;}
.sc-single-company .sc-hero-inner {display: flex;align-items: center;gap: 22px;}
.sc-single-company .sc-logo {flex: 0 0 96px;width: 96px;height: 96px;display: flex;align-items: center;justify-content: center;background: var(--base-3);border: 1px solid var(--base);border-radius: 16px;box-shadow: 0 2px 8px rgba(0, 0, 0, .06);overflow: hidden;padding: 10px;}
.sc-single-company .sc-logo img {max-width: 100%;max-height: 100%;width: auto;height: auto;object-fit: contain;display: block;}
.sc-single-company .sc-logo--empty {background: var(--accent);border-color: var(--accent);padding: 0;}
.sc-single-company .sc-hero-info {min-width: 0;flex: 1;}
.sc-single-company .sc-hero .entry-header { margin: 0; }
.sc-initial {font-size: 3em;font-weight: bold;color: var(--background);}
.sc-single-company .sc-hero .entry-title {font-size:18px;margin: 0;overflow-wrap: anywhere;}
.sc-single-company .sc-meta {display: flex;flex-wrap: wrap;gap: 8px;margin-top: 12px;}
.sc-single-company .sc-chip {display: inline-flex;align-items: center;gap: 6px;padding: 6px 12px;font-size: 14px;line-height: 1;color: var(--contrast-2);background: var(--background);border: 1px solid var(--contrast-3);border-radius: 999px;text-decoration: none;transition: background .15s, border-color .15s;}
.sc-single-company .sc-chip:hover {background: var(--base-3);color: var(--accent);}

/* ---------- Isi ---------- */
.single-company .entry-content:not(:first-child) {margin-top:1em;}
.sc-single-company .sc-content-wrapper {background:var(--base-3);padding:1.5em;}
.sc-single-company .sc-section {margin-bottom: 2em;}
.sc-single-company .sc-section-title {font-size:18px;display: flex;align-items: center;gap: 10px;margin-bottom:10px;}
.sc-single-company .sc-about {font-size:15px;}
.sc-single-company .sc-about > p:last-child { margin-bottom: 0; }

.sc-single-company .sc-address-text {display: block;font-size:14px;font-style: normal;padding: 14px 16px;background: linear-gradient(150deg, var(--background), #fff 50%);border: 1px solid var(--accent);border-radius: 10px;color: var(--contrast-2);}
.sc-single-company .sc-jobs { overflow-x: hidden; }

/* ---------- Mobile ---------- */
@media (max-width: 768px) {
	.sc-single-company .sc-hero { padding:40px 25px; }
	.sc-single-company .sc-hero-inner {flex-direction: column;align-items: flex-start;gap: 20px;}
	.sc-single-company .sc-logo {flex-basis: 72px;width: 72px;height: 72px;border-radius: 14px;}
	.post-type-archive-job #main, .post-type-archive-company #main, .home #main, .tax-job-category #main,
	.tax-education #main {margin-right:1.25rem;margin-left:1.25rem;}
}


/* ==========================================================
   Halaman Lowongan (single job) — GeneratePress child
   ========================================================== */

/* ---------- Header ---------- */
.sj-single-job .sj-hero {position: relative;background: linear-gradient(135deg, var(--background), #fff 70%);border: 1px solid var(--base);border-radius: var(--radius-8);padding: 26px;}
.sj-single-job .sj-hero-inner {display: flex;align-items: center;gap: 20px;}
.sj-single-job .sj-logo {flex: 0 0 88px;width: 88px;height: 88px;display: flex;align-items: center;justify-content: center;background: var(--base-3);border: 1px solid var(--base);border-radius: 16px;box-shadow: 0 2px 8px rgba(0, 0, 0, .06);overflow: hidden;padding: 10px;}
.sj-single-job .sj-logo img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	display: block;
}
.sj-single-job .sj-logo--empty {
	background: var(--sj-accent);
	border-color: var(--sj-accent);
	padding: 0;
}
.sj-single-job .sj-initial {font-size: 18px;line-height: 1;}
.sj-single-job .sj-hero-info { min-width: 0; flex: 1; }
.sj-single-job .sj-hero .entry-header { margin: 0; }
.sj-single-job .sj-hero .entry-title {margin: 0 0 5px;font-size: 18px;overflow-wrap: anywhere;}
.sj-single-job .sj-company {display: block;font-size: 14px;}
.sj-single-job .sj-company-name {display: block;font-weight: 600;color: var(--accent);text-decoration: none;}
.sj-single-job a.sj-company-name:hover { text-decoration: underline; }
.sj-single-job .sj-posted {color: var(--contrast-2);font-size: 13px;}
.sj-single-job .sj-badge {
	position: absolute;
	top: 14px;
	right: 14px;
	padding: 5px 12px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: #fff;
	background: var(--sj-danger);
	border-radius: 999px;
}

/* ---------- Ringkasan ---------- */
.sj-single-job .sj-overview {list-style: none;margin: 0 0 2em;padding: 0;display: grid;grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));gap: 5px;}
.sj-single-job .sj-overview-item {display: flex;align-items: flex-start;gap: 8px;margin: 0;padding: 1.5em;background: linear-gradient(170deg, var(--background), #fff 30%);border: 1px solid #ddd;border-radius: var(--radius-8);}
.sj-single-job .sj-icon {flex: none;width: 42px;height: 42px;padding: 10px;color: var(--accent);background: var(--background);border:1px solid var(--base);border-radius: 10px;}
.sj-single-job .sj-overview-text {display: flex;flex-direction: column;min-width: 0;font-size: 15px;line-height: 1.4;overflow-wrap: anywhere;}
.sj-single-job .sj-overview-text strong {margin-bottom: 2px;font-size: 12px;letter-spacing: .03em;text-transform: uppercase;color: #555;}
.sj-single-job .sj-salary-note {display: none;margin-top: 2px;font-size: 12px;}

/* ---------- Section ---------- */
.single-job .entry-content:not(:first-child) {padding:2em;margin-top:1em;background:var(--base-3);}
.sj-single-job .sj-section { margin-bottom: 28px; }
.sj-single-job .sj-section-title,
.sj-related .sj-section-title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 14px;
	font-size: 21px;
	line-height: 1.3;
}
.sj-single-job .sj-subtitle {
	margin: 18px 0 8px;
	font-size: 16px;
}
.sj-prose {font-size:15px;}
.sj-prose ul, .sj-prose ol {margin-left:1em;}
.sj-prose ul li::marker, .sj-prose ol li::marker {color:var(--accent);}
.sj-single-job .sj-prose > :last-child { margin-bottom: 0; }
.sj-single-job .sj-address {
	display: block;
	font-style: normal;
	padding: 14px 16px;
	color: var(--sj-muted);
	background: #f9fafb;
	border: 1px solid var(--sj-border);
	border-radius: 10px;
}

/* ---------- Area lamar ---------- */
.sj-single-job .sj-apply {margin: 0 0 2em;}
.sj-single-job .sj-free-note {margin: 12px 0 0;font-size: 14px;color: var(--contrast-2);}
.sj-single-job .sj-report {margin-top: 1.5em;padding: 1.5em;text-align: left;font-size: 14px;line-height: 1.6;color: #92400e;background: #fffbeb;border: 1px solid #fde68a;border-radius: 10px;}
.sj-single-job .sj-report p {margin: 4px 0 0; line-height:1.3}
.sj-single-job .sj-closed {padding: 14px;font-weight: 700;letter-spacing: .03em;text-transform: uppercase;color: orangered;background: #fef2f2;border: 1px solid #fecaca;border-radius: 10px;}

/* ---------- Terkait ---------- */
.sj-related {background: var(--base-3);padding: 1.5em 1em;}
h2.sj-section-title {font-size:18px !important;}

/* ---------- Mobile ---------- */
@media (max-width: 768px) {
	.sj-single-job .sj-hero { padding: 40px 25px; }
	.sj-single-job .sj-hero-inner {flex-direction: column;align-items: flex-start;gap: 10px;}
	.sj-single-job .sj-logo {flex-basis: 75px;width: 75px;height: 75px;margin-bottom:10px;border-radius: var(--radius-12);}
	.sj-single-job .sj-hero .entry-title { font-size: 18px; }
	.sj-single-job .sj-badge { position: static; display: inline-block; margin-bottom: 12px; }
	.sj-single-job .sj-overview { grid-template-columns: 1fr 1fr; gap: 8px;}
	.sj-single-job .sj-overview-item { flex-direction: column; gap: 10px; padding:1.2em 1.5em; }
	.sj-single-job .sj-section-title,
	.sj-related .sj-section-title { font-size: 18px; }
	.single-job .entry-content:not(:first-child) {padding:0.5em 1.2em 1em;}
}

/* Modal */
.apply-btn {background: var(--accent);color: var(--base-3);border: none;padding: 0.75em 1em;font-size: 13px;font-weight: bold;text-transform:uppercase;border-radius: 6px;cursor: pointer;}
.apply-btn:hover {background: var(--contrast);transform:var(--transform-y);transition:var(--transition);box-shadow:var(--hover-box-shadow);}
.apply-modal {position: fixed;inset: 0;display: none;z-index: 9999;}
.apply-modal__overlay {position: absolute;inset: 0;background: rgba(0,0,0,.55);}
.apply-modal__box {position: relative;margin: auto;background: #fff;width: 100%;max-width: 520px;border-radius: 8px;padding: 2rem;z-index: 2;}
.close-button {position: absolute;top: 0;right: 10px;background: none;border: none;font-size: 32px;cursor: pointer;color: red;padding: 0;line-height: 1;}
.apply-modal__box h3 {font-size:16px;margin-bottom:10px;font-weight:bold;text-transform:uppercase;}
.apply-popup .link-apply {display: block;margin-bottom: 1rem;color: var(--accent);font-weight: 600;}
@media (max-width: 768px) {
	.apply-modal__box {margin:auto 1rem;}
}
.apply-content-inner p {margin-bottom:1rem;}
.apply-content-inner p:last-child {margin-bottom:0 !important;}
.expired-job {position: absolute;top: 28px;left: -35px;background: #e74c3c;color: var(--base-3);padding: 8px 40px;font-weight: bold;font-size: 0.875rem;text-align: center;transform: rotate(-45deg);box-shadow: 0 3px 10px rgba(0,0,0,0.3);z-index: 10;}
.form-email, .form-email p {font-size:0.938rem;}
.form-email h4 {display:inline-block;font-size:1.25rem;font-weight:500;margin-bottom:10px;}
.list-mail {display:block;color:var(--accent);}
.input-name-form input[type="text"], .input-name-form input[type="tel"] {display: block;width: 100%;padding:6px 10px;border: 1px solid #ccc;border-radius: var(--radius-8);box-shadow:var(--box-shadow);}
.input-name-form input::placeholder {opacity: 0.6;color: #666;font-size:0.813rem;}
.whatsapp-email {margin-top:5px;}
.btn-lamar-email {display: block;margin:0.5rem auto;width: 100%;padding: 6px;border-radius: var(--radius-8);background-color: var(--accent);font-size: 0.813rem;font-weight: 600;text-transform: uppercase;box-shadow:var(--hover-box-shadow);cursor:pointer;}
.mail-note {display:block;line-height:1;color:var(--contrast-2);}
.mail-note span {color:red;font-weight:bold;}
.note-modal {display:block;line-height:1.4;}
.job-note {position: relative;margin-top: 20px;padding: 1rem 1.25rem;background: var(--base-2);border-left: 5px solid var(--accent);font-size: 0.875rem;box-shadow:var(--box-shadow);}
.job-note strong {display:block;font-size:0.938rem;margin-bottom:5px;}
.job-note p {color:var(--contrast);line-height:1.3 !important;opacity:0.7;}
.job-note a {font-weight: 600;}
.note-modal, .apply-content-inner p, .apply-popup .link-apply {font-size:15px;line-height:1.4;}

/* Job List Row */
.job-row__link {position:relative;overflow:hidden;display: block;background-color:var(--base-3);padding:1.25em; text-decoration: none;border: 1px solid var(--contrast-3);border-radius: var(--radius-8);}
.job-row__link:hover {transform:var(--transform-y);transition:var(--transition);box-shadow:var(--hover-box-shadow);}
.job-row__title {font-size: 15px;font-weight: bold;line-height: 1.4;margin: 0 0 8px;}
.job-row__company {display:block;font-size: 13.5px;font-weight:500;color: var(--contrast);opacity:0.8;line-height:1.2;margin-bottom:2px;}
.job-row__meta {display: flex;justify-content:space-between;align-items:center;gap: 12px;font-size: 0.75rem;color: var(--contrast-2);line-height: 1.5;opacity:0.6;}
.job-row__location {display:flex;align-items:center;gap:1px;font-size:13px;}
.job-row__location svg {color:#ccc;padding:0;width: 13px;height: 13px;}
.job-row:hover {background-color: var(--base-2);}
.job-row:hover .job-row__title {text-decoration: underline;color:var(--accent);}
.job-listing {display: grid;grid-template-columns: repeat(2, 1fr);gap: 0.5rem;}
.inside-right-sidebar .job-listing {display:block;}
.inside-right-sidebar .job-row {margin-bottom:5px;}

@media screen and (max-width: 768px) {
  .job-listing {grid-template-columns: 1fr;}
}

/* ==========================================================
   Loop daftar perusahaan (.company-posting)
   ========================================================== */
.company-posting {margin-bottom: 14px;}
.company-posting .cp-posting {background: var(--base-3);border: solid var(--border);border-radius: var(--radius-12);overflow: hidden;transition: border-color .15s, box-shadow .15s, transform .15s;}
.company-posting .cp-posting:hover {border-color: var(--accent);box-shadow:var(--box-shadow);transform: translateY(-2px);}
.company-posting .cp-main-link {display: block;padding: 1.5em;color: inherit;text-decoration: none;}
.company-posting .cp-body {display: flex;align-items: center;gap: 14px;}
.company-posting .cp-thumb {flex: 0 0 64px;width: 64px;height: 64px;display: flex;align-items: center;justify-content: center;padding: 8px;background: var(--base-3);border: var(--border);border-radius: 12px;overflow: hidden;}
.company-posting .cp-thumb img {max-width: 100%;max-height: 100%;width: auto;height: auto;object-fit: contain;display: block;}
.company-posting .cp-thumb--empty {padding: 0;background: var(--accent);border-color: var(--accent);}
.company-posting .cp-initial {color: var(--base-3);font-size: 18px;font-weight: 700;line-height: 1;}
.company-posting .cp-header {flex: 1;min-width: 0;margin: 0;}
.company-posting .cp-header .entry-title {margin: 0;font-size: 16px;line-height:1.3;overflow-wrap: anywhere;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;}
.company-posting .cp-posting:hover .entry-title {color: var(--accent);}
.company-posting .cp-footer {display: flex;align-items: center;justify-content: space-between;gap: 10px;margin-top: 14px;padding-top: 12px;border-top: var(--border);font-size: 13px;}
.company-posting .cp-badge {display: inline-flex;align-items: center;gap: 6px;padding: 5px 10px;font-size:12px;font-weight: 600;color: var(--accent);background: var(--background);border-radius: 999px;}
.company-posting .cp-view {display: inline-flex;align-items: center;gap: 6px;color: var(--contrast-2);transition: color .15s;}
.company-posting .cp-view svg { transition: transform .15s; }
.company-posting .cp-posting:hover .cp-view { color: var(--cp-accent); }
.company-posting .cp-posting:hover .cp-view svg { transform: translateX(3px); }
.company-posting .cp-industries {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 6px;
}
.company-posting .cp-industry {display:none;
	padding: 2px 9px;
	font-size: 12px;
	line-height: 1.6;
	color: var(--contrast-2);
	background: var(--background);
	border-radius: 999px;
}
.company-posting .cp-excerpt {
	margin: 12px 0 0;
	font-size: 13px;
	line-height: 1.3;
	color: var(--contrast-2);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.company-posting .cp-stats {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	min-width: 0;
}
.company-posting .cp-rating {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-weight: 600;
	color: #b45309;
}
.company-posting .cp-rating svg { color: #f59e0b; }
.company-posting .cp-rating-count {
	font-weight: 400;
	color: var(--cp-muted);
}
.company-posting .cp-view { flex: none; }

/* ---------- Mobile ---------- */
@media (max-width: 768px) {
	.company-posting .cp-thumb {
		flex-basis: 52px;
		width: 52px;
		height: 52px;
		border-radius: 10px;
	}
	.company-posting .cp-initial { font-size: 18px; }
	.company-posting .cp-header .entry-title { font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
	.company-posting .cp-posting,
	.company-posting .cp-view svg { transition: none; }
	.company-posting .cp-posting:hover { transform: none; }
}


/* Hero */
.job-hero {min-height: 50vh;background: linear-gradient(135deg, var(--background), #fff 70%);display: flex;align-items: center;justify-content: center;color: var(--contrast);padding: 30px 20px;margin-bottom:1rem;}
.job-hero__content {max-width: 800px;width: 100%;text-align: center;}
.job-hero h2 {font-size: 1.5rem;margin-bottom: 1rem;}
.job-hero p {font-size:15px;margin-bottom: 20px;color:var(--contrast-2);line-height:1.4;}
.job-search-form {display: flex;gap: 10px;background: rgba(60, 179, 113, 0.15);padding: 10px;border-radius: 8px;}
.job-search-form input[type="text"] {border-radius:var(--radius-8);font-size:13px;}
.job-search-form select {background-color: var(--base-2);border-radius: var(--radius-8);}
.job-search-form input,
.job-search-form select {flex: 1;padding: 12px 14px;border: none;outline: none;font-size: 13px;}
.job-search-form button {padding: 10px 20px;background: var(--accent);color: var(--base-3);border: none;cursor: pointer;border-radius: var(--radius-8);font-weight: 500;font-size:13px;}
.job-search-form button:hover {background: var(--contrast-2);}

@media (max-width: 768px) {
	.job-hero {padding:40px 20px;min-height: 50vh;}
  	.job-search-form {flex-direction: column;}
	.job-hero h2 {font-size: 1.25rem;}
	.job-hero__content {text-align:left}
}



.single-salary .meta-info {font-size:13px;color:var(--contrast-2)}