/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type="button"],[type="reset"],[type="submit"],button{-webkit-appearance:button}[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checklist"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/* screen reader */
.sr-only {border:0;clip:rect(0, 0, 0, 0);height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}
.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;overflow:visible;position:static;white-space:normal;width:auto}

/* vars */
:root {
	--bg: #ffffff;
	--bg2: #363636;
	--bg3: #000000;
	--txt: #000000;
	--txt2: #ffffff;
	--txt3: #fa0101;
}

html {height: 100%; scroll-behavior: smooth}
body {background-color: var(--primary); display: flex; flex-direction: column; font-family: sans-serif; margin: 0 auto; max-width: 1920px; min-height: 100%}
[id] {scroll-margin-top: 7rem}
a {color: inherit}
a:hover{text-decoration: underline}
img {height: auto; max-width: 100%}
h2 {font-size: 2rem; text-transform: uppercase}
h3 {font-size: 1.4rem}
.container {padding: 0 1em}
.container > :first-child, .copy > :first-child {margin-top: 0}
.container > :last-child, .copy > :last-child {margin-bottom: 0}
.centered {text-align: center}
.footnote {font-size: 0.9rem; font-style: italic}
.button {background-color: var(--txt3); border-radius: 0.25rem; color: var(--txt2); display: inline-block; margin: 0.25rem; padding: 0.5rem 1rem; text-decoration: none}
.button:hover {text-decoration: none}
.videoholder {margin: 1rem auto; max-width: 720px}
.videowrapper:has(iframe) {height: 0; padding-bottom: 56.25%; position: relative}
.videowrapper iframe {height: 100%; left: 0; position: absolute; top: 0; width: 100%}
.videowrapper video {display: block; height: auto; object-fit: cover; width: 100%}

.field {margin: 1rem 0}
input, select, textarea {background-color: var(--bg); border: none; border-radius: 0.25rem; box-sizing: border-box; font-size: 1rem; padding: 0.5rem 1rem; width: 100%}
input[type="submit"] {background-color: var(--txt3); color: var(--txt2); cursor: pointer; font-size: 1.25rem; text-transform: uppercase}
[name="comments"] {display: none}
.form_deadline, .formhead, .formsubhead {font-weight: bold; text-transform: uppercase}
.form_deadline {font-size: 1.6rem}
.formheading {margin: 1rem 0}
.formhead, .formsubhead {margin: 0}
.formhead {font-size: 1.4rem}
.englishonly {background-color: var(--bg); color: var(--txt); margin: 1rem auto; padding: 1rem; width: max-content}

#header {background-color: var(--bg2); color: var(--txt2); padding: 1rem 0}
#header_logo .logo {display: block; margin: 0 auto; width: 240px}
#header_menu ul {align-items: center; display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; justify-content: center; list-style: none; padding: 0}
#header_menu a {font-weight: bold; text-decoration: none}
#header_phone_link {display: block; text-align: center; text-decoration: none}
#header_phone_link span {display: block}
#header_phone_num {font-size: 1.25rem; font-weight: bold}
#header_phone_label {color: var(--txt3); font-size: 1.125rem; font-weight: bold}
#header_phone_english_only {font-weight: bold; margin: 0; text-align: center}

main {flex-grow: 1}
main:has(#thanks) {display: flex; flex-direction: column}

#top_form {background-color: var(--bg3); color: var(--txt2); padding: 1rem; text-align: center}

#hero .container {padding: 0}
#hero_copy, #thanks {background-color: var(--bg3); background-image: url('../img/hero_640.jpg'); background-position: center; background-size: cover; color: var(--txt2); padding: 20% 1rem; position: relative; text-align: center}
#hero_copy::before, #thanks::before {background-image: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 0.5) 100%); bottom: 0; content: ""; left: 0; position: absolute; right: 0; top: 0; z-index: 0}
#hero_copy .copy, #thanks .copy {position: relative; z-index: 1}
#hero_copy h1 {font-size: 1.5rem; text-shadow: 0 0 3px #000000; text-transform: uppercase}

#thanks {flex-grow: 1; padding: 8rem 0}
#thanks .copy {background-color: #00000080; border-radius: 0.5rem; padding: 1rem}

section.section {margin: 4rem auto}
section.altcol {background-color: var(--bg2); color: var(--txt2); margin: 0; padding: 4rem 0}
.grid_item {margin: 1rem 0}
video.grid_item  {display: block; margin: 1rem auto; max-width: 720px; width: 100%}
.row {margin: 2rem 0}
.row .copyholder {margin: 1rem 0}
.row .imgholder {background-position: center; background-size: cover; padding-bottom: 61.8%}
#why_img1 {background-image: url('../img/box1_640.jpg')}
#why_img2 {background-image: url('../img/box2_640.jpg')}

#bottomform {background-color: var(--bg3)}
#footer {background-color: var(--bg2); color: var(--txt2); margin: 0; padding: 1rem 0}

@media(min-width: 640px){
	#hero_copy, #thanks {background-image: url('../img/hero_980.jpg')}
	#why_img1 {background-image: url('../img/box1_980.jpg')}
	#why_img2 {background-image: url('../img/box2_980.jpg')}
}

@media(min-width: 980px) {
	.container {margin: 0 auto; max-width: 1080px}
	.d-tbl {border-collapse: collapse; border-style: hidden; display: table; table-layout: fixed; width: 100%}
	.d-tbl.rev {direction: rtl}
	.d-tbl_row {display: table-row}
	.d-tbl_cell {border: 2em solid transparent; direction: ltr; display: table-cell; vertical-align: top}

	.fieldset {border-collapse: collapse; border-style: hidden; display: table; table-layout: fixed; width: 100%}
	.fieldset .field {border: 1rem solid transparent; display: table-cell; margin: 0; vertical-align: bottom}
	input, select, textarea {font-size: 1.25rem}
	input[type="submit"] {font-size: 1.5rem}
	.form .disclaimer {font-size: 0.75rem}

	#header .wrapper {align-items: center; display: flex; gap: 1rem; justify-content: space-between}
	#header_logo, #header_phone {flex-shrink: 0}
	#header_phone_num {font-size: 1.5rem}
	
	#hero .container {max-width: none}
	#hero_copy, #thanks {background-image: url('../img/hero.jpg')}
	#hero_copy, #top_form {border: none; vertical-align: middle}
	#hero_copy {padding: 2rem 4rem 2rem 8rem}
	#hero_copy h1 {font-size: 3rem; text-align: left}
	#top_form {padding: 2rem; width: 480px}
	
	.grid {display: flex; flex-wrap: wrap; gap: 2rem; justify-content: center}
	.grid_item {flex-basis: calc(50% - 1rem); flex-grow: 0; margin: 0}
	video.grid_item {margin: 0; max-width: none}
	
	.row .copyholder, .row .imgholder {border: 2rem solid transparent}
	.row .copyholder {font-size: 1.15rem; vertical-align: middle}
	.row .imgholder {background-clip: padding-box; padding-bottom: 20rem}
	
	#bottomform .form {margin: 0 auto; max-width: 720px; text-align: center}
}
