/*! 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}

:root{
	--brand: #25681f;
	--button: #ef6c22;
	--dark: #212529;
	--light: #f8f9fa;
}

html {height: 100%; scroll-behavior: smooth}
body {background-color: var(--light); color: var(--dark); display: flex; flex-direction: column; font-family: sans-serif; min-height: 100%; overflow-x: hidden; margin: 0 auto; max-width: 1920px}
main {flex-grow: 1}
h1, h2, h3, h4, h6, h6, p, ol, ul {margin: 1rem 0}
h1, h2, h3, h4, h6, h6 {line-height: 1}
h2 {font-size: 1.25rem}
li {line-height: 1; margin: 0.5rem 0}
img {height: auto; max-width: 100%}
a {color: inherit}
[id] {scroll-margin-top: 12rem}
.container {padding: 0 2rem}
.center {text-align: center}
body.js .toggled {display: none; overflow: hidden}
.buttonholder {align-items: center; display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center}
.button {background-color: #f44336; border-radius: 100em; color: #ffffff; cursor: pointer; display: inline-block; font-weight: bold; padding: 0.5em 2em; text-align: center; text-decoration: none; text-transform: uppercase}
.footnote a {color: #f44336; font-size: 0.75rem; text-decoration: none}
.disclaimer {font-size: 0.85rem; font-weight: normal}

/* form */
.field {margin: 1rem 0}
input[type="email"], input[type="submit"], input[type="tel"], input[type="text"], select {background-color: #ffffff; border: none; border-radius:0.5rem; box-sizing: border-box; color: #5e5e5e; padding: 0.5em; text-align: left; width: 100%}
input[type="submit"] {background-color: var(--button); color: #ffffff; cursor: pointer; font-weight: bold; text-align: center; text-transform: uppercase}
[name="comments"] {display: none}
fieldset {border: none; margin: 0; padding: 0}
legend, label {display: block; margin: 0 0 0.5rem 0; text-align: left}
.cb_fieldset {display: flex; flex-wrap: wrap; gap: 1rem}
.cb_field {display: flex; gap: 0.25rem}
.cb_field label {margin: 0}
.bigcb {align-items: center; gap: 0.5rem}
.bigcb input {height: 1.5rem; width: 1.5rem}
.icon_input {position: relative}
.icon_input:has(select)::after{content: url('../img/downArrow.png'); height: 15px; right: 0.5rem; position: absolute; top: 50%; transform: translateY(-50%); width: 20px}
.icon_input input, .icon_input select {padding-right: 2rem}
.icon_input select {-webkit-appearance: none; -moz-appearance: none; appearance: none}
#top_form, #getStarted, #modal_form {background-color: var(--brand); color: #ffffff; padding: 2rem; text-align: center}
#top_form h2, #getStarted h2, #modal_form h2 {font-size: 2.125rem}
.deadline {color: var(--button); font-size: 1.7rem}
.container.video_container {margin: 2rem auto; max-width: 40rem}
.video_wraper:has(iframe) {aspect-ratio: 16 / 9; position: relative}
.video_wraper iframe {display: block; height: 100%; left: 0; position: relative; top: 0; width: 100%}

/* header */
#header {background-color: var(--light); position: sticky; top: 0; padding: 0.5rem 0; text-align: center; z-index: 10}
#logo img {display: block; margin: 0 auto; max-height: 4rem; width: auto}
#menu {align-items: center; display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; justify-content: center; list-style: none; margin: 0.5rem 0; padding: 0}    
#menu > li {margin: 0}
#menu > li > a {color: black; font-weight: bold; text-decoration: none}
#phone {color: var(--brand); font-size: 1.25rem}
#phone p {margin: 0}
#phone a {color: inherit; text-decoration: none}

/* hero */

#hero {background-color: var(--brand); background-image: url('../img/hero/hero_960.jpg'); background-position: center; background-size: cover; display: flex; flex-direction: column; justify-content: end; position: relative}
#hero iframe {height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0}
#hero .container {margin: 0 auto; position: relative; z-index: 1}
#hero_copy {background-color: #000000a0; border-radius: 1rem; color: #ffffff; padding: 1rem 2rem; margin: 40% 0 1rem; text-align: center}
#hero_copy h1 {font-size: 1.5rem}
#hero_copy h1 span {display:block; font-size: 1.25rem}
#top_form {padding-top: 1}
/*thanks*/
main:has(#hero.thanks) {display: flex; flex-direction: column}
#hero.thanks {aspect-ratio: auto; flex-grow:1; justify-content: center; padding: 4rem 0}
#hero.thanks .container {margin: 0}

/* sections */
.section {margin: 3rem 0}
.section.bg {margin: 0; padding: 2rem 0}
/*form*/
.section.form_section {background-color: var(--brand); color: var(--light); text-align: center}
/*rows*/
.section:has(.rows:first-child) {margin-top: 0}
.section:has(.rows:last-child) {margin-bottom: 0}
.rows {padding: 0}
.row .imgholder.img {aspect-ratio: 1.5; background-position: center; background-size: cover; border-radius: 0.5rem}
.row .imgholder .video_wraper {border-radius: 0.5rem; overflow: clip}

/* footer */
#footer {background-color: var(--dark); color: var(--light); padding: 1rem 0}
#footer .copyright {text-align: center}
#footer .copyright p {margin: 0.25rem 0}

/* modal form */
#modal_form_wrap {display: none}
body.modal {overflow: hidden}
body.modal #banner {visibility: hidden; z-index: 0}
body.modal #modal_form_wrap {background-color: #000000e0; border: none; display: flex; height: 100%; flex-direction: column; left: 0; overflow: auto; margin: 0; padding: 0; position: fixed; top: 0; width: 100%; z-index: 10}
body.modal #ui-datepicker-div {position: absolute !important}
#modal_form_inner {align-items: center; display: flex; flex-direction: column; flex-grow: 1; justify-content: center}
#modal-form {background-color: var(--brand); border: 1px solid var(--light); border-radius: 1rem; color: var(--light); max-width: 30rem; padding: 1rem 2rem; position: relative}
#modal_closer {color: #ffffff; font-size: 2rem; line-height: 1; position: absolute; right: 0.5rem; text-decoration: none; top: 0.5rem}

@media(min-width: 60rem){
	h2 {font-size: 1.5rem}
	[id] {scroll-margin-top: 5rem}
	.container {margin: 0 auto; max-width: 80rem}
	
	/* form */
	.fieldset {border-collapse: collapse; border-style: hidden; display: table; margin: 1rem 0; table-layout: fixed; width: 100%}
	.fieldset .field {border: 1rem solid transparent; display: table-cell; margin: 0}
	#top_form h2, #getStarted h2 {font-size: 1.75rem}
	.deadline {font-size: 1.3125rem}
	#getStarted .container {max-width: 40rem}
	
	/* header */
	#header .container {align-items: center; display: flex; justify-content: space-between}
	#phone {flex-shrink: 0; font-size: 1.25rem; text-align: right}
	
	/* hero */
	#hero_wrap {aspect-ratio: auto; display: table; table-layout: fixed; width: 100%}
	#hero {background-image: url('../img/hero/hero.jpg'); display: table-cell; vertical-align: bottom}
	#hero_copy {font-size: 1.25rem; margin: 0 auto 1rem; max-width: 48rem}
	#hero_copy h1 {font-size: 2rem}
	#top_form {display: table-cell; width: 450px}
	/*thanks*/
	#hero.thanks {display: flex}
	#hero.thanks .container {margin: 0 auto; max-width: 60rem}
	#hero.thanks #hero_copy {margin: 0 auto}
	
	/* sections */
	/*form*/
	.section.form_section .container {max-width: 40rem}
	/*rows*/
	.row {align-items: center; display: flex; gap: 2rem}
	.row.rev {flex-direction: row-reverse}
	.row .copyholder, .row .imgholder {flex-basis: 50%; flex-shrink: 1}
	.row .imgholder.img {align-self: stretch; aspect-ratio: auto}
	.row .copyholder > :first-child {margin-top: 0}
	.row .copyholder > :last-child {margin-bottom: 0}
	
	/* footer */
	#footer .copyright p {display: inline-block; margin: 0}
	#footer .copyright p:after {content: '\a0|'; display: inline-block; margin: 0 0.5rem;}
	#footer .copyright p:last-child::after {content: ''}
}