/*! 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: #edeef0;
	--bg3: #e7c32a;
	--bg4: #000000;
	--border: #fcad38;
	--button: #ea222b;
	--button2: #000000;
	--text: #5b606c;
	--text2: #ffffff;
	--text3: #000000;
	--body_width: 120rem;
	--container_width: 80rem;
}

/* general */
html {background-color: var(--bg4); height: 100%; scroll-behavior: smooth}
body {align-items: stretch; background-color: var(--bg); color: var(--text); display: flex; flex-direction: column; font-family: sans-serif; overflow-x: hidden; min-height: 100%; margin: 0 auto; position: relative; width: 100%}
main {flex-grow: 1}
h1, h2, h3, h4, h5, h6, p, li {margin: 1rem 0}
h1, h2, h3, h4, h5, h6 {color: var(--text3); line-height: 1}
h1 {font-size: 2.5rem}
h2 {font-size: 2rem}
h3 {font-size: 1.5rem}
h3.smaller {font-size: 1rem}
p {line-height: 1.5}
ul {padding-left: 1rem}
img {height: auto; object-fit: contain; max-width: 100%}
a {color: inherit}
/*[id] {scroll-margin-top: 12rem}*/
.container {padding: 0 1rem}
.button {background-color: var(--button); border: none; border-radius: 0.5rem; color: var(--text2); display: inline-block; font-weight: bold; height: auto; margin: 0 auto; padding: 1rem 3rem; text-align: center;  text-decoration: none}
.prehead {color: var(--button); display: block; font-size: 1rem; margin: 1rem 0 1.5rem 0}
.img {aspect-ratio: 1.618; background-color: gray; background-position: center; background-size: cover; border-radius: 1rem}
.videowrapper:has(iframe) {aspect-ratio: 1.7778; border-radius: 1rem; overflow: clip; position: relative}
.videowrapper iframe {height: 100%; left: 0; position: absolute; top: 0; width: 100%}
p.buttonholder {margin-top: 2rem}
.center, .m-center {text-align: center}
.disclaimer {font-size: 0.825rem}

/* form */
.field {margin: 1rem 0}
input, select, textarea {background-color: var(--bg); border: 1px solid var(--text); border-radius: 0.5rem; box-sizing: border-box; height: 2.5; padding: 0.5rem 1rem; width: 100%}
input[type="submit"] {background-color: var(--button); border: none; color: var(--text2); cursor: pointer; display: block; font-weight: bold; height: auto; margin: 0 auto; padding: 1rem 3rem}
[name="comments"] {display: none}
form a {color: inherit}

/* header */
#nojs {background-color: var(--button); border: 4px double var(--bg); color: var(--text2); font-weight: bold; padding: 1rem; text-align: center}
#top_bg_wrap {background-image: url(/assets/img/texture_960.jpg); background-position: center bottom; background-size: cover}
#header {position: absolute; top: 0; width: 100%; z-index: 1}
#header .container {padding: 0}
#headerwrap {align-items: center; display: flex; gap: 2rem; justify-content: space-between; position: relative}
#header_logo {display: flex; flex-direction: column; justify-content: center; padding: 0.5rem 1rem}
#header_logo img {width: 100px}
#nav_toggle {border: none; background-color: transparent; color: var(--text3); cursor: pointer; font-size: 4rem; padding: 0.5rem 1rem 0.5rem 0; width: 4rem}
#nav {background-color: var(--bg3); border: 2px solid var(--bg4); border-right: none; color: var(--text3); display:none; max-width: 100%; padding: 0.5rem 1rem; position: absolute; right: 0; top: 6rem}
#nav ul {list-style: none; margin: 0; padding: 0}
#nav li {display: block; margin: 0; padding: 0.5rem 0}
#nav li a {color: inherit; display: block; text-decoration: none}

/* hero */
#hero {color: var(--text3); margin: 0; padding: 20rem 1rem 4rem 1rem; position: relative;}
#hero::before {background-image: url('/assets/img/hero_960.png'); background-position: bottom center; background-size: cover; bottom: 0; content: ''; left: 0; opacity: 0.5; position: absolute; right: 0; top: 0; z-index: 0}
#hero .container {padding: 0; position: relative}
#hero .copy {text-align: center}
#form {background-color: #ffffffe0; border-radius: 1rem; color: var(--text3); margin: 2rem 1rem 0 1rem; padding: 1rem}

/* sections */
section {padding: 3rem 0}
section.altbg {background-color: var(--bg2); border: 1px solid var(--border); border-left: none; border-right: none}
section.altbg2 {background-color: var(--bg3); color: var(--text3)}
.altbg2 .button {background-color: var(--bg4)}
.subsection {margin: 2rem 0}
.subsection:first-child {margin-top: 0}
.subsection:last-child {margin-bottom: 0}
.m-auto {margin: 0 auto; max-width: max-content}
.subsection.subsection_cta {background-color: var(--bg3); border-radius: 2rem; color: var(--text3); padding: 2rem}
.subsection.subsection_cta .copy {font-size: 1.5rem; font-weight: bold}
.video_feature .copy {font-size: 1.125rem}
.boxcopy .copy {background-color: var(--bg3); border-radius: 1rem; color: var(--text3); margin: 2rem auto; padding: 1rem 4rem}
.altbg2 .boxcopy .copy {background-color: var(--bg)}

/* thanks */
main:has(#thanks) {background-image: url(/assets/img/thanks_960.jpg); background-size: cover}
#thanks {color: var(--text3); padding-top: 12rem}
#thanks h1 {font-size: 2rem}

/* footer */
footer {background-color: var(--bg4); color: var(--text2); padding: 1rem 0}

/* desktop */
@media(min-width: 60rem){
	body {max-width: var(--body_width); margin: 0 auto}
	h1 {font-size: 3.75rem}
	h2 {font-size: 2.25rem}
	h2.bigger {font-size: 3rem}
	h3.bigger {font-size: 2rem}
	.container {max-width: var(--container_width); margin: 0 auto}
	.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: 4rem solid transparent; direction: ltr; display: table-cell; vertical-align: top}
	.d-tbl_row .d-tbl_cell {border-top: none; border-bottom: none}
	.dbr {display: block}
	.m-auto {max-width: none}
	.m-center:not(.center) {text-align: left}
	
	/* form */
	.fieldset {border-collapse: collapse; border-style: hidden; display: table; table-layout:fixed; width: 100%}
	.fieldset .field {border: 1rem solid transparent; display: table-cell; vertical-align: bottom}
	
	/* header */
	#header .container {padding: 0 1rem}
	#header_logo {order: 1}
	#nav_toggle {display: none}
	#nav {background-color: transparent; border: none; display: block !important; flex-grow: 1; font-weight: bold; order: 2; position: static; text-align: right}
	#nav li {display: inline-block; margin: 0.5rem 1rem}
	#header_phone {order: 3}
	
	/* hero */
	#top_bg_wrap {background-image: url(/assets/img/texture_1920.jpg)}
	#hero {margin-bottom: 4rem; padding: 10rem 0 0 0}
	#hero::before {background-image: url('/assets/img/hero_1920.png')}
	#hero .container {padding: 0 1rem}
	#hero .copyholder {vertical-align: top}
	#hero .copy {padding: 10rem 0 0 0; text-align: left}
	#hero .formholder {width: 40%}
	#hero .subhead {font-size: 1.25rem}
	#form {position: relative; box-shadow: 0 0.5rem 1rem #00000080; margin: 0 0 -4rem 0; padding: 0}
	#form::before {background-image: url(/assets/img/fill_1.png); content: ''; height: 109px; left: 20%; position: absolute; top: 0; transform: translateY(-50%); width: 107px; z-index: 0}
	#form_bg {background-color: var(--bg); border-radius: 1rem; padding: 1rem; position: relative; z-index: 1}
	
	/* sections */
	section.decoration {position: relative}
	section.decoration::before {background-image: url('/assets/img/fill_2.png'); content: ''; height: 112px; left: 0; position: absolute; top: 4rem; width: 100px}
	section.decoration.decoration_middle::before {top: 50%; transform: translateY(-50%)}
	section.decoration.decoration_right::before {left: auto; right: 0}
	section.decoration .container {position: relative; z-index: 1}
	.copyholder.d-tbl_cell {vertical-align: middle}
	.subsection_cta {align-items: center; display: flex; gap: 4rem; justify-content: space-between}
	.subsection_cta .buttonholder {margin: 0}
	#bottom-form {margin: 0 auto; max-width: 980px}
	
	/* thanks */
	#thanks h1 {font-size: 3rem}
	.ty-copy {font-size: 1.25rem}
}