/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.4
*/

/* Root */
:root {
    --box-shadow: 0 2px 15px rgba(0, 0, 0, 0.05);
	--hover-box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
	--radius-5: 5px;
	--radius-8: 8px;
	--radius-12: 12px;
	--radius-oval: 50px;
	--border: 1px solid #eaeaea;
	--transform-y: translateY(-2px);
	--transition: all 0.3s ease;
	--rgb-gradient: linear-gradient(45deg, rgba(0, 0, 0, 0.7), rgba(0, 38, 24, 0.8));
}

.ads-container {position:relative;}

.main-navigation {box-shadow: var(--box-shadow);}
body:not(.single, .page) .post-image {width:150px !important;height:90px;line-height:0 !important;margin-bottom:0 !important;margin-right:1rem !important;}
body:not(.single, .page) .post-image img {width:100%;height:100%;object-fit:cover;}
.entry-summary {line-height: 1.3;font-size: 0.875rem;margin-top: 0.5rem !important;}
h2.entry-title {margin-top:0.313rem;}
body:not(.single, .page) .inside-article {position:relative;}
body:not(.single, .page) .inside-article h2 a:before {content: '';position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
.navigation-branding img, .site-logo.mobile-header-logo img {height:52px !important;}
.site-content {margin-top:1.5rem;padding:0 !important;}
.paging-navigation {display: flex;justify-content: space-around;margin: 1rem auto;}
.inside-site-info {font-size:0.875rem;}
.rank-math-breadcrumb p {margin-bottom:0;font-size:0.875rem;}
.main-navigation .main-nav ul li a {line-height:2rem;}
.archive .page-header {padding-bottom:2rem;}
.paging-navigation a {background-color: var(--contrast);color: var(--base);padding: 0.313rem 1rem;font-size: 0.750rem;font-weight: bold;border-radius: var(--radius-5);}
.paging-navigation a:hover {background-color:var(--accent);}

/* Single */
.single-post .grid-container {max-width:780px;}
.single-post .cover-image {width:100%;height:200px;}
.single-post .cover-image img {width:100%;height:100%;object-fit:cover;}
.single-post .meta-info {display: block;font-size: 0.875rem;color: var(--contrast-2);}
.single-post .entry-content .wp-block-image {position: relative;width:100%;height:200px;overflow:hidden;margin-bottom:1.5rem;}
.single-post .entry-content .wp-block-image figcaption {position: absolute;bottom: 0; margin: 0;padding: 0.313rem 1rem;background: rgba(0, 0, 0, 0.2);color: var(--base);font-size: 0.750rem;width: 100%;}
.single-post .entry-content .wp-block-image img {width:100%;height:100%;object-fit:cover;}
.single-post .entry-content ul, .single-post .entry-content ol {margin: 0 0 1.5em 1em;}
.single .entry-content hr {margin:2rem 0;}
.single-post .logo {height:80px !important;width:80px !important;border: 1px solid var(--base);box-shadow: var(--box-shadow);border-radius: var(--radius-12);}
.single-post .logo img {height:100%;width:100%;object-fit:cover;}

/* Mobile */
@media screen and (max-width: 768px) {
	body:not(.single, .page) .post-image {width:120px !important;float:left !important;}
	.site-content {margin-top:0.313rem;padding:1.5rem 1rem !important;}
	#mobile-header {padding:0;}
	#mobile-header .main-nav > ul {padding-bottom:1rem;}
	.mobile-header-navigation .site-logo {margin-left:1rem !important;}
	.main-navigation .main-nav ul li a {padding:0 1.5rem;}
	.main-navigation .menu-bar-item > a {padding-left:0.625rem;padding-right:0.625rem;}
	.main-navigation.has-branding .menu-toggle,
	.main-navigation.has-sticky-branding.navigation-stick .menu-toggle {padding:0.6rem 0.75rem 0.75rem 0.75rem !important;line-height: 0;margin: 0 1rem 0 0.5rem;background: var(--contrast);border: var(--border);border-radius:var(--radius-5);}
	.menu-toggle .gp-icon {color:var(--base-3);}
	.main-navigation ul ul li {padding:0 1rem;}
	nav.toggled ul ul.sub-menu {padding-bottom:0.5rem;}
}

/* Global Design */
.global-block-loop {position:relative;display:block;background-color:var(--base-3);border:var(--border);box-shadow:var(--box-shadow);transition:var(--transition);border-radius:var(--radius-12);}
.global-block-loop:hover {transform:var(--transform-y);box-shadow:var(--hover-box-shadow);}

/* Job Posting Loop */
.save-btn {background-color:unset;color:var(--contrast-2);}
.save-btn:hover, .save-btn:active, .save-btn:focus {background-color:unset;color:var(--accent);}
.jp-posting .save-btn {position:absolute;padding: 1rem;right: 0;top: 0;line-height: 0;z-index: 99;}
.jp-posting i {color:var(--accent);}
.jp-posting:hover .apply-now i {transform: translateX(3px);}
.jp-posting {padding:1.5rem 1.5rem 0;position: relative;overflow: hidden;}
.jp-header {display: flex;align-items: center;justify-content: space-between;gap: 0.5em;line-height: 1;margin-bottom: 0.625rem;}
.jp-company-name {margin:0;flex:1;font-size: 0.813rem;color: var(--contrast-2);padding-right:1.5rem;}
.jp-like {font-size: 0.813rem;color: var(--contrast-2);}
.jp-logo {height:1.563rem;width:1.563rem;flex-shrink:0;border-radius: var(--radius-5);overflow: hidden;border: var(--border);}
.jp-logo img {width:100%;height:100%;object-fit:cover;}
.jp-logo img[loading="lazy"] {opacity: 0;transition: opacity 0.3s ease;}
.jp-logo img.loaded {opacity: 1;}
.jp-posting a {text-decoration:none;color:var(--contrast);}
.jp-posting a:before {content: '';position: absolute;bottom: 0;left: 0;width: 100%;height: 100%;}
.jp-header-content h2 {margin-bottom:0.5rem;font-size:0.938rem;}
.jp-meta {display: flex;align-items: center;justify-content: space-between;gap: 1rem;font-size: 0.813rem; color:var(--contrast-2);line-height:1;}
.jp-placement {flex:1;}
.jp-footer {display: flex;align-items: center;justify-content: space-between;font-size: 0.813rem;color: var(--contrast-2);padding: 0.750rem 0 1rem;margin-top: 0.813rem;border-top: var(--border);}
.apply-now {display:flex;align-items:center;gap:0.3rem;transition:var(--transition);}
.screen-reader-text {position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden; clip: rect(0,0,0,0);border: 0;}

@media screen and (min-width: 768px) {
	.job-listing {display: grid;grid-template-columns: repeat(2, 1fr);gap: 0.188rem;}
}

@media screen and (max-width: 768px) {
	.job-listing .jp-posting {margin-bottom:0.313rem;}
}

/* Single Job Posting */
.sj-header {margin-bottom: 1rem;border-bottom: double var(--contrast-3);}
.sj-header-inner {display: flex;align-items: center;justify-content:space-between;padding-bottom:0.5rem;}
.sj-logo {width: 80px;height: 80px;overflow: hidden;flex-shrink: 0;}
.sj-logo img {width: 100%;height: 100%;object-fit: cover;}
.sj-initial {font-size: 1.125rem;font-weight: bold;}
.sj-title-wrap {flex-grow: 1;}
.sj-title-wrap h1.entry-title {margin-bottom:0.313rem;}
.sj-company-name {font-weight:600;line-height:1.2;}
.sj-header .posting {display:block;font-size: 0.875rem;}
.sj-content {display: grid;grid-template-columns: 1fr 300px;gap: 2rem;}
.sj-description ul, .sj-description ol {margin: 0 0 1.5em 1em;}
.sj-sidebar {position:relative;}
.sj-sidebar-section {background-color: var(--base-2);padding:2rem 1.5rem;}
.sj-overview {list-style: bullets;padding: 0;margin: 0;}
.sj-overview li {display: flex;align-items: center;gap: 1rem;margin-bottom:0.5rem;}
.sj-overview-icon {background-color: #ecf2fa;color: var(--accent);padding: 1rem;line-height: 0;border-radius: var(--radius-8);}
.sj-overview-icon svg {width:1.5rem;height:1.5rem;}
.sj-label {display: block;color: var(--contrast-2);font-size: 0.875rem;}
.sj-label-value {font-weight:600;}
.sj-company-overview {margin-bottom: 1.5rem;}
.sj-apply {margin: 1rem auto;border-top: double var(--base);padding:1rem 0;}
.apply-page {width:100%;margin:0 auto;}
.apply-content {padding:1.5rem;text-align:center;}
.apply-button {display:flex;align-items:center;gap:0.313rem;justify-content:center;width:100%;background-color:var(--contrast);font-size:0.813rem;font-weight:600;color:var(--base-3);text-align:center;padding:8px;border-radius:var(--radius-8);position: sticky;bottom: 1px;z-index: 99;}
.apply-button:hover {background-color:var(--accent);color:var(--base-3);}
.related-jobs {border-top: double var(--base);padding-top: 1rem;margin-top:1rem;}
.related-jobs h3 {text-align:center;text-transform:uppercase;margin-bottom:1rem;}
.based-salary {display:block;}
.based-salary i {color: var(--contrast-2);font-weight: normal;}

@media screen and (min-width: 768px) {
	.sj-sidebar-section {position:sticky;top:0;}
}

@media screen and (max-width: 768px) {
	.sj-content {display: block;}
}


/* Company Post Loop */	
.cp-posting {position:relative;padding:1.25rem 1.5rem 1rem;overflow: hidden;}
.cp-posting a {text-decoration:none;color: var(--contrast);}
.cp-posting a:before {content: '';position: absolute;bottom: 0;left: 0;width: 100%;height: 100%;}
.cp-posting i {color:var(--accent);}
.cp-posting:hover .cp-view i {transform: translateX(3px);}
.cp-logo {width:2.75rem;height:2.75rem;border-radius:var(--radius-8);box-shadow:var(--box-shadow);border:var(--border);overflow:hidden;flex-shrink:0;}
.cp-logo img {height:100%;width:100%;object-fit:cover;}
.cp-header {display: flex;align-items: center;gap:0.75rem;border-bottom: var(--border);padding-bottom: 1rem;}
.cp-body {color: var(--contrast-2);font-size: 0.813rem;line-height: 1.3;margin-bottom: 0.625rem;padding: 0.875rem 0;border-bottom: var(--border);}
.cp-header-content {flex:1;}
.cp-posting h2, .cp-header-content a {font-size:0.875rem;margin-bottom:0;line-height:1.3;display: block;white-space: nowrap;overflow: hidden; text-overflow: ellipsis;}
.cp-header-content a {font-weight:900;}
.cp-industries {display: block;white-space: nowrap;overflow: hidden; text-overflow: ellipsis;max-width: 100%;font-size: 0.750rem;color: var(--contrast-2);}
.cp-footer {display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--contrast-2); font-size:0.813rem;}
.cp-footer svg {width:1rem;}
.cp-badge, .cp-view {display:flex;align-items:center;gap:0.313rem;}

@media screen and (min-width: 768px) {
	.company-listing {display: grid;grid-template-columns: repeat(2, 1fr);gap: 0.188rem;}
}


/* Single Company */
.sc-head {display: flex;align-items: center;justify-content: space-between;border-bottom:double var(--base);padding-bottom:1rem;margin-bottom:1rem;}
.sc-head .entry-header {flex:1;}
.sc-logo {width:80px;height:80px;overflow:hidden;flex-shrink:0;}
.sc-logo img {height:100%;width:100%;object-fit:cover;}
.sc-head svg {width:1rem;}
.sc-head .meta-info {line-height:1;margin-top:0.2rem;}
.sc-jobs {display:flex;align-items:center;gap:0.313rem;margin-top:0.5rem;}
.related-company {border-top: double var(--base);margin-top: 1.5rem;padding-top: 1rem;}
.related-company h3 {text-align:center;}

@media screen and (max-width: 768px) {
	.related-company .cp-posting {margin-bottom: 0.313rem;}
}

/* Loop Salary */
.sp-posting {position: relative;padding: 1.25rem 1.5rem 1rem;overflow: hidden;}
.sp-body {font-size: 0.875rem;color:var(--contrast-2);display: block;line-height: 1.2;margin: 0.5rem 0;}
.sp-footer, .sp-view {display:flex;align-items:center;}
.sp-view {font-size: 0.875rem;color: var(--accent);}
.sp-posting a:before {content: '';position: absolute;bottom: 0;left: 0;width: 100%;height: 100%;}

/* Search Form */
.search-jobs {display:block;border:var(--border);max-width:380px;text-align:center;padding:0.313rem 0.875rem; background-color: transparent;border-radius:var(--radius-oval);}
.search-jobs .search-form {display: flex;align-items: center;}
.search-jobs .search-form button, .search-jobs .search-form input[type="text"] {color: var(--contrast-2);background-color: transparent;}
.search-jobs input::placeholder {color:var(--contrast-2);}
.search-jobs .search-form button {padding:0;width:auto;margin:0;color:var(--contrast);line-height: 1;}
.search-jobs .search-form input[type="text"] {font-size:0.813rem;width: 100%;padding: 0;color:var(--contrast-2);outline:none;border:none;margin-right:10px;}
.search-jobs svg {line-height: 0;width: 1rem;height: 1rem;}

@media screen and (max-width: 768px) {
	.search-jobs {max-width:170px;}
}

/*
     FILE ARCHIVED ON 03:43:42 Jan 17, 2026 AND RETRIEVED FROM THE
     INTERNET ARCHIVE ON 13:25:42 Jul 04, 2026.
     JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE.

     ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C.
     SECTION 108(a)(3)).
*/
/*
playback timings (ms):
  captures_list: 0.351
  exclusion.robots: 0.05
  exclusion.robots.policy: 0.044
  esindex: 0.005
  cdx.remote: 4.78
  LoadShardBlock: 57.865 (3)
  PetaboxLoader3.datanode: 102.561 (5)
  load_resource: 303.552
  PetaboxLoader3.resolve: 183.446
  loaddict: 84.325
*/