@charset "utf-8";
:root { --min-width:320px; --max-width:768px;
  --main-font:16px/1.4em myriad-pro, sans-serif; --alt-font:myriad-pro-condensed, sans-serif;
  --blueP:#242e80; --blueL:#4653a0; --blueD:#11175a; --blueH1:#d9ddff; --blueH2:#e5e8ff;
  --rustP:#832931; --rustD:#5c1d22; --rustH:#e5dadb;
  --highlight:#626BB3; }

.grecaptcha-badge { display:none; }
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent; }
blockquote, q {	quotes:none; }
blockquote:before, blockquote:after, q:before, q:after { content:''; content:none; }

/* remember to define focus styles! */
:focus { outline:0; }

/* remember to highlight inserts somehow! */
ins { text-decoration:none; }
del { text-decoration:line-through; }

/* tables still need 'cellspacing="0"' in the markup */
table { border-collapse:collapse; border-spacing:0; }

div, label, footer, input, button, textarea, select {
	-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }

abbr, acronym { border-bottom-width:0 !important; text-decoration:none; }

.clearfix { visibility:hidden; display:block; font-size:0; content:''; clear:both; height:0; }

html { width:100%; height:100%; font:var(--main-font); font-weight:400; font-style:normal;
	font-size-adjust:100%; -webkit-text-size-adjust:100%; -moz-text-size-adjust:100%; -ms-text-size-adjust:100%;
	-o-text-size-adjust:100%; text-size-adjust:100%; }

body { margin:0; padding:0; background:var(--blueH2); }

h1, h2, h3, h4 { font-family:var(--alt-font); letter-spacing:.5px; }
h1 { font-size:1.6em; line-height:1em; font-weight:bold; font-weight:900; text-transform:uppercase; }
h2 { padding:16px 0 0; font-size:1.3em; line-height:1em; font-weight:bold; font-weight:700; }
h3 { padding:16px 0 0; font-size:1.1em; font-weight:bold; font-weight:600; }
h4 { font-weight:bold; font-weight:600; text-transform:uppercase; }
p { padding:16px 0 0; } strong { font-weight:600; }

ul, ol, dl { margin:0.5em 0 0.5em 0; padding:0; }
ul { list-style:none; }
ol { padding:0 12px 0 26px; margin:0; text-align:justify; }
ol > li { padding:8px 0 8px 8px; margin:0; }
ol > li::marker { content:'('counter(list-item)')'; font-size:.85em; }

input, textarea, select, button {
  font:var(--main-font); font-weight:400; color:#000; letter-spacing:.5px; vertical-align:baseline; *vertical-align:middle;
  -webkit-border-radius:0; -moz-border-radius:0; border-radius:0; }
input, select, button { line-height:normal; *overflow:visible; }
input[type='submit'], input[type='reset'], input[type='button'], button { cursor:pointer; -webkit-appearance:button; }
textarea { overflow:auto; vertical-align:top; }
input, select, textarea { -webkit-appearance:none; -moz-appearance:none; appearance:none; outline:0; }

a { color:var(--blueP); text-decoration:underline; background-color:transparent; }
  a:hover { text-decoration:none; } a:focus { text-decoration:none; outline:thin dotted; }
  a:hover, a:active { outline:0; } a span { text-decoration:inherit; }

::-webkit-input-placeholder { color:var(--blueL); }
:-moz-placeholder { color:var(--blueL); } ::-moz-placeholder { color:var(--blueL); }
:-ms-input-placeholder { color:var(--blueL); }

.container { min-width:var(--min-width); width:100%; min-height:440px; margin:0 auto; overflow:hidden; }


/*** Browser Message ***/
.browser-message { width:600px; margin:12px auto 0; padding-bottom:24px;
  background:rgba(255,255,255,.2); border:1px solid #fff; border-top:0; }
.browser-message h1 { font-size:1.8em; line-height:1em; font-weight:bold; font-weight:900; text-transform:uppercase; }
.browser-message p { padding:8px 20px; text-align:justify; }
.browser-message table { margin:20px auto 0; text-align:center; }
.browser-message td { width:60px; padding:0 20px; font-size:.8em; line-height:1.2em; }


/*** Header ***/
header { background:var(--blueH2); }
h1 { position:relative; padding:20px 12px; margin:0; text-align:center;
	background:var(--blueH1); border-top:4px solid #fff; }
  h1::after { position:absolute; content:''; z-index:1; pointer-events:none; bottom:-10px; left:50%; width:20px; height:20px;
	  background-color:var(--blueH1);
	  -webkit-transform:translateX(-50%) rotate(45deg); transform:translateX(-50%) rotate(45deg); }
.logo { display:block; width:165px; height:50px; margin:0 auto 12px;
  background-image:url('//www.riverbanks.org/template-v2022/graphics/logo.svg'); background-repeat:no-repeat; background-size:contain; }
header > p { max-width:calc(var(--max-width) - 40px); padding:32px 20px 24px; margin:0 auto; text-align:justify; }
  .confirmation > p { text-align:center; }


/*** Section + form styles ***/
form { background:var(--blueH2); } article { max-width:var(--max-width); margin:0 auto; }
h2 { position:relative; padding:8px 20px; margin:0; text-transform:uppercase; transition:all .2s ease;
  font-size:1em; color:#fff; background-color:var(--blueL); border-top:1px solid var(--blueD); cursor:pointer; text-align:center; }
	h2.current::after { position:absolute; content:''; z-index:1; pointer-events:none;
		bottom:-6px; left:50%; width:10px; height:10px;
		background-color:var(--rustP); border-right:1px solid var(--rustD); border-bottom:1px solid var(--rustD);
		-webkit-transform:translateX(-50%) rotate(45deg); transform:translateX(-50%) rotate(45deg); }
.current { padding:16px 20px 8px; font-size:1.3em; background-color:var(--rustP);
  border-top-color:var(--rustD); border-bottom:1px solid var(--rustD); cursor:default; }
h2:not(.current):hover, h2:not(.current):focus { background-color:var(--blueP); }
  h2:not(.current):active { background-color:var(--blueD); }

.content { padding:0 0 100px; }
.content > p { padding:20px; margin-bottom:0; text-align:justify; border-bottom:1px solid rgba(255,255,255,.8); }

h3 { clear:both; position:relative; padding:8px 20px; margin-top:1.0em; margin-bottom:0;
  color:var(--blueP);	text-align:center; text-transform:uppercase; background-color:#c3c8f1;
	border-top:1px solid rgba(255,255,255,.8); border-bottom:1px solid rgba(255,255,255,.8); }
	h3::after { position:absolute; content:''; z-index:1; pointer-events:none;
		bottom:-6px; left:50%; width:10px; height:10px;
		background-color:#c3c8f1; border-right:1px solid rgba(255,255,255,.8); border-bottom:1px solid rgba(255,255,255,.8);
		-webkit-transform:translateX(-50%) rotate(45deg); transform:translateX(-50%) rotate(45deg); }

.element, .terms { clear:both; position:relative; display:block; width:100%; margin:0;
  border-bottom:1px solid rgba(255,255,255,.8); }
.terms { padding:16px 8px; margin:0; }
.ext-info { padding:4px 20px 20px; text-align:justify; border-bottom:1px solid rgba(255,255,255,.8); }
.group > span { display:block; padding:8px 20px 4px; font-weight:600; color:#4653a0;
	background:var(--blueH1); border-bottom:1px solid rgba(255,255,255,.8); }

label { padding:0; margin:0; font-weight:600; }
label:not(.skip) { cursor:pointer; } .active, .element:not(.skip):hover { background-color:rgba(255,255,255,.4); }
label > span { display:inline-block; width:70%; }
.inner { display:block; } .no-padding { padding:0; }
.float { position:absolute; margin-top:24px; }

.label-input span { display:block; width:unset; padding:8px 20px 4px; font-weight:600; color:#4653a0;
	background:var(--blueH1); border-bottom:1px solid rgba(255,255,255,.8); }
.label-input div { padding:4px 8px 20px; }

input, textarea, .add-fields, .upload button {
  margin-top:0.3em; -webkit-appearance:none; outline:none; box-shadow:none !important; 
	background-color:rgba(255,255,255,.6); border:0; -webkit-border-radius:4px; -moz-border-radius:4px;
  border-radius:4px; }
	input[type="text"], input[type="email"], input[type="tel"], input[type="number"], textarea { width:100%; }
	input { height:36px; padding:0; text-indent:12px; }
  input:-webkit-autofill { color:#fff !important; }
textarea { min-width:calc(100% - 2px); max-width:calc(100% - 2px); height:114px; min-height:114px; max-height:182px;
  padding:12px; margin-left:1px; }
input:focus, textarea:focus { outline:1px solid var(--blueL); }

/* Checkbox toggle */
.label-toggle { padding:16px 20px 20px; } .label-toggle span { color:var(--blueL); }
  .label-toggle:focus { background-color:rgba(255,255,255,.4); }
.toggle input[type="checkbox"] { display:none; }
.toggle { float:right; position:relative; top:0; display:inline-block; vertical-align:middle; width:70px; height:24px;
	border:1px solid #c3c8f1; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px;
	-webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; overflow:hidden; }
  .no-float { float:none; top:0; } .toggle:after { clear:both; }
.toggle-inner { position:absolute; top:0; width:200%; margin-left:-100%;
    -moz-transition:margin 0.3s ease-in 0s; -webkit-transition:margin 0.3s ease-in 0s;
    -o-transition:margin 0.3s ease-in 0s; transition:margin 0.3s ease-in 0s; }
  .toggle-inner:before, .toggle-inner:after { float:left; width:50%; padding:0;
      font-size:.8em; font-weight:600; line-height:22px; color:var(--blueL); text-align:center;
      -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box; }
    .toggle-inner:before { content:'YES'; padding-right:15%; background-color:#fff; }
    .toggle-inner:after { content:'NO'; padding-left:15%; }
  .label-toggle:hover .toggle, .focused { border-color:var(--blueL); }
  .toggle input[type="checkbox"]:checked + .toggle-label .toggle-inner { margin-left:0; }
.toggle-switch { position:absolute; top:0; right:47px; width:22px; height:24px;
    background:#c3c8f1; -moz-transition:right 0.3s ease-in 0s; -webkit-transition:right 0.3s ease-in 0s;
    -o-transition:right 0.3s ease-in 0s; transition:right 0.3s ease-in 0s; }
  .label-toggle:hover .toggle-switch, .focused .toggle-switch { background-color:var(--blueL); }
  .toggle input[type="checkbox"]:checked + .toggle-label .toggle-switch { right:0; }

/* Checkbox check */
input[type="checkbox"].check { position:absolute; z-index:5; opacity:0; }
  input[type="checkbox"].check + label { display:block; padding:12px 20px 12px 12px; margin:0; vertical-align:middle; cursor:pointer; font-weight:normal; }
    input[type="checkbox"].check + label:before { position:relative; top:0px; display:inline; padding-right:8px; vertical-align:middle;
      content:"\f0c8"; font:28px/1em FontAwesome; color:rgba(255,255,255,.6); cursor:pointer; }
      input[type="checkbox"].check:focus + label:before { content:"\f14a"; color:#c3c8f1; }
      input[type="checkbox"].check:checked + label:before { content:"\f14a"; color:var(--blueL); }
      input[type="checkbox"].check:checked:focus + label:before { color:var(--blueP); }

.add-fields { height:36px; } .add-focused { outline:1px solid var(--blueL); }
  .add-fields input, .add-fields span { position:relative; top:4px; left:0; }
  .add-fields input { width:28px; height:16px; border:0; text-align:center; background-color:transparent; }
    .add-fields input:focus { outline:none; }  
  .add-fields span { left:6px; }
  .add-fields .toggle { float:none; top:3px; width:44px; height:16px; margin-left:8px; }
    .add-fields .toggle-inner:before, .add-fields .toggle-inner:after { font-size:.7em; line-height:14px; font-weight:normal; color:#000;
      background-color:transparent; }
      .add-fields .toggle-inner:before { content:'AM'; padding-left:0; }
      .add-fields .toggle-inner:after { content:'PM'; padding-right:0; }
    .add-fields .toggle-switch { right:29px; width:14px; height:16px; margin:0; }
  .add-fields:after { clear:both; }

/* Radio select */
.radio-slct > input[type="radio"] { display:none; }
	.radio-slct > input[type="radio"] + label { display:inline-block; height:26px; width:100%; text-align:center; line-height:18px; cursor:pointer; 
		background-color:transparent; border:1px solid #c3c8f1; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }
  	.radio-slct > input[type="radio"] + label:first-of-type { margin-left:0; }
  	.radio-slct > input[type="radio"] + label:hover, .radio-slct > input[type="radio"] + label:focus { border-color:var(--blueL); }
	.radio-slct > input[type="radio"]:checked + label { background-color:#fff; }

/* File upload */
.upload input { position:absolute; left:-999px; }
.upload button { width:100%; height:32px; padding:0; font-weight:600; text-transform:uppercase; cursor:pointer;
	background-color:var(--blueL); }
  .upload button i { font-size:1em; } .upload button span { display:inline; padding:0; }
  .upload button:hover, .upload button:focus { background-color:var(--blueP); }
    .upload button:active { background-color:var(--blueD); }
  .upload button.active { color:#fff; background-color:var(--rustP); }
    .upload button.active:hover, .upload button.active:focus { background-color:var(--rustD); }


/* Content grid */
.row { clear:both; width:100%; overflow:hidden; padding:4px 8px 12px; } .row label { font-weight:normal; }
  .label-toggle .row.ext { position:relative; left:-12px; width:calc(100% + 24px); padding:0; }
    .label-toggle .row.ext label { display:block; padding:16px 12px 0; }
.col { float:left; display:inline-block; margin-left:1%; padding:0 0%; border:0px solid rgba(0,0,0,0);
    -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box;
    -moz-background-clip:padding-box !important; -webkit-background-clip:padding-box !important; background-clip:padding-box !important;
} .col > label { display:block; padding:4px 12px 0; font-size:12px; color:var(--blueP); }
.reversed { margin:0 0 0.6em; } /*.reversed > label { color:#333333; }*/
.col > .info { padding:4px 12px; margin:4px 0; font-size:.8em; line-height:1.3em; color:var(--blueP);
    background:var(--blueH1); border-radius:4px; text-align:justify; }
.row .col:first-child { margin-left:0; }
  .span_1 { width:11.625%; }
  .span_2 { width:24.25%; }
  .span_3 { width:36.875%; }
  .span_4 { width:49.5%; }
  .span_5 { width:62.125%; }
  .span_6 { width:74.75%; }
  .span_7 { width:87.375%; }
  .span_8 { display:block; margin-left:0 !important; width:100%; }


/* Drop-styled select */
.drop-styled { position:relative; display:block; vertical-align:middle; overflow:hidden; height:36px; margin:4px 0 0;
    background-color:rgba(255,255,255,.6); border:0; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }
  .active .drop-styled { outline:1px solid var(--blueL); }
.drop-styled select { position:relative; top:2px; z-index:1; width:100%; background-color:transparent;
	background-image:none; -webkit-appearance:none; border:none; box-shadow:none; cursor:pointer; }
	.ie10 .drop-styled select, .lt-ie10 .drop-styled select { width:110%; }
	@media all and (-ms-high-contrast:none) { .drop-styled select { width:110%; } }
.drop-btn { position:absolute; top:2px; right:2px; color:var(--blueL); }
  .drop-btn i { line-height:1em; }


/*** Footer ***/
footer { position:fixed; z-index:2; bottom:0px; width:100%; height:100px; color:#fff;
	background:rgba(36,46,128,.95); border-top:1px solid var(--blueD); } footer a { color:inherit; }
  @supports (-webkit-backdrop-filter:none) or (backdrop-filter:none) {
    footer { -webkit-backdrop-filter:blur(5px); backdrop-filter:blur(5px); } }
.footer-container { max-width:var(--max-width); margin:0 auto; padding:12px 20px; }
button { display:inline-block; vertical-align:middle; cursor:pointer; color:#fff;
	font-family:var(--alt-font); line-height:1em; text-transform:uppercase; transition:all .2s ease-in-out;
	border-width:1px; border-style:solid; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }
  button:focus { outline:2px solid #fff !important; } button::-moz-focus-inner { border:0; }
button[type="submit"], #continue { float:right; padding:6px 8px 6px 14px; font-size:1.4em; background:var(--rustP);
  border-color:rgba(229,218,219,.2); } button[type="submit"]:hover, #continue:hover { background-color:var(--rustD); }
button[type="reset"], #back { float:left; padding:6px 12px 6px 10px; font-size:1em; background:var(--blueL);
  border-color:rgba(229,232,255,.2); } #back { margin-left:10px; }
  button[type="reset"]:hover, #back:hover { background-color:var(--blueP); }
.button-active { background-color:#ffe4c2; }
footer p { padding-top:54px; font-size:.8em; line-height:1.2em; text-align:center; }