/*!
 * 
    DOCUMENT INFORMATION
    - Document: ProSites
    - Version:  1.0
    - Client:   All Members
    - Author:   ProSites  
*/

/* ==============================
   Start .Net Pages && Controls Styling
   ============================== */

/* =================
   Global Colors 
   =================================================== */

.page-testimonials .page-item,
.app-req-form .page-item,
.page-photogallery .page-item,
.page-contact .page-item:nth-child(n+2),
.page-links .page-item,
.page-dentalvideos .page-item,
.page-faq .page-item,
.page-smileanalysis .page-item,
.app-req-form .page-item.currentpatient,
.app-req-form .page-item.prefcall,
.app-req-form .page-item.preflocation,
.app-req-form .page-item.prefday,
.app-req-form .page-item.preftime,
.app-req-form .page-item.comments,
.page-team .page-item,
.page-smileanalysis .group >.page-item:last-child,
.page-smileanalysis .page-item:last-child,
.page-links .page-item:last-child,
.page-dentalvideos .page-item:last-child,
.page-faq .page-item:last-child,
.page-photogallery > div >.page-item:last-child, 
.page-list > ul > li > a,
.page-contact .page-item,
.related-pages,
.page-list > ul,
.page-list ul,
.page-list > ul > .PageService_Group,
.page-contact .profile {
    border-color: rgba(0,0,0,0.2);
}

.accordion .page-item:hover h3 {   
    background: rgba(0,0,0,1);
    color: rgba(255,255,255,1);
}
.page-contact .container-inner {
    background: #1C928F;
    border: 1px solid rgba(0,0,0,0.2);
    border-radius: .3em;
}
@media screen and (max-width: 1200px) {
.accordion .page-item:hover h3 {   
  background: none;
}
.accordion .page-item:active h3 {   
 -webkit-tap-highlight-color: rgba(0,0,0,1.0);
    }
}
@media(max-width:768px) {
.page-contact .container-inner  {
    background: none;
    border: 0px solid rgba(0,0,0,0.2);
    }
}

a.mapicon:before {
    color: rgba(0,0,0,0.9);
}
input[type="radio"] + label::before, 
input[type="checkbox"] + label::before {
    background: rgb(255,255,255);
    border-color: rgba(0,0,0,0.0);
}
input[type="radio"]:checked + label::before,
input[type="checkbox"]:checked + label::before{
    background: rgba(0,0,0,1);
    border-color: rgba(0,0,0,1);
    color: rgb(255,255,255);
}
.form .heading h2 {
    border-color: #3DB5B2;
}


/* =================
   Global Properties 
   =================================================== */

.page-intro::after { 
    content: "";
    display: block;
    margin-bottom: 20px; 
}
.page-item {
    display: block;
    clear: both;
    overflow: hidden;
    padding: 65px 0;
}
.page-links .page-item,
.page-smileanalysis .page-item,
.app-req-form .page-item {
    padding: 30px 0;
}
.page-faq .page-item,
.page-dentalvideos .page-item {
    padding: 0;
}
.page-list ul,
.page-testimonials .page-item,
.app-req-form .page-item,
.page-photogallery .page-item,
.page-contact .page-item:nth-child(n+2) {
    border-width: 1px;
    border-top-style: solid;
}
.page-team .page-item,
.page-smileanalysis .group >.page-item:last-child,
.page-smileanalysis .page-item:last-child,
.page-links .page-item:last-child,
.page-dentalvideos .page-item:last-child,
.page-faq .page-item:last-child,
.page-photogallery > div >.page-item:last-child  {
    border-width: 1px;
    border-bottom-style: solid;
}
/*Page Wrappers*/
.page-apprequest,
.page-contact,
.page-dentalvideos,
.page-faq,
.page-links,
.page-team,
.page-photogallery,
.page-smileanalysis,
.page-services,
.page-testimonials {
    margin-top: 40px;
}

.page-links .page-item h3,
.page-smileanalysis .page-item h3,
.accordion .page-item h3,
.page-faq .page-item h3
 {
    font-size: 20px;
    line-height: 30px;
    margin-bottom: 0px;
    font-weight: 300;
}
h3:hover {
    font-weight: 300;
    font-weight: normal;
}
.page-item.fields {
  padding: 0px;
}

#content table {
    width:100% !important;
    height:auto !important;
}
#content td {
    padding:5px !important;
    }
#content table img {
    display: block;
    max-width: 100%;
    height: auto;
}

/*Responsive*/
@media(max-width:768px) {
.plug-in-form .container-inner {
    padding: 40px 0;
}

#content table {
    overflow-x: scroll;
    overflow-y: hidden;
    display: inline-block;
    max-width: 100%;
    overflow: hidden;   
    }
}

/* =================
   Service List Page
   =================================================== */
.page-list a,
.child-list a { 
    padding: 0 15px 0 0;
}
.page-list ul,
.child-list ul,
.page-photogallery .child-list ul
 {
    white-space: normal;
    margin-bottom: 35px;
    line-height: 25px;
}
.page-list ul {
    padding-top: 20px;
}
.page-list > ul {
    border-width: 1px;
    border-bottom-style: solid;
    padding-bottom: 20px;
}
.page-list > ul:first-child {
    list-style-type: none;
    padding: 20px 0 0 0 ;
}
.page-list > ul:last-child {
    border: none;
}
.page-list > ul > li > a {
    border-top: none;
    font-size: 16px;
    font-weight: 400;
    display: inline-block;
    padding-bottom: 10px;
    margin-bottom: 0px;
    text-transform: uppercase;
}
.page-list ul > li > ul > li {
    list-style-type: disc;
}
.page-list ul li ul li ul {
    padding-top: 0px;
    border: 0px;
    margin-bottom: 0px; 
}
.page-list ul li ul li ul li {
   list-style-type: circle;
}

/* PhotoGallery List Only */
.page-list > ul > .PageService_Group {
    border-width: 1px;
    border-bottom-style: solid;
    padding-bottom: 20px;
    border-top: none;
    font-size: 16px;
    font-weight: 400;
    display: block;
    padding-bottom: 10px;
    margin-bottom: 20px;
    text-transform: uppercase;
}
.page-list > ul > .PageService_Group:nth-child(n+2) {
    margin-top: 35px;
}
.page-list ul > .PageService_Item {
    list-style-type: disc;
    display: block;
    padding: 0 0 0 20px;
    margin-left: 20px;
}
.related-pages {
    font-weight: bold;
    border-width: 1px;
    border-top-style: solid;
    font-size: 110%;
    padding: 20px 0 20px;
    margin: 20px 0 0 ;
}

a.viewgallery {
    font-weight: bold;
    float: left;
    margin-top: 20px;
    padding: 8px 4%;
}
input.back {
    font-weight: bold;
    float: left;
    padding: 8px 20px;
}


/* =================

   *Links Page
   =================================================== */
.page-links .page-item {
    border-width: 1px;
    border-top-style: solid;
}
.page-links > .page-item h2 + p {
    padding-bottom: 20px;
}

/* =================
   *Meeet the Team Page
   =================================================== */

.page-team div > h2 {
    margin: 0px;
}
.page-team div > h3 {
    font-weight: bold;
    margin-top: 5px;
    margin-bottom: 0px;
}
.page-team div > p {
    margin: 20px 0 0 ;
}
.page-team .page-item:last-child  {
    border-width: 0px;
    border-bottom-style: solid;
}
/* =================
   *Testimonials Page
   =================================================== */
.page-testimonials blockquote,
.testimonials-plugin blockquote {  
    padding: 0px;
    display: block;
    border: none;
    font-size: 120%; 
}
.page-testimonials p.source,
.testimonials-plugin p.source { 
    font-weight: bold; 
    font-size: 90%; 
    text-align: right;
    margin: 0px;
    padding-top: 20px; 
}
.page-testimonials blockquote:before,
.page-testimonials blockquote:after  {
    display: inline-block;
    padding: 0 1px;
}
.page-testimonials blockquote:before,
.testimonials-plugin blockquote:before {
    content: "\201C";
}
.page-testimonials blockquote:after,
.testimonials-plugin blockquote:after {
    content: "\201D";
}
.page-testimonials p.source:before {
    content: "\2014 \2009";
}



/* =================
   *Photo Gallery Page
   =================================================== */

.photolist span {
    display: inline-block;
}
.LabelGroupName {
    display: none;
}
.LargeImage {
    background: #fff;
    display: block;
    text-align: center;
}
.close {
    float: none;
    font-size: 21px;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    filter: alpha(opacity=100)!important;
    opacity: 100!important;
}

[data-icon]:before {
    font-family: FontAwesome;
    content: attr(data-icon);
    padding-left: 5px;
}
.details {
    padding-top: 10px;
}
.case-details {
    padding-top: 30px;
    width: auto;
    text-align: left;
}
.case-details a.icon {
    cursor: pointer;
    border: 1px solid;
    border-radius: 3px;
    padding: 6px 12px;
}
.case-details a.icon:hover {
    text-decoration: none;
    background-color: #fff;
    color: #2E9B9C;
    border-color: #fff;
}
.detailsDiv {
    padding-top:20px;
}
 #map-canvas {
    width: 100%;
    height: 400px;
      }
 #mask {
    position:fixed;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-color:#000;
    opacity:0.8;
    z-index:1;
    display: none;
}
.PhotoBox .window
{
    position: fixed;
    display: none;
    z-index: 100;
    left: 0!important;
    right: 0!important;
    margin: 0 auto!important;
    width: 262px;
    top: 35%!important;
}
 .PhotoBox #dialog
{
    margin-right: inherit;
    margin-left: auto;
}
 .PhotoPanel
{
    width: 270px;
    margin: 0;
    text-align: left;
}
.PhotoPanel .Photo
{
    height:auto;
    padding: 0px;
    margin-left: 0px;
    display: block;
    width: 130px;
    margin-right:10px;
}
.PhotoPanel .Photo img
{
    height:auto;
    vertical-align: baseline;
} 
.PhotoPanel .Photo2
{
    padding: 0px;
    display: block;
    width: 130px;
}
.PhotoPanel .Photo a:hover,
.PhotoPanel .Photo2 a:hover
{
    color: inherit;
}
.PhotoCaption
{
    width:inherit;
    font-size: 1.2em;
    text-align: center;
    line-height: 20px;
    height: 20px;
    margin-top: 10px;
    margin-bottom: 10px;
    font-weight: bold;
}
.PhotoCaption .pc1
{
    margin-bottom:10px;
    margin-right: 8px;
}
.PhotoCaption .pc2
{
   margin-bottom:10px;
}
.disclaimer {
    padding: 20px 0 0;
}
.galleryButtons {
    text-align: right;
}

/*responsive*/ 
@media(max-width:768px) {
 .PhotoPanel
{
    margin: 0 auto;
    text-align: center;
}
.case-details {
    padding-top: 30px;
    width: auto;
    text-align: center;
}
.galleryButtons {
    text-align: center;
    }
}
.galleryButtons input {
    font-size: 95%;
    }
}

/* =================
   *Faq Page 
   *Video Dental Page
   =================================================== */

/*Accordian Global*/
.accordion h3 { 
    padding: 0px;
    line-height: 30px;
}
.accordion h3:hover {     
    display: block;
}
ul.accordion .on { 
    cursor: default;
}
.accordion .page-item h3 {   
    margin: 0;
    padding: 20px 0;
}
.accordion .page-item div > ul>li { 
    padding-top :10px;
    list-style: none;
}
.page-faq h3,
.page-dentalvideos h3 {
    cursor:pointer;
}


/*faq*/
.page-faq .question,
.page-faq .answer  {
    font-size: 20px;
    padding: 0px 20px 0 0;
    font-weight: bold;  
}
.page-faq .question  {
    padding: 0 0 0 10px;
}
.page-faq .content  {
    display: inline-block;
    padding: 10px 0 0 10px;
}
.accordion .page-item div > ul > li { 
    list-style: inherit;
}


/*dental Vids*/
.page-dentalvideos .accordion li p:first-child::before { 
    content: "";
    font-size: 130%;
}
.page-dentalvideos .accordion .page-item::before  {
    content: "";
}
.page-dentalvideos .page-item,
.page-faq .page-item {
    border-width: 1px;
    border-top-style: solid;
}
.page-dentalvideos ul,
.page-faq > ul  {
    padding: 0px;
    list-style: none;
}   
.page-dentalvideos li {
    margin-top: 30px;
    margin-bottom: 20px;
    text-align: center;
}
.page-dentalvideos .vidlabel {
    padding: 0 0 10px;
    font-size: 16px;
}
 .page-dentalvideos .page-item h3 {
    padding: 20px 0px 20px 15px;
}
.page-dentalvideos img:hover  {
    cursor: pointer;
 } 
/* play icon */
a.overlay {
    display: block;
    padding: 0px;
    margin: 0px;
    position: relative;
 }
a.overlay:before {
    font-family: FontAwesome;
    content: "\f144";
    display: inline-block;
    font-size: 61px;
    vertical-align: middle;
    margin: 0 auto;
    position: absolute;
    bottom: 0;
    top: 70px;
    left: 43%;
    color: rgba(255, 255, 255, 0.9);
    background: #000;
    border-radius: 50%;
    width: 52px;
    height: 52px;
    line-height: 54px;
    }
a:hover.overlay:before {
    color: rgba(255, 255, 255, 1.0);
    text-decoration: none!important;
}
 .page-dentalvideos a:hover  {
    text-decoration: none!important;
 } 
.terms {
    text-align: center;
    padding: 40px 0 0;
    font-size: 90%;
}
/*hide video tag play btn*/
video::-webkit-media-controls-start-playback-button {
  display: none !important;
  -webkit-appearance: none;
}
/*adjust video size 
& big play btn placement for small devices*/
@media only screen and (max-width: 415px) { 
.video-js
  {
  width: 100%!important;
    }
.fancybox-inner {
  overflow: hidden !important;
  width: 100%!important;
  }
}

/* ---- video player style edits ---- */

.page-dentalvideos .content img {
    width: 100%!important;
    max-width: 250px!important;
    height: auto!important;
}
.vjs-paused .vjs-big-play-button {
    position: absolute!important;
    border-radius: 100%!important;
    text-align: center!important;
    left: 50%!important;
    top: 50%!important;
    margin: -42px 0 0 -44px!important;
    background: rgba(0, 0, 0, 0.25)!important;
    border: 2px solid #fff!important;
    height: 80px!important;
    width: 80px!important;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5)!important;
    box-sizing:content-box!important;
    -webkit-box-sizing:content-box!important;
}
.vjs-paused .vjs-big-play-button:active {
    background: rgba(255, 255, 255, 0.25)!important;
}
.vjs-paused .vjs-big-play-button::before {
    color: #fff!important;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.5)!important;
    font-size: 40px!important;
    line-height: 81px!important;
    margin-left: 2px;
    box-sizing:content-box!important;
    -webkit-box-sizing:content-box!important;
    content: "\f04b";
    font-family: FontAwesome;
}
.vjs-playing .vjs-big-play-button {
    display: none!important;
}
.fancybox-outer .fancybox-inner .video-js .vjs-big-play-button {
    display: block;
}
.fancybox-overlay .fancybox-wrap {
    left: 50%!important;
    border: 0px solid #444!important;
    box-shadow:0 0 40px rgba(0,0,0,0.5);
    -webkit-transform: translate(-50%, 0)!important;
    -moz-transform: translate(-50%, 0)!important;
    -ms-transform: translate(-50%, 0)!important;
    -o-transform: translate(-50%, 0)!important;
    transform: translate(-50%, 0)!important;
}
.fancybox-skin {
    box-shadow: none!important;
    width: 80vw!important;
    max-width: 510px;
    min-width: 200px;
    padding: 0!important;
}
.fancybox-outer,
.fancybox-inner,
.fancybox-inner > .video-js {
    width: 100%!important;
}
.vjs-control-bar {
    overflow: hidden!important;
    padding-top: 12px!important;
    height:40px!important;
    box-sizing:content-box!important;
    -webkit-box-sizing:content-box!important;
}
.vjs-progress-control {
    height: 12px!important;
}
.vjs-default-skin .vjs-progress-control {
    top: 0!important;
    height: 10px!important;
}
.vjs-default-skin .vjs-play-control::before {
    font-family: FontAwesome!important;
    content: "\f04b"!important;
}
.vjs-default-skin .vjs-play-control.vjs-playing::before {
    content: "\f04c"!important;
}
.vjs-default-skin .vjs-slider-handle::before {
    top: -2px!important;
    content: "\f111"!important;
    font-family: FontAwesome!important;
}
.vjs-default-skin .vjs-mute-control::before,
.vjs-default-skin .vjs-volume-menu-button::before {
    content: "\e006"!important;
}
.vjs-default-skin .vjs-mute-control.vjs-vol-3::before,
.vjs-default-skin .vjs-volume-menu-button.vjs-vol-3::before {
    content: "\e006"!important;
}
.vjs-default-skin .vjs-mute-control.vjs-vol-2::before,
.vjs-default-skin .vjs-volume-menu-button.vjs-vol-2::before {
    content: "\e005"!important;
}
.vjs-default-skin .vjs-mute-control.vjs-vol-1::before,
.vjs-default-skin .vjs-volume-menu-button.vjs-vol-1::before {
    content: "\e004"!important;
}
.vjs-default-skin .vjs-mute-control.vjs-vol-0::before,
.vjs-default-skin .vjs-volume-menu-button.vjs-vol-0::before {
    content: "\e003"!important;
}
.vjs-default-skin .vjs-fullscreen-control:before {
    content: "\f065"!important;
    font-family: FontAwesome!important;
}
.vjs-default-skin.vjs-fullscreen .vjs-fullscreen-control:before {
    content: "\f066"!important;
}
.vjs-loading-spinner {
    display: none!important;
}
.video-js div {
    font-size: 12px;
    line-height: 36px;
    color: #fff;
}
.fancybox-close {
    background:none;
}
.fancybox-close::before {
    content: '\f057';
    position: absolute;
    color: #fff;
    opacity:0.5;
    font-family: 'FontAwesome';
    padding: 0;
    margin: 15px 0 0 -10px;
    font-size: 28px;
    line-height: 10px;
    display: block;
    text-align: right;
    width: 98%;
    border:none!important;
    outline:none!important;
    box-shadow:none!important;
    pointer-events: none;
    cursor:pointer;
}


/* =================
   *Smile Analysis Page
   =================================================== */
.page-smileanalysis .page-item {
    border-width: 1px;
    border-top-style: solid;
}
.page-smileanalysis .question {
    font-weight: bold;
}

.page-smileanalysis .closing {
    font-size: 150%;
}
.page-smileanalysis .group >.page-item:last-child 
{
    margin-bottom: 40px;
}
.toggle {
    margin: 0px;    
}
.page-smileanalysis .page-item h3
{
    margin: 0 0 20px;
}
@media(max-width:480px) { 
.page-smileanalysis .page-item {
    padding: 20px;
    }
}

/* =================
   *input btns 
   *smile anaylis + request appt
   *hide the inputs and swap with buttons
   =================================================== */
/*
  Hide radio button (the round disc)
  label to create pushbutton effect
*/
.page-apprequest input[type="radio"],
.page-smileanalysis input[type="radio"],
.page-apprequest input[type="checkbox"],
.page-smileanalysis input[type="checkbox"] {
    width   : 28px;
    margin  : 0;
    padding : 0;
    opacity: 0;
    display: none;
}
/*
  edit labels (which are adjacent to radiobuttons).
*/
input[type="radio"] + label, 
input[type="checkbox"] + label {
    cursor: pointer;
    display: block;
}
/*
  style labels to look like boxes - offstate
*/
input[type="radio"] + label::before, 
input[type="checkbox"] + label::before {
    content: "";
    display: inline-block;
    width: 2em;
    height: 2em;
    margin: 0.25em 0.5em 0.25em 0.25em;
    border-radius: 0.25em;
    vertical-align: middle;
    line-height: 27px;
    text-indent: 6px;
    border-width: 1px;
    border-style: solid;
}
/*
  && add checkmarks and fill in color - checked state
*/
input[type="radio"]:checked + label::before,
input[type="checkbox"]:checked + label::before{
    font-family: FontAwesome;
    content: "\f00c";
    border-width: 1px;
    border-style: solid;
}




/* =================
   *Contact Page
   =================================================== */

/*main page*/
.page-contact .page-item {
    border-width: 1px;
    border-bottom-style: solid;
    border: none;
}
.page-contact .page-item:first-child {
    padding-top: 0px;
}
.page-contact .container-inner {
    padding: 20px;
}
.page-contact .profile {
    border-width: 1px;
    border-top-style: dotted;
}
.page-contact span.address ,
.page-contact span.numbers  {
    display: block;
}
.page-contact .address div:first-child {
    padding-top: 20px;
}
.page-contact .address div:last-child,
.page-contact .address span:last-child,
.page-contact .numbers div:last-child,
.page-contact .numbers span:last-child {
    padding-bottom: 5px;
}
.page-contact .numbers div:last-child {
    padding-bottom: 15px;
}
.page-contact div.hours  {
    padding: 20px 0px;
}
/*profile page*/
.profile {
    padding: 40px 0 20px 0;
}
.profile-detail {
    display: block;
}
.profile-detail .pic {
    margin-bottom: 20px;
    display: block;
    background: blue;
}
.profile-detail .address {
    display: block;
    margin-bottom: 20px;
    line-height: 1.1;
}
.profile-detail .numbers span
 {
    display: block;
}
.profile-detail .address h2 {
    margin: 0px;
    line-height: 1.1;
}
.profile-detail .address h3 {
    font-weight: bold;
    margin-top: 5px;
    margin-bottom: 0px;
}

/*
@media(max-width:480px) { 
    .page-contact .container-inner {
    padding: 0px;
    border: none;
    }
}
*/

/* =================
   *Address Plugin
   =================================================== */

.float-none-center {
    float: none;
    vertical-align: top;
}
.address-plugin .inner-container { 
    padding: 50px 0;
    position: relative;
    width: 100%;
}
.address-plugin { 
    text-align: center;
}
section.address-plugin h2.section-heading {
    padding-bottom: 10px;
}
.address-plugin .blockwrap {
    width: 200px;
    display: inline-block;
    vertical-align: top;
}
.address-plugin ul {
    padding: 0px;
    margin: 0px;
    width: 200px;
    display: inline-block; 
    padding: 0;
}

.address-plugin li {
    display: block;      
}
.adgrp1 li, .adgrp2 {
    display: inline-block!important;
}
.address-plugin .adcity1 {
    font-weight: bold;
}
.address-plugin .adcity1:after {
    display: inline-block;
    content: ":";
}
.address-plugin .adph {
    font-weight: bold;
    padding: 10px 0 0 0;
    display: block;
}
.mapicon {
    padding-top: 2px;
    display: block;
}
a.mapicon:before {
    font-family: FontAwesome;
    content: "\f041";
    font-size: 16px;
    position: relative;
    right: 5px;
/*    color: rgba(0, 0, 0, 0.9);*/
}
a:hover.mapicon:before {
    text-decoration: none;
    display:inline-block;
}
.stretch {
    width: 100%;
    display: inline-block;
    font-size: 0;
    line-height: 0
}
@media(max-width:992px) {
.address-plugin ul {
    padding: 0 0 40px;
    }
}

/* =================
   *Testimonial Plugin
   =================================================== */

.testimonials-plugin .inner-container { 
    padding: 100px 0;
    position: relative;
    width: 100%;
    min-height: auto;
    text-align: center;
}
.testimonials-plugin .page-item  {
    margin-top: 0px;
    padding: 40px 0 20px ;
    border: none;
}
.testimonials-plugin blockquote { 
    margin: 0 0 10px;
    font-size: 19px;
}
.testimonials-plugin p.source { 
    text-align: center;
    font-size: 16px;
}
.testimonials-plugin p.source span { 
    display: block;
}
.testimonials-plugin p.source span:first-child:before { 
    content: "\2014 \2009";
}

/* =================
   *Forms
   .form = global small quick contact forms 
   .plug-in-form-form = form plugin 
   .contact-pg-form = contact page 
   .app-req-form = request an appt page 
   =================================================== */

/*global styling*/ 
.form input[type=text],
.form input[type=tel],
.form input[type=email],
.form textarea
 {
    width:100%;
    display:block;
    border: 1px solid #2EA6A3;
    background: rgba(255,255,255,1.0);
    color: rgba(0,0,0,0.6);
    outline: none;
    padding: 12px;    
    margin: 0 0 20px;
    font-weight: bold;
    border-radius: 0.25em;
    -webkit-transition: all 0.30s ease-in-out;
    -moz-transition: all 0.30s ease-in-out;
    -ms-transition: all 0.30s ease-in-out;
    -o-transition: all 0.30s ease-in-out;
}
.form input[type=text]:focus,
.form input[type=tel]:focus,
.form input[type=email]:focus,
.form textarea:focus
 {
    box-shadow: 0 0 5px rgba(81, 203, 238, 1);
    border: 1px solid rgba(81, 203, 238, .4);
}
.form textarea {
    height: 175px!important;
}
.form .heading h2 {
    margin: 0px;
    font-weight: 400;
    padding-bottom: 20px;
    border-width: 2px;
    border-bottom-style: solid;
}
.form .intro{
    padding: 10px 0 0 0;
}
.form .fieldswrap {
    padding: 20px 0 0 0;
    overflow: hidden;
}
.form fieldset {
    margin: 0;
    padding: 0;
    border: none;
}
.form .Button {
    padding: 16px 60px;
}
.form .btn-row {
    text-align: right!important;
    height: 50px;
}
.form .notes {
    padding: 20px 0 0 0;
    display: block;
}

/*other page form styling */
.plug-in-form input[type=text],
.plug-in-form input[type=tel],
.plug-in-form input[type=email],
.plug-in-form textarea
 {
    width:100%;
    display:block;
    border: 1px solid rgba(0,0,0,0);
}
.plug-in-form .heading h2 {
    margin: 0px;
    font-weight: 400;
    padding-bottom: 0;
    border-bottom: 0;
}
.plug-in-form fieldset,
.smileanalysis-form fieldset {
    float: left;
}
.plug-in-form fieldset.col1,
.smileanalysis-form fieldset.col1 {
    width: 40%;
    margin-right: 3.5%;
}
.plug-in-form fieldset.col2,
.smileanalysis-form fieldset.col2 {
    width: 56%;
}
.plug-in-form input.Button,
.smileanalysis-form input.Button {
    margin: 0 auto!important;
/*    margin-bottom: 25px!important;*/
    display: inline-block;
}
/*contact page form styling only*/
.contact-pg-form input[type=text],
.contact-pg-form textarea
 {
}
/*app-req-form*/ 
.app-req-form {
    text-align: left;
}
.app-req-form .page-item {
    border: none;
 }
.app-req-form .page-item p {
    margin-bottom: 20px;
    font-weight: bold
}
.app-req-form .page-item.currentpatient,
.app-req-form .page-item.prefcall,
.app-req-form .page-item.preflocation,
.app-req-form .page-item.prefday,
.app-req-form .page-item.preftime,
.app-req-form .page-item.comments {
    border-width: 1px;
    border-top-style: dotted;
 }
.app-req-form textarea
{ 
    margin-top: 10px;
}
.preflocation input[type="radio"] + label {
    display: block;
}
.preflocation br {
    display: none;
}
.txtrequired {
    display: block;
    padding-bottom: 20px;
}
.form .note {
    padding-top: 30px;
    display: block;
    text-align: center;
}

/*responsive*/ 

@media(max-width:768px) {
.form fieldset {
    margin: 0;
    padding: 0;
    border: none;
    display: block;
}
.form fieldset.col1 {
    width: 100%;
    margin-right:0;
}
.form fieldset.col2 {
    width: 100%;
}
.form input.Button {
    width: 100%;
    }
.app-req-form input.Button {
    width: 100%
    }
}

@media(min-width:992px) {
.app-req-form input[type=text],
.app-req-form input[type=tel],
.app-req-form input[type=email],
.app-req-form textarea,
.preflocation input[type="radio"] + label {
    width:50% !important;
}
.app-req-form textarea {
    width:100% !important;
    }
}


/* =================
   Main Menu Device Icons
   =================================================== */
/*.rblMaps,.rblPhones{
    display:none;
}*/

ul.menu-icons {
    padding: 0;
    margin: 0;
    position: absolute;
    right: 0;
    height: auto;
    display: inline-block;
    margin-right: 66px;
    -webkit-transition: all .35s;
    -moz-transition: all .35s;
    transition: all .35s;
    padding: 5px 0 0 0;
}
ul.menu-icons li {
    list-style-type: none;
    display: inline-block;
    vertical-align: middle;
    /*    background-color: rgba(255,255,255,.05);*/
    padding: 0px 2px;
    /*    float: left;*/
}
ul.menu-icons [data-icon]:before {
    font-family: FontAwesome;
    content: attr(data-icon);
    padding:35px 7px;
    font-size: 25px;
}
ul.menu-icons li a.icon {
    cursor: pointer;
    color: rgba(255,255,255,1);
    width: 39px;
    display: block;
/*    border: 1px solid rgba(255,255,255,.2);*/
    border-radius: 3px;
    text-align: center;
}
ul.menu-icons li a.icon:hover {
    text-decoration: none;
    color: rgba(255,255,255,.9);
    background-color: rgba(0,0,0,1);
}
@media (max-width: 480px) {
ul.menu-icons {
    position: absolute;
    right: 0;
/*
    left: 0;
    margin: auto;
*/
    padding: 5px 0 10px 0px;
    border-bottom: 1px solid rgb(55, 64, 64);
    }
}
@media (min-width: 1200px) {
ul.menu-icons {
    display: none;
    }
}

/*dropdowns*/
.rblMaps,
.rblPhones {  
    display: none;
    background-color: #2BB9B7;
    z-index: 100;
    width: 100%;
    text-align: center;
    color: #fff;
    margin: 0px auto;
    position: absolute;
    left: 0;
    right: 0;
}
.rblMaps ul,
.rblPhones ul {  
    list-style: none;
    width: auto;
    margin: 20px auto;
    position: relative;
    padding: 0px;
    max-width: 600px;
}
.rblMaps li,
.rblPhones li {  
    margin: 10px 20px;
    display: block;
}
.rblMaps a,
.rblPhones a {  
    font-size: 18px;
    border-width: 1px;
    border-style: solid;
    border-color: #fff;
    padding: 15px;
    color: #fff;
    display: block;
    display: list-item;
}
.rblMaps a:hover,
.rblPhones a:hover { 
    padding: 15px; 
    background-color: #fff;
    color: #2BB9B7;
    border-color: #fff;
    display: block;
    text-decoration: none;
}
.rblPhones a:focus {
    text-decoration: none;  
}
/*.navbar { 
    position: static;
}*/
@media(min-width:1200px) {
.rblMaps,
.rblPhones {  
    display: none!important;
    }  
}