

/******************
** BASE STYLES
*******************/


.meeting-form { font-family:"ff-dagny-web-pro",Arial,"Helvetica Neue",Helvetica,sans-serif }
.meeting-form a, .meeting-form a:link { text-decoration:underline; }
.meeting-form * { box-sizing: border-box; }

@media (min-width:768px) {
  .meeting-form.no--padding { margin:0 -20px; }
}
.visually-hidden, .sr-only { position:absolute; overflow:hidden; clip:rect(0 0 0 0); margin:-1px; padding:0; border:0; width:1px; height:1px; }

.grey--text { color:#888; }



/******************
** TYPOGRAPHY/BUTTONS
*******************/

.grey--text { color:#888; }


/*** Hedaers ***/

.meeting-form h2 { margin:25px 0 10px; font-size:2.2em; color:#26728C; font-weight:normal; }
.meeting-form h2.page-heading { margin-top:2.3em; }
.meeting-form h3 { margin:25px 0 10px; font-size:1em; color:#26728C; }
.meeting-form h3.upper--header { text-transform:uppercase; }


/*** Text/header classes ***/

.meeting-form .large--text { font-size:1.3em; }
.meeting-form .large--text span { font-size:.9em; }


/*** Buttons ***/

/* Base button styles */
.meeting-form .meeting-form__button, 
.meeting-form .meeting-form__button:link { 
  position:relative;
  padding:16px 0; 
  font-weight:bold; 
  text-align:center; text-decoration:none; text-transform:uppercase; 
  border-radius:5px; 
  transition:all .3s; 
}

/* Basic Button */
.meeting-form .meeting-form__button.button--basic { display:inline-block; margin-bottom:20px; padding:15px; color:#fff; border:2px solid #1e6fa4; background:#1e6fa4; }
.meeting-form .meeting-form__button.button--basic:hover, .meeting-form .meeting-form__button.button--basic:focus { color:#1e6fa4; background:#fff;   }

/* Alternate white button */
.meeting-form .button--alt { display:inline-block; margin-bottom:20px; padding:15px; border:2px solid #1e6fa4; color:#1e6fa4; background:#fff; }
.meeting-form .button--alt:hover, .meeting-form .button--alt:focus { background:#1e6fa4; border-color:#fff; color:#fff; }

/* Continue Button */
.meeting-form .button--continue { display:block; margin-left:40px; width:215px; color:#fff; border-bottom:4px solid #00131e; background:#1e6fa4;  }
.meeting-form .button--continue:after {
  content:''; display:block;
  position:absolute; top:20px; right:15px;
  width:10px; height:0;
  border-top:5px solid transparent; border-bottom:5px solid transparent; border-left:10px solid #fff;
  transition:all .3s;
}
.meeting-form .button--continue:hover, .meeting-form .button--continue:focus { transform:translateY(2px); border-bottom:4px solid transparent; color:#fff; }
.meeting-form .button--continue:hover:after, .meeting-form .button--continue:focus:after { right:10px; }

/* Badge Specific Buttons */
.meeting-form .button--badge, .meeting-form .button--badge:link { padding:10px 15px; margin-right:15px; }

.meeting-form .button--basic.button--badge { padding-left:55px; }
.meeting-form .button--basic.button--badge svg { position:absolute; left:15px; top:0; width:30px; height:30px; fill:#fff; transition:all .3s; }
.meeting-form .button--badge:hover, .meeting-form .button--badge:focus { background:#fff; border-color:#1e6fa4; }
.meeting-form .button--badge:hover svg, .meeting-form .button--badge:focus svg { fill:#1e6fa4; }

.meeting-form .button--alt.button--badge { padding:10px 28px; }
.meeting-form .button--alt.button--badge:hover, .meeting-form .button--alt.button--badge:focus { background:#1e6fa4; color:#fff; }

.meeting-form__rail .button--alt { box-sizing:border-box; display:block; width:calc(100% -20px); margin:0 10px; font-size:1.1em; }
.meeting-form__rail .button--alt svg { position:relative; top:5px; width:20px; height:20px;}
.meeting-form__rail .button--alt:hover svg { fill:#fff; }


/*** Text seperator ***/

.text__seperator { display: block; position: relative; margin-bottom: 5px; font-weight: bold; text-align: center; }
.text__seperator:before { content:''; display: block; position: absolute; left: 0; top: 9px; width: 100%; height: 1px; background: #ccc; }
.text__seperator span { display: inline-block; position: relative; padding: 0 18px; width: auto; background: #fff; }


/*** Check list ***/

.check--list {list-style-image: url(../../Images/checkfilled.png) }



/*** Split List ***/

.check--list.list--split li { display:list-item; }

@media (min-width:768px) {
  .list--split { column-count: 2; }
  .list--split li { display:inline-block; width:100%; }
}



/*** Unstyled ***/

.list--unstyled { margin:0; padding:10px 0; }
.list--unstyled li { list-style-type:none; padding:3px 0; margin:0; } 


.meeting-form_sumamry-list { list-style:none; margin:0 0 20px; padding:0; max-width:400px; }
.meeting-form_sumamry-list li { overflow:hidden; padding:5px 0; margin:0;}
.meeting-form_sumamry-list li span { display:block; }


@media (min-width:768px) {
  .meeting-form_sumamry-list li span { float:right; }
}

/*** Top Link ***/

.meeting-form .top__link, .meeting-form .top__link:link { position:relative; width:80px; float:right; font-weight:bold; text-transform:uppercase; display:block; text-align:center; text-decoration:none }
.top__link:before { content:''; display:block; width:20px; height:20px; border:1px solid #1e6fa4; border-radius:40px; position:absolute; top:-25px; left:40%; }
.top__link:after { content:''; display:block; border-top:1px solid #1e6fa4; border-right:1px solid #1e6fa4; width:5px; height:5px; transform:rotate(-45deg); position:absolute; top:-15px; left:50%; }





/******************
** MAIN WRAPS/CONTAINER
*******************/


/*** Form Wrap ***/

.meeting-form__wrap { }

@media (min-width:768px) {
  .meeting-form__wrap { display:table; width:100%; }
}


/*** Main Content ***/

.meeting-form__main { padding:20px 15px; vertical-align:top; }

@media (min-width:768px) {
  .meeting-form__main { display:table-cell; padding:20px 40px 20px 35px; }
}


/*** Side Rail ***/

.meeting-form__rail { background:#f7f7f7; }
.meeting-form__rail-logo { text-align:center; }

@media (min-width:768px) {
  .meeting-form__rail { display:table-cell; width:245px; }
}





/******************
** TABLES
*******************/


/*** Table wrap ***/

.meeting-form__table-wrap { border-radius:5px; border:1px solid #999; margin-bottom:20px; }


/*** Main product table ***/

.meeting-form__table { border-radius:5px; margin:0; width:100%; }
.meeting-form__table thead { display:none; background:#fff; }
.meeting-form__table th { border:0;border-left:1px solid #999; padding:10px; background:#fff; border-bottom:1px solid #999; }
.meeting-form__table th:first-child { border-left:0; }
.meeting-form__table tr { border:0; border-top:1px solid #999; }
.meeting-form__table tr:first-child { border:0; }
.meeting-form__table tr, .meeting-form__table tr:nth-child(odd) { background:#FBFBFB; }
.meeting-form__table.no--alternating tr, .meeting-form__table.no--alternating tr:nth-child(odd) { background:#fff; }
.meeting-form__table tr:nth-child(even) { background:#fff; }
.meeting-form__table td { display:block; width:100%; border:0; padding:10px; }
.meeting-form__table td:first-child { vertical-align:top; padding:10px; width:auto; border:0;   }
.meeting-form__table tr:first-child td { border-top:0; }
.mobile__label { display:block; }
.meeting-form__table tr.sold--out { background:#FFF3F3; }
.meeting-form__table tr.sold--out strong { color:#BD3C27; }
.meeting-form__table tr.sold--out label:before, .meeting-form__table tr.sold--out label:after { display:none !important; }

@media (min-width:768px) {
  .meeting-form__table { }
  .meeting-form__table thead { display:table-header-group; }
  .meeting-form__table th:first-child {display:table-cell;  position:relative; padding-left:60px;}
  .meeting-form__table th:first-child:before { content:''; display:block; width:1px; height:100%; background:#666; position:absolute; top:0; left:45px;}
  .meeting-form__table td { display:table-cell; border-left:1px solid #999; }
  .meeting-form__table td:first-child { vertical-align:middle; }
  .meeting-form__table tr:first-child td { border-top:0; }
  .mobile__label { display:none; }
}


/*** Checkout table ***/

.meeting-form__table.checkout--table tr { border-top:1px solid #ccc; }
.meeting-form__table.checkout--table th { vertical-align: bottom; border-left:0; background:#eef7fc; }
.meeting-form__table.checkout--table th:first-child { padding-left:15px;  }
.meeting-form__table.checkout--table th:first-child:before { display:none; }
.meeting-form__table.checkout--table td, 
.meeting-form__table.checkout--table td:first-child { display:inline-block; border:0; }
.meeting-form__table.checkout--table td.split--cell { width:50%; }
.meeting-form__table.checkout--table td { vertical-align:bottom; padding:15px; } 
.meeting-form__table.checkout--table td:first-child { min-width:230px; text-align:left; }
.meeting-form__table.checkout--table td:first-child > strong { display:block; margin-bottom:8px; }

.meeting-form__table.checkout--table tfoot td:first-child { text-align:right; font-weight:bold; background:#eee; width:100%; }
.meeting-form__table.checkout--table .input--small { display:inline-block; margin-right:5px; height:30px; max-width:30px; }

@media (min-width:768px) {
  .meeting-form__table.checkout--table tr { border-top:0; }
  .meeting-form__table.checkout--table td, 
  .meeting-form__table.checkout--table td:first-child, 
  .meeting-form__table.checkout--table tfoot td:first-child { display:table-cell; vertical-align:bottom; } 
  .meeting-form__table.checkout--table td:last-child { min-width:120px; vertical-align:bottom; } 
  .meeting-form__table.checkout--table.large--firstCol td:first-child { min-width:430px; }
}





/******************
** FORM STYLES
*******************/


fieldset { margin:0;border:0; } 
fieldset legend { padding:0; } 


/*** Form Rows ***/

.meeting-form__row { padding:5px 0 0; width:100%; }

@media (min-width:768px) {
  .meeting-form__row { display:table; }
}


/*** Form Group ***/

.meeting-form__group { position:relative; padding:5px 0 15px; }
.meeting-form__group p { margin-top:0; }

@media (min-width:768px) {
  .meeting-form__group { display:table-cell; padding:5px 45px 15px 0;  }
  .meeting-form__row.row--dual-inputs .meeting-form__group { width:50%; }
  .meeting-form__row.row--single-input .meeting-form__group { display:inline-block; width:50%; }
} 

.state--select { display:block; }
.meeting-form__row.row--dual-inputs .meeting-form__group.state--select { width:100%; }
.state--text { display:none; }



/*** Donate Form Group ***/

.meeting-form__group.donate--group .donate__option:before { top:16px; }
.meeting-form__group.donate--group .donate__option:after { top:21px; }
.meeting-form__group.donate--group .button--alt { margin-bottom:0; }
.meeting-form__group.other--group { display:none;  }


/*** Labels ***/

.meeting-form__label > span, 
.meeting-form__label legend { display:block; margin-bottom:7px; font-weight:bold; color:#3E4347; }
.meeting-form__label > span > span, 
.meeting-form__label  legend > span { font-weight:normal; }

.registration__selection { position:relative; }
.registration__price { color:#1e6b9f; font-size:1.1em; }
.registration__price-new { display:inline-block; margin-left:10px; color:darkgreen; }

@media (min-width:768px) {
  .registration__selection:before { content:''; display:block; position:absolute; top:-10px; height:calc(100% + 20px); width:1px; background:#666; left:35px; }
  .label--radios.registration__selection input[type="radio"] + label { min-width:300px; font-size:1.2em; padding-left:50px; }
  .label--radios.registration__selection.label--large input[type="radio"] + label {  font-size:1.4em; font-weight:bold; }
  .label--checkbox.registration__selection input[type="checkbox"] + label { min-width:300px; font-size:1.2em; padding-left:50px; }
  .label--checkbox.registration__selection.label--large input[type="checkbox"] + label {  font-size:1.4em; font-weight:bold; }
}


/* General input */

.meeting-form input[type="text"], 
.meeting-form input[type="number"],
.meeting-form input[type="password"] { padding:5px; border:1px solid #b9bbba; border-radius:5px; width:100%; background-color:#f0f5f8; transition:all .3s; }
.meeting-form input[type="text"],
.meeting-form input[type="number"],
.meeting-form input[type="password"] { height:40px; }
.meeting-form input[type="text"]:focus,
.meeting-form input[type="number"]:focus,
.meeting-form input[type="password"]:focus { border:2px solid #26728c }
.meeting-form input[type="text"].input--small,
.meeting-form input[type="password"].input--small { width:80px; }

.twitter--input, .linkedin--input { margin-bottom:5px; background-repeat:no-repeat; background-position:right center; }
.twitter--input { background-image:url(../../Content/images/twitter.png); }
.linkedin--input { background-image:url(../../Content/images/linkedin.png); }

.meeting-form input[type="text"].promo__code.code--valid { border:2px solid darkgreen; color:darkgreen; }


/* Textarea */

.meeting-form textarea { padding:5px; border:1px solid #b9bbba; border-radius:5px; width:100%; height:80px; background:#f0f5f8; transition:all .3s; }
.meeting-form textarea:focus { border:2px solid #26728c }


/* Input Errors */

.meeting-form .validation--error input[type="text"],
.meeting-form .validation--error input[type="password"] { border:2px solid #f00 }
.meeting-form .validation--error .label--required span span { color:#f00; }
.meeting-form .validation--error .meeting-form__faux-trigger { border:1px solid #f00; }
.validation--error .label--checkbox legend, .validation--error .label--checkbox .required__error-message { color:red; }
.validation--error .label--radios legend, .validation--error .label--radios .required__error-message { color:red; }
.error__message { position:absolute; bottom:-11px; font-size:.9em; }


/* Select boxes/Faux Select */

.meeting-form select { display:none; }

.meeting-form__faux-trigger { 
  display:block; 
  position:relative; 
  border:1px solid #b9bbba; border-radius:5px;
  height:40px; width:100%;  
  font-weight:bold; color:#4D5759;
  text-align:left; 
  background:#f0f5f8; 
}
.meeting-form__faux-trigger:before {
  content:'▼'; display:block;
  position:absolute; top:0; right:0;
  padding:12px 0;
  border-left:1px solid #1970a6;
  width:40px; 
  color:#1970a6;
  text-align:center;
}

.meeting-form__faux-list { position:relative; }
.meeting-form__faux-list ul { 
  display:none;
  position:absolute; top:40px; z-index:99; 
   width:100%; 
  list-style:none; 
  margin:0; padding:0; 
  max-height:200px;
  border-radius:0 0 5px 5px; border:1px solid #b9bbba; border-top:0;
  overflow-y:auto;
}
.meeting-form__faux-list li { display:block; width:100%; background:#f0f5f8; margin:0; }
.meeting-form__faux-list li a, .meeting-form__faux-list li a:link { text-decoration:none; display:block; width:100%; background:#f0f5f8; border:0; padding:10px; margin:0; text-align:left; font-size:.9em; font-weight:bold; color:#596066; }
.meeting-form__faux-list li:nth-child(odd) a { background:#e7ecef; }



/* Radio buttons */

.label--radios { }
.label--radios input[type="radio"] { position:absolute; left:-9999em; }
.label--radios input[type="radio"] + label { display:block; position:relative; padding-bottom:15px; padding-left:28px; }
.label--radios input[type="radio"] + label:before,
.label--radios input[type="radio"] + label:after { content:''; display:block; position:absolute; }
.label--radios input[type="radio"] + label:before { top:0; left:0; width:16px; height:16px; border:2px solid #1373ad; border-radius:32px; transition:all .4s; }
.label--radios input[type="radio"] + label:after { top:5px; left:5px; width:10px; height:10px;  border-radius:16px; background:#fff; transition:all .4s; }
.label--radios input[type="radio"]:checked + label:before { border:2px solid #ccc; }
.label--radios input[type="radio"]:checked + label:after { background: #1373ad; }


/* Check boxes */

.label--checkbox { }
.label--checkbox input[type="checkbox"] { position:absolute; left:-9999em; }
.label--checkbox input[type="checkbox"] + label { display:block; position:relative; padding-bottom:15px; padding-left:28px; }
.label--checkbox input[type="checkbox"] + label:before,
.label--checkbox input[type="checkbox"] + label:after { content:''; display:block; position:absolute; }
.label--checkbox input[type="checkbox"] + label:before { top:0; left:0; width:16px; height:16px; border:1px solid #ccc; background:#eee; border-radius:5px; transition:all .4s; }
.label--checkbox input[type="checkbox"] + label:after { top:1px; left:1px; width:14px; height:14px; transition:all .4s; opacity:0; background: url(../../images/check.png) no-repeat center center; }
.label--checkbox input[type="checkbox"]:checked + label:before { background: #1373ad; }
.label--checkbox input[type="checkbox"]:checked + label:after { opacity:1; }





/******************
** PANELS / ACCORDIONS / TOGGLES
*******************/


/*** Main panel toggle ***/

.form-panel__button { 
  display:block; 
  position:relative;
  padding:15px; margin-bottom:7px; 
  border:0; border-radius:5px; 
  width:100%; 
  color:#fff; font-weight:bold; 
  text-align:left; text-transform:uppercase; 
  background:#1e6fa4; 
}
.form-panel__button:before, .form-panel__button:after { content:''; display:block; position:absolute;  width:30px; height:30px; }
.form-panel__button:before { right:10px; top:7px; border-radius:60px;  background:#fff; }
.form-panel__button:after { content:'+'; top:0; right:10px; color:#1e6fa4; font-weight:bold; font-size:3em; text-align:center; }
.form-panel__button + .form-panel__pane { display:none; }

.meeting-form__panel .form-panel__button.active { background:#777; }
.meeting-form__panel .form-panel__button.active:after { content:'-'; top: -4px; right:11px; color:#777; }


/*** Rail Toggle ***/

.meeting-form__rail-information { }

.meeting-form__rail-information a, .meeting-form__rail-information a:link { text-decoration:none; }

.meeting-form__rail-information button { 
  display:block; 
  position:relative; 
  padding:18px 0; 
  border:0; border-top:1px solid #59a7D5; border-bottom:2px solid #59a7D5; 
  width:100%; 
  color:#1E6B9F; font-weight:bold; 
  text-transform:uppercase; 
  background:transparent; 
  cursor:pointer; 
}
.meeting-form__rail-information button:before,
.meeting-form__rail-information button:after { content:''; display:block; position:absolute; }
.meeting-form__rail-information button:before { top:15px; left:20px; width:15px; height:15px; border:1px solid #1e6b9f; border-radius:30px; }
.meeting-form__rail-information button:after { top:22px; left:26px; width:4px; height:4px; border-left:1px solid #1e6b9f; border-top:1px solid #1e6b9f; transform:rotate(45deg); }
.meeting-form__rail-information button.active { background:#1e6b9f; color:#fff; }
.meeting-form__rail-information button.active:before { border-color:#fff; }
.meeting-form__rail-information button.active:after { top:19px; border-right:1px solid #fff; border-bottom:1px solid #fff; }

.meeting-form__rail-information ul { list-style:none; margin:0; padding:0;  }
.meeting-form__rail-information ul li { list-style:none; margin:0; padding:0; }
.meeting-form__rail-information ul li a { list-style:none; display:block; padding:10px 15px; color:#1e6b9f; }
.meeting-form__rail-information ul li a:hover, .meeting-form__rail-information ul li a:focus { text-decoration:underline; }
.meeting-form__rail-information svg { width:20px; height:20px; fill:#1e6b9f; display:inline-block; position:relative; top:4px; margin:0 4px; }

/* Payment Summary */
.meeting-form__rail-information ul.meeting-form__rail-summary  { padding:15px; }
.meeting-form__rail-information .meeting-form__rail-summary li { padding:3px 0; overflow:hidden; }
.meeting-form__rail-information .meeting-form__rail-summary li span { float:right; }





/******************
** PANELS / ACCORDIONS / TOGGLES
*******************/

.meeting-form__tooltip { display:inline-block; position:relative; }
.meeting-form__tooltip a { }
.meeting-form__tooltip a svg { width:15px; height:15px; fill:#1e6b9f }
.meeting-form__tooltip .tooltip__content { 
  position:absolute; top:30px; left:-175px; z-index:9999; 
  opacity:0; 
  width:350px; max-height:0;
  
  border:1px solid #eee; border-radius:8px;
  font-weight:normal;
  overflow:hidden; 
  box-shadow:3px 3px 3px #ccc;
  background:#efefef; 
}
.meeting-form__tooltip .tooltip__content:before { 
  content:''; display:block; 
  position:absolute; top:-10px; left:49%; 
  border-left:10px solid transparent; border-right:10px solid transparent; border-bottom:10px solid #efefef; 
}

.meeting-form__tooltip .tooltip__content.active--tip { overflow:visible; opacity:1; max-height:none; padding:15px 40px 15px 20px; }
.meeting-form__tooltip .tooltip__close { 
  cursor:pointer; 
  background:transparent; text-align:center; 
  width:25px; height:25px; 
  position:absolute; top:10px; right:10px; 
  border-radius:50px; z-index:15; 
  border:1px solid #1e6b9f 
}
.meeting-form__tooltip .tooltip__close:before, .meeting-form__tooltip .tooltip__close:after {
  content:''; display:block;
  position:absolute; left:4px; top:11px;
  width:15px; height:1px;
  background:#1e6b9f;
}
.meeting-form__tooltip .tooltip__close:before { transform:rotate(45deg) }
.meeting-form__tooltip .tooltip__close:after { transform:rotate(-45deg) }

.meeting-form__tooltip.security--tip { position:absolute; top:20%; right:-20px; font-size:.9 }
.meeting-form__tooltip.security--tip a { font-size:.8em }

@media (min-width:768px) {
  .meeting-form__tooltip .tooltip__content { 
    width:400px; left:-200px;
  }
}





/******************
** MISC CONTAINERS/BOXES/WRAPS
*******************/


/* Payment Box */
.meeting-form__content-box { margin:0 0 15px; border:1px solid #ccc; border-radius:5px; }
.meeting-form__box-title { padding:15px; background:#eee }
.meeting-form__box-content { padding:15px; }


/* Callout box */
.meeting-form__callout-box { margin-bottom:20px; padding:20px; border:2px solid #1e6b9f; border-radius:5px; }
.meeting-form__callout-box h3 { margin-top:0; font-size:1.4em; text-transform:none }
.meeting-form__callout-box h4 { color:#1e6b9f; font-size:1.2em; }
.meeting-form__callout-box .callout__padding { padding-left:30px; }

/* Payment Column */
.box__payment-col { text-align:center; }
.box__payment-col:first-child { position:relative; text-align:left; border-bottom:1px solid #1e6b9f; padding-bottom:15px; margin-bottom:15px; }
.meeting-form__content-box .button--continue { margin-bottom:15px; }

@media (min-width:768px) {
  .meeting-form__box-content.payment--box { display:table; width:100%; }
  .box__payment-col { display:table-cell; width:40%; vertical-align: middle;  }
  .box__payment-col:first-child { position:relative; width:60%; text-align:left; border:0; margin:0; padding:0 30px 0 0; }
  .box__payment-col:first-child:after { content:''; display:block; position:absolute; top:0; right:0; height:100%; width:1px; background:#1e6b9f }
}

.meeting-form__profile-list {  }
.meeting-form__profile-list ul { list-style:none; margin:0; padding:1%;}
.meeting-form__profile-list li { display:inline-block; width:30%; padding:7px 0; font-size:13px; }
.meeting-form__profile-list li strong { display:block; }

.meeting-form__survey-list { padding:3%; }

.meeting-form__opt-out { padding:5px 20px; border:1px solid #B4CFE2; background:#F0F5F8; border-radius:5px; }
.meeting-form__opt-out .meeting-form__group { padding-bottom:0; font-size:.95em; }

/* Payment receipt */
.meeting-form__pay-receipt { background:#fff; padding:2px; margin:10px; border:2px solid #999; }
.meeting-form__pay-receipt h3 { display:block; text-align:center; padding:15px 0; border-bottom:2px solid #ccc; color:#333; margin:0; text-transform:uppercase;}
.meeting-form__pay-receipt .print__button { display:block; text-align:center; margin:5px auto 20px; font-weight:bold; }

.meeting-form .meeting-form__content-box .button--continue { width:240px; }


/******************
** MODAL
*******************/

.meeting-form__modal-overlay { background:rgba(0,0,0,0.5); position:fixed; top:0; left:0; height:0; width:100%; z-index:9; opacity:0; transition:opacity .3s;  }

.meeting-form__modal { 
  position:fixed; top:7%; left:50%; z-index:10; 
  margin-left:-300px; 
  border:1px solid #666; border-radius:5px; 
  width:600px; height:0;
  background:#fff; 
  opacity:0; 
  transform:scale(1.3);  
  overflow:hidden; 
  transition:opacity .3s, transform .3s; 
}
.meeting-form__modal-header { position:relative; padding:5px 20px; background:#eee; font-weight:bold; }
.meeting-form__modal-contents { padding:20px; background:#fff; overflow:hidden; }

.modal__two-col { display:table; width:100%; }
.modal__col { display:table-cell; padding:10px; position:relative; }
.modal__col:first-child:after { content:''; display:block; position:absolute; top:6%; right:0; height:86%; width:1px; background:#1e6b9f  }
.modal__col .meeting-form__group { padding-right:0; }

.meeting-form__modal .meeting-form__button { float:right; }


.meeting-form__show-overlay .meeting-form__modal-overlay { opacity:1; transform:scale(1); height:100vh; }
.meeting-form__show-overlay .meeting-form__modal { opacity:1; transform:scale(1); height:auto; }

.meeting-form__close-modal { width:20px; height:20px; background:#555; position:absolute; right:5px; top:2px; border-radius:40px; border:0; }
.meeting-form__close-modal:before, .meeting-form__close-modal:after { content:''; display:block; position:absolute; top:9px; left:5px; width:10px; height:1px; background:#eee; }
.meeting-form__close-modal:before { transform:rotate(45deg) }
.meeting-form__close-modal:after { transform:rotate(-45deg) }



/******************
** ANIMATIONS / KEYFRAMES
*******************/


/* Animate steps bar width */
@-webkit-keyframes barAnimate {
    from { width:0 }
    to { width:96px; }
}

@keyframes barAnimate {
    from { width:0 }
    to { width:96px; }
}


/* Clip animation for steps circle */

@-webkit-keyframes showCircle {
    from { clip:rect(0,-100px,100px,0); }
    to { clip:rect(0,100px,100px,0); }
}

@keyframes showCircle {
    from { clip:rect(0,-100px,100px,0); }
    to { clip:rect(0,100px,100px,0); }
}


/* Fade Out */

@-webkit-keyframes fadeOut {
    from { opacity:1 }
    to { opacity:0 }
}

@keyframes fadeOut {
    from { opacity:1 }
    to { opacity:0 }
}





/******************
** STEPS
*******************/

.meeting-form__steps { padding:10px 0; border-bottom:1px solid #ccc; overflow-x:auto; max-width:100%; }

.meeting-form__steps a, .meeting-form__steps a:link { text-decoration:none; }

.meeting-form__steps ol { position:relative; left:-15px; width:100%; list-style:none; margin:0; padding:0; width:980px; }
.meeting-form__steps li { display:block; float:left; position:relative; text-align:center; width:125px; }
.meeting-form__steps li:before, 
.meeting-form__steps li:after { content:''; display:block; position:absolute; left:83px; top:22px; height:2px; }
.meeting-form__steps li:before { width:96px; background:#ddd; }
.meeting-form__steps li:after { width:0; }
.meeting-form__steps li:last-child:after, 
.meeting-form__steps li:last-child:before { display:none }

.meeting-form__steps div { position:relative; margin:0 auto 5px; width:45px; height:45px; border-radius:80px; border:2px solid #ddd; }
.meeting-form__steps div:before { 
  content:''; display:block; 
  clip:rect(0,100px,0,0); 
  position:absolute; top:-4px; left:-4px; 
  margin:0 auto 5px; 
  width:41px; height:41px; 
  border-radius:80px; border:4px solid rgb(89,167,213); 
}
.meeting-form__steps span { font-weight:bold; color:#666; }
.meeting-form__steps .steps__image svg { position:relative; top:9px; left:1px; width:22px; height:22px; fill:#666 }

.meeting-form__steps .step--active:after { 
  background: rgb(89,167,213);
  background: -moz-linear-gradient(left, rgba(89,167,213,1) 1%, rgba(221,221,221,1) 100%); 
  background: -webkit-linear-gradient(left, rgba(89,167,213,1) 1%,rgba(221,221,221,1) 100%);
  background: linear-gradient(to right, rgba(89,167,213,1) 1%,rgba(221,221,221,1) 100%);
}
.meeting-form__steps .step--active:before { background:#1E6B9F; }
.meeting-form__steps .step--active span { color:#1E6B9F; }
.meeting-form__steps .step--active div { border-color:#1E6B9F; }
.meeting-form__steps .step--active .steps__image svg { fill:#1E6B9F }

.meeting-form__steps .step--current:after { 
  background: rgb(89,167,213);
  background: -moz-linear-gradient(left, rgba(89,167,213,1) 1%, rgba(221,221,221,1) 100%); 
  background: -webkit-linear-gradient(left, rgba(89,167,213,1) 1%,rgba(221,221,221,1) 100%);
  background: linear-gradient(to right, rgba(89,167,213,1) 1%,rgba(221,221,221,1) 100%);
  -webkit-animation-name: barAnimate; -webkit-animation-duration:.7s ;  -webkit-animation-delay:1.4s; -webkit-animation-fill-mode: forwards;
  animation-name: barAnimate; animation-duration: .7s; animation-delay:1.4s; animation-fill-mode: forwards;
}
.meeting-form__steps .step--current span { color:#59A7D5; }
.meeting-form__steps .step--current .steps__image svg { fill:#59A7D5 }
.meeting-form__steps .step--current div:before {   
  clip:rect(0,100px,100px,0); 
  -webkit-animation-name:showCircle; -webkit-animation-duration:3s; 
  animation-name: showCircle; animation-duration: 3s;
}

.meeting-form__steps .step--prev { }
.meeting-form__steps .step--prev:before { 
  background: rgb(89,167,213);
  background: -moz-linear-gradient(left, rgba(89,167,213,1) 1%, rgba(221,221,221,1) 100%); 
  background: -webkit-linear-gradient(left, rgba(89,167,213,1) 1%,rgba(221,221,221,1) 100%);
  background: linear-gradient(to right, rgba(89,167,213,1) 1%,rgba(221,221,221,1) 100%);
}
.meeting-form__steps .step--prev:after { 
  background:#1E6B9F;
  -webkit-animation-name: barAnimate; -webkit-animation-duration:.7s ;  -webkit-animation-delay:.2s; -webkit-animation-fill-mode: forwards; 
  animation-name: barAnimate; animation-duration: .7s; animation-delay:.2s; animation-fill-mode: forwards;
}
.meeting-form__steps .step--prev div:before { 
  clip:rect(0,100px,100px,0); 
  -webkit-animation-name: fadeOut; -webkit-animation-duration:.7s ;  -webkit-animation-fill-mode: forwards;
  animation-name: fadeOut; animation-duration: .7s; animation-fill-mode: forwards;
}
/* for mobile template */
	
.mobileContainer {font-size: 1.9em;}
.mobileContainer #RememberMeCheckBox {width:50px; height:50px; margin-right:20px}
.mobileContainer .loginLinks a {display:block; background-color:#06C; color:#fff; padding:5px 10px; border-radius:.4em; text-align:center; font-size:110%; margin:.5em 0; text-decoration:none}
.mobileContainer .loginLinks a:hover, .mobileContainer .loginLinks a:active {background-color:#09C}
.loginLinks .reset {display:none}


.mobileContainer #RememberMeCheckBox:checked + label {background-color:#ccc;}

.mobileContainer label {display:block; margin:.5em 0px}
.mobileContainer .remember {margin:1em 0; padding:.6em; border-radius:.4em;  color:#000; text-align:center; border:1px solid #ccc;}
.mobileContainer .remember input {}
.mobileContainer .remember label {display:inline;}
.mobileContainer .remember input {margin:0 .6em 0 0}
.mobileContainer input.Button, .mobileContainer input.TextBox {clear:both; width:100%; margin:.5em 0; font-size:110%; padding:5px 10px }

.mobileContainer fieldset {margin:1em; border:1px solid #ccc; border-radius:1em; background-color:#eee; font-size:120%}
.mobileContainer h1 {font-weight:bold; font-size:120%; margin:1em}
.mobileContainer .loginLinks a.hide {display:none}
.aiche-requiredblock .aiche-reqblock-inner {
    position: relative;
    width: 96%;
    margin: .5em auto;
    border: 1px solid #FF0000;
    border-radius: 10px;
    padding: 10px;
    padding-inline-start: 30px;
    margin-left: 10px;
    font-size: 14px;
    color: #FF0000;
}