/*************       GENERAL       *************/

html, body, div, h1, h2, h3, ul, ol, li, form, fieldset, input, textarea, p {margin: 0; padding: 0}
ul {list-style: none}
img, fieldset {border: 0}
em {font-style: italic}
strong {font-weight: bold}

html { overflow-x: hidden; overflow-y: scroll; height: 100%; font: 1em/1.4em; background: #eee  }

body { width: 100%; height: 100%; font-size: 62.5%; font-family: "pt-sans-n4", pt-sans, Verdana, Arial, sans-serif; position: relative; margin: 0 auto; color: #333 } 

.hidey { position: absolute; left: -99999px; top: -99999px; width: 10px !Important; height: 10px !Important; }

.alert { font-size: 2.2em; text-align: center; line-height: 200%; }



/*************       FONTS       *************/
h1, h2, h3, h4, h5 { padding: 0; margin: 1em 0 0.5em 0; font-family: "Raleway", Arial, Helvetica, sans-serif !important;  color: #444;  }
h1 { font-size: 3.5em; font-weight: 400; margin-bottom: 0.2em}
h2 { font-size: 2.6em; font-weight: 400  }
h3 { font-size: 2.2em; font-weight: 400 }
h4 { font-size: 1.6em; font-family: "pt-sans-n4", pt-sans; font-weight: 400 }
h5 { font-size: 1.4em; font-family: "pt-sans-n4", pt-sans; font-weight: 400 }

* h1:first-child, * h2:first-child, * h3:first-child, * h4:first-child, * h5:first-child
{ margin-top: 0 }

a[name=startcontent] + h1, a[name=startcontent] + h2, a[name=startcontent] + h3, a[name=startcontent] + h4, a[name=startcontent] + h5
{ padding-top: 30px; margin-top: 0 }


.darkHeader { color: rgb(100, 86, 75) }

li, p, code, dd, dt, label { font-size: 1.4em;}
p label, p li, li p, label p, li label, label li, li li, li li li, li li li li, li li li li li 
    { font-size: 1em;} /* yes this is a bit silly. damn inheritance! oh for widely support REM. could just apply to the ol/ul? */

.marketing ul, .legal-forms-list ul { list-style: square; margin-left: 20px; margin-bottom: 20px}
.marketing li { line-height: 1.6em; margin-bottom: 7px }
.marketing li:last-child { margin-bottom: 0 }
.legal-forms-list ul li{ margin-bottom: 7px}

p { line-height: 1.6em}
ol { margin: 0 0 0 2.5em}
p, ol { padding: 0 0 1em}

.smallPrint { font-size: 1.1em; color: #777 } 

.descriptiveText { font-style: italic }
.formDetail .descriptiveText { font-style: normal; color: #777 }
.quote { font-style: italic; background: #fafafa; padding: 10px 15px; margin-bottom: 1em; border-left: 2px solid #ed7323 }

a:link { color: #3575EA }
a:visited { color: #4a618b }
a:hover { color: #1b4083 }
a:active { color: #000 }

a, input[type=submit] { -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;  }
a:active, input[type=submit]:active { -webkit-transition: all 0s ease; -moz-transition: all 0s ease; -o-transition: all 0s ease; transition: all 0s ease;  }

ul.orangeArrowList    { margin: 0 0 14px}
ul.orangeArrowList li { background: url(images/iconArrowOnly.png) no-repeat 0 0px; padding: 1px 0 8px 24px; }

.nav a { padding: 6px 7px; font-family: "pt-sans-n4", pt-sans; text-transform: uppercase; text-decoration: none; color: #fff; font-size: 1.2em; margin-left: 2px; position: relative; top: 0;  behavior: url(/styling/css3pie/PIE.htc) }
.nav a:hover, .nav a:focus{ background: #535C70; -moz-box-shadow: 0 2px 2px #000, inset 0 1px 1px #788292; -moz-border-radius: 3px ; -webkit-box-shadow: 0 2px 2px #000, inset 0 1px 1px #788292; -webkit-border-radius: 3px ; box-shadow: 0 2px 2px #000, inset 0 1px 1px #788292; border-radius: 3px; behavior: url(/styling/css3pie/PIE.htc);}
.nav a:active { top: 1px; }
.nav a.login { background: #535C70; -moz-box-shadow: 0 2px 2px #000, inset 0 1px 1px #788292; -moz-border-radius: 3px ; -webkit-box-shadow: 0 2px 2px #000, inset 0 1px 1px #788292; -webkit-border-radius: 3px ; box-shadow: 0 2px 2px #000, inset 0 1px 1px #788292; border-radius: 3px; behavior: url(/styling/css3pie/PIE.htc); }
.nav a.login:hover { text-decoration: none; background-color: #666F83;  }

.browseOptions a, .selectedFacets a, .productWrapper .productCategoryBreadcrumb a, .infoBox a, .browseItem p.productCategories a
    { color: #5f5f5f; text-decoration: none; }
.browseOptions:hover a, .productWrapper .productCategoryBreadcrumb:hover a, .infoBox:hover a, .browseItem:hover p.productCategories a { color: #3575EA; }
.browseOptions:hover .selectedFacets a { color: red }
.browseOptions a:hover, .browseOptions a:focus, .productWrapper .productCategoryBreadcrumb a:hover, .productWrapper .productCategoryBreadcrumb a:focus, .infoBox a:hover, .infoBox a:focus, .browseItem p.productCategories a:hover, .browseItem p.productCategories a:focus
    { text-decoration: underline; }
.browseOptions a.otherStates { color: #777; text-decoration: none; font-size: 0.8em }
.browseOptions a.otherStates:hover, 
.browseOptions a.otherStates:focus { color: #333; text-decoration: underline; }

.input-validation-error { background: #fcf5f5 }

.bigHyper { font-size: 1.6em; margin: 0 0 0 15px; display: inline-block }

.requirements { color: #777; font-size: 11px }



/*************       FORMS + BUTTONS      *************/

.wufooEmbed { padding: 30px 300px 30px 0 }

fieldset p label { display: block; color: #555 }
fieldset#feedbackFields p label { float: none; width: auto; }
textarea { clear: left; display: block; width: 92%; padding: 10px 4%; font-family: "pt-sans-n4", pt-sans, Verdana, Arial, sans-serif; font-size: 1.2em; color: #5f5f5f  }

.required { color: #DF4545; font-size: 1.8em; float: right; position: relative; bottom: -36px }

.errorMessage, #submitFormFeedbackMsg { color: #dd4d57; font-size: 1.3em; }
label.error { color: #dd4d57; font-size: 0.9em; line-height: 1em; margin: 2px 0 0; width: auto;}

.checkout label { display: block }

.button[value=Cancel]
{ border-color: #878787; background-color: #b1b1b1;
-moz-box-shadow: 0 2px 3px #bbb, inset 0px 1px 1px #dbdbdb; box-shadow: 0 2px 3px #bbb, inset 0px 1px 1px #dbdbdb; -webkit-box-shadow: 0 2px 3px #bbb, inset 0px 1px 1px #dbdbdb; 
background-image: none; behavior: url(/styling/css3pie/PIE.htc)
}
.button[value=Cancel]:hover, .button[value=Cancel]:focus { background: #bfbfbf; -moz-box-shadow: inset 0 0 1px #a5a5a5; box-shadow: inset 0 0 1px #a5a5a5; -webkit-box-shadow: inset 0 0 1px #a5a5a5; behavior: url(/styling/css3pie/PIE.htc) }


.button, .buttonSpecial, .accountActions a
{ text-transform: uppercase; font-size: 13px !important; padding: 3px 8px; border: 1px solid #639452; font-family: "pt-sans-n4", pt-sans, Verdana, Arial, sans-serif; cursor: pointer; position: relative; background-color: #7ecb63;
-moz-border-radius: 3px; border-radius: 3px; -moz-box-shadow: 0 2px 3px #bbb, inset 0px 1px 1px #a0e089; box-shadow: 0 2px 3px #bbb, inset 0px 1px 1px #a0e089; -webkit-box-shadow: 0 2px 3px #bbb, inset 0px 1px 1px #a0e089; 
background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#7ECB63), to(#5DAB57), color-stop(.5,#7ECB63),color-stop(.5,#69C263)); background-image: -moz-linear-gradient(19% 75% 90deg,#5DAB57, #5DAB57, #7ECB63 100%);
behavior: url(/styling/css3pie/PIE.htc)
}

.button:hover, .button:focus, .buttonSpecial:hover, .buttonSpecial:focus, .accountActions a:hover, .accountActions a:focus  { background: #7ecb63; -moz-box-shadow: inset 0 0 1px #5dac57; box-shadow: inset 0 0 1px #5dac57; -webkit-box-shadow: inset 0 0 1px #5dac57; behavior: url(/styling/css3pie/PIE.htc) }
.button:active, .buttonSpecial:active, .accountActions a:active { top: 1px }

a.button, a.buttonSpecial { color: #333 !important; text-decoration: none !important }
p a.button, p a.buttonSpecial { font-size: 1em }

input[type=text], input[type=password], input[type=email] { padding: 4px 3px; border: 1px solid #bbb; border-color: #bdbdbd #bbb #8a8a8a; width: 275px  }

.greenButton    { padding: 55px 0 0; height: 0; overflow: hidden; display: block; margin: 0 0 25px -5px; -webkit-transition: all 0s ease; -moz-transition: all 0s ease; -o-transition: all 0s ease; transition: all 0s ease; }
.btnDataStored  { width: 177px; background: url(Images/btnDataStored.png)  no-repeat 0 0; }
.btnFormLibrary { width: 177px; background: url(Images/btnFormLibrary.png) no-repeat 0 0; }
.btnGetStarted  { width: 177px; background: url(Images/btnGetStarted.png)  no-repeat 0 0; }
.btnSimpleEasy  { width: 177px; background: url(Images/btnSimpleEasy.png)  no-repeat 0 0; }
.btnTour        { width: 177px; background: url(Images/btnTakeTour.png) no-repeat 0 0; }
.btnPricing     { width: 177px; background: url(Images/btnPricingDetails.png) no-repeat 0 0; }
.btnSignUp      { width: 177px; background: url(Images/btnSignUp.png) no-repeat 0 0; }
.btnAutomation  { width: 177px; background: url(Images/btnAutomation.png) no-repeat 0 0; }
.btnDocManage   { width: 177px; background: url(Images/btnDocManage.png) no-repeat 0 0; }
.btnEmailsManage      { width: 177px; background: url(Images/btnEmailsManage.png) no-repeat 0 0; }
.greenButton:hover, .greenButton:focus { background-position: 0 -56px; -webkit-transition: all 0s ease; -moz-transition: all 0s ease; -o-transition: all 0s ease; transition: all 0s ease; }

.btnDownload    { width: 247px; background: url(Images/btnTbDownload.png)  0 0 no-repeat; padding-top: 52px }
    a.btnDownload { height: 0; overflow: hidden; display: block; margin: 0 0 20px; -webkit-transition: all 0s ease; -moz-transition: all 0s ease; -o-transition: all 0s ease; transition: all 0s ease; }
.btnDownload:hover, .btnDownload:focus { background-position: 0 -51px; -webkit-transition: all 0s ease; -moz-transition: all 0s ease; -o-transition: all 0s ease; transition: all 0s ease; }



/*************       TABLES       *************/
.smokey { font-size: 1.4em; width: 100%; border-collapse: collapse }
.smokey th { background: #888; color: #fff}
.smokey td, .smokey th { padding: 6px 4px }
.smokey tr { border-bottom: 1px solid #ddd; -webkit-transition: 0.2s ease-in; -moz-transition: 0.2s ease-in-out; transition: all 0.2s ease; }
.smokey tr:hover { background: rgba(156, 199, 255, 0.09); -webkit-transition: 0s ease-in; -moz-transition: 0s ease-in-out; transition: all 0s ease; }



/*************       LAYOUT      *************/
.pageHeader { border-bottom: 1px solid #e1e1e1; background: #fff; height: 87px; margin-bottom: 50px }
.pageHeaderContainer, .footer { max-width: 940px; margin: 0 auto }
.pageHeaderContainer span { font-family: "Raleway"; font-size: 14px; float: right; margin: 0 0 0 }

.pagePanel { position: relative; padding: 40px; background: #f3f3f3; max-width: 940px; overflow: auto; box-sizing: border-box; margin: 0 auto; box-shadow: 0 0 18px #ccc }

.footer { padding: 10px 0 30px}
.footer p { text-align: right; font-size: 1.2em; color: #777}


/*************       CUSTOM PAGES      *************/
.downloadHeader h1 { margin: 0 0 10px; font-weight: 600; font-size: 3.2em  }

/* sign in */
.signInHdr, .registerHdr { font-weight: 600; padding: 0 0 2px; font-size: 2.6em }
.signInContainer .button, #registrationContainer .button { min-width: 80px }
.signUpWarning { clear: both; padding: 50px 0 0 }

/* create user */
.createUser label { float: left; width: 140px }
.help-text { color: #777; font-size: 0.8em }


/*************       CHECKOUT      *************/
.checkout { padding: 50px 0 40px; margin-right: 273px  } /* width: 596px */
.checkout h2 { font-size: 2.9em}
.checkout fieldset { padding: 0 0 20px }
    #idFirmAddressLine1, #idFirmAddressLine2, #idFirmCity, #idFirmState, #idFirmZipOrPostalCode  { margin-bottom: 20px }
.checkout fieldset label { font-weight: 600; margin: 0 0 4px; font-size: 1.5em}
.checkout fieldset input[type=text], .checkout fieldset input[type=email], .checkout fieldset input[type=password] { padding: 7px 10px}
.checkout select { padding: 3px }
.checkout .smallPrint { display: block }
.checkout .button { font-size: 16px !important; text-transform: none}
.costPerMonth { font-size: 1.4em }

.padlocked { margin: 0 0 -9px 2px }

.checkoutSummary {  padding: 30px 0 40px; width: 233px; background: #e9e9e9; padding: 40px 20px 7px; border-left: 1px solid #cecece; position: absolute; right: 0px; top: 0; bottom: 0; }
.checkoutSummary h3 { color: #555; font-size: 1.7em}
.checkoutSummary p, .checkoutSummary li { font-size: 1.3em; padding: 0 0 3px }
    .checkoutSummary li { margin-left: 16px; list-style: square}
.checkoutSummary .security, .checkoutSummary .sideBlock { margin-bottom: 30px}

.cardDetails h4, .accountDetails h4, .firmDetails h4, .clientsDetails h4 { text-transform: uppercase; color: #525252; font-size: 1.3em; margin: 20px -40px; padding: 4px 40px; border-bottom: 1px solid #d1d1d1;}

.cardDetails { position: relative;  }
.cardDetails .cardMessage { position: absolute; top: 71px; right: 45px; width: 182px }
.cardDetails .cardMessage p { color: #555; font-size: 1.3em; line-height: 130%; margin-top: 5px; text-align: justify}

#BillingContainer { display: block; margin: -44px 0 35px 59px } 

.thisOrderDetails { border: 1px solid #ddd; border-width: 1px 0; background: #F1F1F1; padding: 10px 0 0; margin: 20px -40px 40px; }
.thisOrderDetails h3 { color: #444; font-size: 1.8em; }
.thisOrderDetails h3 a { color: #777 !important; font-size: 0.8em; float: right}
.thisOrderDetails p { padding: 0 0 3px }
.thisOrderDetails .yourDetails p { float: left; margin-right: 10px;  }
.thisOrderDetails .yourDetails { border-bottom: 1px solid #ddd; padding: 0 40px 7px; margin: 0 0 10px; overflow: auto  }
.thisOrderDetails .costSummary { padding: 0 40px }
.cartLineItem { font-size: 1.4em; overflow: auto; margin: 0 0 4px}
    .cartLabel  { float: left; }
    .cartDetail { text-align: right; display: block }
.cartTotal { margin: 10px -40px 0; background: #E9E9E9; padding: 7px 40px; border-top: 1px solid #e0e0e0; font-weight: 600;  }
.cartChargeThisMonth { margin: 0 -40px; background: #e3e3e3; padding: 7px 40px; border-top: 1px solid #d1d1d1; font-weight: 600; }
.cartTodaysCharge { margin: 0 -40px; background: #ed7323; color: #fff; padding: 7px 40px; border-top: 1px solid #d1d1d1; font-weight: 600; text-align: center }
    .cartTodaysCharge .cartLabel { float: none}
    .accountInfo .cartTodaysCharge { margin: 10px -20px 37px; border: 0 }

.clientEmail { font-style: italic }

.checkoutProgress { position: absolute; left: 0; top: -20px; right: 273px; height: 36px; padding: 20px 0 0; }
.checkout1, .checkout2, .checkout3 { height: 36px; line-height: 36px; float: left; color: #fff; font-size: 1.5em; background: #ccc; padding: 0 15px; text-align: center; box-sizing: border-box; width: 33.3333% }
.checkoutProgress span { font-size: 1.4em; font-weight: 600; margin: 0 0 0 5px; float: left }
.checkout1 { behavior: url(/styling/css3pie/PIE.htc)}
.checkout2 { background: #c4c4c4 }
.checkout3 { behavior: url(/styling/css3pie/PIE.htc)}
.currentCheckout { background: #ed7323 }

#idFirmState { padding: 7px 10px; border: 1px solid #bbb; border-color: #bdbdbd #bbb #8a8a8a;  }
