/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *
 *= require_tree .
 *= require_self
 */
 
/* The core settings go here. */

@supports (font-variation-settings: 'wdth' 115) {
	@font-face {
		font-family: InterVariable;
		font-style: normal;
		font-weight: 100 900;
		font-display: swap;
		src: url("/_css/_fonts/InterVariable.woff2") format("woff2");
	}
	@font-face {
		font-family: InterVariable;
		font-style: italic;
		font-weight: 100 900;
		font-display: swap;
		src: url("/_css/_fonts/InterVariable-Italic.woff2") format("woff2");
	}
}
 
@-ms-viewport {
	width: device-width;
}

:root *, :root *::before, :root *::after {
	box-sizing: border-box;
}

/* App style variables go here. */
:root {
	/* --font_system_ui: system-ui, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; */
	--font_system_ui: InterVariable, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Oxygen-Sans", Ubuntu, Cantarell, "Helvetica Neue", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
	
	font-feature-settings: 'liga' 1, 'calt' 1;
	
	/* --color_bg_main: rgba(251,245,238,1.0); */
	/* --color_bg_main: rgba(248,247,244,1.0); */
	/* --color_bg_main: rgba(238,237,233,1.0); */
	
	
	--color_bg_main: rgb(245, 245, 240);
	--color_bg_main: oklch(96.88% 0.007 106.52);
	
	
	/* Darker, more somber background. */
	/* --color_bg_main: rgb(255,250,234);
	--color_bg_main: oklch(98.47% 0.02165834861809961 92.50087730684547); */
	
	/* --color_bg_dark: rgba(251,244,235,1.0); */
	
	
	
	/* iOS 17 dark gray background. */
	/* --color_bg_main: rgb(235,235,235);
	--color_bg_main: oklch(94.01% 0 0); */
	
	/* Darker bluegray */
	/* --color_bg_main: oklch(96.29% 0.008 286.25); */
	
	/* Apple Maps ground bg */
	/* --color_bg_main: rgba(244,241,235,0.6); /* !!! */
	
	/* Creative Boom, one of the bg colors. */
	--color_bg_main: rgb(241, 246, 246);
	
	/* Basecamp BG (one of) */
	/* --color_bg_main: rgba(253,249,249,1.0); */
	/* Darker Basecamp BG */
	/* --color_bg_main: rgba(245,237,229,1.0); */
	
	/* Basecamp main page BG */
	/* --color_bg_main: rgba(252,244,242,1.0); */
	
	/* Basecamp signup page BG */
	/* --color_bg_main: rgba(255,252,249,1.0); */
	
	
	/* --color_bg_main: rgb(245,245,247); */
	/* --color_bg_main: rgba(155, 185, 208, 0.18); */
	/* --color_bg_main: rgba(251, 244, 235, 0.6); */
	/* --color_bg_main: rgba(220, 213, 205, 0.24); */
	/* --color_bg_main: rgba(230, 244, 254, 0.8); */
	
	/* Warm blue */
	/* --color_bg_main: rgba(155, 185, 208, 0.24);
	--color_bg_main: oklch(77.11% 0.046 241.24 / 28%); */
	
	/* Complementary tan to the warm blue above */
	/* --color_bg_main: oklch(78.37% 0.047 59.49 / 12%); */
	
	/* iOS app usage widget */
	/* --color_bg_main: oklch(96.03% 0.007 295.45 / 80%); */
	
	/* GitHub header BG gray blue */
	/* --color_bg_main: rgb(246,248,250); */
	
	/* Apple Account ID BG gradient */
	/* --color_bg_main: linear-gradient(120deg, rgb(255, 255, 255), rgb(240, 240, 240)); */
	/* --color_bg_main: rgba(240, 240, 240, 0.6); */
	
	
	/* !!!! Zendenta Screenshot */
	/* --color_bg_main: rgba(248, 248, 248, 1.0); */
	
	
	/* Tailwind CSS example */
	/* --color_bg_main: rgb(248,250,252); */
	/* --color_bg_main: rgb(241,245,249); */
	/* --color_bg_main: rgb(249,250,251); */
	
	
	/* ConvertKit Starter Colors */
	/* Light beige */
	/* --color_bg_main: rgb(253,248,241); */
	/* Light green */
	--color_bg_main: rgb(236,246,242);
	
	/* NYT Cooking search bar BG */
	/* --color_bg_main: rgb(248,248,245); */
	
	/* Dribble .todaynews newspaper concept BG */
	/* --color_bg_main: rgba(246,244,240,0.6); */
	
	/* Apple’s Choose Your Mac mini-website BG. */
	/* --color_bg_main: rgba(245,245,247,1.0); */
	
	/* Another tannish BG color from a website */
	/* --color_bg_main: rgb(249,248,243); */
	
	/* Sample background from James Clear email newsletter. */
	/* --color_bg_main: rgb(249,248,244); */
	
	/* Another sample color / Reference iOS/iCloud energy widget. */
	/* !!!! */
	/* --color_bg_main: rgba(235,243,250,1.0); */
	
	/* Internal Sketch 2021 Design Concept Demo. */
	/* --color_bg_main: rgba(251,244,235,1.0); */
	
	/* Good Company. */
	/* --color_bg_main: rgba(243,237,218,1.0); */
	
	/* TheGuardian.com */
	/* --color_bg_main:rgb(254,249,245); */
	
	/* Writebook BG */
	/* --color_bg_main: rgb(244,246,247); */
	
	/* Froonze.com */
	/* --color_bg_main: rgb(250, 246, 240); */
	
	/* Stripe invoicing */
	--color_bg_main: rgba(245,240,234,0.8);
	--color_bg_main: rgba(246,249,252,1.0);
	
	--color_ruler_main: rgba(220,213,205,0.4);
	--color_ruler_main: oklch(87.64% 0.013 71.31 / 40%);
	
	/* Add new color codes based on Job category. */
}


/* Add new color variables options for different categories here. */


@supports (font-variation-settings: 'wdth' 115) {
	:root {
		--font_system_ui: InterVariable, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Oxygen-Sans", Ubuntu, Cantarell, "Helvetica Neue", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
	}
}

@view-transition {
	navigation: auto;
}
 
/* Set all the style variables inside HTML tag. */
 
html {
	min-height: 100dvh;
	
	margin: 0;
	padding: 0;
	/* padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left); */
	
	font-family: var(--font_system_ui);
	font-size: 4px;
	font-weight: 400;
	/* color: rgb(15,33,50);
	color: rgba(66,84,102,1); */
	color: rgb(52,70,86);
	
	text-rendering: optimizeLegibility;
	
	/* background: rgba(255,252,247,1.0); */
	/* background: rgba(245,245,240,1.0); /* Sebastian Brooks Mockup */
	/* background: rgba(248,248,242,1.0); *//* Sebastian Brooks Mockup .2 */
	/* background: rgba(244,238,232,1.0); *//* Islay */
	/* background: rgba(251,244,235,1.0); *//* Luxury Tribune */
	/* background: rgba(251,249,248,1.0); *//* Klix.ba special reports ✅ */
	/* background: rgba(248,247,244,1.0); *//* Dribble Top/Header background. */
	
	-webkit-text-size-adjust: none;
	-ms-text-size-adjust: 100%;
	text-size-adjust: none;
	
	scroll-behavior: smooth;
	
	/* -moz-osx-font-smoothing: grayscale; */
	
	margin-trim: block;
	
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	
	-webkit-overflow-scrolling: touch !important;
	overflow: auto !important;
}

body {
	min-height: 100dvh;
	
	margin: 0;
	padding: 0;
	
	font-size: clamp(4rem, 0.4261vw + 3.6591rem, 4.75rem);
	
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: auto auto 1fr minmax(8rem, auto);
	gap: 0;
}
body:has(.flash_message) {
	grid-template-rows: auto auto auto 1fr minmax(8rem, auto);
}

b, strong {
	font-weight: 580;
}
.job_rate {
	/* color: rgb(23,164,86); */
	color: rgba(36,181,88,1.0);
}
.job_rate strong {
	font-weight: 680;
}

a {
	/* color: hsla(218,64%,47%,1.00);
	color: hsla(219,92%,58%,1.00); */
	color: rgb(0,115,230);
	text-decoration: none;
	
	border: 0;
}

img {
	margin: 0;
	
	border: 0;
}

svg.library_svg {
	display: none;
}

/* ---- Utility Styles ---- */

.text_center {
	text-align: center;
}

.hidden {
	display: none;
}

/* ---- Logotype Styles ---- */

/* Make the global home logotype link a block element. */
a.global_home_link {
	max-width: 36rem;
	height: 8rem;
	
	display: block;
}

/* Top logo styles + color combinations. */
.logo {
	max-width: 36rem;
	width: auto;
	height: 8rem;
	
	--color-name: rgba(0,38,60,1.0);
	/* --color-dot: rgba(60,194,81,1.0); */
	--color-dot: rgba(56,192,80,1.0);
}


/* Footer logo style + color combinations adjustments. */
footer a.global_home_link {
	max-width: 27rem;
	height: 6rem;
}

footer .logo {
	max-width: 27rem;
	width: auto;
	height: 6rem;
	
	--color-name: rgba(255,255,255,1.0);
	--color-dot: rgba(255,255,255,1.0);
}

/* ---- Baseline Layout Elements ---- */

nav, header, main, footer {
	width: 100%;
	
	padding: 0 8rem;
	
	display: grid;
}

section {
	width: 100%;
	/* max-width: 240rem; */
	/* max-width: 192rem; */
	/* max-width: 198rem; */
	max-width: 210rem;
	
	margin: 0 auto;
}

/* ---- Logo Styles ---- */

nav section {
	display: grid;
	grid-template-columns: repeat(2, auto);
	grid-template-rows: auto;
	gap: 8rem;
	justify-content: space-between;
	align-items: center;
	
	/* border-bottom: 1rem rgba(54,28,28,1.0) solid; */
}

/* ---- Job Post Button ---- */

.btn_new_job {
	max-width: 160px;
	height: 9.5rem;
	
	padding: 1.75rem 4rem;
	
	font-size: 3.75rem;
	font-weight: 520;
	color: rgba(255,255,255,1.0);
	text-align: center;
	/* line-height: 1; */
	line-height: 6rem;
	letter-spacing: 0.02em;
	
	display: grid;
	grid-template-columns: 1fr;
	align-content: center;
	
	/* background: hsla(353,79%,61%,1.00);
	background: rgba(27,157,61,1.0); */
	/* background: rgba(32,160,64,1.0); */
	/* background: rgba(0,138,252,1.0); */
	/* background: rgba(0,118,225,1.0); */
	
	/* background: oklch(61.89% 0.173 146.86); */
	background: rgba(50,168,72,1.0);
	/* background-image: linear-gradient(0deg, rgb(0, 159, 18) 0px, rgb(0, 177, 50) 100%); */
	/* background-image: linear-gradient(0deg, rgb(15, 150, 28) 0px, rgb(21, 190, 83) 100%); */
	
	background: rgb(20,180,84);
	background: rgb(23,164,86);
	background: rgba(52,199,89,1.0);
	background: rgba(36,181,88,1.0);
	
	
	border-radius: 1rem;
}
.btn_new_job.apply_now {
	height: 10rem;
	background: rgb(0,115,230);
	/* background-image: linear-gradient(0deg, rgb(0,115,230) 0px, rgb(0, 135, 240) 100%); */
}


 
/* -- App Navigation -- */

nav {
	/* background: rgba(255,33,147,1.0); */
	/* background: gold; */
	
	/* background: hsla(48,100%,52%,1.0); */
	
	/* background: var(--color_bg_main); */
}

nav section {
	padding: 6rem 0;
	
	/* border-bottom: 0.5rem rgba(220,213,205,1.0) solid; */
	/* border-bottom: 0.5rem rgba(29,29,31,0.84) solid; */
	/* border-bottom: 0.5rem rgba(245,245,240,1.0) solid; */
	/* border-bottom: 0.5rem rgba(232,234,224,1.0) solid; */
	
	/* Grays */
	/* border-bottom: 0.5rem oklch(84.52% 0 0) solid; */
	/* border-bottom: 0.5rem oklch(84.52% 0 0 / 40%) solid; */
	border-bottom: 0.5rem rgba(203,214,224,0.8) solid;
}
body:has(.flash_message) nav section {
	border-bottom: none;
}

/* -- App Header -- */

header {
	color: white;
	/* color: rgba(255,33,147,1.0); */
	/* color: rgb(29,29,31); */
	color: rgb(52,70,86);
	
	/* color: rgb(17,17,17); */
	letter-spacing: -0.004em;
	/* letter-spacing: -0.012em; */
	line-height: 1.2;
	margin-trim: block;
	
	/* background: rgba(255,33,147,1.0);
	background: gold;
	background: hsla(217,99%,82%,1.00);
	background: #E5D150;
	background: #9AD658; */
	/* background: rgb(232,242,245);
	background: #E8877D;
	background: hsla(48,100%,52%,1.0); */
	
	background: white;
	
	hanging-punctuation: first last;
	
	align-content: center;
	
	/* background: var(--color_bg_main); */
}

header > section {
	/* max-width: 198rem; */
	/* min-height: 90rem; */
	/* padding: 29.25rem 0; */
	/* padding: 21.25rem 0 23.75rem 0; */
	padding: 21.75rem 0 9.75rem 0;
}
body:has(.flash_message) header > section {
	padding-top: 17.75rem;
}

header > section h1 {
	/* min-height: 60rem; */
	/* padding: 12rem 0; */
	
	margin: 0;
	/* font-size: 12rem; */
	/* font-size: clamp(6.5rem, 3.1250vw + 4rem, 12rem); */
	/* font-size: clamp(6.5rem, 1.9886vw + 4.9091rem, 10rem); */
	font-size: clamp(6rem, 1.7045vw + 4.6364rem, 9rem);
	font-weight: 580;
	/* color: rgb(15,33,50); */
	/* color: rgba(10,37,64,1); */
	color: rgba(0,38,60,1.0);
	line-height: 1;
	display: grid;
	align-content: center;
	
	/* border-bottom: 1rem rgba(29,29,31,0.84) solid; */
	/* border-bottom: 1rem rgba(220,213,205,1.0) solid; */
}

header > section h2 {
	max-width: 144rem;
	
	margin: 2rem auto 0 auto;
	
	/* font-size: 6rem; */
	/* font-size: clamp(4.25rem, 0.9943vw + 3.4545rem, 6rem); */
	font-size: clamp(4.25rem, 0.5682vw + 3.7955rem, 5.25rem);
	font-weight: 400;
	/* color: rgb(61,61,78);
	color: rgb(52,70,86); */
	letter-spacing: -0.0032em;
	line-height: 1.36;
	text-wrap: balance;
}
header > section h2.alt {
	max-width: 100%;
}

/* -- App Main Area -- */

main {
	padding: 10rem 8rem;
	
	background: var(--color_bg_main);
	
	background: oklch(0.9158 0.0042 91.45);
	color: oklch(0 0 0);
}

main section {
	/* display: grid;
	/* grid-template-columns: 1fr minmax(auto, 180rem); */
	/* grid-template-columns: 1fr;
	grid-template-rows: auto; */
	/* gap: 8rem; */
	
	width: 100%;
	/* max-width: 192rem; */
	
	margin: 0 auto;
	
	/* background: gold; */
}

/* main aside {
	height: 160rem;
	background: gold;
} */

/* main .the_list {
	height: 160rem;
	background: orchid;
} */

/* -- App Footer -- */

footer {
	padding: 6rem 8rem;
	
	background: oklch(25.6% 0.058 239.74);
	/* background: rgb(10,37,64); */
}

footer section {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: auto;
	gap: 6rem;
}

.summary {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 6rem auto;
	gap: 1rem;
}

.directory {
	display: grid;
	grid-template-columns: 1fr repeat(4, auto);
	grid-template-rows: auto;
	gap: 6rem;
	
	align-items: center;
	
	font-size: 3.75rem;
	font-weight: 400;
	line-height: 1em;
	color: rgba(229,231,235,0.8);
	letter-spacing: 0;
}

.directory a.directory_link {
	/* color: hsla(204,16%,64%,1.00); */
	color: rgba(229,231,235,0.8);
	
	text-decoration: underline;
	text-decoration-thickness: 0.5rem;
	text-decoration-color: transparent;
	text-underline-offset: 1.5rem;
	
	/* position: relative; */
	
	transition: text-decoration-color 0.2s linear;
}
.directory a.directory_link:hover {
	text-decoration-color: oklch(92.76% 0.006 264.53 / 40%);
}
/* .directory a.directory_link::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -1.5rem;
	width: 100%;
	height: 0.5rem;
	background: hsla(204,16%,64%,0.00);
	background: rgba(229,231,235,0.0);
	z-index: 12;
	transition: background 0.2s linear;
}
.directory a.directory_link:hover::after {
	background: hsla(204,16%,64%,0.40);
	background: rgba(229,231,235,0.4);
} */

.legal {
	padding: 6rem 0 0 0;
	
	font-size: 3.5rem;
	color: oklch(71.57% 0.026 236.99);
	letter-spacing: 0;
	
	display: grid;
	grid-template-columns: repeat(3, auto) 1fr auto;
	grid-template-rows: auto;
	gap: 4rem;
	
	align-items: center;
	
	border-top: 0.25rem oklch(58.28% 0.037 244.34 / 50%) solid;
}

.legal a {
	color: hsla(204,16%,64%,1.00);
	text-decoration: underline;
	text-decoration-color: transparent;
	transition: text-decoration-color 0.2s linear;
}
.legal a:hover {
	text-decoration-color: hsla(204,16%,64%,1.0);
}


a.social {
	line-height: 0;
	
	display: block;
}

a.social .icon_bsky {
	width: 6rem;
	height: 5rem;
	
	fill: hsla(204,32%,32%,1.00);
	
	transition: fill 0.3s ease-in-out;
}
a.social:hover .icon_bsky {
	fill: hsla(203,89%,53%,1.0);
}

/* ---- Job List Styles ---- */

/* main.job_list section {
	display: grid;
	grid-auto-rows: 1fr;
	gap: 1.5rem;
} */

.a_job {
	width: 100%;
	/* max-width: 192rem; */
	/* min-height: 32rem; */
	
	margin: 1.5rem auto 0 auto;
	/* margin: 0 auto; */
	padding: 6rem;
	
	color: rgb(0, 38, 60);
	
	display: grid;
	grid-template-columns: 1fr 12rem;
	grid-template-rows: auto;
	gap: 6rem;
	align-items: center;
	
	background: rgba(10,175,233,0.4);
	
	border-radius: 1.5rem;
}
.a_job:nth-of-type(1) {
	margin: 0 auto;
}

.a_job svg.icon-arrow {
	width: 12rem;
	height: 12rem;
	fill: rgba(255,255,255,0.32);
	/* position: absolute;
	right: 6rem;
	top: 50%;
	transform: translateY(-50%); */
	transition: fill 0.2s linear;
}
.a_job:hover svg.icon-arrow {
	fill: rgba(255,255,255,0.8);
}

/* ---- Job Category Color Codes ---- */

a.administration {
	/* background: hsla(208,47%,24%,1.00); */
	/* background: oklch(35.76% 0.06 246.79);
	background: rgb(8, 30, 69); */
	/* background: hsla(192,73%,56%,0.6); */
	/* color: rgba(255,255,255,0.92); */
	/* -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale; */
	background:rgba(45,154,223,0.5);
	background:rgba(171,229,241,1.0);
}
a.teaching {
	/* background: hsla(192,73%,56%,1.00); */
	/* background: oklch(75.12% 0.119 218.41); */
	/* background: hsla(144, 56%, 56%, 0.6); */
	background:rgba(57,210,49,0.5);
}
a.research {
	/* background: hsla(144, 56%, 56%, 1.00);
	background: oklch(76.13% 0.156 153.83); */
	/* background: hsla(247, 24%, 56%, 0.4); */
	background: rgba(179,171,253,0.85);
}
a.tutoring {
	/* background: hsla(247, 24%, 56%, 1.00);
	background: oklch(58.56% 0.082 288.96); */
	/* background: hsla(48, 96%, 56%, 0.7); */
	background: rgba(247,215,54,1.0);
	/* background: rgba(239,199,57,0.8); */
}
a.coaching {
	background: rgba(251,112,109,0.6);
	background: rgba(230,55,197,0.5);
}
a.support {
	background: hsla(8, 72%, 64%, 0.8);
	background: oklch(68.41% 0.146 30.28);
}
a.maintenance, a.operations {
	/* background: hsla(48, 96%, 56%, 1.00);
	background: oklch(86.82% 0.171 92.94); */
	/* background: hsla(8, 72%, 64%, 0.8); */
	background: rgba(253,171,30,0.85);
	background: rgba(254,160,36,0.8);
}
a.security {
	background: hsla(192, 8%, 40%, 0.3);
	/* background: oklch(51.76% 0.017 214.45); */
	/* color: #fff; */
	/* -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale; */
	background: rgba(227,227,225,1.0);
	background: rgba(19,93,216,0.2);
}

/* ---- Job Detail Styles ---- */

.detail section {
	/* max-width: 192rem; */
	/* max-width: 192rem; */
	
	padding-bottom: 11rem;
}

.detail section h1 {
	text-wrap: balance;
}

.job_metadata {
	width: 100%;
	
	margin: 10rem auto 0 auto;
	padding: 4.75rem 0 0 0;
	
	border-top: 1rem rgba(203,214,224,0.8) solid;
	
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: auto;
	gap: 4.75rem 8rem;
	
	align-items: start;
}
.metadata_item {
	font-size: 4rem;
	font-weight: 480;
	/* color: rgb(15,33,50);
	color: rgba(10,37,64,1); */
	color: rgba(0,38,60,1.0);
	line-height: 1.42;
}
/* .metadata_item:last-child:nth-child(3n - 1) {
  grid-column: span 2;
}
.metadata_item:last-child:nth-child(3n - 2) {
  grid-column: span 3;
} */
/* .job_metadata div.metadata_item {
	grid-template-rows: subgrid;
	grid-row: auto / span 2;
}
.job_metadata div.metadata_item.location {
	grid-row: auto / span 3;
} */
.metadata_item h3 {
	margin: 0;
	
	font-size: 4rem;
	font-weight: 400;
	/* color: rgb(89,97,113);
	color: rgba(52,70,86,1); */
	color: rgba(10,37,64,0.8);
}
.metadata_item:nth-of-type(n+4) {
	padding: 4.75rem 0 0 0;
	/* border-top: 0.5rem rgb(204,204,204) solid; */
	border-top: 0.5rem rgba(203,214,224,0.8) solid;
	/* border-top-color: rgb(214,214,214);
	border-top-color: rgb(229,229,229); */
	/* border-top-color: rgba(203,214,224,0.8); */
}

.metadata_item.location span:nth-of-type(1) {
	display: block;
}

.metadata_item .remote_ok {
	width: auto;
	
	margin: 0;
	padding: 0.75rem 2rem;
	
	font-size: 2.75rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	
	display: inline-block;
	
	background: gold;
	
	border-radius: 1rem;
}

section.job_body {
	padding: 0;
	
	/* font-size: clamp(4rem, 0.4261vw + 3.6591rem, 4.75rem); */
	/* font-size: clamp(4.25rem, 0.1420vw + 4.1364rem, 4.5rem);
	font-size: clamp(4.25rem, 0.2841vw + 4.0227rem, 4.75rem); */
	font-size: 4.5rem;
	font-weight: 380;
	/* line-height: 1.424; */
	/* line-height: 1.6; */
	line-height: 7rem;
	text-wrap: pretty;
	word-break: break-word;
	
	
	/* !!!! Special Serif Test. */
	/* font-family: ui-serif, Georgia, serif;
	font-size: 5rem;
	font-weight: 400;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased; */
}


/* !!!! START OF Special style overrides for testing OPTION 1 !!!! */
section.job_body.override_1 {
	max-width: 256rem;
	max-width: 240rem;
	
	font-family: ui-serif;
	font-family: system-ui;
	font-size: 5.75rem !important;
	font-size: 5.25rem !important;
	line-height: 165% !important;
}

section.job_body.override_1 p + p {
	margin: 5.75rem 0 0 0 !important;
	margin: 5.25rem 0 0 0 !important;
}
/* !!!! END OF Special style overrides for testing OPTION 1 !!!! */


section.job_body p {
	margin: 6rem 0 0 0;
}
section.job_body p:nth-child(1) {
	margin: 0;
}

section.job_body h2 {
	/* margin: 1.6em 0 0 0; */
	margin: 9rem 0 0 0;
	
	/* font-size: clamp(4rem, 0.4261vw + 3.6591rem, 4.75rem); */
	/* font-size: clamp(4.5rem, 0.2841vw + 4.2727rem, 5rem); */
	font-size: 5rem;
	font-weight: 520;
	/* color: rgba(10,37,64,1); */
	color: rgba(0,38,60,1.0);
	line-height: 1.16;
	letter-spacing: 0.008em;
	text-wrap: balance;
}
section.job_body h2:first-child  {
	margin: 0;
}
section.job_body h2 + p {
	margin: 2rem 0 0 0;
}

section.job_body h3 {
	margin: 1.5em 0 0 0;
	
	/* font-size: clamp(4.25rem, 0.1420vw + 4.1364rem, 4.5rem); */
	font-size: 4.5rem;
	font-weight: 520;
	/* color: rgba(10,37,64,1); */
	color: rgba(0,38,60,1.0);
	line-height: 1.16;
	letter-spacing: 0.008em;
	text-wrap: balance;
}
section.job_body h3:first-child  {
	margin: 0;
}
section.job_body h3 + p {
	margin: 1rem 0 0 0;
}


section.job_body ul, ol {
	margin: 2rem 0 0 0;
	padding: 0;
}
section.job_body ol {
	list-style-type: decimal;
}
section.job_body ul:first-child, section.job_body ol:first-child {
	margin: 0;
}
section.job_body ul li {
	margin: 0 0 0 5.5rem;
	padding: 0;
}
section.job_body ul li::marker {
	color: rgba(66,84,102,0.5);
}
section.job_body ol li {
	margin: 0 0 0 7rem;
	padding: 0;
}

@-moz-document url-prefix() {
	section.job_body ul li {
		margin: 0 0 0 4rem;
		padding: 0;
	}
	
	section.job_body ol li {
		margin: 0 0 0 4.75rem;
		padding: 0;
	}
}

section.job_body li + li {
	margin-top: 3rem;
}

section.job_body p + ul, section.job_body p + ol {
	margin: 1em 0 0 0;
}

.block_superscript {
	width: 100%;
	
	font-weight: 520;
	color: rgb(21,190,83);
	color: rgb(0,115,230);
	
	margin: 10rem 0 0 0;
	padding: 10rem 0 0 0;
	
	border-top: 1rem  rgba(203,214,224,1.0) solid;
}
section.job_body .block_superscript + h2 {
	margin-top: 4rem;
}
section.job_body .block_superscript + h3 {
	margin-top: 3rem;
}
section.job_body .block_superscript + p {
	margin-top: 3rem;
}

.block_apply_now {
	width: 100%;
	
	margin: 10rem 0 0 0;
	padding: 10rem 0 2rem 0;
	
	display: grid;
	grid-template-columns: auto;
	grid-template-rows: auto;
	gap: 6rem;
	
	justify-content: start;
	align-items: center;
	
	border-top: 0.25rem  rgba(203,214,224,1.0) solid;
}

.block_highlight {
	margin: 10rem auto;
	padding: 6rem;
	
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto;
	gap: 3rem;
	
	background: rgb(255,255,255);
	
	border-radius: 1.5rem;
	
	box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px;
}

.icon_info {
	width: 6rem;
	height: 6rem;
}

/* ---- Payment Form Styles ---- */

.invoice_header {
	margin: 0 0 4rem 0;
	padding: 0 0 4rem 0;
	
	display: grid;
	grid-template-columns: 1fr auto;
	grid-template-rows: auto;
	gap: 6rem;
	align-items: center;
	
	border-bottom: 0.5rem rgba(203,214,224,0.8) solid;
}
.invoice_header.payment_information {
	margin: 0 0 6rem 0;
}
.invoice_header h2 {
	margin: 0;
	padding: 0;
	
	font-size: 4rem;
	font-weight: 500;
	color: rgb(0,38,60);
}

.invoice {
	width: 100%;
	
	font-size: 4rem;
	font-weight: 400;
	color: rgb(0,38,60);
	line-height: 1.42;
	letter-spacing: -0.004em;
	
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: auto;
	gap: 4rem;
	align-items: start;
}

.invoice .line_item {
	padding: 4rem 0 0 0;
	display: grid;
	grid-template-columns: 0.5fr 1fr;
	grid-template-rows: auto;
	gap: 3rem;
	align-items: start;
	
	border-top: 0.25rem rgba(203,214,224,0.8) solid;
}
.invoice .line_item:nth-of-type(1) {
	padding: 0;
	border-top: 0;
}
.invoice .line_item h3 {
	margin: 0;
	padding: 0;
	
	font-size: 4rem;
	font-weight: 400;
	color: rgba(10,37,64,0.8);
	line-height: 1.42;
}

.invoice .line_item:last-of-type {
	font-weight: 650;
	text-align: right;
	text-transform: uppercase;
	
	grid-template-columns: 1fr auto;
	gap: 6rem;
	
	border-top-width: 0.5rem;
}
.invoice .line_item:last-of-type h3 {
	font-weight: 650;
	color: rgb(0,38,60);
}

/* ---- Form Styles ---- */

.form_block {
	width: 100%;
	/* max-width: 196rem; */
	max-width: 210rem;
	
	margin: 0 auto;
	padding: 0;
	
	font-size: 3.5rem;
}
.form_block.align_right {
	display: grid;
	justify-content: right;
}
.form_block + .form_block {
	margin-top: 12rem;
}
.form_block.preview {
	display: grid;
	grid-template-columns: auto 1fr auto;
	grid-template-rows: auto;
	gap: 4rem;
	justify-items: center;
	align-items: center;
}

.form_block header {
	margin: 0 0 3rem 0;
	padding: 0;
	
	background: transparent;
}
.form_block header h2 {
	margin: 0;
	
	font-size: 4rem;
	font-weight: 600;
	color: rgb(31,35,40);
	letter-spacing: -0.002em;
}
.form_block header h2 + p {
	margin: 1rem 0 0 0;
	
	font-size: 3.5rem;
	font-weight: 400;
	color: rgb(75,85,99);
	color: rgba(22, 25, 29, 0.8);
	line-height: 1.42em;
	text-wrap: pretty;
}


section.form_card {
	width: 100%;
	/* max-width: 196rem; */
	max-width: 210rem;
	
	margin: 0 auto;
	padding: 8rem;
	
	background: rgb(255,255,255);
	
	/* border: 0.25rem rgb(229, 231, 235) solid; */
	border-radius: 2rem;
	
	/* box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.12) 0px 1px 3px 0px, rgba(0, 0, 0, 0.12) 0px 1px 2px -1px; */
	
	box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px;
	
	/* border: 0.25rem rgb(227,232,238) solid; */
	/* box-shadow: 0 2px 5px 0 rgba(50 50 93 / 10%), 0 1px 1px 0 rgba(0 0 0 / 7%); */
}

.field_set + .field_set {
	margin: 6rem 0 0 0;
}

section.field_set.cols_2 {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: auto;
	gap: 4rem;
	
	align-items: start;
}
section.field_set.cols_3 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: auto;
	gap: 4rem;
	
	align-items: start;
}
section.field_set.cols_2_1 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: auto;
	gap: 4rem;
}

section.field_block {
	width: 100%;
	
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: auto;
	gap: 2rem;
}
section.field_block > div:nth-child(1) {
	display: grid;
	grid-template-columns: 1fr auto;
	grid-template-rows: auto;
	gap: 4rem;
	
	align-items: center;
}

section.field_block#field_duration {
	display: none;
}
section.field_block#field_duration.shown {
	display: grid;
}


section.field_set.cols_2_1 section.field_block {
	grid-template-rows: subgrid;
	grid-row: auto / span 2;
}
section.field_set.cols_2_1:has(.form_error) section.field_block {
	grid-row: auto / span 3;
}
section.field_set.cols_2_1 section.field_block:nth-of-type(1){
	grid-column: span 2;
}
section.field_set.cols_2_1 section.field_block div:nth-of-type(2){
	align-content: center;
}

.special_2_1_2 {
	margin: 2rem 0;
	display: grid;
	grid-template-columns: 1fr 0.15fr 1fr;
	grid-template-rows: auto;
	gap: 0;
	
	align-items: center;
}

.divider {
	width: 100%;
	
	margin: 6rem 0;
	
	/* border-top: 0.25rem rgba(208,215,222,0.7) solid;
	border-top: 0.25rem rgba(22,25,29,0.15) solid; */
	border-top: 0.25rem rgba(203,214,224,0.8) solid;
}

label {
	margin: 0;
	
	font-size: 4rem;
	font-weight: 500;
}

.badge.required {
	padding: 0 3rem;
	
	font-size: 2.25rem;
	
	font-weight: 500;
	color: rgb(219,39,119);
	line-height: 4rem;
	text-align: center;
	letter-spacing: 0.03rem;
	text-transform: uppercase;
	
	/* background: rgb(253,242,248);
	background: rgba(213, 52, 95, 0.1); */
	/* Tailwind */
	background: rgba(219,39,119,0.125);
	
	border-radius: 200em;
	
}

.label_description {
	margin-top: -1.5rem;
	
	font-size: 3.5rem;
	font-weight: 400;
	color: rgb(134,134,134);
	color: rgba(22, 25, 29, 0.6);
	line-height: 1.42em;
	text-wrap: pretty;
}

input, textarea, select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

input::placeholder {
	font-weight: 350;
	/* color: rgba(115,115,124,0.9); */
	color:rgba(0,38,60,0.5);
}
input::-moz-placeholder {
	font-weight: 350;
	color:rgba(0,38,60,0.5);
	opacity: 1.0;
}

input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="date"]:focus, textarea:focus, select:focus {
	outline: none;
	border-color: rgb(49,118,246);
}

input[type="text"]:not(:placeholder-shown):invalid, input[type="email"]:not(:placeholder-shown):invalid, input[type="url"]:not(:placeholder-shown):invalid, input[type="date"]:not(:placeholder-shown):invalid, textarea:not(:placeholder-shown):invalid {
	outline: none;
	border-color: rgb(240,0,0);
}

input[type="text"], input[type="email"], input[type="url"], input[type="date"], textarea, select {
	width: 100%;
	
	margin: 0;
	padding: 2rem 3rem;
	font-family: inherit;
	font-size: 4rem;
	font-weight: 380;
	/* color: rgb(24,31,46);
	color: rgb(30,30,32); */
	color: rgb(52,70,86);
	letter-spacing: -0.006em;
	line-height: 7rem;
	/* border: 0.5rem rgb(226,228,233) solid; */
	/* border: 0.5rem rgb(208,215,222) solid; */
	/* border: 0.5rem rgb(222,222,222) solid; */
	/* border: 0.5rem rgb(211,211,211) solid; */
	/* border: 0.5rem rgba(22,25,29,0.2) solid; */
	/* border: 0.5rem rgba(229,229,229,1.0) solid; */
	border: 0.5rem rgba(203,214,224,0.8) solid;
	border-radius: 1.5rem;
	background: hsla(100,100%,100%,1.00);
	/* background: rgba(247,247,247,1.0); */
}

select {
	/* padding: 2rem 8rem 2rem 3rem; */
	padding: 2rem 8.5rem 2rem 3rem;
	
	font-size: 3.75rem;
	
	background-image: url("/_img/icon.form.select.svg");
	background-size: 2rem 3rem;
	background-position: right 3rem center;
	background-repeat: no-repeat;
}

textarea {
	line-height: 1.3;
	resize: vertical;
}

input[type="checkbox"] {
	width: 4rem;
	height: 4rem;
	
	display: block;
	
	background-color: transparent;
	background-image: url("/_img/icon.checkbox.svg");
	background-size: 4rem 4rem;
	background-position: center;
	background-repeat: no-repeat;
	
	/* border: 0.5rem rgb(209,213,219) solid;
	border: 0.5rem rgba(22,25,29,0.28) solid; */
	border: 0.5rem rgba(203,214,224,1.0) solid;
	border-radius: 1rem;
}
input[type="checkbox"]:checked {
	background-color: rgb(49,118,246);
	border-color: transparent;
}
section.field_block div.field_checkbox_block {
	display: grid;
	grid-template-columns: 4rem 1fr auto;
	gap: 4rem;
	align-items: center;
}
div.tldr_block {
	display: grid;
	grid-template-columns: 4rem 1fr !important;
	gap: 4rem !important;
	text-wrap: pretty;
}
details.tldr_terms {
	margin: 2rem 0 0;
	/* padding: 3rem 4rem; */
	
	font-size: 3.25rem;
	line-height: 1.75;
	text-wrap: pretty;
	
	/* background: rgb(241,250,255); */
	
	/* border: 0.25rem rgb(172,222,254) solid;
	border-radius: 0.75rem; */
	
	cursor: pointer;
}
details.tldr_terms summary::marker, details summary::-webkit-details-marker {
	display: none;
	content: "";
}

details.tldr_terms summary {
	display: inline;
	
	/* background: rgb(241,250,255);
	
	border: 0.25rem rgb(172,222,254) solid;
	border-radius: 0.75rem 0.75rem 0 0; */
	
	background: gold;
}

details.tldr_terms div {
	margin: 2rem 0 0 0;
	padding: 3rem 4rem;
	
	background: rgb(241,250,255);
	
	border: 0.25rem rgb(172,222,254) solid;
	border-radius: 0.75rem;
}

input[type="date"] {
	padding: 1.5rem 9.5rem 1.5rem 3rem;
	
	background-image: url("/_img/icon.calendar.svg");
	background-size: 3.5rem 3.5rem;
	background-position: calc(100% - 3rem) center;
	background-repeat: no-repeat;
}

@-moz-document url-prefix() {
	input[type="date"] {
		padding: 2rem 3rem;
		background-image: none;
	}
}

.button_action_OLD {
	min-width: 40rem;
	width: auto;
	max-width: 100%;
	height: 9.5rem;
	padding: 0 4rem;
	font-family: inherit;
	font-size: 3.75rem;
	font-weight: 500;
	color: hsla(100,100%,100%,0.92);
	line-height: 9.5rem;
	text-align: center;
	letter-spacing: -0.006em;
	/* background: hsla(218,92%,47%,1.00); */
	/* background: hsla(215,62%,48%,1.00); */
	/* background: hsla(219,92%,58%,1.00); */
	background: rgb(0,115,230);
	background-image: linear-gradient(0deg, rgb(0,115,230) 0px, rgb(0, 135, 240) 100%);
	border: 0.25rem rgb(0,115,230) solid;
	border-radius: 1rem;
	display: block;
	cursor: pointer;
}
.button_action {
	min-width: 40rem;
	width: auto;
	max-width: 100%;
	height: 9.5rem;
	padding: 0 4rem;
	font-family: inherit;
	font-size: 3.75rem;
	font-weight: 500;
	color: hsla(100,100%,100%,0.92);
	line-height: 9.5rem;
	text-align: center;
	letter-spacing: -0.006em;
	background: rgb(0,115,230);
	border: 0px;
	border-radius: 1rem;
	display: block;
	cursor: pointer;
}
button.button_action.processing {
	opacity: 0.6;
}
/* .button_action.edit_preview_OLD {
	color: rgba(10,37,64,0.7);
	background: rgba(203,214,224,0.4);
} */
.button_action.secondary {
	color: rgb(0,115,230);
	background: transparent;
	border: 0.25rem rgb(0,115,230) solid;	border-radius: 1rem;
}

button.button_action:disabled {
	opacity: 0.6;
}

.apply_divider {
	height: 100%;
	
	font-size: 2.5rem;
	font-weight: 700;
	text-align: center;
	
	display: grid;
	justify-content: center;
	align-items: center;
	
	position: relative;
}
.line_connector {
	width: 100%;
	height: 0.5rem;
	
	display: block;
	
	position: absolute;
	left: 0;
	top: calc(50% - 0.25rem);
	
	background: rgb(232,233,234);
	
	z-index: 0;
}
.apply_divider span:nth-of-type(2) {
	width: 7rem;
	height: 7rem;
	
	color: rgb(99,108,118);
	line-height: 7rem;
	
	background: rgb(234,238,242);
	
	z-index: 200;
	
	border-radius: 250rem;
}
.form_block.preview .apply_divider {
	min-width: 100%;
}



.form_error {
	margin-top: -1rem;
	
	font-size: 3rem;
	font-weight: 500;
	color: rgba(219,20,60,1.0);
	letter-spacing: 0em;
	
	/* ConvertKit inspiration */
	/* color: rgb(251,96,104);
	background: rgb(255,239,240);
	border: 0.25rem rgb(251,96,104) solid; */
	
	display: block;
}

/* .fieldset {
	width: 100%;
	max-width: 192rem;
	
	margin: 0 auto;
	
	background: rgb(255,255,255);
	
	border: 0rem rgb(229,231,235) solid;
	border-radius: 3rem;
	
	/* !!! preferred box shadow settings. */
	/* box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px; */
	
	/* box-shadow: rgb(255, 255, 255) 0px 0px 0px 0px, rgba(17, 24, 39, 0.05) 0px 0px 0px 1px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px; */
	
	/* box-shadow: rgb(255, 255, 255) 0px 0px 0px 0px, rgba(39, 29, 17, 0.05) 0px 0px 0px 1px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px;
} */


/* Flash messages */

.flash_message {
	width: 100%;
	min-height: 12rem;
	
	padding: 3rem 0; 
	
	font-size: 4rem;
	font-weight: 480;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.01em;
	
	/* display: grid;
	grid-template-columns: auto;
	grid-template-rows: auto;
	justify-content: center; */
	align-items: center;
	
	/* position: sticky;
	top: 0;
	
	z-index: 800; */
}

.flash_message.notice {
	/* grid-template-columns: auto auto; */
	/* background: rgba(255,214,0,0.8); */
	color: rgba(31,31,31,1);
	background: rgb(253,218,42);
	
	position: sticky;
	top: 0;
	
	z-index: 800;
}
/* .flash_message.notice span::before {
	content: "\00a0 ";
} */
.flash_message.notice a {
	/* color: rgb(0,120,200); */
	color: rgb(0,115,180);
}

.flash_message.alert {
	/* color: rgb(219,39,119); */
	color: rgba(219,20,60,1.0);
	/* color: rgb(255,89,150); */
	/* background: rgba(219,39,119,0.125); */
	background: rgba(250,228,238,1.0);
	/* background: rgba(219,20,60,0.1125); */
	/* background: rgba(255,89,150,0.15); */
	/* pointer-events: none; */
	
	color: rgb(255,255,255);
	background: rgba(255,59,48,1.0);
}

.flash_message.confirmation {
	/* color: rgb(24,144,120); */
	color: rgb(23,164,86);
	/* color: rgba(50,168,72,1.0); */
	background: rgba(21,190,83,0.15);
	
	/* background: rgb(223,245,230);
	background: rgba(21,190,83,0.16); */
	
	color: rgb(255,255,255);
	background: rgba(52,199,89,1.0);
	background: rgba(36,181,88,1.0);
}




/* Adjustments for different screen sizes + device types. */

@media (hover: none), (pointer: none), (pointer: coarse) {
	
	.directory a.directory_link:hover {
		text-decoration-color: transparent;
	}
	
	.legal a:hover {
		text-decoration-color: transparent;
	}
	
}

@media screen and (max-width: 960px) {
	
	a.global_home_link {
		height: 7rem;
	}
	
	.logo {
		height: 7rem;
	}
	
	nav, header, main, footer {
		padding: 0 8rem;
	}
	
	nav section {
		padding: 5rem 0;
	}

	
	header > section {
		padding: 15.25rem 0 17.75rem 0;
	}
	
	header > section h2 {
		max-width: 144rem;
	}
	header > section h2.alt {
		max-width: 128rem;
	}
	
	header.detail section {
		padding-bottom: 5rem;
	}
	
	main {
		padding: 12rem 8rem;
	}
	
	/* main section {
		max-width: 100%;
	} */
	
	footer {
		padding: 6rem 6rem 8rem 6rem;
	}
	
	footer .directory {
		letter-spacing: -0.022em;
	}
	
	.directory .btn_new_job {
		letter-spacing: 0;
	}
	
	.job {
		max-width: 100%;
	}
	/* .job:nth-of-type(2n) {
		background: rgba(27,204,182,0.8);
	}
	.job:nth-of-type(3n) {
		background: rgba(214,39,68,0.6);
	} */
	
	.job_metadata {
		margin: 6rem auto 0 auto;
	}
	
}

@media screen and (max-width: 834px) {
	
	a.global_home_link {
		height: 6rem;
	}
	
	.logo {
		height: 6rem;
	}
	
	nav, header, main, footer {
		padding: 0 8rem;
	}
	
	nav section {
		padding: 5rem 0;
	}
	
	header > section {
		padding: 13.75rem 0 10.5rem 0;
	}
	body:has(.flash_message) header > section {
		padding-top: 9.75rem;
	}
	
	/* header > section h2 {
		max-width: 104rem;
	} */
	/* header > section h2.alt {
		max-width: 104rem;
	} */
	
	main {
		padding: 8rem;
	}
	
	footer {
		padding: 6rem 8rem 8rem 8rem;
	}
	
	/* footer section {
		gap: 6rem;
	}
	
	.directory {
		line-height: 8rem;
		
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: auto;
		gap: 0;
		
		align-items: center;
	}
	
	.directory a.directory_link {
		padding-top: 0;
		
		transition: none;
	}
	.directory a.directory_link:nth-of-type(1) {
		margin-top: 2.75rem;
		padding-top: 2.75rem;
		border-top: 0.25rem oklch(58.28% 0.037 244.34 / 50%) solid;
	}
	.directory a.directory_link:nth-last-of-type(2) {
		margin-bottom: 6rem;
		padding-bottom: 2.75rem;
		border-bottom: 0.25rem oklch(58.28% 0.037 244.34 / 50%) solid;
	}
	
	.directory .btn_new_job {
		max-width: 100%;
	} */
	
	/* .legal {
		padding: 0;
		
		font-size: 3.75rem;
		
		grid-template-columns: 1fr;
		grid-template-rows: auto;
		gap: 0;
		
		align-items: center;
		
		border-top: 0.25rem oklch(58.28% 0.037 244.34 / 50%) solid;
	}
	.legal div {
		line-height: 8rem;
	}
	.legal div:nth-of-type(1) {
		padding-top: 2.5rem;
		
		font-size: 3rem;
		
		border-top: 0.25rem oklch(58.28% 0.037 244.34 / 50%) solid;
		order: 3;
	}
	.legal div:nth-of-type(2) {
		padding-top: 2.75rem;
		border-top: 0;
	}
	.legal div:nth-of-type(3) {
		padding-bottom: 2.75rem;
		border-top: 0;
	}
	.legal div:nth-of-type(5) {
		padding: 4rem 0 0 0;
		text-align: center;
		order: 4;
	} */
	
	section.form_card {
		padding: 6rem;
	}
	
	label {
		font-size: 4rem;
	}
	
	/* input[type="text"], input[type="email"], input[type="url"], input[type="date"], textarea, select {
		font-size: 4rem;
		line-height: 7rem;
	} */
	
	select {
		/* padding: 2rem 8.5rem 2rem 3rem; */
		font-size: 4rem;
		background-size: 2.5rem 5rem;
	}
	
	input[type="checkbox"] {
		width: 5rem;
		height: 5rem;
		
		background-size: 5rem;
	}
	
	input[type="date"] {
		height: 12rem;
		
		padding: 2rem 10rem 2rem 3rem;
		
		background-size: 4rem 4rem;
	}
	@-moz-document url-prefix() {
		input[type="date"] {
			padding: 2rem 3rem;
			background-image: none;
		}
	}
	
}

@media screen and (max-width: 480px) {
	
	nav, header, main, footer {
		padding: 0 6rem;
	}
	header > section h2 {
		max-width: 84rem;
	}
	header > section h2.alt {
		max-width: 92rem;
	}
	
	header.detail > section h1 {
		line-height: 1.15;
	}
	
	main {
		padding: 6rem 6rem;
	}
	main.job_list {
		padding: 0;
	}
	main.job_list section {
		display: grid;
		/* grid-auto-rows: 1fr; */
		gap: 0.5rem;
	}
	
	footer {
		padding: 6rem 6rem 8rem 6rem;
	}
	
	footer section {
		gap: 6rem;
	}
	
	.directory {
		line-height: 8rem;
		
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: auto;
		gap: 0;
		
		align-items: center;
	}
	
	.directory a.directory_link {
		padding-top: 0;
		
		transition: none;
	}
	.directory a.directory_link:nth-of-type(1) {
		margin-top: 2.75rem;
		padding-top: 2.75rem;
		border-top: 0.25rem oklch(58.28% 0.037 244.34 / 50%) solid;
	}
	.directory a.directory_link:nth-last-of-type(2) {
		margin-bottom: 6rem;
		padding-bottom: 2.75rem;
		border-bottom: 0.25rem oklch(58.28% 0.037 244.34 / 50%) solid;
	}
	
	.directory .btn_new_job {
		max-width: 100%;
	}
	
	.legal {
		padding: 0;
		
		font-size: 3.75rem;
		
		grid-template-columns: 1fr;
		grid-template-rows: auto;
		gap: 0;
		
		align-items: center;
		
		border-top: 0.25rem oklch(58.28% 0.037 244.34 / 50%) solid;
	}
	.legal div {
		line-height: 8rem;
	}
	.legal div:nth-of-type(1) {
		padding-top: 2.5rem;
		
		font-size: 3rem;
		
		border-top: 0.25rem oklch(58.28% 0.037 244.34 / 50%) solid;
		order: 3;
	}
	.legal div:nth-of-type(2) {
		padding-top: 2.75rem;
		border-top: 0;
	}
	.legal div:nth-of-type(3) {
		padding-bottom: 2.75rem;
		border-top: 0;
	}
	.legal div:nth-of-type(5) {
		padding: 4rem 0 0 0;
		text-align: center;
		order: 4;
	}
	
	
	header.detail section {
		padding-bottom: 3.75rem;
	}
	
	.a_job {
		min-height: auto;
		
		margin-top: 0;
		border-radius: 0;
		
		grid-template-columns: 1fr;
	}
	.a_job svg.icon-arrow {
		display: none;
	}
	
	.job_metadata {
		margin: 6rem auto 0 auto;
		padding: 0;
		
		grid-template-columns: 1fr;
		gap: 3.75rem;
		
		border-top: 1rem rgb(52,70,86) solid;
		border-top-color: rgba(203,214,224,0.8);
	}
	
	.metadata_item {
		padding: 4rem 0 0 0;
		border-top: 0.25rem rgb(204,204,204) solid;
		border-top-color: rgb(214,214,214);
		border-top-color: rgb(203,214,224);
	}
	/* .metadata_item:last-child:nth-child(3n - 1), .metadata_item:last-child:nth-child(3n - 2) {
	  grid-column: span 1;
	} */
	
	/* .metadata_item h3 {
		font-size: 3.75rem;
	} */
	
	.metadata_item:nth-of-type(1) {
		border-top: none;
	}
	
	.metadata_item:nth-of-type(n+4) {
		padding: 3.75rem 0 0 0;
		border-top: 0.25rem rgb(204,204,204) solid;
		border-top-color: rgb(214,214,214);
	}
	
	.metadata_item {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}
	
	.block_duration_comma {
		display: none;
	}
	.block_duration {
		display: block;
	}
	
	section.job_body {
		font-size: 4.25rem;
	}
	
	.block_apply_now {
		justify-content: stretch;
	}
	
	.btn_new_job.apply_now {
		max-width: 100%;
	}
	
	.form_block.preview {
		gap: 2rem;
	}
	.form_block.preview .button_action {
		min-width: 32rem;
		height: 11rem;
		line-height: 11rem;
	}
	
	/* .metadata_item.starts_on {
		order: 4;
	}
	.metadata_item.location {
		order: 5;
	}
	.metadata_item.compensation {
		order: 6;
	} */
	
	.block_highlight {
		padding: 6rem 6rem;
		border-radius: 3rem;
	}
	
	
	section.form_card {
		padding: 4rem;
	}
	
	/* section.field_set + section.field_set {
		margin: 6rem 0 0 0;
		padding: 6rem 0 0 0;
	} */
	
	section.field_set.cols_2, section.field_set.cols_3 {
		grid-template-columns: 1fr;
		gap: 4rem;
	}
	
	section.field_set.cols_2_1 {
		display: grid;
		grid-template-columns: 1fr;
		gap: 4rem;
	}
	section.field_set.cols_2_1.tight {
		gap: 2rem;
	}
	
	section.field_set.cols_2_1 section.field_block:nth-of-type(1) {
		grid-column: 1;
	}
	
	.special_2_1_2 {
		grid-template-columns: 1fr;
		grid-template-rows: auto;
		
		align-items: center;
	}
	.special_2_1_2.and_or {
		grid-template-rows: auto 10rem auto;
	}
	
	.form_block.align_right {
		justify-content: start;
	}
	
	.button_action {
		min-width: 100%;
		height: 10rem;
		
		font-size: 3.75rem;
		line-height: 10rem;
	}
	
	.line_connector {
		width: 0.5rem;
		height: 100%;
		
		left: calc(50% - 0.25rem);
		top: 0;
	}
	.form_block.preview .line_connector {
		width: 100%;
		height: 0.25rem;
		
		left: 0;
		top: calc(50% - 0.25rem);
	}
	
	.flash_message.notice {
		grid-template-columns: auto;
		grid-template-rows: auto;
	}
	
}

@media screen and (max-width: 389px) {

	nav, header, main, footer {
		padding: 0 4rem;
	}
	
	main {
		padding: 6rem 4rem;
	}
	
	footer {
		padding: 6rem 4rem 8rem 4rem;
	}
}

.StripeElement {
	height: 12rem;
	
	margin: 0;
	padding: 3rem;
	
	font-family: inherit;
	color: rgb(24,31,46);
	color: rgb(30,30,32);
	letter-spacing: -0.006em;
	
	/* border: 0.5rem rgb(226,228,233) solid; */
	/* border: 0.5rem rgb(208,215,222) solid; */
	border: 0.5rem rgba(203,214,224,0.8) solid;
	/* border: 0.5rem rgb(222,222,222) solid; */
	/* border: 0.5rem rgb(211,211,211) solid; */
	/* border: 0.5rem rgba(22,25,29,0.2) solid; */
	/* border: 0.5rem rgba(229,229,229,1.0) solid; */
	border-radius: 1.5rem;
	background: hsla(100,100%,100%,1.00);
}

.StripeElement--focus {
	outline: none;
	border-color: rgb(49,118,246);
}
.StripeElement--invalid {
	outline: none;
	border-color: rgb(240,0,0);;
}


/* Animated Transitions */

@keyframes fadeIn {
  from {
	/* transform: scale(0.5); */
	opacity: 0;
  }
  to {
	/* transform: scale(1); */
	opacity: 1;
  }
}

@keyframes fadeOut {
  from {
	/* transform: scale(1); */
	opacity: 1;
  }
  to {
	/* transform: scale(0.5); */
	opacity: 0;
  }
}

/* ::view-transition-new(fade) {
  animation: fadeIn 0.5s ease forwards;
}

::view-transition-old(fade) {
  animation: fadeOut 0.5s ease forwards;
} */



button .show-when-disabled { display: none; }
button[disabled] .show-when-disabled { display: initial; }

button .show-when-enabled { display: initial; }
button[disabled] .show-when-enabled { display: none; }