/*!
 * CUSTOM BOOTSTRAP CLASSES
 */





dl, ol, ul {
  margin-top: 0;
  margin-bottom: 1rem;
}

.text-justify {
  text-align: justify !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}


[type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled), button:not(:disabled) {
  cursor: pointer;
}


.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.btn.disabled, .btn:disabled {
  opacity: 0.65;
}


a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}


@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}


.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.show {
  opacity: 0.9;
}

.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}

.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] {
  padding: 0.4rem 0;
}

.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow {
  bottom: 0;
}

.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] {
  padding: 0 0.4rem;
}

.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] {
  padding: 0.4rem 0;
}

.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow {
  top: 0;
}

.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] {
  padding: 0 0.4rem;
}

.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}
/*! HTML5 Boilerplate v7.2.0 | MIT License | https://html5boilerplate.com/ */

/* main.css 2.0.0 | MIT License | https://github.com/h5bp/main.css#readme */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */


/**
 * Fix fonts that render as bold in Firefox
 */
html {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-smooth: antialiased;
    /*font-weight: 400;*/
}
/**
 * Firefox specific rule  -- NOT NEEDED?
 */
/*
@-moz-document url-prefix() {
    body {
        font-weight: lighter !important;
    }
}
*/






html {
  color: #222;
  font-size: 1em;
  line-height: 1.5;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
  resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden {
  display: none !important;
}

/*
* Hide only visually, but have it available for screen readers:
* https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
*
* 1. For long content, line feeds are not interpreted as spaces and small width
*    causes content to wrap 1 word per line:
*    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
*/

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  /* 1 */
}

/*
* Extends the .sr-only class to allow the element
* to be focusable when navigated to via the keyboard:
* https://www.drupal.org/node/897638
*/

.sr-only.focusable:active,
.sr-only.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}

/*
* Hide visually and from screen readers, but maintain layout
*/

.invisible {
  visibility: hidden;
}

/*
* Clearfix: contain floats
*
* For modern browsers
* 1. The space content is one way to avoid an Opera bug when the
*    `contenteditable` attribute is included anywhere else in the document.
*    Otherwise it causes space to appear at the top and bottom of elements
*    that receive the `clearfix` class.
* 2. The use of `table` rather than `block` is only necessary if using
*    `:before` to contain the top-margins of child elements.
*/

.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}

.clearfix:after {
  clear: both;
}










/*  ---------------------- CUSTOM STYLES -----------------------------------------*/


/* GLOBALS */

@font-face {
    font-family: 'BlogCirc';
    src: url('../fonts/blog-circ-medium.woff');
    font-display: swap;
}

@font-face {
    font-family: 'BlogCircBook';
    src: url('../fonts/blog-circ-book.woff');
    font-display: swap;
}

a, nav#top_nav ul.main_row li a.default{
    color: #25b393;
    text-decoration: none;
    transition: all 0.2s;
}

nav#top_nav ul.main_row li a.default:hover{
    text-decoration: underline;
}

a:hover{
    color: #25b393;
    /*text-decoration: none;*/
    text-decoration: underline;
}

h1, h2, h3, h4, h5{
    font-family: 'BlogCirc', Sans-serif;
    font-weight: 500;
}

h1{
  font-size: 72px;
  letter-spacing: -2px;
  line-height: 0.95;
}

h1.headline.small{
    font-size: 66px;
}

h2{
  font-size: 60px;
  letter-spacing: -2px;
  line-height: 0.95;
}

h3{
  font-size: 48px;
  letter-spacing: -1px;
  line-height: 1;
}

h4{
  font-size: 32px;
  letter-spacing: -1px;
  line-height: 1;
  margin-bottom: 3%;
}

h5{
    font-size: 24px;
    letter-spacing: -1px;
    line-height: 1;
    margin: 1.5em auto;
}



.p1, .p2, .p3, .p4{
  font-family: 'Lustria', serif;
}

.p1{
  font-size: 20px;
}

.p2{
  font-size:24px;
  letter-spacing: normal;
  line-height: 1.5;
  font-weight: normal;
}

.p3{
  font-size: 24px;
}

.p4{
  font-size: 30px;
}


/*
div.container > div.row > div{
  border:dotted 1px blue;
}
*/

div.test_row > div{
    border:dotted 1px blue;
}

.btn{
    border-radius: 60px;
    padding: 0 50px;
    min-width: 200px;
    height: 64px;
    line-height: 62px;
    text-align: center;

    font-family: 'BlogCirc', sans-serif;
    font-size: 22px;
    white-space: nowrap;

    background-color: #ffffff;
    border-color: #e2e2e2;
    color: #000000;
    /*border-color: #e2e2e2;*/

    overflow: hidden;
    /* text-overflow: ellipsis;    /* invoked later, for smaller screens, ipad button problem */
    max-width: 100%;
}

.btn.btn_small{
    height: 54px;
    line-height: 52px;
    font-size: 18px;
}

.btn:hover{
    box-shadow: 0px 10px 25px -14px rgba(0,0,0,0.68);
    border-color:#ffffff;
    text-decoration: none;
    color: #000000;
}

.touchevents .btn:hover{                    /* hover state on touch devices stays after click, so reset to original state of the button to avoid staying in that "pushed" state */
    background-color: #ffffff;
    border-color: #e2e2e2;
    box-shadow: none;
}

.btn:focus, .btn.btn-primary:focus{
    box-shadow: none;
    outline:none;
    box-shadow: 0px 10px 25px -14px rgba(0,0,0,0.68);
}



.btn.btn-primary,
.touchevents .btn.btn-primary:hover {               /* reset hover state on touchedevices, to be the same as original button state, to avoid "pushed" state after tap */
  background-color: #25b393;
  border-color: #25b393;
  color: #ffffff;
  box-shadow: none;
}


.btn.btn-primary:hover {
    box-shadow: 0px 10px 25px -14px rgba(0,0,0,0.68);
    border-color:#25b393;
    color: #ffffff;
}



.btn.btn-primary.btn-primary-border,
.touchevents .btn.btn-primary.btn-primary-border:not(:disabled):not(.disabled):hover{           /* reset hover state on touch devices, to original button state, to avoid "pushed" state after tap */
    /*background-color: #ffffff;*/
    background-color: transparent;
    border-color: #25b393;
    color: #25b393;
}

.btn.btn-primary.btn-primary-border:hover {
    border-color:#ffffff;
    background-color: #ffffff;
}

/*.touchevents .btn:not(:disabled):not(.disabled):hover, .touchevents .btn.btn-primary.btn-primary-border:not(:disabled):not(.disabled):hover,*/
.btn:not(:disabled):not(.disabled):active, .btn.btn-primary.btn-primary-border:not(:disabled):not(.disabled):active
{
    background-color: #eeeeee;
    border-color: #eeeeee;
    box-shadow: none;
}

/*.touchevents .btn.btn-primary:not(:disabled):not(.disabled):hover,*/
.btn.btn-primary:not(:disabled):not(.disabled):active
{
  background-color: #fff;
  border-color: #25b393;
  color:#25b393;
  box-shadow: none;
}

button.test_button{
    -webkit-appearance: none;
    appearance: none;
}

button.test_button:hover{
    background-color: inherit;
}

.signin_external{
    font-size: 18px;

    background-repeat: no-repeat;
    background-position: 22px center;
    transition: .3s;
    width: 100%;
    text-overflow: ellipsis;
    padding: 0 40px;
}

.signin_external.slack{
    background-image: url('../images/slack-logo.svg');
    background-position: 22px center;
    background-size: 30px;
}

.signin_external.google{
    background-image: url('../images/google_g_logo.svg');
    background-size: 30px;
}

/*
.signin_external:hover{
    border-color:#aaa;
    color:#000;
    opacity:1;
}
*/




.container {
  max-width: 90%;
  /*border:dotted 1px red;*/
}

.container > .row{
    /*border:dotted 1px blue;*/
}

.inner_content{
    padding: 0 7%;
}

.top_content{
    /*margin-top: 100px;*/
    margin-top: 220px;
}

hr.h_divider{
    border-color: #e5e5e5;
    margin-top: 120px;
    margin-bottom: 120px;
}
/* NAVIGATION - TOP MENU */

nav#top_nav{
    font-family: 'BlogCirc', Sans-serif;

    position: absolute;
    width: 100%;
    top: 0;
    z-index: 1000;
}

.page_bottom .not-top nav#top_nav{
    background-color: #ffffff;
    box-shadow: 0 1px 5px rgba(0,0,0,.10);
}

nav#top_nav .main_row{
  height: 150px;
  align-content:center;
  align-items: center;
  padding: 0;
  list-style-type: none;
  margin-bottom: 0;
}


#mobile_menu_icon{
  display: none;
}


#top_nav .main_row .menu_item{
  display: block;
}

nav#top_nav ul.main_row li{
  /*border: dashed 1px green;*/
  font-size: 18px;
  padding: 0 0.5%;
  margin: 0 1.5%;
  white-space: nowrap;
}

nav#top_nav ul.main_row li a{
  color: #000;

    /*
    //-- semi-transparent background behind top menu links experimental styling;
    text-shadow: 1px 1px 2px white;
    background: rgba(255,255,255,0.7);
    padding: 0;
    line-height: 1.2;
    border-radius: 10px;
    padding: 0 5px;
    display: inline-block;
    */

}

nav#top_nav ul.main_row li a:hover{
    color:#25b393;
}


nav#top_nav .main_row .logo img{
    max-height: 50px;
    height: 50px;
    transition: height 0.2s;
    z-index: 1;
}

nav#top_nav .main_row li#free_trial{
  padding: 0;
  margin-left: 0.5%;
}

nav#top_nav li#log_in.front_c{
    display: none;
}

nav#top_nav .main_row li a.btn{
    font-size: 18px;
    color:#ffffff;

    padding: 0 20px;
    height: 38px;
    line-height: 36px;
    min-width: auto;

}

nav#top_nav .main_row li a.btn:hover, .open_menu nav#top_nav .main_row li a.btn:hover{
    color:#ffffff;
}

nav#top_nav .main_row li a.btn:active{
  color:#25b393;
}


nav#top_nav .main_row .spacer{
  margin-left: 5%;
}

#blog_cat_toggle{
  display: none;

}

nav#top_nav #blog_categories_container {
  display: none;
}

.tooltip-inner{         /* customize tooltip for "continue to my blog" */
    max-width: 300px;
    font-family: 'BlogCirc', Sans-serif;
}

.mobile_logo{
    display: none;
}


/* HOMEPAGE */

.left_block {
    padding-right: 3%;
}
.left_block.compact{
    padding-right: 15px;
}

.headline, h1.headline{
  color: #000;
  margin-bottom: 60px;
  line-height: 0.9;
}

.subline{
  color:#333;
  margin-bottom: 60px;
}

.left_block.compact .subline{
    padding-right: 3%;
}

.subline .bold{
    font-size: 1.05em;
}

.subline.pretext{
    font-size: 20px;
    color: #999;
    margin-bottom: 0;
    /* font-style: italic; */
    margin-top: 0;
    font-family: 'BlogCirc', sans-serif;
}

.cta_subline{
  color: #888;
  font-size: 14px;
  font-family: 'Lustria', serif;
  display: inline-block;
  margin-left: 7px;
}

.cta_subline.slack{
    font-size: 16px;
}

.midtext{
    font-family: 'Lustria', serif;
    margin-top: 50px;
    font-size: 18px;
    color: #888;
}

.midtext a{
    font-family: 'BlogCirc', sans-serif;
    /*font-size: 18px;*/
}

.cta_subline.v2{
    margin-top: 20px;
    color: #666;
    font-size: 15px;
    
}

.cta_subline.v2 svg{
    width: 24px;
    color: #25b393;
}

.cta_subline.v2 span{
    margin-right: 7px;
    white-space: nowrap;
}

.cta_subline a{
    font-family: 'BlogCirc', sans-serif;
}

img.hero{
    max-width: 100%;
    height: auto;
}


.cta_container #primary_cta{
    /*min-width: 290px;*/
    min-width: 330px;
}

.cta_container .btn{
    min-width: 290px;
}

.customer_logos{
    margin-top: 60px;
    justify-content: space-between;
    align-items: center;

    flex-wrap: nowrap;
}

.customer_logos > .col{
    /*border:dashed 1px red;*/
    text-align: center;
    max-width: max-content;
    margin-top: 25px;
}

.customer_logos > .col img{
    max-width: 100%;
    opacity: 0.6;
    width: 170px;
}

.customer_logos .intro{
    font-size: 24px;
    font-family: 'BlogCirc', sans-serif;
}

.page_mid_title{
    margin-top: 170px;
    font-size: 44px;
    font-family: 'BlogCirc', Sans-serif;
    line-height: 1.1;
    text-align: center;
    margin-bottom: 120px;
    letter-spacing: normal;
}


.section_row{
    margin-bottom: 150px;
}

.section.left{
    /*border:solid 1px orange;*/
    margin-right: 6%;
}
.section {  
    
}
.section a{
    /*font-weight: bold;*/
    text-decoration: underline;
    color: #222;
}
.section a:hover{
    color: #25b393;
}

#privacy_menu a{
    text-decoration: none;
    color: #222;
}

.section.right{
   /* border:solid 1px green;*/
    margin-left: 6%;
}

.section .img{
    max-width: 90%;
    height: auto;
}

.features .section .img{
    width:100%;     /* required for svg in ie */
}

.section .title{
    font-family: 'BlogCirc', Sans-serif;
    font-size: 32px;
    line-height: 1.1;
    margin-bottom: 40px;
    letter-spacing: normal;
    margin-top: 0;
}

.section .desc{
    font-family: 'Lustria', serif;
    font-size: 20px;
    /*border:dashed 1px green;*/
    width: 86%;
    margin: auto;
}






.container.testimonials{
    max-width: 100%;
    overflow: hidden;
    padding: 0;
    /*margin-top: 250px;*/

    /*
    margin-top: 130px;
    margin-bottom: 130px;
    */

}

.container.testimonials > .wrapper{
    max-width: 90%;
    /*border:dashed 2px pink;*/
    margin:auto;
    padding-left: 6%;
}

.container.testimonials .row{
    width: 148%;
    position: relative;
}

.container.testimonials .row .left{
    max-width: 20%;
}


.testimonials .caption{
    margin-bottom: 30px;
    margin-top: 0;
}

.testimonials .counter{
    margin-bottom: 30px;
    font-family: 'BlogCirc', sans-serif;
    font-size: 72px;
}
.testimonials .counter span#of{
    font-family: 'Lustria', serif;
    font-size: 30px;
    vertical-align: middle;
    margin: 0 15px;
}

.testimonials .counter span#count{
    display: inline-block;
    width: 34px;
}

.nav{
    display: flex;
}

.testimonials .nav .arrow img{
   max-height: 32px;
}

.testimonials .nav .arrow{
    opacity: 0.2;
    margin-right: 120px;
    transition: opacity 0.4s;
}

.testimonials .nav .arrow:last-child{
    margin-right: 0;
}

.testimonials .nav .arrow:hover{
    opacity: 1;
    cursor: pointer;
}

.testimonials .testimonial{
    font-family: 'Lustria', serif;
    font-size: 24px;
    transition: font-size 0.25s;
    /*padding-right: 100px;*/
    padding-right: 13%;
    margin-bottom: 30px;
}

.testimonials .signature{
    font-family: 'Lustria', serif;
}


.testimonials .owl-item{
    min-height: 300px;
    /*border:dashed 2px blue;*/
}

.owl-item.active{
    /*border: solid 5px red;*/

}

.owl-item.active ~ .active{
    /*border: solid 2px yellow;*/
    opacity: 0.3;
}

.owl-item.active ~ .active .testimonial{
    font-size: 18px;
}


.container.bottom_cta{
    /*margin-top: 220px;*/
}


h2.caption{
    margin-top: 0;
    margin-bottom: 0.5rem;
}

.bottom_cta > .row, .bottom_cta2 > .row{
    align-items: center;
}

.bottom_cta2 > .row .row{
    align-items: center;
    text-align: center;
}

.bottom_cta2 .cta_subline{
    flex-grow: 2;
    text-align: right;
}


.bottom_cta2 .btn{
    min-width: 250px;           /* IE 11 FIX */
}

.bottom_cta .cta_subline{

    flex-grow: 2;
    align-self: center;
    text-align: right;
}

.bottom_cta .cta_container .row .col{
    padding: 0 0.5%;
    white-space: nowrap;
}

.bottom_cta .row .left{
    max-width: 440px;
}

.nowrap{
    white-space: nowrap;
}

footer {
    margin-top: 220px;
    margin-bottom: 100px;
}

footer a{
    color: #000;
}

footer a:hover{
    color:#27B396;
}

footer .left .row .col > div {
    padding: 5px 0;
    font-family: 'BlogCirc', sans-serif;
    font-size: 18px;
}

footer .left {
    max-width: 30%;
    margin-right: 5%;
}

footer .right{
    align-self: flex-end;
    text-align: right;
    margin-bottom: 5px;
}

footer .txt{
    font-family: 'Lustria', serif;
    font-size: 12px;
    color: #b3b3b3;
    padding-right: 75px;

}

footer .txt a{
    font-family: 'BlogCirc', sans-serif;
    margin: 0 7px;
    color: #7e7e7e;
}

footer .txt a:hover{
    color: #000000;
}

footer .txt a:last-child{
    margin-right: 0;
}

footer .txt img.logo{
    width: 50px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;

}

footer .txt .links {
    display: inline-block;
    white-space: nowrap;
}



/* F E A T U R E S */


.features .header {
    color: #000;
    margin-bottom: 60px;
}

.features .header {
    color: #000;
    margin-bottom: 60px;
}


.features .header .subline {
    max-width: 90%;
}


.features .section{
    margin: 12% auto;
    width: 80%;
}

.features .section .title{
    font-size: 24px;
}

.features .section .desc{
    font-size: 18px;
    width: auto;
    line-height: 1.7;
}


.features #features_row > div:nth-child(3n-2) .section{
    margin-left: 0;
}

.features #features_row > div:nth-child(3n+0) .section{
    margin-right: 0;
}


/* B L O G */



/* LOG IN */

.container.login, .container.signup_message{
    min-height: 100vh;          /* viewport height, helps center login form vertically */
    display: flex;
    /*
    align-items: center;
    flex-wrap: wrap;
    */
    flex-direction: column;
    justify-content: center;
}

.container.signup_message{
    justify-content: normal;
}



/* detect touchscreens with pure css - smartphones, touchscreens */
@media (hover: none) and (pointer: coarse) {
    .container.login, .container.signup_message{
        min-height: 90vh;               /* viewport height, take away browser chrome on mobile browsers */
    }
}
/* fallback touchdevice detection, rely on modernizr class .touchevents */
.touchevents .container.login, .touchevents .container.signup_message{
    min-height: 90vh;               /* viewport height, take away browser chrome on mobile browsers */
}

.login_container, .message_container{
    margin-bottom: 15%;
    text-align: center;
    font-family: 'BlogCirc', sans-serif;
}

.message_container{
    width: 60%;
    max-width: 860px;       /* limit for large screens */
    margin-left: auto;
    margin-right: auto;
}

.container.signup_message .message_container{
    margin-top: 5%;
}

.signup_start .message_container{
    margin-bottom: 5%;
}

.form-container{
    width: 360px;
    margin: 0 auto;
    text-align: center;
    max-width: 95%;
}

.open-domains .form-container{
    width: 400px;
}

.form-head{
    /*margin-bottom: 60px;*/
}

.form-head img.logo{
    max-height: 90px;
    margin: 14% auto;
    /*display: block; */    /* used to collapse margin with register message, not needed any more */
}

.login_head{
    height: 200px;
    margin: 0 25%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.login_head.head_logo{
    height: 240px;
}

.login_head .c_name{
    font-family: 'BlogCirc', sans-serif;
    font-size: 24px;
    line-height: 1.3;
}

.login_head img.logo{
    max-height: 90px;
    max-width: 300px;
}

.circle{
    border-radius: 100%;
}

.form-title{
    margin-bottom: 40px;
    color:#333;
    text-align: center;
    font-size: 18px;
}

.join .form-title{
    font-size: 32px;
}

.invitation_rsvp .form-title{
    font-size: 28px;
}

.form-subtitle{
    margin: 40px auto;
    text-align: center;
    font-family: 'Lustria', serif;
    color:#666666;
    font-size: 16px;
}

.form-tagline{
    font-family: 'Lustria', serif;
    font-size: 16px;
    margin:10px auto;

}

span.bold, a.bold{
    font-family: 'BlogCirc', sans-serif;
    font-weight: normal;
}


.input-field{
    margin-bottom: 0.7rem;
    position: relative;
}
.input-field input{
    border-radius: 60px;
    height: 64px;
    padding: 0px 30px;
    padding-right: 5px;
    border: 1px solid #e2e2e2;
    width: 100%;
    font-size: 18px;
    color: #000;
    font-family: 'BlogCirc', sans-serif;
    transition: border-color 0.3s, background-color 0.3s;
    /* "all" is problematic with input-error and input-ok classes, show/hide background image.. on mobile
    transition: all 0.3s, background-position 0s, background-size 0s;
    -webkit-transition: all 0.3s, background-position 0s, background-size 0s;
    */
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    background-color: #ffffff;      /* required to prevent black background on dark mode on firefox on linux */
}

.input-field .btn{
    font-size: 18px;
    width: 100%;
}

.input-field input::placeholder{
    color:#c8c8c8;
    /*line-height: 24px;  */    /* fix safari placeholder positioning bug - creates problem in firefox */
}

.input-field input:focus{
    border-color:#25b393;
    outline:none;
    background-color: #f9f9f9;
}

.input-field input.input-error{
    border-color: #f9c0c0;
    background-image: url('../images/x.svg');
    background-repeat: no-repeat;
    background-position: 94% center;
    background-size: 16px;
}

/* prevent password managers from inseting their input styling icons, used on join2  */
.input-field input#username.input-error{
    border-color: #f9c0c0 !important;
    background-image: url('../images/x.svg') !important;
    background-repeat: no-repeat !important;
    background-position: 94% center !important;
    background-size: 16px !important;
}

.input-field input.input-ok{
    background-image: url('../images/checkmark.svg');
    background-repeat: no-repeat;
    background-position: 95% center;
    background-size: 25px;
}

.input-field input.input-mark{
    padding-right: 40px;
}

.form_error_message{
    font-size: 14px;
    font-family: 'Lustria', serif;
    text-align: center;
    margin-top: 10px;
}

.form_error_message.hard_error{
    color:#ff3c3c;
    font-size: 15px;
}

.form_error_message.soft_error{
    color:#ff3c3c;
}

.form-fields label{
    font-family: 'BlogCirc', sans-serif;
    margin-bottom: 20px;
    color: #a0a0a0;
    display:block;
}

.join .form-fields label, .reset_password .form-fields label{
    margin-bottom: 5px;
    text-align: left;
    margin-left: 20px;
    margin-top: 15px;
    color: #333;
}

.signup.process .form-fields label{
    margin-top: 25px;
}

.form-bottom-tagline{
    font-size: 14px;
    margin-top: 1.5rem;
    color: #b8b8b8;
}

.open_domains{
    font-size: 16px;
    width: 90%;
    max-width: 600px;
    margin: 50px auto 0;
    color: #b0b0b0;
}
.open_domains span{
    color:#777;
}

.open_domains p.cta{
    display: inline;
    white-space: nowrap;
}

.login img#userimg{
    position: absolute;
    border-radius: 100%;
    display: none;
    transition: height 0.3s, width 0.3s;
    
    width: 54px;
    height: 54px;
    right: 5px;
    top: 5px;
}

.register_message{
    font-family: 'BlogCirc', sans-serif;
    font-size: 18px;
    text-align: center;
    margin-top: 40px;
}

.back{
    position: absolute;
    /*margin: 60px;*/
    margin: 2.2%;
    font-family: 'BlogCirc', sans-serif;
}

.back a{
    color:#c2c2c2;
    transition: all 0.3s;

}
.back a:hover{
    color:#888;
    text-decoration: none;
}

.back a img.arr{
    height: 12px;
    opacity: 0.4;
    vertical-align: middle;
    margin-right: 10px;
    margin-top: -3px;
    transition: all 0.3s;
}

.back a:hover img{
    opacity: 0.8;
}
















.input-field input#email_username{
    padding-right: 225px;
    text-align: right;
    padding-left: 0;
}

.select_container{
    position: absolute;
    right: 7px;
    top: 7px;
    /* border: dashed 1px red; */
    /*border-radius: 100px;*/
    overflow: hidden;
    padding-right: 10px;
    padding-left: 5px;
    background-color: #eeeeee;
    background-color: red;
}

select.round{
    height: 50px;
    border: none;
    background-color: #eeeeee;
    font-size: 18px;
    outline:none;
    max-width: 220px;

    position: absolute;
    right: 7px;
    top: 7px;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 100px;
    cursor: pointer;
    transition: background-color 0.2s;
}

select.round:focus{
    background-color: #e8e8e8;
}

.select_normalize {
    border-radius: 100px;
    display: block;
    padding: .6em 1.7em .5em .8em;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23333333%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat, repeat;
    background-position: right .8em top 55%, 0 0;
    background-size: .65em auto, 100%;
    outline: none;
}
.select_normalize::-ms-expand {
    display: none;
}
.select_normalize:hover {

}
.select_normalize:focus{
    outline: none;
}
.select_normalize option {
    font-weight:normal;
}


.message_container .message-title{
    /*color:red;*/
        font-size: calc(32px + (62 - 32) * ((100vw - 320px) / (1920 - 300)));
    /*font-size: calc(32px + (72 - 32) * ((100vw - 320px) / (2560 - 300)));*/
    /*font-size: calc([minimum size] + ([maximum size] - [minimum size]) * ((100vw - [minimum viewport width]) / ([maximum viewport width] - [minimum viewport width])));*/

}

.message_container .message-body{
    font-family: 'Lustria', serif;
    font-size: 18px;
}

.message_container .message-body span.bold{
    font-family: 'BlogCirc', sans-serif;
    font-weight: normal;
    font-size: 1.1em;
}

.message_container .narrow{
    /*padding: 0 20%;*/
    margin-left:20%;
    margin-right: 20%;
}

.small_txt, .message_container .small_txt{
    font-size: 16px;
    margin: 20px auto;
    color:#666666;
}

.message_container .img_container{
    /*
    margin-top: 50px;
    margin-bottom: 50px;
    */
    margin: 5% auto;
    max-width: 60%;
}

.signup_start .message_container .img_container{
    max-width: 50%;
    margin: auto;
}

.message_container .img_container img{
    max-width: 100%;
}



/* P R I C I N G */
.pricing .left_block{
    padding-right: 15px;
}

.pricing .prices {
    margin: 80px auto;
    max-width: 75%;
    margin-left: 0;
}

.pricing .prices .left{
    padding-left: 0;
}

.pricing .prices .right{
    text-align: right;
}

.pricing .prices .right .content {
    display: inline-block;
    text-align: left;
}

.pricing .prices .vertical-line {
    height: 100%;
    width: 1px;
    background: #e5e5e5;
    margin: auto;
}
.pricing .prices .price {
    margin-bottom: 16px;
    font-family: 'BlogCirc', sans-serif;
    font-size: 72px;
    margin-top: 10px;
    line-height: 1;
    margin-bottom: 0;
}

.pricing .prices .middle {
    /*margin-right: 50px;*/
    margin-right: 10%;
}

.pricing .prices .price sup {
    top: -0.8em;
    font-size: 30px;
    letter-spacing: 0px;
    font-family: "Lustria", serif;
    margin-right: 5px;
}

.pricing .prices .price {
    transform: translateX(-20px);
}





.pricing .prices .desc {
    font-family: 'BlogCirc', Sans-serif;
    font-size: 18px;
    margin-top: 5px;
    margin-bottom: 0;
    white-space: nowrap;
}
.pricing .prices .highlighted {
    color: #49c08c;
}

/* Hero image */
.pricing .hero {
    width: 100%;
    max-width: 500px;
    margin-top: 50px;
}

/* Pricing description */

.pricing .surcharge_desc{
    margin-top:60px;
}

.pricing .surcharge_desc div.col{
    /*border: dotted 1px red;;*/
    color: #777;
    font-family: 'BlogCircBook', Sans-serif;
}

.surcharge_desc .surcharge_calc{
    margin-top: 20px;;
}

.surcharge_desc input.num_users{
   width: 62px;
   min-width: 55px;
   padding: 2px 0px;
   text-align: center;
   border-radius: 12px;
   border: none;
   background-color: #f2f2f2;
   transition: all 0.3s;
   color: #333;
   padding-left: 10px;
   max-width: 90px;
}

.touchevents .surcharge_desc input.num_users{
    padding-left: 0px;
}

.surcharge_desc input.num_users:focus, .surcharge_desc input.num_users:active, .surcharge_desc input.num_users:hover{
    outline: none;
    background-color: #eee;
    color: #000;
}

.surcharge_desc #surcharge_price{
    color: #444;
}

.surcharge_desc #surcharge_max{
    display: none;
    /*white-space: nowrap;*/
}

#unlimited_users{
    border-bottom:dashed 2px #ccc;
    /*cursor: help;*/
    cursor: default;
}

.pricing .pricing-desc {
    margin-top: 80px;
    font-size: 18px;
    letter-spacing: 0px;
    font-family: "Lustria", serif;
}
.pricing .pricing-desc .title {
    font-family: 'BlogCirc', Sans-serif;
    font-size: 18px;
}

.pricing .pricing-desc .row > div{
    margin: 5px auto;
}

.pricing .pricing-desc a{
    /*font-weight: bold;*/
    cursor: pointer;
    color: #222222;
    text-decoration: underline;
}

.pricing .pricing-desc a:hover{
    color: #25b393;
}

/* Frequently asked questions */
.pricing .faq h2{
    margin-top: 0;
    margin-bottom: 12%;
}

.pricing .faq .left .title {
    font-size: 22px;
    letter-spacing: -1px;
    margin-top: 0;
}

.pricing .faq .left .desc {
    font-size: 18px;
    font-family: "Lustria", Serif;
    font-weight: 400;
    margin-bottom: 23%;
    max-width: 80%;
    line-height: 1.8;
}

.pricing .faq .right {
    text-align: left;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-left: 7%;
}

.pricing .faq .right .desc {
    text-align: left;
    font-size: 18px;
    font-family: 'BlogCirc', Sans-serif;
}
.pricing .faq .right .image {
    margin: 15% auto 25%;
    width: 100%;
    max-width: 250px;
}

.pricing .faq .right .page_mid_title {
    font-family: 'BlogCirc', Sans-serif;
    text-align: left;
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 48px;
    line-height: 1;
}

.pricing .faq .right > .row{
    min-width: 100%;                /* required for IE 11 */
}



    /* S I G N   U P */

.signup_container{
    text-align: center;
}

.signup_container  .left{
    border-right: solid 1px #e5e5e5;
}

.signup_container .right{
    align-self: center;
}

.signup .signup-form-container{
    width: 90%;
    margin: auto;
}

.signup .logo_container{
    display: flex;
    align-items: center;
    max-width: 1800px;
    margin: auto;
    position:relative;
}
.signup .logo_container .logo{
    margin: 3%;
}

.signup_container .headline{
    margin-bottom: 30px;
    line-height: 1;
}

.signup .form-subtitle{
    color:#333;
    font-size: 18px;
    margin-bottom: 7%;
    margin-top: 5%;
}

.signup .input-field{
    /*border:dashed 1px red;*/
    width: 320px;
    max-width: 100%;
    display: inline-block;
    vertical-align: top;
    margin: 0 5px 0.7rem;
}

.signup .form-fields{
    margin: 6% 2% 0;
}

.signup .form-bottom-tagline{
    font-family: 'Lustria', serif;
    font-size: 16px;
    color:#333;
    margin-top: 6%;
}

.signup .form-bottom-tagline a{
    font-family: 'BlogCirc', sans-serif;
}

.signup .signin_external{
    padding-left: 70px;
}

.signup .right .side_container{
    font-family: 'Lustria', serif;
    margin: auto;
    width: 550px;
    max-width: 80%;
    text-align: left;
}

.signup .right .testimonial{
    font-size: 28px;
}

.signup .right .signature{
    font-size: 18px;
    margin-top: 5%;
}

.signup .right .side_container img{
    max-width: 58%;
    display: block;
    margin: 15% auto 0;

}

.circle_spin{
    width: 20px;
    height: 20px;
    border-radius: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: solid 2px rgba(255, 255, 255, 0.3);
    border-top-color: #ffffff;
    -webkit-animation: spin 1s infinite linear;
    animation: spin 1s infinite linear;
    /*display: inline-block;*/
    margin-left:5px;
    position: absolute;
    right: 20px;
    top: calc(50% - 10px);
}
@keyframes spin {
    100% {
        transform: rotate(360deg);
    }
}
@-webkit-keyframes spin {
    100% {
        -webkit-transform: rotate(360deg);
    }
}


.signup img#userimg{
    position: absolute;
    height: 40px;
    right: 12px;
    top: 12px;
    border-radius: 100%;
}

.signup .signup_resend{
    border-top: dashed 2px #41c3ac;
    padding-top: 18px;
    font-size: 16px;
    margin-top: 25px;
    color: #666666;
    line-height: 1.4;
}

.signup .notice{
    padding: 5px 15px;
    background-color: cornsilk;
    border-radius: 10px;
    font-family: 'Lustria', serif;
}

.signup .notice a{
    font-family: 'BlogCirc', sans-serif;
    white-space: nowrap;
}


.signup.process .logo_container .counter{
    font-size: 30px;
    font-family: 'BlogCirc', sans-serif;
    position: absolute;
    top: 0;
    right: 0;
    margin: 3%;
}

.signup.process .headline{
    text-align: left;
    margin-bottom: 25px;
}

.signup.process .form-subtitle{
    text-align: left;
}

.signup.process .signup-form-container{
    max-width: none;
    width: auto;
}

.signup.process .form-fields {
    /*margin: 10% 0 0;*/
    margin: 0;
    text-align: left;
}

.input_addon{
    background-color: #eeeeee;
    font-family: 'BlogCirc', sans-serif;
    color: #999;
    position: absolute;
    top: 0;
    right: -115px;
    line-height: 64px;
    padding-right: 30px;
    border-top-right-radius: 60px;
    border-bottom-right-radius: 60px;
    padding-left: 50px;
}

.input_container{
    position: relative;
}

.input_container input{
    position: relative;
    z-index: 10;
}

.signup.process .input-field.extended, .input-field.extended {
    margin-right: 115px;
}

.signup.process .desc{
    color:#666666;
    font-family: 'Lustria', serif;
    font-size: 14px;
    max-width: 450px;
}

.signup.process .desc a{
    font-family: 'BlogCirc', sans-serif;
    color: #666666;
    white-space: nowrap;
}

.signup.process .desc a:hover{
    color: #333;
    text-decoration: none;
}

.signup.process .cta_row{
    margin-top: 5%;
    align-items: center;
}

.signup.process .row .left{
    border:none;
}

.signup.process .row .right {
    align-self: center;
    text-align: center;
}

.signup.process.step1 .row .right{
    text-align: left;
}

.signup.process .row .right img{
    max-width: 100%;
}

.signup.process .input-field{
    margin:0;
}

.signup.process .container{
    margin-top: 3%;
}

.signup.process .form-subtitle {
    margin-top: 3%;
    margin-bottom: 3%;

}





/*  A B O U T */

/* suspend flex */
.about .row.main_row{
    display: block;			
    padding: 0 15px;
}

.about .right_block{
    float: right;
    width: 50%;
    margin-left: 4%;
    margin-bottom: 3%;
}

.about .pre-title {
    font-family: 'BlogCirc', Sans-serif;
    font-size: 16px;
}
.about .headline { 
    margin-top: 25px;
    margin-bottom: 25px; 
}

.about .right_block {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    order: 2;
}

.about .capterra .row .right{
    align-self: center;
    text-align: right;

}
.about .capterra .left .row{
    align-items: flex-end;

}
.about .capterra .headline {
    margin-bottom: 4%;
    margin-top: 0;
}
.about .capterra .rating {
    margin-top: 0;
    margin-bottom: 1%;
}
.about .capterra .rating .stars {
    display: inline-block;
    margin-right: 15px;
}
.about .capterra .rating .stars .star {
    width: 24px;
    height: auto;
    vertical-align: baseline;
}
.about .capterra .lines {
    max-width: 90%;
    margin-top: 5%;
}
.about .capterra .lines .line {
    font-size: 17px;
    font-family: 'BlogCirc', Sans-serif;
    display: flex;
    justify-content: space-between;
    margin-top:2%;
}

.about .capterra .reviews {
    font-size: 18px;
    font-family: 'BlogCirc', Sans-serif;
    color: #b2b2b2;
}
.about .capterra .review {
    max-width: 80%;
    height: 100%;
    display: flex;
    align-content: space-between;
    flex-wrap: wrap;
}

.about .capterra .review .text {
    width: 100%;
    font-size: 24px;
    font-family: 'Lustria', serif;
}
.about .capterra .review .author {
    width: 100%;
    font-family: 'BlogCirc', Sans-serif;
    color: #b2b2b2;
}
.about .customers-title {
    text-align: center;
    font-family: 'BlogCirc', Sans-serif;
    color: #b2b2b2;
    font-size: 18px;
    margin-bottom: 75px;
}


/* T E R M S  /  P R I V A C Y */


.terms .headline {
    margin-top: 0px;
}
.terms .desc {
    margin: 0;
    margin-top: 30px;
}

.terms .desc strong, .terms .desc a{
    font-family: 'BlogCirc', sans-serif;
    font-weight: normal;
}
.terms .section .title {
    margin-top: 60px;
    margin-bottom: 0;
}

.terms .content_container{
    border-left: solid 1px #e5e5e5;
    padding-left: 7%;
}

.terms .content_container .content{
    max-width: 900px;
}

.terms #privacy_menu{
    position: sticky;
    top: 100px;
}

.terms #privacy_menu .item {
    margin-top: 10px;
    margin-bottom: 10px;
}

.terms #privacy_menu .item a {
    color: #2e2e2e;
    font-family: 'BlogCirc', Sans-serif;
    font-size: 18px;
    text-decoration: none;
}

.terms #privacy_menu .item a.selected{
    border-bottom: dotted 1px #999;
}

.terms h3.subtitle{
    font-size: 22px;
    margin-top: 10px;
    color: #b0b0b0;
}

.terms h5{
    margin-bottom: 20px;
}

.terms .table{
    font-size: 17px;
}

.terms .table .row {
    text-align: left;
    padding: 0.75rem 0;
    vertical-align: top;
    border-top: 1px solid #eceeef;
    font-family: 'Lustria', serif;
}
.terms .table .th {
    font-family: 'BlogCirc', Sans-serif;
}



/* L A N D I N G   P A G E S   -  S L A C K */

body.landing.slack {
    background: #fff4f4;
}

.slack .body_row{
    align-items: center;
}

.slack .body_row > div.section{
    margin-bottom: 10%;
}



.slack .slack-btn {
    border: none;
    background-repeat: no-repeat;
    background-image: url('../images/slack-logo.svg');
    background-position: 22px center;
    background-size: 30px;
    width: 300px;
    padding-left: 70px;

}




.slack .subline{
    max-width: 480px;
}



.slack .body_row {
    margin-top: 10%;
    margin-bottom: 10%;
}

.slack .body_row .section .title {
    font-size: 28px;
}

.slack .body_row .section .images {
    position: relative;
}
.slack .body_row .section .images .first {
    max-width: 75%;
    margin-bottom: 0;
}
.slack .body_row .section .images .last {
    max-width: 90%;
    margin-bottom: 0;
    margin-top: -20%;
    margin-left: 8%;
}
.slack .body_row .section .image {
    max-width: 90%;
    border-radius: 7.5px;
    -webkit-box-shadow: 0px 4px 5px 1px rgba(237,207,207,0.8);
    -moz-box-shadow: 0px 4px 5px 1px rgba(237,207,207,0.8);
    box-shadow: 0px 4px 5px 1px rgba(237,207,207,0.8);
}



/* min 1800 */

.slack.bottom_cta .caption {
    font-size: 56px;
}
.slack.bottom_cta .row .left {
    max-width: 505px;
}


/* min 1400 */



.slack .body_row .section .title {
    font-size: 24px;
}
.slack .body_row .section .desc {
    font-size: 18px;
    max-width: 85%;
    margin: 0;
    line-height: 1.7;
    width: auto;
}
.slack.bottom_cta .row .left {
    max-width: 550px;
}


.slack .body_row div.section.alternate{
    text-align: right;
    padding-right: 6%;
}

.slack .body_row div.section.alternate .desc{
    margin-right: 0;
    margin-left: auto;
}




/* O A U T H */

/*** AUTHORIZE **/

.oauth h1.title{
    font-size: 22px;
    margin-top: 0;
    margin-bottom: 35px;
    letter-spacing: -1px;
    line-height: normal;
}

.oauth h1.alternate{
    font-family: 'Lustria', serif;
}

ul.choose-account {
    list-style: none;
    margin: 0 auto;
    width: 360px;
    max-width:100%;
    text-align: center;
    padding:0;
}

ul.choose-account li.account {
    list-style: none;
}

ul.choose-account li.account > a.btn{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    padding: 0;
    margin: 10px auto;
    line-height: normal;
    justify-content: center;
    position: relative;
    height: 70px;
}

ul.choose-account li.account img.avatar{
    border-radius: 100%;
    width: 45px;
    position: absolute;
    left: 12px;
}

ul.choose-account li.account .details{
    max-width: 62%;
    overflow: hidden;
}

ul.choose-account li.account .title{
    font-family: 'BlogCirc', sans-serif;
    font-size: 18px;
    color:#333333;
    overflow: hidden;
    text-overflow: ellipsis;
}

ul.choose-account li.account .subtitle{
    font-family: 'Lustria', serif;
    color:#666666;
    font-size: 13px;
    overflow: hidden;
    text-overflow: ellipsis;
}

ul.choose-account li.other-account{
    margin-top: 30px;
    border:none;
}

ul.choose-account li.other-account a.btn{
    width: 100%;
    font-size: 18px;
}

/*** CONFIRM ***/

.oauth .access_rights{
    max-width: 580px;
    text-align: left;
    margin:auto;
    margin-bottom: 50px;
}

.oauth .access_rights .access_item{
    padding: 15px 5px;
    border-bottom: solid 1px #dddddd;
    font-family: 'Lustria', serif;
}

.oauth .access_rights .access_item.caption{
    font-family: 'BlogCirc', sans-serif;
    color: #999;
}

.oauth .btn{
    margin: 5px;
    min-width: unset;
}

/* client confirm */

.oauth .app_logo {
    max-height: 76px;
    max-width: 76px;
    margin: 0 25px;
}

.oauth .access_item img.avatar{
    border-radius: 100%;
    height: 40px;
    margin-right: 10px;
    float:left;
}

.oauth .access_item .details{
    line-height: 1.3;
}

.oauth .access_item .details .logout{
    font-size: 14px;
}

.integration-form button.multiselect.btn{
    padding-left: 10px;
    padding-top: 4px;
    padding-bottom: 3px;
    padding-right: 23px;
    border: none;
    font-size: 12px;
    color: #333;
    text-transform: uppercase;
    /* border: solid 1px #ccc; */
    border-bottom: dashed 1px #aaa;
    /* border-radius: 0; */
    margin:2px;
    margin-left: 0;
    line-height: 1.4;
    letter-spacing: normal;
    background: none;
    /* font-weight: 900; */
    height: auto;
    box-shadow: none;
    border: solid 1px #ccc;
}

.btn-group {
    position: relative;
    display: inline-block;
    font-size: 0;
    white-space: nowrap;
    vertical-align: middle;
}

.caret {
    display: inline-block;
    width: 0;
    height: 0;
    vertical-align: top;
    border-top: 4px solid #333;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    content: "";
}

.integration-form button.multiselect:hover{
    color:#000;
    border: solid 1px #aaa;
}

.integration-form button.multiselect.btn .caret{
    position: absolute;
    right: 14px;
    margin-top: 6px;
}

.integration-form .multiselect-container li a{
    outline: none;
}

.integration-form .multiselect-container li a:hover{
    text-decoration: none;
}

.integration-form label.checkbox{
    margin-bottom: 0;
    padding: 8px 28px 6px 35px;
    position: relative;
    display: block;
    font-size: 15px;
    font-family: 'BlogCirc', sans-serif;
}

.integration-form li.subcat label.checkbox{
    margin-left: 20px;
    font-family: 'Lustria', serif;
    font-size: 14px;
}

.integration-form label.checkbox input[type=checkbox]{
    position: absolute;
    left: 13px;
    top: 11px;
}

.integration-form label{
    cursor: pointer;
}


.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 10rem;
    padding: 0.5rem 0;
    margin: 0.125rem 0 0;
    font-size: 1rem;
    color: #212529;
    text-align: left;
    list-style: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 0.25rem;
    box-shadow: 0 5px 10px rgba(0,0,0,.2);
}

.integration-form .dropdown-menu > .active > a, .integration-form .dropdown-menu > .active > a:hover, .integration-form .dropdown-menu > .active > a:focus{
    background: #5dbd9e;
    background: #f4f4f4;
    color:black;
}

.integration-form .dropdown-menu > li > a:hover, .integration-form .dropdown-menu > li > a:focus, .integration-form .dropdown-submenu:hover > a, .integration-form .dropdown-submenu:focus > a{
    /*background: #5dbd9e;*/
    background: #f4f4f4;
    color:black;
}

.integration-form .btn-group.open .btn.dropdown-toggle{
    background:none;
    color:#333333;
    box-shadow:none;
    -webkit-box-shadow: none;
}




div.fields{
    margin-top: 20px;
    margin-left: 25px;

}

div.checkbox{
    margin-bottom: 15px;
    padding-left: 25px;
}

div.checkbox label.caption{
    font-family: 'BlogCirc', sans-serif;
    display: inline-block;
    font-size:16px;
    margin-bottom: 2px;
    position: relative;
}

div.event_desc{
    font-size:14px;
    color:#666666;
}


.dropdown-menu.show{
    display: block;
}

.dropdown-menu > li > a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: normal;
    line-height: 20px;
    color: #333333;
    white-space: nowrap;
}
/*
.checkbox input[type="checkbox"] {
    margin-right: 10px;
    margin-left: -25px;
}
*/


div.checkbox label.caption input[type="checkbox"]{
    position: absolute;
    top: 5px;
    left: -25px;
    cursor:pointer;
}


.corner_notice{
    position:fixed;
    bottom: 100px;
    right:100px;
    padding: 30px;
    border-radius: 15px;
    background-color: #fee3dd;
    font-size: 17px;
    display: none;
    font-family: 'Lustria', serif;
    text-align: left;
    max-width: 360px;
}

.corner_notice .title{
    font-size: 18px;
    font-family: 'BlogCirc', sans-serif;
    margin-bottom: 5px;
}

.corner_notice .close_x{
    background-image: url(../images/x-black.svg);
    background-size: 12px;
    background-repeat: no-repeat;
    width: 12px;
    height: 12px;
    position: absolute;
    top: 20px;
    right: 20px;
    opacity: 0.5;
    cursor: pointer;
    transition: all 0.2s;

}

.corner_notice .close_x:hover{
    opacity: 1;
}


.mobile_search_icon {
    display: none;
}


div.backdrop{
    background-color: transparent;
    visibility: hidden;
    opacity: 0;
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0;
    transition: all 0.5s;
    z-index: 1;
}

.mid_page_link{
    text-align: center;
    font-size: 22px;
    font-family: BlogCirc;
    margin-top: 50px;
}

.mid_page_link a:hover{
    text-decoration: underline;
}






/* ios styling  - login screen*/
/*
.ios .container.login{
     margin-top: 44px;
     margin-bottom: 64px;
}*/




body.ios {          /* make room for native app UI, on all pages before login */
    padding-top: 44px;
    padding-bottom: 64px;
}


.global_login_link{
    margin-top: 2.5rem;
    display: none;
}

.ios .global_login_link{
    display:block;
}

.global_login_link a{
    font-size: 14px;
    color: #b0b0b0;
}

.recovery_link{
    font-family: 'BlogCirc', sans-serif;
    margin-top: 40px;
    font-size: 18px;
}

.ios .back{
    display:none;
}

.ph_badge{
    margin-top: 7%; 
    margin-bottom: 0;
}

.ph_badge img{
    width: 230px; 
    height: 50px;
}

.grecaptcha-notice{
    display: none;
}


/* ==========================================================================
M E D I A   Q U E R I E S  -  mobile first
========================================================================== */



/*Small devices (landscape phones, 576px and up)*/
@media (min-width: 576px) {     /* fix bootstrap default */



}



/*Medium devices (tablets, 768px and up)*/
@media (min-width: 768px) {

    .not-top nav#top_nav{
        position: fixed;
        width: 100%;
        top: 0;
        /*background-color: #ffffff;*/
        transition: all .5s;
        /*border-bottom:solid 1px #ccc;*/
        /*box-shadow: 0 1px 8px rgba(0,0,0,.10);*/

        background-color: transparent;

    }
    /* detect touch with css */
    @media (hover: none) and (pointer: coarse) {            /* show opaque top bar on touch screens - tablets */
        .not-top nav#top_nav {
            background-color: #ffffff;
            box-shadow: 0 1px 8px rgba(0,0,0,.10);
        }

        .landing.slack.not-top nav#top_nav {
            background-color: #fff4f4;
        }
    }

    .not-top nav#top_nav:hover{
        /*background-color: #ffffff;*/
        /*box-shadow: 0 1px 8px rgba(0,0,0,.10);*/
        /*border-bottom:solid 1px #ccc;*/
    }

    .not-top nav#top_nav ul.main_row li.menu_item a:hover{
        /*
        background-color: white;
        border-radius: 3px;
        */
    }


    .landing.slack.not-top nav#top_nav:hover {
        /*background-color: #fff4f4;*/
    }

    .landing.slack.not-top nav#top_nav ul.main_row li.menu_item a:hover{
        /*background-color: #fff4f4;*/
        /*background-color: transparent;*/
    }

    .not-top nav#top_nav .main_row{
        height: 70px;
    }

    .not-top .inner_content{
        /*margin-top: 200px;*/
        /*background-color: #0e90d2;*/
    }

    .not-top nav#top_nav .main_row .logo img{
        height: 42px;
        margin-top: 6px;
    }

}




/*Large devices (desktops, 992px and up)*/
@media (min-width: 992px) {
    .nowrap-xl{
        white-space: nowrap;
     }
}




/* custom breakpoint - all larger screens that 1260 */
@media (min-width: 1260px) {

    #surcharge_cap_desc{
        display: block;
      }

}


/*Extra large devices (large desktops, 1200px and up)*/
@media (min-width: 1200px) {

  nav.top_nav .main_row a{
    padding: 0 0.5%;
    margin: 0 1%;
  }

 
 
}


@media (min-width: 1500px) {            /* custom breakpoint, slack page */

    .col-xxl-4{
        flex: 0 0 33.3333%;
        max-width: 33.33333%;
    }

    .order-xxl-0{
        order:0;
    }



    .slack .body_row{
        align-items: normal;
    }

    .slack .body_row > div.section {
        margin-bottom: 0;
    }

    .slack .body_row > div.content {
        margin-top: 4%;
    }

    .slack .body_row .section .image {
        max-width: 80%;
    }

    .slack .body_row .section .image{
        max-width: 80%;
    }

    .slack .body_row .section .images .first {
        max-width: 72%;
    }

    .slack .body_row .section .images .last {
        max-width: 77%;
        margin-left: 8%;
        margin-top: -15%;
    }

    .slack .body_row div.section.alternate{
        text-align: left;
        padding-right: 0;
    }

    .slack .body_row div.section.alternate .desc{
        margin:0;
    }

}


@media only screen and (min-width: 1600px) {

    .container {
        max-width: 88%;
    }
}

@media only screen and (min-width: 1800px) {

    .container{
        /*max-width: 90%;*/
        max-width: 85%;
        /*border: dashed 1px orange;*/
    }

    .about .subline {
        font-size: 24px;
    }

    .nowrap-xxl{
        white-space: nowrap;
    }

}



@media only screen and (min-width: 1921px) {

    .container{
        max-width: 1800px;
        /*border: dashed 1px red;*/
    }

    .inner_content{
        padding: 0 150px;

    }


    .container.testimonials > .wrapper{
        max-width: 1800px;
        margin: auto;
        /*padding: 0 150px;*/
        padding-left: 150px;
    }

    .testimonials .testimonial{
        padding-right: 16%;
    }

    .message_container .message-title{          /* limit font size calucated by fluid calc formula for larger screens */
        font-size: 62px;
    }


}





/*  ----------- REVERSE DIRECTION MEDIA QUERIES  -----------------*/

@media (max-width: 2000px) {

    h1{
        font-size: 68px;
    }

    h1.headline.small{
        font-size: 62px;
    }

    h2{
        font-size: 56px;
    }

    .top_content {
        margin-top: 10%;
    }

    .bottom_cta .row .left{
        max-width: 410px;
    }

    .testimonials .counter {
        font-size: 66px;
        line-height: 1.2;
    }

    .testimonials .nav .arrow {
        margin-right: 115px;
    }

    .cta_container .btn {
        min-width: 285px;
    }

}



@media (max-width: 1800px) {

    h1{
        font-size: 64px;
    }

    h1.headline.small{
        font-size: 58px;
    }

    h2{
        font-size: 54px;
    }

    h3{
        font-size: 46px;
    }

    h4{
        font-size: 30px;
    }

    .inner_content{
        padding: 0 6%;
    }

    .top_content{
        /* margin-top: 200px; */
    }

    .section_row{
        margin-bottom: 120px;
    }

    .section.left{
        margin-right: 3%;
    }

    .section.right {
        margin-left: 3%;
    }

    .section .title{
        margin-bottom: 30px;
    }

    .customer_logos .intro {
        font-size: 23px;
    }

    .container.testimonials {
        /*margin-top: 230px;*/
    }

    .testimonials .testimonial{
        font-size: 23px;
        padding-right: 13%;
    }

    .container.testimonials .row{
        width: 150%;
    }

    .container.testimonials .row .left{
        max-width: 21%;
    }

    .container.bottom_cta{
        /*margin-top: 200px;*/
    }

    .bottom_cta .row .left {
        max-width: 390px;
    }

    .bottom_cta .cta_container .row{
        /*justify-content: center;*/
        justify-content: flex-end;
    }

    .bottom_cta .cta_subline{
        order: 3;
        margin-right: 324px;
        margin-top: 10px;
    }

    .bottom_cta .cta_container .row > div.col{
        flex:0 0 auto;
        width:auto;
        padding: 0 15px;
    }


    .features .section{
        width: 85%;
    }

    .pricing .faq .right .page_mid_title {
        font-size: 42px;
    }

    .login_head {
        height: 190px;
    }

    .login_head.head_logo{
        height: 220px;
    }

    .signup .signup_container .headline{
        font-size: 62px;
        margin: 35px auto;
        margin-top: 10px;
    }

    .signup .right .testimonial {
        font-size: 26px;
    }

    .signup.process.step1 .row .right {
        text-align: center;
    }

    .signup.process .row .right img{
        max-width: 80%;
    }

    .signup.process .logo_container .counter {
        font-size: 28px;
    }

    .about .capterra .review .text {
        font-size: 22px;
    }

    .corner_notice{
        bottom: 70px;
        right:70px;
        padding: 25px;
        font-size: 16px;
    }

    .corner_notice .close_x {
        top: 15px;
        right: 15px;
    }

}



@media (max-width: 1600px) {


    h2{
        font-size: 52px;
    }

    h3{
        font-size: 42px;
    }

    h4 {
        font-size: 28px;
    }

    .headline, h1.headline{
        font-size: 58px;
        margin-bottom: 35px;
    }

    h1.headline.small{
        font-size: 52px;
    }

    .subline{
        /*margin-right: 10%;*/
        font-size: 22px;
        margin-bottom: 35px;
    }

    .subline.pretext {
        font-size: 18px;
    }

    .top_content.terms{
        padding-top: 3%;
    }

    .customer_logos .intro{
        padding-right: 2%;
        font-size: 22px;
    }

    .section .title{
        font-size: 28px;
    }

    .section .desc{
        font-size: 19px;
    }

    .section.left{
        margin-right: 0;
    }

    .section.right{
        margin-left: 0;
    }

    .section .img{
        max-width: 85%;
    }

    .customer_logos{
        margin-top: 20px;

    }

    .customer_logos > .col img{
        width: 160px;
    }

    hr.h_divider {
        margin-top: 100px;
        margin-bottom: 100px;
    }

    .page_mid_title{
        font-size: 38px;
        margin-top: 130px;
        margin-bottom: 90px;
    }

    img.hero{
        max-width: 95%;
    }


    .section_row{
        margin-bottom: 100px;
    }
    .section .desc {
        width: 90%;
    }

    .container.testimonials {
        /*margin-top: 200px;*/
        /*
        margin-top: 100px;
        margin-bottom: 100px;
        */
    }

    .testimonials .testimonial {
        font-size: 21px;
        padding-right: 12%;
    }

    .testimonials .nav .arrow {
        margin-right: 100px;
    }

    .testimonials .caption{
        margin-bottom: 30px;
    }

    .testimonials .counter{
        font-size: 62px;
    }

    .testimonials .counter span#count{
        width: 30px;
    }

    .testimonials .counter span#of{
        font-size: 28px;
    }

    .container.testimonials .row{
        width: 162%;
    }

    .container.testimonials .row .left{
        /*border:solid 2px green;*/
        max-width: 20%;
    }


    .container.bottom_cta{
        /*margin-top: 180px;*/
    }



    .bottom_cta .row .left {
        max-width: 375px;
    }


    footer {
        margin-top: 180px;
    }

    footer .left {
        max-width: 40%;
        margin-right: 10%;
    }

    .login_container{
        margin-bottom: 5%;
    }

    .form-head img.logo {
        margin: 12% auto;
    }

    .features .section{
        margin: 10% auto;
        width: 90%;
    }

    .login_head {
        margin: 0 20%;
        height: 180px;
    }

    .login_head.head_logo{
        height: 200px;
    }

    .login_head img.logo {
        max-height: 80px;
    }

    .form-subtitle {
        margin: 30px auto;
    }


    .pricing .prices .price {
        font-size: 62px;
    }
    .pricing .prices .price sup {
        top: -0.5em;
    }

    .pricing .page_mid_title {
        font-size: 46px;
        /*margin-bottom: 90px;*/
    }


    .pricing .faq .right .page_mid_title {
        font-size: 36px;
        margin-bottom: 25px;
        letter-spacing: -1px;
    }

    .pricing .faq .left .desc {

        margin-bottom: 20%;
        max-width: 90%;
    }
/*
    .signup .container{
        max-width: 95%;
    }
    */

    .signup .signup-form-container{
        width: 95%;
    }

    .signup .logo_container .logo{
        margin-bottom: 2%;
    }

    .signup.signup_start .logo_container .logo{
        margin-bottom: 0;
    }

    .signup .signup_container .headline{
        font-size: 48px;
        margin: 25px auto;
        margin-top: 0;
    }

    .signup .right .testimonial {
        font-size: 22px;
    }

    .signup .right .signature {
        font-size: 16px;
    }

    .signup .form-subtitle {
        margin-top: 3%;
        margin-bottom: 5%;
    }

    .signup_start .message_container .img_container {
        max-width: 40%;
    }

    .signup.process .container {
        margin-top: 2%;
    }

    .signup.process .row .left {
        padding-left: 0;
    }

    .signup.process .row .right{
        align-self: center;
        /*text-align: right;*/
    }

    .signup.process.step1 .row .right img{
        max-width: 80%;
        /*margin-left: 5%;*/
    }

    .signup.process .row .right img{
        max-width: 55%;
    }

    .signup.process .input-field {
        width: 300px;
    }

    .signup.process .input-field.extended, .input-field.extended {
        margin-right: 100px;
    }

    .input_addon{
        right: -100px;
        padding-right: 22px;
    }

    .signup.process .logo_container .counter {
        font-size: 26px;
    }


    .about .capterra .review .text {
        font-size: 20px;
    }

    .about .capterra .left{
        flex: 0 0 60%;
        max-width: 60%;
    }

    .terms .desc.table{
        width: 95%;
        font-size: 16px;
    }

    .corner_notice{
        bottom: 50px;
        right:50px;
        padding: 25px;
        font-size: 15px;
    }
    .corner_notice .bold{
        font-size: 16px;
    }
}


/* standard lap top resolution 1366 */
@media (max-width: 1400px) {

    h2{
        font-size: 46px;
    }

    h3{
        font-size: 36px;
    }

    h4 {
        font-size: 26px;
    }

    .top_content{
        margin-top: 140px;
    }

    .headline, h1.headline{
        font-size: 52px;
        margin-bottom: 30px;
    }

    h1.headline.small{
        font-size: 46px;
    }

    .subline{
        margin-bottom: 35px;
        font-size: 21px;

    }

    img.hero{
        max-width: 90%;
    }

    .customer_logos .intro {
        font-size: 22px;
    }

    .customer_logos {
        margin-top: 30px;
    }

    .section_row{
        margin-bottom: 90px;
    }

    .section .desc{
        /*width: 90%;*/
        font-size: 18px;
    }

    .container.testimonials {
        /*margin-top: 160px;*/
    }

    .testimonials .counter {
        font-size: 56px;
    }

    .testimonials .counter span#of{
        margin: 0 10px;
    }
    .testimonials .counter span#count{
        width: 28px;
    }
    .testimonials .testimonial {
        font-size: 20px;
        padding-right: 14%;
    }

    .testimonials .nav .arrow{
        margin-right: 70px;
    }

    .container.testimonials .row .left{
        max-width: 21%;
    }

    .container.testimonials .row{
        width: 165%;
    }


    .container.bottom_cta{
        /*margin-top: 150px;*/
    }

    .bottom_cta .row .left {
        max-width: 330px;
    }

    .bottom_cta .cta_subline {
        margin-right: 268px;
    }

    footer {
        margin-top: 160px;
        margin-bottom: 70px;
    }

    .btn{
        padding: 0 40px;
        font-size: 20px;
        height: 56px;
        line-height: 54px;
    }

    .signin_external{
        font-size: 18px;
    }

    .signin_external.google {
        background-size: 26px;
    }
    .signin_external.slack {
        background-size: 26px;
    }

    .input-field input{
        height: 56px;
    }

    select.round {
        height: 42px;
    }

    .login img#userimg{
        width: 46px;
        height: 46px;
    }

    .back a .txt{
        display: none;
    }


    .features .section .title {
        font-size: 23px;
    }

    .features .section .desc {
        font-size: 17px;
    }

    .login_head {
        margin: 0 15%;
    }


    .message_container .img_container img{
        max-width: 90%;
    }

    /*
    .message_container .img_container{
        max-width: 60%;
    }
    */

    .pricing .pricing-desc {
        font-size: 17px;
    }
    .pricing .prices .price {
        font-size: 52px;
    }
    .pricing .prices .price sup {
        font-size: 26px;
        top: -0.5em;
    }

    .pricing .prices {
        max-width: 80%;
    }

    .pricing .page_mid_title {
        font-size: 42px;
        /*margin-bottom: 90px;*/
    }

    .pricing .faq .right .page_mid_title {
        font-size: 28px;
    }

    .pricing .faq .left .desc {
        font-size: 17px;
    }

    .bottom_cta2 .cta_subline{
        font-size: 12px;
    }

    .signup .container{
        max-width: 92%;
    }

    .signup .logo_container .logo{
        margin: 2.5%;
        margin-bottom: 0.5%;
    }

    .signup .logo_container .logo img{
        max-width: 65px;
    }

    .signup .signup_container .headline {
        font-size: 44px;
        margin-bottom: 20px;
    }

    .signup .form-subtitle {
        margin-bottom: 6%;
        margin-top: 4%;
    }

    .signup .input-field {
        width: 300px;
    }

    .signup .signin_external{
        padding-left: 55px;
    }

    .signup .form-subtitle {
        font-size: 17px;
    }



    .signup .right .testimonial{
        font-size: 20px;
    }

    .signup .right .signature {
        font-size: 14px;
    }

    .signup .right .side_container img{
        max-width: 53%;
        margin-top: 12%;
    }

    .circle_spin {
        right: 18px;
    }

    .signup img#userimg {
        right: 8px;
        top: 8px;
    }

    .signup.process .input-field {
        width: 300px;
    }

   .input_addon{
        line-height: 56px;
        padding-right: 20px;
        right: -100px;
    }

    .signup.process .input-field.extended, .input-field.extended{
        margin-right: 95px;
    }

    .signup.process .logo_container .counter {
        margin: 2.5%;
    }



    .about .capterra .review .text {
        font-size: 20px;
    }
    .about .capterra .rating {
        font-size: 26px;
    }
    .about .capterra .rating .stars {
        margin-right: 10px;
    }
    .about .capterra .rating .stars .star {
        width: 22px;
        vertical-align: bottom;
    }

    .terms .desc {
        font-size: 18px;
    }

    .slack.bottom_cta .caption {
        font-size: 42px;
    }
    .slack.bottom_cta .row .left {
        max-width: 380px;
    }

    .cta_container .btn {
        min-width: 260px;
    }

}               /* < 1400 */



/*Large devices (laptop, less than 1366)*/
@media (max-width: 1365.98px) {

    .customer_logos .intro {
        font-size: 21px;
    }

    .customer_logos > .col img{
        width: 170px;
    }

    .customer_logos > .col:last-child{
        display: none;
    }

    .section_row{
        margin-bottom: 80px;
    }

    .container.testimonials .row .left{
        max-width: 20%;
    }

    .testimonials .testimonial {
        font-size: 19px;
        padding-right: 12%;
    }


    .bottom_cta .cta_container .btn{
        border-radius: 60px;
        padding: 0px 42px;
        font-size: 21px;
    }

    .bottom_cta .cta_container .row > div.col {
        padding: 0 10px;
    }

    .bottom_cta .cta_subline {
        margin-right: 275px;
    }

    footer .left {
        margin-right: 7%;
    }

    .features .section {
        width: 95%;
    }

    .pricing .pricing-desc {
        font-size: 16px;
    }


    .signup .form-fields {
        margin: 5% 0 5%;
    }

    .signup .signup-form-container {
        width: 100%;
    }

    .signup.process .process_inner{
        padding: 0 5%;
    }

    .signup.process .input-field {
        width: 290px;
    }

    .signup.process .input-field.extended {
        width: 280px;
    }

    .form-fields .row.input_row > div{
        padding-right: 0;
    }

    .signup.process.step1 .desc {
        max-width: 400px;
    }

    .signup.process .desc {
        max-width: 290px;
    }

    /*
        .signup.process.step1 .row .right {
            text-align: right;
        }
    */

    .about .capterra .review {
        max-width: 90%;
    }
    .about .capterra .review .text {
        font-size: 18px;
        margin-bottom: 0;
    }
    .about .capterra .lines .line{
        font-size: 16px;
        margin-top: 1%;
    }
    .about .capterra .rating{
        margin-bottom: 0;
    }

    .signup .container{
        max-width: 93%;
    }


    .corner_notice {
        bottom: 30px;
        right: 25px;
        padding: 18px;
        font-size: 14px;
        max-width: 290px;
    }
}


/*Large devices (small laptop, less than 1200px)*/
@media (max-width: 1199.98px) {

    h2{
        font-size: 42px;
    }

    h3{
        font-size: 32px;
    }

    h4{
        font-size: 24px;
    }

    .inner_content{
        padding: 0 4%;
    }

    .customer_logos .intro{
        font-size: 20px;
    }

    hr.h_divider {
        margin-top: 90px;
        margin-bottom: 90px;
    }

    .page_mid_title{
        font-size: 32px;
        margin-top: 100px;
        margin-bottom: 90px;
    }

    .section.left{

        margin-right: 0;
    }

    .section.right{

        margin-left: 0;
    }

    .section .title{
        font-size: 26px;
        margin-bottom: 25px;
    }

    .section .desc{
        font-size:18px;
        width: 95%;
    }

    img.hero{
        max-width: 95%;
    }


    .container.testimonials {
        /*margin-top: 140px;*/
    }

    .container.testimonials > .wrapper{
        padding-left: 4%;
    }

    .container.testimonials .row{
        width: 175%;
    }

    .container.testimonials .row .left{
        /*background-color: #0e90d2;*/
        max-width: 21%;
    }

    .testimonials .counter {
        font-size: 52px;
    }

    .testimonials .nav .arrow {
        margin-right: 65px;
    }

    .container.bottom_cta{
        /*margin-top: 130px;*/
    }

    .bottom_cta .cta_subline {
        margin-right: 218px;
    }

    .bottom_cta .cta_container .row > div.col {
        padding: 0px;
        padding-left: 1%;
    }


    .bottom_cta .row .left {
        max-width: 300px;
    }

    .bottom_cta .cta_container .btn {
        padding: 0 36px;
        font-size: 20px;
    }

    footer {
        margin-bottom: 50px;
    }

    footer .left .row .col > div {
        font-size: 17px;
    }


    .features .section {
        width: 80%;
    }

    .features #features_row > div:nth-child(2n-1) .section{
        margin-right: auto;
        margin-left: 0;
    }


    .features #features_row > div:nth-child(2n+0) .section{
        margin-left: auto;
        margin-right: 0;
    }

    .features .section .title.spec_break{
        max-width: 70%;
        margin-left: auto;
        margin-right: auto;
    }

    .login_head .c_name {
        font-size: 23px;
    }

    .message_container .img_container{
        max-width: 60%;
    }

    .pricing .pricing-desc {
        font-size: 16px;
    }

    .pricing .prices {
        max-width: 85%;
    }

    .pricing .prices .price sup {
        top: -0.4em;
        margin-right: 3px;
    }

    .pricing .pricing-desc .row > div {
        display: flex;
        align-items: center;
    }

    .pricing .faq .left .title {
        font-size: 20px;
    }

    .pricing .faq .left .desc {
        font-size: 16px;
    }

    .pricing .page_mid_title {
        font-size: 36px;
    }

    .pricing .faq .right {
        padding-left: 5%;
        padding-right: 0;
    }

    .pricing .faq .right .page_mid_title {
        font-size: 26px;
    }
    .pricing .faq .right .desc {
        font-size: 16px;
    }


    .message_container .narrow {
        /*
        padding-left:10%;
        padding-right: 10%;
        */
        margin-left:10%;
        margin-right: 10%;
    }

    .signup_container .left{
        max-width: 50%;
    }

    .signup .input-field {
        width: 340px;
    }

    .signup .form-subtitle {
        margin-bottom: 7%;
        margin-top: 5%;
    }

    .signup .signup_container .headline {
        margin: 35px auto;
    }

    .signup .right .side_container img {
        max-width: 60%;
        margin-top: 15%;
    }

    .signup .logo_container .logo {
        margin: 3%;
    }

    .signup_start .message_container .img_container {
        max-width: 50%;
    }

    .signup.process .process_inner {
        padding: 0 8%;
    }

    .signup.process .input-field {
        width: 320px;
        margin: 15px 0;
    }

    .signup.process .cta_row .desc .input-field{
        margin:auto;

    }

    .signup.process.step1 .input-field {
        width: 380px;
    }

    .signup.process .input-field.extended{
        width: 280px;
    }

    .form-fields .row.input_row > .col{
        padding-right: 15px;
    }

    .signup.process .cta_row {
        margin-top: 0;
    }

    .signup.process .desc{
        order:-1;
        margin-left: 10px;
        margin-bottom: 10px;
    }

    .form-fields label {
        margin-top: 20px;
        margin-bottom: 0;
    }

    .signup.process .row .right {
        text-align: center;
    }

    .signup.process .row .right img {
        max-width: 65%;
    }

    .signup.process.step1 .row .right img {
        max-width: 85%;
    }

    .signup.process .row .left {
        padding-left: 15px;
    }

    .form-fields .row.input_row > div{
        padding-right: 10px;
        padding-left: 10px;
    }

    .signup.process .logo_container .counter {
        font-size: 24px;
        margin: 3%;
    }

    .signup.process .desc, .signup.process.step1 .desc {
        max-width: 420px;
    }


    .about .capterra .lines {
        max-width: none;
    }
    .about .capterra .rating {
        font-size: 24px;
    }
    .about .capterra .lines .line {
        margin-top: 0;
    }

    h5 {
        font-size: 22px;
    }


    .slack.bottom_cta .caption {
        font-size: 36px;
    }
    .slack.bottom_cta .row .left {
        max-width: 330px;
    }

    .slack .body_row .section .desc {
        max-width: 90%;
    }

    .corner_notice{
        position: relative;
        margin: auto;
        margin-top: 30px;
        right: auto;
        padding: 25px;
        bottom: auto;
        max-width: 100%;
        width: 320px;
        text-align: center;
    }

    .bottom_cta2 .cta_subline{
        order:2;
        text-align: center;
    }

    .pricing .surcharge_desc {
        margin-top: 6%;
    }

}


/*Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {

    h2{
        font-size: 36px;
    }

  .inner_content{
    padding: 0 2%;
  }

  .headline, h1.headline{
    font-size: 48px;
    margin-bottom: 35px;
  }

  h1.headline.small{
    font-size: 42px;
  }

  .subline{
    margin-bottom: 35px;
    font-size: 18px;
    /*margin-right: 4%;*/
  }

    .subline.pretext {
        font-size: 16px;
        display: none;
    }

    .subline .bold{
        font-size: 1.1em;
    }

    .customer_logos {
       /* margin-top: 40px;*/
    }

    .customer_logos .intro{
        padding-right: 3%;
    }

    .section_row{
        margin-bottom: 70px;
    }

    .section .title{
        font-size: 24px;
        margin-bottom: 30px;
    }

    .section .desc{
        font-size:17px;
        width: 90%;
    }

    img.hero{
        max-width: 100%;
    }

    .container.testimonials {
        /*margin-top: 130px;*/
        /*
        margin-top: 80px;
        margin-bottom: 70px;
        */
        margin-bottom: -50px;
    }

    .container.testimonials > .wrapper{
        padding: 0;
        max-width: 95%;
        margin-left: 5%;
    }



    .container.testimonials .row{
        width: 100%;
        margin: 0;

        width: 175%;
    }

    .container.testimonials .row .left{
        max-width: 17%;
    }

    .container.testimonials .row .right{
        padding-right: 0;
    }

    .testimonials .counter {
        font-size: 48px;
    }

    .testimonials .counter span#of {
        margin: 0 5px;
    }
    .testimonials .counter span#count {
        width: 24px;
    }

    .testimonials .testimonial{
        padding-right: 0;
        font-size: 18px;
    }

    .testimonials .item{
        padding-left: 5%;
        padding-right: 5%;
        /*margin-right: 15px;*/
    }

    .testimonials .nav .arrow {
        margin-right: 55px;
    }

    .testimonials .nav .arrow img {
        max-height: 28px;
    }

    .bottom_cta .row .left {
        max-width: 260px;
        margin-right: 15px;
    }

    .bottom_cta .cta_subline{
        display: none;
    }

    .bottom_cta .cta_container .row > div.col{
        margin: 0;
    }

    .bottom_cta .cta_container .row {
        margin-top: 5px;
    }

    .owl-item.active ~ .active .testimonial{
        font-size: 17px;
    }


    footer {
        margin-bottom: 30px;
    }

    footer .left .row .col > div {
        padding: 4px 0;
        font-size: 16px;
    }

    footer .txt {
        padding-right: 60px;
    }

    .login_container{
        margin-bottom: 15%;
    }


    .features .header {
        margin-bottom: 35px;
    }
    .features .header .title {
        font-size: 48px;
    }
    .features .section .desc{
        font-size: 17px;
    }

    .features .section {
        width: 90%;
    }

    .login_head {
        margin: 0 8%;
    }

    .message_container .img_container{
        max-width: 70%;
    }

    .pricing .prices {
        /*max-width: 90%;*/
    }
    .pricing .prices .price {
        font-size: 48px;
    }

    .pricing .prices .desc{
        font-size: 17px;
    }

    .pricing .faq h2 {
        margin-bottom: 7%;
    }

    .pricing .faq .left .desc {
        margin-bottom: 15%;
    }

    .pricing .faq .right {
        display: block;
        padding-left: 15px;
        padding-right: 15px;
    }

    .pricing .faq .right .row{
        align-items: center;
    }

    .pricing .faq .right .page_mid_title {
        font-size: 32px;
    }

    .pricing .faq .right .desc {
        font-size: 18px;
    }

    .pricing .faq .right .image {
        margin: auto;
        max-width: 180px;
    }

    .signup .input-field {
        margin: 0 0 0.7rem;
    }

    .signup_container .left{
        max-width: 55%;
    }

    .signup .right .side_container {
        max-width: 85%;
        margin-right: 5%;
    }

    .message_container .narrow {
        /*
        padding-left:5%;
        padding-right: 5%;
        */
        margin-left:5%;
        margin-right: 5%;
    }

    .signup_start .message_container .img_container {
        max-width: 60%;
    }

    .signup.process .process_inner {
        padding: 0 5%;
    }

    .signup.process.step1 .row .right img {
        max-width: 85%;
    }

    .signup.process .logo_container .counter {
        font-size: 22px;
    }



    .about .capterra .review .text {
        font-size: 18px;
    }

    /* suspend flex */
    /*
    .about .row.main_row{
        display: block;			
    }
    .about .right_block{
        float: right;
        width: 50%;
        margin-left: 4%;
        margin-bottom: 3%;
    }
    */

    .about .headline {
        margin: 20px auto;
    }

    .about .capterra .left{
        flex: auto;
        max-width: none;
    }

    .about .capterra .row .right {
        text-align: left;
    }

    .about .capterra .headline {
        margin-bottom: 2%;
    }

    .about .capterra .left .row {
        align-items: center;
    }




    .terms #privacy_menu .item a {
        font-size: 16px;
    }

    .terms h3.subtitle {
        font-size: 20px;
    }

    .terms h5 {
        font-size: 20px;
    }


    .slack.bottom_cta .row .left {
        max-width: 360px;
    }
    .slack .subline {
        max-width: 420px;
    }

    .slack .body_row .section .desc {
        max-width: 95%;
        font-size: 17px;
    }

    .slack .body_row .section .title {
        margin-bottom: 20px;
        font-size: 22px;
    }


}




@media (max-width: 860px) {
    h2{
        line-height: 1;
    }

    .headline, h1.headline{
      font-size: 44px;
    }

    h1.headline.small{
        font-size: 38px;
    }
/*
    .top_content{
        margin-top: 140px;
    }
    */

    .left_block{
        padding-right: 15px;
    }

    .customer_logos{
        margin-top: 30px;
    }

/*
    .customer_logos .col img {
        max-width: 95%;
    }
*/

    .customer_logos .intro{
        font-size: 17px;
    }

    hr.h_divider {
        margin-top: 70px;
        margin-bottom: 70px;
        border-color: transparent;
    }

    hr.h_divider.keep {
        margin-top: 60px;
        margin-bottom: 60px;
        border-color: #e5e5e5;
    }

    .page_mid_title{
        font-size: 28px;
        margin-top: 80px;
        margin-bottom: 70px;
    }

    .section_row{
        margin-bottom: 60px;
    }

    .section_row .spacer{
        display: none;
    }

    .section.left{
        margin-right: 5%;
    }

    .section.right{
        margin-left: 5%;
    }

    .section .title{
        font-size: 24px;
        margin-bottom: 25px;
    }

    .section .desc{
        font-size:16px;
        width: 96%;
    }

    .container.testimonials{
        margin-bottom: -40px;
    }

    .container.testimonials .row .left {
        max-width: 16%;
    }


    .testimonials .counter {
        font-size: 46px;
    }

    .testimonials .counter span#of{
        font-size: 24px;
    }

    .testimonials .counter span#count {
        width: 23px;
    }

    .testimonials .testimonial{
        font-size: 17px;
    }

    .owl-item.active ~ .active .testimonial {
        font-size: 16px;
    }

    .testimonials .nav .arrow {
       /* margin-right: 65px;*/
    }

    .testimonials .nav .arrow img {
        max-height: 26px;
    }

    .testimonials .signature{
        font-size: 15px;
    }

    .bottom_cta .row .left {
        max-width: 260px;
    }


    footer {
        margin-top: 15%;
        margin-bottom: 15px;
    }

    footer .left {
        min-width: 75%;
        max-width: 75%;
    }

    footer .right{
        min-width: 100%;
        text-align: right;
        margin: 20px auto;
        margin-top: 40px;
        padding: 0;
    }

    footer .txt {
        padding-right: 75px;
    }

    .back{
        margin: 5%;
    }


    .features .header {
        margin-bottom: 50px;
    }

    .features .header .subline .nowrap{
        white-space: normal;
    }

    .login_head {
        margin: 0 7%;
    }

    .login_head .c_name {
        font-size: 22px;
    }

    .message_container {
        width: 70%;
    }

    .message_container .img_container img {
        max-width: 80%;
    }

    .message_container .img_container{
        max-width: 80%;
    }


    .pricing .left_block {
        min-width: 55%;
    }

    .pricing .prices .desc {
        font-size: 16px;
    }

    .pricing hr.h_divider {
        border-color: #e5e5e5;
    }

    .pricing .pricing-desc {
        margin-top: 70px;
    }

    .pricing .pricing-desc .row > div {
        display: block;
    }

    .pricing .prices {
        margin-top: 60px;
        margin-bottom: 60px;
    }

    .pricing .faq .left .desc { margin-bottom: 80px; }



    .signup_container .left{
        max-width: 58.3333%;
    }


    .signup .signup_container .headline {
        font-size: 36px;
        margin: 35px auto;
    }

    .signup .form-subtitle {
        margin-bottom: 8%;
        margin-top: 6%;
    }

    .signup .right .side_container {
        max-width: 86%;
        margin-right: 4%;
    }

    .signup .right .testimonial {
        font-size: 17px;
    }

    .signup .right .signature {
        margin-top: 10%;
    }

    .signup .right .side_container img {
        max-width: 80%;
        margin-top: 25%;
    }

    .signup.signup_start .logo_container .logo {
        margin: 5%;
    }

    .signup_start .message_container .img_container {
        max-width: 75%;
    }

    .signup.process.step1 .row .right {
        text-align: right;
    }

    .signup.process .row .right img {
        max-width: 65%;
    }

    .signup.process .logo_container .logo {
        margin: 5%;
    }

    .signup.process .logo_container .counter {
        margin: 5%;
    }


    .about .capterra .review .text {
        font-size: 17px;
    }

    .about hr.h_divider{
        border-color: #e5e5e5;
        margin-top: 60px;
        margin-bottom: 60px;
    }

    .about .capterra .rating {
        font-size: 22px;
    }

    .terms .section .title {
        margin-top: 40px;
    }

    .terms h3.subtitle {
        margin-top: 5px;
    }

    .terms .desc {
        margin-top: 20px;
    }

    .terms .desc.table{
        width: auto;
        font-size: 15px;
    }

    .slack .body_row .section .desc {
        max-width: 100%;
    }
    .slack .body_row .section .title {
        font-size: 21px;
    }

    .mid_page_link {
        font-size: 20px;
    }

    .cta_container #primary_cta{
        min-width: 290px;
    }

}       /* max-width: 860px */



/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

  nav#top_nav .main_row .spacer{
    margin-left: 1.5%
  }

  nav#top_nav .main_row li a, nav#top_nav .main_row li a.btn {
    font-size: 17px;
  }


  /* MOBILE MENU */

    nav#top_nav{
        /*border-bottom: solid 1px #ccc;*/
        /*position: fixed;*/
        width: 100%;
        top: 0;
        z-index: 1000;
    }

    .not-top nav#top_nav{
        /*border-bottom: solid 1px #ccc;*/
        /*box-shadow: 0 1px 1px rgba(0,0,0,.15);*/
    }



    .container {
        max-width: none;
    }

    .inner_content{
        padding: 0 15px;
    }

    .top_content{
        margin-top: 90px;
    }

    nav#top_nav .main_row{
        height: 90px;
        justify-content: center;
        align-items: flex-start;
        align-content: flex-start;

    }
/*
    .not-top nav#top_nav .main_row{
        height: 70px;
    }
*/



    .open_menu nav#top_nav .container{
        height: 100%;
    }

    .open_menu nav#top_nav .main_row{
        /*height: 100%;*/

        min-height: 100%;
        position: relative;
        height: auto;
        padding-bottom: 200px;
    }

    /*
    nav#top_nav .main_row li.logo{
        margin-top: 30px;
        margin-left: 6%;
        margin-bottom: 10px;
        transition: margin-top 0.1s;
    }
    */

    .open_menu nav#top_nav .main_row li.logo{
        /*margin-bottom: 70px;*/
        margin-bottom: 25%;
    }

    nav#top_nav .main_row li.logo img{
        /*
        max-height: 36px;
        position: fixed;

        left:6%;
        top: 32px;
        transition: top 0.1s;
        margin-left: 4px;
        */

        display: none;
    }

    .mobile_logo{
        display: block;
    }

    .mobile_logo img{
        max-height: 36px;
        position: fixed;
        left:6%;
        top: 32px;
        margin-left: 4px;
        z-index: 10000;

    }
    /*
    .not-top nav#top_nav .main_row li.logo img{
        height: 36px;
    }
    */


    .open_menu nav#top_nav li#free_trial, .open_menu nav#top_nav li#my_account{
        position: absolute;
        bottom: 80px;
        display: block;
        text-align: center;
        border:none;
        margin: 0;
        left:0;         /* needed for IE 11 */
    }

    .open_menu nav#top_nav li#free_trial a, .open_menu nav#top_nav li#my_account a{
        font-size: 24px;
        width: 320px;
        max-width: 90%;
        padding: 0;
        transition: none;
        height: 58px;
        line-height: 56px;
        margin: auto;
    }

    .open_menu nav#top_nav li#my_account a{
        font-size: 22px;
        width: auto;
        margin: 0 30px;
        display: inline-block;
        padding: 0 20px;
    }

    .open_menu nav#top_nav li#log_in{
        position: absolute;
        bottom: 20px;
        text-align: center;
        margin: auto;
        border: none;
        left:0;         /* needed for IE 11 */

    }

    nav#top_nav li#log_in.front_c{
        display:block;
        opacity: 0;
        visibility: hidden;
    }

    .open_menu nav#top_nav li#log_in.front_c{
        opacity: 1;
        visibility: visible;
    }

    .open_menu nav#top_nav li#log_in a{
        font-size: 18px;
        color:#999;
        padding: 10px 20px;
        transition: none;
        display: inline-block;
    }

    #mobile_menu_icon, #blog_cat_toggle  {
        width: 42px;
        height: 42px;
        position: fixed;
        top: 26px;
        /*right: 40px;*/
        right: 6%;
        margin: 0px auto;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        /*
        -webkit-transition: .5s ease-in-out, top .1s linear;
        -moz-transition: .5s ease-in-out, top .1s linear;
        -o-transition: .5s ease-in-out, top .1s linear;
        transition: .5s ease-in-out, top .1s linear;
        */
        cursor: pointer;
        padding: 0px;
        display: block;
        background-color: transparent;
        border:none;
        outline: none;
        z-index: 10000;
    }

    /*
    .not-top nav#top_nav #mobile_menu_icon,
    .not-top nav#top_nav .mobile_search_icon {
            top: 16px;
    }
    */


    #mobile_menu_icon span, #blog_cat_toggle span {
        display: block;
        position: absolute;
        height: 2px;
        width:28px;
        background: #000000;
        /*border-radius: 9px;*/
        opacity: 1;
        /*left: 3;*/
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: 0.2s ease-in-out;
        -moz-transition: 0.2s ease-in-out;
        -o-transition: 0.2s ease-in-out;
        transition: 0.2s ease-in-out;
        left: calc(50% - 14px);
    }

    #mobile_menu_icon span:nth-child(1) {
        top: 12px;
    }

    #mobile_menu_icon span:nth-child(2),#mobile_menu_icon span:nth-child(3) {
        top: 20px;
    }

    #mobile_menu_icon span:nth-child(4) {
        top: 28px;
    }

    #mobile_menu_icon.open span{
        background-color: #25b393;
    }

    #mobile_menu_icon.open span:nth-child(1) {
        top: 13px;
        width: 0;
        left: 50%;
    }

    #mobile_menu_icon.open span:nth-child(2) {
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    #mobile_menu_icon.open span:nth-child(3) {
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    #mobile_menu_icon.open span:nth-child(4) {
        top: 13px;
        width: 0;
        left: 50%;
    }



    .open_menu #blog_cat_toggle {
        font-size: 36px;
        width: 50px;
        height: 50px;
        position: absolute;
        /*border:dashed 1px red;*/
        top: 6px;
        right: -10px;
        transition: none;
    }

    #blog_cat_toggle span {
        width: 26px;
        top: 24px;
        left: calc(50% - 13px);
    }

    #blog_cat_toggle span:nth-child(1) {
        transform: rotate(90deg);
    }

    #blog_cat_toggle.open span:nth-child(1) {
        /*transform: rotate(0deg);*/
        opacity: 0;
    }

    nav#top_nav #blog_categories_container {
        display: block;   /* used to hide blog categories on large screens, even when categories open */
    }

    nav#top_nav #menu_blog_categories{
       /* display:none;*/
        margin: 0;
        padding: 0;
        list-style-type: none;
        /*border-top: solid 1px #ddd;*/
        font-family: 'Lustria', serif;
        padding-top: 15px;
    }

    nav#top_nav #menu_blog_categories li{
        padding: 0;
        margin: 0;

        height: 0;
        transition: height 0.4s;
    }

    nav#top_nav .blog_open #menu_blog_categories li{
        height: 45px;
        transition: height 0.4s;
    }

    nav#top_nav #menu_blog_categories li a{
        padding: 10px 0;
        font-size: 17px;
        opacity: 0;
        transition: opacity .2s;
    }

    nav#top_nav .blog_open #menu_blog_categories li a{
        opacity:1;
        transition: opacity 1.5s;
    }


    .open_menu nav#top_nav{
        /*background-color: white;*/
        top: 0;
        height: 100%;
        width:100%;
        z-index: 1000;

        /*position: absolute;*/
        position: fixed;
        overflow-y: auto;
    }

    nav#top_nav .main_row .spacer{
        margin: 0;
    }

    nav#top_nav .main_row li#free_trial{
        margin: 0;
    }

    #top_nav .main_row li.menu_item a{
        padding: 0;
    }

    #top_nav .main_row li.menu_item{
        position: absolute;
        transform: translateY(-20px);
       /* margin-right: 50%;*/
        opacity: 0;
        visibility: hidden;
        border-color: transparent;
        margin: 0;
        padding: 0;
    }

    .open_menu div.backdrop, .modal-open div.backdrop{
        background-color: #ffffff;
        width: 100%;
        height: 100%;
        position: fixed;
        z-index: 100;
        top:0;
        visibility: visible;
        opacity: 1;
        transition: all 0.2s;
    }

    .open_menu #top_nav .main_row li.menu_item {
        /*display: block;*/

        /* transition support */
        position: relative;
        opacity: 1;
        visibility: visible;

        border-bottom: solid 1px #ddd;
        color: #333;
        margin: 0 15%;
    }

    .open_menu #top_nav .main_row li.menu_item#blog{
        border-bottom: none;
    }

    .open_menu #top_nav .main_row li.menu_item#blog .brdr{
        height: 0;
        border-top: solid 1px #ddd;
    }

    #top_nav .main_row li.menu_item.bottom_item  {
        transform: translateY(50px);
    }

    .open_menu #top_nav .main_row li.menu_item, .open_menu #top_nav .main_row li.menu_item#my_account{
        transform: translateY(0px);

    }

    .open_menu #top_nav .main_row li.menu_item{
        transition: transform 0.3s 0.1s, opacity 0.5s 0.1s, border-bottom-color 1s 0.1s;         /* simple clean anim, all together */
    }

     /*more complicated anim with delays, one by one
    .open_menu #top_nav .main_row li.menu_item:nth-of-type(2){
        transition: transform 0.3s 0.1s, opacity 0.5s  0.1s, border-bottom-color 1s 0.1s;
    }
    .open_menu #top_nav .main_row li.menu_item:nth-of-type(3){
        transition: transform 0.3s 0.15s, opacity 0.5s  0.15s, border-bottom-color 1s 0.15s;
    }
    .open_menu #top_nav .main_row li.menu_item:nth-of-type(4){
        transition: transform 0.3s 0.2s, opacity 0.5s  0.2s,  border-bottom-color 1s 0.2s;
    }
    */



    .open_menu #top_nav .main_row li.menu_item.bottom_item{
        transition: transform 0.3s 0.1s, opacity .5s  0.1s;
    }


    .open_menu #top_nav .main_row li.menu_item.blog_open{
        border-bottom: none;
        border-color:#ddd;
    }

    .open_menu #top_nav .main_row li.menu_item a{
        font-size: 28px;
        padding: 10px 0;
        transition: none;
        display: block;
    }

    .open_menu #top_nav .main_row li.menu_item a:hover{
        color:#000;
    }

    .backdrop_cover .inner_content{
        /*display: none; */          /* makes scroll works perfectly while mobile menu is open, but always scrolls back to the top when menu is closed, FIXED WITH JAVASCRIPT SCROLL SAVE/RESTORE */
                                        /* problem on ios browsers, address bar automatically becomes visible because height of body changed, which jumps at the top and looks bad */

        /*visibility: hidden;    */    /* prevents underlying content to be visible through semi-transparent mobile browser bar, when scrolling with menu open */
        opacity: 0;                     /* the same, but allows transition */
        transition: opacity 1s;         /* slow the transition, to give the backdrop the time for "fade in" effect */
    }

    html.backdrop_cover{
        overflow: hidden;       /* disable scroll on body when mobile menu is open, does not work on iOS :( */

        /* FIX IOS BACKGROUND SCROLL - MAKES scrollbar invisible on white  */
        background-color: #7F7F7F;     /* trick ios to think that background is dark, (must be over 50% dark/grey) so ios sets scrollbar to transparent white, so its not visible on white backdrop */
        transition: background-color 1s;                /* make the bg color transition soft, as the background color is visible in mobile safari through the semi transparent address bar */
        /* ---------------------- */
    }





    .left_block{
        margin: 20px 12%;
    }

    .headline, h1.headline{
        font-size: 46px;
        margin-bottom: 30px;
    }

    h1.headline.small{
        font-size: 40px;
    }

    .subline{
        margin-bottom: 30px;
    }

    .cta_container #primary_cta{
        min-width: 320px;
    }

    img.hero{
        max-width: 65%;
        margin-top: 5%;
    }

    .customer_logos{
        justify-content: space-evenly;
        margin: 0 6%;
        margin-top: 30px;
        flex-wrap: wrap;

    }

    .customer_logos .col{
        /*min-width: 33%;*/
        /*border:dotted 1px blue;*/
    }

    .customer_logos .col img {
        max-width: 135px;
    }

    .customer_logos > .col:last-child{
        display: block;
    }

    .customer_logos .intro{
        min-width: 165px;
        padding-right: 15px;
        font-size: 19px;
    }

    .section, .section.left, .section.right{
        margin: auto 10% 50px;
    }

    .section_row{
        margin-bottom: 0;
    }

    .section{
        /*border:dashed 1px red;*/
    }

    .section .title{
        font-size: 28px;
    }

    .section .desc{
        font-size: 18px;
    }

    hr.h_divider{
        margin: 50px 12%;
    }

    .container.testimonials {
        /*margin-top: 100px;*/
        /*
        margin-top: 70px;
        margin-bottom: 50px;
        */
    }

    .container.testimonials > .wrapper{
        padding: 0;
        margin: auto;
        max-width: 100%;
    }

    .container.testimonials .row{
        /*width: 170%;*/
        width: auto;
        margin: 0;

    }

    .container.testimonials .row .left{
        max-width: unset;
        margin: 0 12%;
    }

    .container.testimonials .row .right {
        padding: 0;
        width: 160%;
        min-width: 160%;
        margin-top: 30px;
    }

    .testimonials .item {
        /*margin: 0 12%;*/
        padding: 0 15px;
       margin-left: 15%;
    }

    .owl-item.active ~ .active .item{
        margin-left: 5%;
    }

    .testimonials .caption {
        /*font-size: 50px;*/
        margin-bottom: 25px;
        float:left;
    }

    .testimonials .counter {
        font-size: 40px;
        float: right;
        margin-bottom: 7px;
        margin-top: 0px;
        line-height: 32px;
    }

    .testimonials .counter span#count {
        width: 20px;
    }

    .testimonials .testimonial {
        font-size: 20px;
    }

    .testimonials .signature {
        font-size: 16px;
    }

    .testimonials .nav{
        float:right;
        clear:right;
    }

    .testimonials .nav .arrow img {
        max-height: 25px;
    }

    .testimonials .nav .arrow {
        margin-right: 40px;
    }


    .container.bottom_cta{
        /*margin-top: 60px;*/
    }

    .bottom_cta .caption{
        margin-bottom: 40px;
    }


    .bottom_cta .row .left{
        margin-left: 12%;
        /*max-width: 360px;*/
    }

    .bottom_cta .cta_container .row{
        justify-content: left;
    }

    .bottom_cta .cta_container {
        margin: 0 13%;

    }

    .bottom_cta .cta_container .row > div.col{
        padding: 0 5px;
        margin: 5px 0px;
    }

    .bottom_cta .cta_container .btn {
        padding: 0 40px;
    }
    /*
    footer{
        margin-top: 130px;
    }
    */

    footer .left{
        margin: 0 12%;
        max-width: 100%;
        min-width: auto;
    }

    footer .right{
        margin-left:12%;
        margin-right: 12%;
        min-width: 60%;
    }

    .login_container {
        margin-bottom: 10%;
    }

    .back{
        display: none;
    }



    .features .header {
        margin: 20px 10%;
    }
    .features .headline br{
        display: none;
    }

    .features .section{
        width: 65%;
    }

    .features #features_row > div:nth-child(1n-0) .section{
        margin: 5% auto;
    }

    .features .section .desc{
        font-size: 18px;
    }

    .features .section .img{
        margin-bottom: -5%;     /* reduce whitespace below images */
    }

    .login_head .c_name {
        font-size: 21px;
    }

    .message_container .img_container{
        max-width: 85%;
    }


    .pricing .left_block{
        min-width: 0;
    }

    .pricing .pricing-desc {
        text-align: center;
        font-size: 18px;
        margin: 80px 12% 80px;
    }

    .pricing .pricing-desc .title {
        font-size: 22px;
    }

    .pricing .prices .price { transform: none; }

    .pricing .prices .desc{
        margin-left: 15px;
    }

    .pricing .prices .price sup {
        margin-right: 2px;
    }
    .pricing .prices {
        width: 360px;
        max-width: 80%;
    }

    .pricing .hero {
        max-width: 400px;
    }

    .pricing .faq{
        margin: 12%;
    }

    .pricing .faq h2 {
        margin-bottom: 12%;
    }

    .pricing .right_block{
        margin: auto 12%;
        display:none;
    }

    .pricing .surcharge_desc .col{
        margin: auto 12%;
    }

    .pricing .faq .left .desc {
        font-size: 18px;
        max-width: none;
        margin-bottom: 50px;
    }

    .bottom_cta2 > .row .row{
        margin-top: 20px;
        text-align: left;
    }

    .bottom_cta2 > .row{
        margin: 0 calc(12% - 15px);
    }

    .bottom_cta2 .cta_subline{
        text-align: left;
    }


    .signup_container .left {
        max-width: none;
        border:none;
    }

    .signup .logo_container .logo {
        margin: 7% auto 1%;
    }

    .signup .logo_container .logo img{
        max-width: none;
    }

    .signup.signup_start .logo_container .logo {
        /*margin: 7% auto 4%;*/
        margin: 5%;
    }

    .signup.signup_start .logo_container .logo img{
        max-width: 60px;
    }

    .signup .right .side_container{
        max-width: 100%;
        width: auto;
        margin: 8% 12%;
        color: #666666;
        display: none;
    }

    .signup .right .signature {
        margin-top: 4%;
    }

    .signup .right .side_container img{
        display: none;
    }

    .signup .form-subtitle {
        margin-bottom: 7%;
        margin-top: 5%;
    }

    .signup_start .message_container .img_container {
        max-width: 80%;
    }

    .message_container .img_container img {
        max-width: 90%;
    }

    .message_container .narrow .nowrap{
        white-space: normal;
    }

    .message_container .narrow {
        /*
        padding-left:0;
        padding-right: 0;
        */
        margin-left:0;
        margin-right: 0;
    }

    .signup.process .signup-form-container {
        width: 400px;
        max-width: 100%;
    }

    .signup.process.step1 .input-field, .signup.process .input-field{
        width: 100%;
    }

    .signup.process .input-field.extended, .input-field.extended{
        width: calc(100% - 100px);
    }


    .signup.process .row .right,  .signup.process.step1 .row .right{
        order: -1;
        text-align: center;
        width:400px;
        max-width: 100%;
        margin: auto;
    }

    .signup.process.step1 .row .right img, .signup.process .row .right img{
        max-width: 100%;
        max-height: 200px;
    }

    .signup.process .logo_container .logo {
        margin: 4% 5% 0;
    }

    .signup.process .logo_container .logo img {
        max-width: 65px;
    }

    .signup.process .headline {
        text-align: center;
    }

    .signup.process .form-subtitle{
        text-align: center;
    }

    .signup.process .desc {
        margin-left: 5px;
    }

    .signup.process .logo_container .counter {
        font-size: 20px;
    }




    .about .capterra{
        margin: auto 12%;
    }
    .about .capterra .review .text { font-size: 20px; }
    .about .row.main_row{
        display: flex;		/* restore flex */
    }
    .about .right_block{
        float: none;
        width: auto;
        margin: 5% auto;
    }

    .about .left_block {
        margin-bottom: 0;
        margin-top: 0;
    }

    .about .capterra .headline {
        font-size: 40px;
    }

    .about .capterra .rating .stars .star {
        width: 20px;
    }

    .about .capterra .rating {
        font-size: 20px;
    }

    .about .capterra .review .author {
        margin-top: 10px;
    }

    .terms .content_container {
        border-left: none;
        padding-left:15px;
    }

    .terms #privacy_menu{
        position: relative;
        top: 0;
        margin-top: 5%;
    }

    .terms .section .desc{
        width: auto;
    }


    .slack .body_row .section{
        margin-left: 12%;
        margin-right: 12%;
    }

    .slack .body_row div.section.alternate{
        text-align: left;
        padding-right: 15px;
    }

    .slack .body_row .section.graphic{
        text-align: center;
    }

    .slack .body_row .section.content{
        margin-bottom: 5%;
    }

    .slack .body_row .section .title {
        font-size: 24px;
    }

    .slack .body_row .section .desc {

        font-size: 18px;
    }

    .slack .body_row .section .images .first {
        max-width: 85%;
        margin-left: -10%;
    }

    .slack .body_row .section .images .last {

        margin-left: 10%;
    }

    .mid_page_link {
        margin-bottom: 100px;
    }

}               /* < 768 */








/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {

    nav#top_nav .main_row {
        height: 70px;
    }
    /*
    .not-top nav#top_nav .main_row{
        height: 60px;
    }
    */

    .open_menu nav#top_nav .main_row {
        min-height: 100%;
        height: auto;
    }

    #mobile_menu_icon,#mobile_search_icon{
    /*nav#top_nav .mobile_search_icon{*/
        /*top: 18px;*/
        top:0;
        margin-top: calc(5% - 3px);
        /*background-color: orange;*/
        z-index: 10000;
    }

    nav#top_nav .main_row li.logo img{
        margin-left: 2px;
        top: 2px;
        margin-top: 5%;
    }

    .mobile_logo img{
        margin-left: 2px;
        top: 2px;
        margin-top: 5%;
        left:3%;
    }

    #mobile_menu_icon, #blog_cat_toggle{
        right: 5%;
    }


    /*
    nav#top_nav .main_row li.logo{
        margin-top: 5%;
    }
    */

    .open_menu #top_nav .main_row li.menu_item {
        margin: 0 10%;
    }

    .btn{
        text-overflow: ellipsis;
    }

    .left_block{
        margin: 5px 3%;
    }

    .pricing .surcharge_desc .col{
        margin: auto 3%;
    }    

    .headline, h1.headline{
        font-size: 44px;
       /* color:orange;*/
    }

    h1.headline.small{
        font-size: 40px;
    }

    img.hero{
        max-width: 80%;
    }

    .customer_logos {
        margin: 0;
        margin-top: 30px;
    }

    .section, .section.left, .section.right{
       /* margin:auto 5%;*/
        margin: auto 3% 50px;
    }

    .container.testimonials {
        margin-bottom: -60px;
    }


    .container.testimonials .row .left{
        margin: 0 3%;
    }

    .container.testimonials .row .right {
        margin-top: 35px;
    }

    .testimonials .item{
        margin-left: 4%;
    }

    .owl-item.active ~ .active .item {
        margin-left: 2%;
    }

    .testimonials .caption {
       /* font-size: 50px;*/
        margin-bottom: 10px;
    }

    .testimonials .counter {
        /*font-size: 46px;*/

    }

    .testimonials .counter {
        font-size: 38px;
        margin-bottom: 6px;
    }

    .testimonials .nav .arrow {
        margin-right: 35px;
    }


    .testimonials .testimonial {
        font-size: 18px;
        margin-bottom: 20px;
    }

    .testimonials .signature {
        font-size: 14px;
    }

    .bottom_cta .row .left {
        margin-left: 3%;
    }

    .bottom_cta .cta_container {
        margin: 0 5%;
    }

    footer{
        margin-top: 20%;
        margin-bottom: 10px;
    }

    footer .left{
        margin: 0 3%;
        max-width: 100%;
        min-width: auto;
    }

    footer .left .row .col > div {
        /*text-align: center;*/
        margin-left: 5%;
    }

    hr.h_divider {
        margin: 50px 5%;
    }

    footer .right{
        margin-left:3%;
        margin-right: 3%;
        min-width: 80%;
    }

    footer .txt {
        text-align: center;
        padding-left: 15px;
        padding-right: 15px;

    }

    footer .txt img.logo{
        display: none;
    }


    .features .header {
        margin: 0 2.5% 5%;
    }

    .features .section{
        width: 80%;
    }

    .features .section .desc{
        font-size: 17px;
    }

    /*
    .features .section .img{
        margin-bottom: -10%;     /* reduce whitespace below images
    }
    */


    .login_head {
        margin: 0 5%;
        height: 140px;
    }

    .login_head.head_logo{
        height: 140px;
    }

    .login_head img.logo {
        max-height: 70px;
        max-width: 75%;
    }

    .login_head .c_name {
        font-size: 20px;
    }

    .open_domains{
        margin-top: 30px;
    }

    .message_container {
        width: 80%;
    }

    .message_container .img_container{
        max-width: 90%;
    }


    .pricing .pricing-desc {
        font-size: 17px;
    }
    .pricing .prices {
        max-width: 90%;
    }

    .pricing .right_block{
        margin: 40px 5% 0;

    }

    .pricing .prices {
        margin-top: 50px;
        margin-bottom: 50px;
    }

    .pricing .prices .price {
        font-size: 42px;
    }


    .pricing .faq{
        margin: 3%;
    }

    .pricing .faq .left .desc {
        font-size: 17px;
    }

    .pricing .faq .right .image {
        margin-top: 10%;
        max-width: 200px;
    }

    .pricing .faq .right .img_container{
        text-align: center;
    }

    .bottom_cta2 > .row{
        margin: 0 calc(5% - 15px);
    }

    .signup .signup_container .headline {
        font-size: 32px;
        margin: 20px auto;
    }

    .signup_start .message_container .img_container {
        max-width: none;
    }


    .about .capterra {
        margin: auto 5%;
    }

    hr.h_divider {
        margin: 50px 5%;
    }

    .about .capterra .lines {
        max-width: 60%;
    }

    .about .capterra .review {
        max-width: none;
    }
    .about .capterra .review .text {
        font-size: 18px;
    }

    .slack .body_row .section {
        margin-left: 5%;
        margin-right: 5%;
    }

    .slack .body_row .section.graphic{
        margin-bottom: 15%;
    }

    .pricing .surcharge_desc {
        margin-top: 7%;
    }

    .grecaptcha-badge { 
        visibility: hidden;
    }

    .grecaptcha-notice{
        display: block;
        color: #666;
        width: 100%;
        font-size: 12px;
        text-align: center;
        padding: 0 1%;
        margin-top: 10%;
        margin-bottom: 10px;
       
    }

    .grecaptcha-notice a{
        color: #666;
        text-decoration: underline;
    }

}           /* 575 */




@media (max-width: 425px) {

    .top_content{
        margin-top: 80px;
    }

    h2{
        font-size: 32px;
    }

    .cta_container{
        text-align: center;
    }

    .cta_container .btn-primary{
        width: 100%;
        padding: 0;
    }

    .cta_container #primary_cta {
        min-width: auto;
    }

    .bottom_cta .cta_container .btn {
        padding: 0;
    }

    .cta_subline{
        margin: 0;
    }

    /*
    .customer_logos > .col:last-child{
        display: none;
    }
    */

    .section .title{
        font-size: 26px;
    }

    hr.h_divider{
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .container.testimonials {
        margin-bottom: -20px;
    }

    .container.testimonials .row .left{
        margin: 0 3%;
    }

    .open_menu #top_nav .main_row li.menu_item {
        margin: 0 30px;
        margin: 0 7%;
    }

    .testimonials .item {
        padding-right: 0;
    }


    .testimonials .counter {
        font-size: 34px;
        margin-bottom: 5px;
        line-height: 26px;
    }

    .testimonials .nav .arrow {
        margin-right: 32px;
    }

    .testimonials .counter span#count {
        width: 18px;
    }

    .testimonials .counter span#of {
        font-size: 22px;
    }

    .testimonials .nav .arrow img {
        max-height: 22px;
    }

    .testimonials .testimonial {
        font-size: 17px;
    }

    .testimonials .signature {
        font-size: 13px;
    }

    .bottom_cta .row .left {
        max-width: 230px;
    }

    .bottom_cta .caption {
        margin-bottom: 40px;
    }

    .bottom_cta .cta_container .row > div.col{
        width: 100%;
    }

    .bottom_cta .cta_container .row > div.cta_subline{
        display: block;
        text-align: center;
        order: initial;
        margin-top: 10px;
    }

    .bottom_cta .cta_container .row > div.main_cta{
        order:-1;
        margin-bottom: 0;
    }

    .bottom_cta .cta_container .row > div .btn-primary-border{
        border:none;
    }

    .form-head img.logo {
        margin: 12% auto;
    }

    .input-field {
        margin-bottom: 0.5rem;
    }

    .features .header .subline{
        max-width:100%;
    }

    .features .section{
        width: 90%;
    }

    .features #features_row > div:nth-child(1n-0) .section{
        margin: 4% auto;
    }

    .login_head {
        margin: 0 2%;
    }

    .open_domains {
        margin-top: 25px;
    }

    .message_container {
        width: 95%;
    }

    .message_container .img_container{
        max-width: 100%;
    }

    .pricing .prices .price {
        font-size: 44px;
    }

    .pricing .prices {
        max-width: 95%;
    }

    .pricing .prices .desc {
        margin-left: 5px;
        text-align: center;
    }

    .pricing .prices .left{
        text-align: center;
        padding-left: 15px;
    }

    .pricing .prices .right{
        text-align: center;
    }

    .pricing .prices .middle{
        padding: 0;
        margin: 0;
    }

    .pricing .subline .nowrap{
        white-space: normal;
    }

    .pricing hr.h_divider {
        margin-top: 50px;
        margin-bottom: 50px;
    }

    .pricing .faq .right .page_mid_title {
        font-size: 28px;
    }

    .bottom_cta2 .cta_subline{
        text-align: center;
    }


    .signup .logo_container .logo {
        margin: 6% auto 0;
    }
    .signup .logo_container .logo img {
        max-width: 65px;
    }

    .signup .form-subtitle {
        margin-bottom: 7%;
        margin-top: 3%;
    }

    .signup.process .headline {
        font-size: 38px;
        margin-bottom: 15px;
    }

    .signup.process .form-subtitle {
        margin-top: 3%;
        margin-bottom: 3%;
    }

    .signup.process .logo_container .logo img {
        max-width: 60px;
    }

    .signup.process .row .right img, .signup.process.step1 .row .right img {
        /*max-width: 45%;*/
        max-height: 180px;
    }

    .signup.process .logo_container .counter {
        font-size: 22px;
    }

    .signup.process .input-field {
        margin: 8px 0;
    }

    .form-fields label {
        margin-top: 12px;
    }

    .signup.process .cta_row .input-field{
        margin-top: 5px;
        margin-bottom: 40px;
    }

    .signup.process .form_error_message {
        margin-top: 10px;
        margin-bottom: 5px;
    }

/*
    .signup.process .row .right {
        display: none;
    }
*/

    .about .capterra .review .text {
        font-size: 17px;
    }
    .about .capterra .review {
        max-width: 100%;
    }
    .about .capterra .lines {
        max-width: none;
    }
    .about .capterra .btn {
        width: 100%;
    }
    .about .customers-title {
        margin-bottom: 40px;
    }


    .slack .body_row .section .desc,
    .slack .body_row .section .image { max-width: 100%; }
    .slack .subline {
        max-width: none;
    }
    .slack .slack-btn{
        width: 100%;
    }

    .slack .body_row .section .image {
        max-width: 100%;
    }

    .slack .body_row .section .images{
        text-align: left;
    }

    .slack .body_row .section .images .first {
        max-width: 90%;
        margin-left: 0;
    }

    .ph_badge{
        margin-bottom: 0;
        text-align: center;
    }
    
   
    .pricing .surcharge_desc {
        margin-top: 9%;
    }

}   /* 425 */


@media (max-width: 375px) {

    h2{
        font-size: 30px;
    }

    .left_block{
        margin: 0 3%;
    }

    .headline, h1.headline{
        font-size: 40px;
    }

    h1.headline.small{
        font-size: 36px;
    }
/*
    .subline{
        text-align: center;
    }
*/
    .cta_container{
        text-align: center;
    }


    img.hero{
        max-width: 90%;
    }

    .page_mid_title {
        /*font-size: 30px;*/
    }

    .section, .section.left, .section.right{
        /* margin:auto 3%; */
        margin: auto 3% 50px;
    }

    .section .title {
        font-size: 24px;
    }

    .section .desc{
        font-size: 17px;
    }

    .container.testimonials .row .left{
        margin: 0 3%;
    }

    .testimonials .item{
        margin-left: 5%;
    }

    .bottom_cta .row .left {
        max-width: 220px;
    }

    .testimonials .counter {
        font-size: 30px;
        margin-bottom: 4px;
    }

    .testimonials .counter span#count {
        width: 17px;
    }

    .testimonials .counter span#of {
        margin: 0 3px;
    }

    .testimonials .nav .arrow img {
        max-height: 20px;
    }

    .testimonials .nav .arrow {
        margin-right: 30px;
    }

    /*
    footer {
        margin-top: 110px;
    }
    */

    footer .left .row .col > div {
        margin-left: 0;
    }

    footer .left {
        margin: 0 3%;
    }

    .form-head img.logo {
        max-height: 80px;
        margin: 10% auto;

    }

    .form-subtitle {
        margin: 30px auto;
    }

    .features .header {
        margin: 0 2.5% 5%;
    }
    .login_head {
        margin: 0 1%;
    }

    select.round {
        max-width: 180px;
    }

    .pricing .pricing-desc {
        font-size: 16px;
    }
    .pricing .prices .price {
        font-size: 40px;
    }
    .pricing .faq .left .desc {
        font-size: 16px;
    }
    .pricing .faq .right .page_mid_title {
        font-size: 26px;
    }

    .signup .form-subtitle {
        font-size: 16px;
        margin-bottom: 6%;
        margin-top: 3%;
        line-height: 1.35;
    }

    .btn {
        padding: 0px 35px;
    }

    .signup.process .headline {
        font-size: 36px;
        margin-bottom: 15px;
    }

    .signup.process .row .right img, .signup.process.step1 .row .right img {
        /*max-width: 45%;*/
        max-height: 160px;
    }



    .about .capterra {
        margin: auto 4%;
    }

    .terms .section {
        margin-left: 10px;
    }

    .terms .desc.table {
        font-size: 14px;
    }

    .slack .body_row .section {
        margin-left: 4%;
        margin-right: 4%;
    }

    .features .section .title.spec_break {
        max-width: 90%;
    }


}

@media (max-width: 360px) {



    .headline, h1.headline{
        font-size: 38px;
    }

    h1.headline.small{
        font-size: 36px;
    }

    .customer_logos .col{
        min-width: 100%;
        margin-top: 15px;
    }

    .customer_logos .col img{
        max-width: 80%;
        width: 160px;
    }

    .section .title{
        font-size: 24px;
    }

    .page_mid_title{
        /*margin-top: 60px;*/
        margin-bottom: 60px;
    }

    .container.bottom_cta {
        /*margin-top: 40px;*/
    }

    .container.testimonials > .wrapper{
        max-width: 95%;
    }

    .testimonials .caption {
        font-size: 28px;
    }

    .testimonials .testimonial {
        font-size: 16px;
    }

    .testimonials .counter {
        font-size: 35px;
    }

    .bottom_cta .row .left {
        max-width: 200px;
    }

    .bottom_cta .caption {
        font-size: 28px;
    }

    .bottom_cta .cta_container .row > div.cta_subline{
        display: none;
    }

    .bottom_cta .cta_container .btn {
        font-size: 18px;
    }

    .page_mid_title {
        font-size: 28px;
    }

    .login_head {
        margin: 0;
        height: 110px;
    }

    .login_head.head_logo{
        height: 110px;
    }

    .login_head img.logo {
        max-height: 55px;
    }

    select.round {
        max-width: 170px;
    }

    .pricing .prices {
        max-width: 100%;
    }

    .pricing .pricing-desc {
        margin-bottom: 60px;
    }
    .pricing .prices .price {
        font-size: 38px;
    }
    .pricing .faq .left .desc {
        margin-bottom: 60px;
    }

    .signup img#userimg {       /* screen to small to accomodate avatar and email in the intput field, just don't show avatar on screen small like this */
        display: none !important;
    }

    .signup.process .headline {
        font-size: 32px;
    }

    .signup.process .row .right img, .signup.process.step1 .row .right img {
        /*max-width: 45%;*/
        max-height: 150px;
    }

    footer .left .row .col > div {
        font-size: 15px;
    }

    .about .capterra .review .text {
        font-size: 16px;
    }

    .pricing .surcharge_desc {
        margin-top: 10%;
    }

}


@media (max-width: 320px) {

    h2{
        font-size: 27px;
    }

    .left_block{
        margin: 0 2%;
    }

    .headline, h1.headline{
        font-size: 36px;
    }

    h1.headline.small{
        font-size: 34px;
    }

    .customer_logos > .col:last-child{
        display: none;
    }

    .page_mid_title {
        font-size: 26px;
    }

    .section .title {
        font-size: 23px;
    }


    .section, .section.left, .section.right{
        margin: auto auto 50px;

    }

    .container.testimonials > .wrapper{
        max-width: 100%;
    }

    .testimonials .counter {
        font-size: 33px;
    }

    .testimonials .counter span#of {
        margin: 0;
    }

    .bottom_cta .row .left {
        max-width: 195px;
    }

    .container.bottom_cta {
        /*margin-top: 30px;*/
    }

    .features .header {
        margin: 0 2% 5%;
    }

    .features .section{
        width: 96%;
    }


    select.round {
        max-width: 160px;
    }

    .pricing .faq .right .page_mid_title {
        font-size: 24px;
    }

    .signup.process .row .right img, .signup.process.step1 .row .right img {
        /*max-width: 45%;*/
        max-height: 140px;
    }

    footer .left {
        margin: 0 2%;
    }
    .about .capterra {
        margin: auto 2%;
    }

    .slack .body_row .section {
        margin-left: 2%;
        margin-right: 2%;
    }

    .features .section .title.spec_break {
        max-width: none;
    }


}



/* HTML5BP defaults */

@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster */
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  /*
     * Printing Tables:
     * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
     */
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}

