/* ==========================================================
   Halaman Perusahaan (single company) — GeneratePress child
   ========================================================== */

/* ---------- 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-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: var(--base-2);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;}
}


/* ==========================================================
   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(150deg, var(--background), #fff 50%);border: 1px solid var(--base);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: 16px;
	padding: 12px 14px;
	text-align: left;
	font-size: 13px;
	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; }
.sj-single-job .sj-closed {
	padding: 14px;
	font-weight: 700;
	letter-spacing: .03em;
	text-transform: uppercase;
	color: var(--sj-danger);
	background: #fef2f2;
	border: 1px solid #fecaca;
	border-radius: 10px;
}

/* ---------- Terkait ---------- */
.sj-related { margin-top: 32px; }

/* ---------- 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-size:14px;font-weight: 600;}
@media (max-width: 768px) {
	.apply-modal__box {margin:auto 1rem;}
}
.apply-content-inner p {font-size:14px;margin-bottom:1rem;line-height: 1.4;}
.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;font-size:14px;}
.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;}

/* Job List Row */
.job-row__link {position:relative;overflow:hidden;display: block;background-color:var(--base-3);padding:1.25rem; 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;}
.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:0.875rem;}
.job-row__location svg {color:#ccc;padding:0;}
.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;}

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