/**
  Theme Name: The Practice
  Version: 1
  Author: Dental Design Products
  Author URI: http://dental-design-client.co.uk/
*/

/* =======================
-------- Contents --------
==========================

1.0 Normalize
2.0 Page Layout & Styles
3.0 Transitions / Clearing CSS
4.0 Media Queries

========================== */

/* =================================================================================
1.0  Normalize ---------------------------------------------------------------------
==================================================================================== */

/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */progress,sub,sup{vertical-align:baseline}button,hr,input{overflow:visible}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}dfn{font-style:italic}h1{font-size:2em;margin: 0.4em 0;}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}button,input,select,textarea{font:inherit;margin:0}optgroup{font-weight:700}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}

/* =================================================================================
2.0  Page Layouts & Styles ---------------------------------------------------------
==================================================================================== */

* {
  margin: 0;
  padding: 0;
}

html, * {
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 box-sizing: border-box;
}

html {
  padding: 0 !important;
  margin:0px !important;
}

body {
    font-size: 15px;
    color: #2d434d;
    font-weight: 400;
    font-family: 'Montserrat', sans-serif;
    overflow-x:hidden;
}

#ascrail2000 div {
    border: none !important;
    background-color: rgb(72, 72, 72) !important;
}

h1 {
    font-size: 46px;
    color: #1d1d1d;
    font-weight: 600;
    text-transform: uppercase;
    padding: 0;
    margin: 0;
}

h2 {
    text-transform: uppercase;
    font-weight: 600;
    margin: 0 0 10px 0;
    color: #151515;
    font-size: 33px;
    line-height: 41px;
}

h3 {
    margin:15px 0;
    text-align: center;
}

h4 {
    font-size: 18px;
    border-bottom: 1px solid #E8E8E8;
    text-transform: uppercase;
    color: #5F5F5F;
    padding: 0 0 4px 0;
}

p {
    margin: 15px 0;
    line-height: 26px;
}

a, a:hover {
    text-decoration: none;
}

a {
    color: #9fb93b;
}

strong {
    font-weight: 700;
}

.alignright {
    float: right;
    padding: 5px;
    background: #FBFBFB;
    border: 1px solid #EFEFEF;
    margin: 12px 0 25px 25px;  
}

.container {
    max-width:1200px;
    margin:0 auto;
    position: relative;
}

header {
    position:relative;
    height: 100vh;
    width: 100vw;
    min-height: 400px;
    text-align:center;
    overflow: hidden;
}

header p {
    text-transform: uppercase;
}

header .container {
    position: absolute;
    left: 50%;
    width: 100%;
    max-width: 1200px;
    margin-left: -600px;
    z-index: 3;
    text-align: center;
    top: 50%;
    margin-top: -98px;
}

video.fillWidth {
  position: fixed;
  right: 0;
  bottom: 0;
  min-width: 100%;
  min-height: 100%;
}

.filter {
    width: 100vw;
    height: 100%;
    position: relative;
    top: 0;
    left: 0;
    background: #ffffffc9;
    z-index: 2;
}

#callback input {
    float: left;
    background: #ffffff;
    border: 3px solid #9FB93B;
    padding: 0 20px;
    height: 50px;
    width: 211px;
    margin-right: 5px;
    color: #000;
    font-size: 14px;
}

#callback input.submit {
    border: 0;
    background: #9FB93B;
    padding: 0;
    height: 50px;
    width: 137px;
    color: #fff;
    text-transform: uppercase;
    margin-right:0;
    font-size: 13px;
}

#callback input.submit:hover {
    background: #7A9516;
    cursor:pointer;
}

input:focus,
select:focus,
textarea:focus,
button:focus {
    outline: none;
}

.callback-title {
    float: left;
    padding: 14px 20px 0 20px;
    background: #353535;
    height: 50px;
    width: 202px;
    color: #fff;
    font-weight: 300;
    margin-right: 10px;
}

#callback {
    padding: 10px 0 0 0;
    max-width: 1002px;
    margin: 0 auto;
}

#social {
    position: absolute;
    right: 0;
    z-index: 10;
    top: 50%;
    margin-top: -106px;
}

#social a i {
    display: block;
    float: left;
    clear: both;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: 50%;
    background: #1b1b1b;
    color: #fff;
    margin: 0 40px 10px 0;
}

/* scroll down arrow */
.down-container {
  position: absolute;
  width: 40px;
  height: 24px;
  z-index: 9;
  margin: 0 auto;
  bottom: 80px;
  left: 0;
  right: 0;
}

.chevron {
  position: absolute;
  width: 40px;
  height: 8px;
  opacity: 0;
  transform: scale3d(0.5, 0.5, 0.5);
  animation: move 3s ease-out infinite;
}

.chevron:first-child {
  animation: move 3s ease-out 1s infinite;
}

.chevron:nth-child(2) {
  animation: move 3s ease-out 2s infinite;
}

.chevron:before,
.chevron:after {
  content: ' ';
  position: absolute;
  top: 0;
  height: 100%;
  width: 51%;
  background: rgba(2, 2, 2, 0.8);
}

.chevron:before {
  left: 0;
  transform: skew(0deg, 30deg);
}

.chevron:after {
  right: 0;
  width: 50%;
  transform: skew(0deg, -30deg);
}

@keyframes move {
  25% {
    opacity: 1;
  }

  33% {
    opacity: 1;
    transform: translateY(30px);
  }

  67% {
    opacity: 1;
    transform: translateY(40px);
  }

  100% {
    opacity: 0;
    transform: translateY(55px) scale3d(0.5, 0.5, 0.5);
  }
}

#top-strip {
    position: absolute;
    z-index: 99999;
    height: 110px;
    width: 100%;
    background: #fff;
    border-bottom: 10px solid #9fb93b;
    padding: 0 50px;
    color: #191919;
}

.logo {
    float: left;
    text-transform: uppercase;
    font-size: 25px;
    letter-spacing: -1px;
    font-weight: 700;
    color: #9FB93B;
    padding-top: 33px;
}

.logo img {
    width:100%;
    height:auto;
}

.logo span {
    color: #ec3d3d;
}

#tel {
    float: right;
    font-size: 22px;
    letter-spacing: 1px;
    padding-top: 34px;
    margin-left:40px;
}

#tel i {
    color: #fff;
    background: #9FB93B;
    width: 30px;
    height: 30px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 13px;
    position: relative;
    top: -4px;
    margin-right: 3px;
    text-align: center;
}

#email {
    float: right;
    font-size: 20px;
    letter-spacing: 0;
    padding-top: 34px;
    padding-top: 36px;
}
div#email span {
    text-transform: uppercase;
}
#email i {
    color: #fff;
    background: #9FB93B;
    width: 30px;
    height: 30px;
    line-height: 31px;
    border-radius: 50%;
    font-size: 13px;
    position: relative;
    top: -2px;
    margin-right: 5px;
    text-align: center;
}

#email a,
#tel a {
    color: #000;
}

#social i:hover {
    background: #ec3d3e;
}

main {
    padding: 150px 0;
    background: url(images/pattern.png) #efefef;
    position: relative;
    z-index: 2;
    overflow:hidden;
    border-bottom: 2px solid #fff;
}

#main-text {
    float: left;
    width: 600px;
    height: 430px;
    background: #f3f3f3;
}

div#main-text span {
    color: #9fb93b;
}


#main-text {
    float: left;
    width: 550px;
    height: 364px;
    background: #fff;
    position: absolute;
    top: 111px;
    z-index: 2;
    left: 0;
    padding: 41px 46px 46px 46px;
    -webkit-box-shadow: 0px 6px 39px -12px rgba(0,0,0,.1) !important;
    -moz-box-shadow: 0px 6px 39px -12px rgba(0,0,0,.1);
    box-shadow: 0px 30px 46px 0px rgba(0,0,0,.15);
}

#main-image {
    position: relative;
    float: right;
    width: 800px;
    height: 600px;
    background: url(images/welcome.jpg) center center no-repeat;
    background-size: cover;
    /* background-attachment: fixed; */
}

#main-text p {
    font-weight: 300;
    line-height: 25px;
    font-size: 16px;
}

hr {
    border:none;
    border-bottom: 3px solid #9fb93b;
    width: 100px;
    margin: 20px 0;
}

#gmap {
    position:relative;
    z-index:2;
    height:750px;
    background:#000;
    overflow:hidden;
}

#gmap iframe {
    width: 100%;
    display: block;
    pointer-events: none;
    position: relative;
}

#gmap iframe.clicked {
    pointer-events: auto;
}

#map-deets {
    position: absolute;
    z-index: 11;
    left: 0;
    top: 50%;
    width: 370px;
    height: auto;
    background: #fff;
    padding: 40px 40px 50px 40px;
    margin-top: -168px;
    line-height: 21px;
    -webkit-box-shadow: 0px 6px 39px -12px rgba(0,0,0,.1) !important;
    -moz-box-shadow: 0px 6px 39px -12px rgba(0,0,0,.1);
    box-shadow: 0px 30px 46px 0px rgba(0,0,0,.15);
}

footer {
    text-align: center;
    padding: 70px 0;
    background: #fff;
    position: relative;
    z-index: 12;
    font-weight: 300;
    font-size: 14px;
}

.logo.logo-footer {
    float: none;
    padding-top: 0;
    margin-bottom: 20px;
    font-size: 19px;
    display: block;
}

.logo.logo-footer img {
    width:100%;
    height:auto;
}

footer i {
    color: #9fb93b;
    margin: 0 4px;
}

#map-deets h3 {
    font-size: 24px;
    color: #181818;
    text-transform: uppercase;
    text-align:left;
    margin-top: 5px;
}

#map-deets h3 span {
    color: #ec3d3d;
}

.vcard {
    padding-left: 23px;
}

.vcard i {
    position: relative;
    margin-left: -20px;
    margin-right: 4px;
    color: #191919;
}

#map-deets hr {
    margin: 30px 0 29px 0;
}

a.directions {
    display: block;
    margin-top: 25px;
    background: #9fb93b;
    color: #fff;
    text-align: Center;
    padding: 10px 0;
    text-transform: uppercase;
    font-size: 11px;
    max-width: 223px;
    border-radius: 4px;
    overflow: hidden;
}

a.directions:hover {
    background: #7A9516;
}

.stickybar {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 48px;
    border-bottom: 1px solid #9fb93b;
    background: #ffffff;
    z-index: 999999999;
    padding: 0 50px;
}

.stickybar .logo {
    font-size: 18px;
    padding-top: 12px;
}

.stickybar #email {
    font-size: 16px;
    padding-top: 10px;
}

.stickybar #email i {
    width: 25px;
    height: 25px;
    line-height: 25px;
    font-size: 12px;
    top: -1px;    
}

.stickybar #tel {
    font-size: 16px;
    padding-top: 10px;
}

.stickybar #tel i {
    width: 25px;
    height: 25px;
    line-height: 25px;
    font-size: 12px;
    top: -1px;    
}

h1.thanks span {
    display: block;
    font-size: 24px;
    padding-top: 15px;
}

header.header-thanks .container {
    margin-top: -60px;
}

































/* =================================================================================
3.0  Transitions / Clearing CSS ---------------------------------------------------------
==================================================================================== */

/* clear floated elements */

#topstrip:after,
main:after {
  content:".";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
  }

/* END clear floated elements */

/* transitions */

a,
#social i,
#return-to-top i {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

/* END transitions */

/* return to top */

#return-to-top {
  position: fixed;
  bottom: 52px;
  right: 50px;
  background: rgb(159 185 59);
  width: 50px;
  height: 50px;
  display: block;
  text-decoration: none;
  z-index: 9999;
  display: none;
  -webkit-border-radius: 45px;
  border-radius: 45px;
}

#return-to-top i {
  color: #fff;
  margin: 0;
  position: relative;
  left: 18px;
  top: 14px;
  font-size: 21px;
}

#return-to-top:hover {
    background: rgb(159 185 59);
}

#return-to-top:hover i {
  color: #fff;
  top: 10px;
}






/* =================================================================================
4.0  Media Queries ---------------------------------------------------------
==================================================================================== */








/* Landscape ipad styles */
@media (max-width: 1300px) {

header .container {
    top: 197px;
    margin-top: 0;
    max-width: 800px;
    margin-left: -400px;
}

#callback input {
    padding: 0 20px;
    width: 160px;
    font-size: 13px;
}

.logo {
    font-size: 19px;
    padding-top: 37px;
}

#email, #tel {
    font-size: 15px;
    padding-top: 39px;
}

#tel i, #email i {
    width: 25px;
    height: 25px;
    line-height: 25px;
    font-size: 10px;
    top: -2px;
}

#tel {
    margin-left: 20px;
}

header {
    height: 700px;
    min-height: 0px;
}

#social {
    width: 240px;
    padding-left: 18px;
    height: 40px;
    right: 50%;
    z-index: 10;
    top: 511px;
    margin-top: 0;
    margin-right: -119px;
}

#social a {
    float: left;
}

#social a i {
    margin: 0 15px 0px 0;
}

.container {
    max-width: 800px;
}

main {
    padding: 100px 0;
}

#main-image {
    width: 600px;
    height: 550px;
    background: url(images/welcome.jpg) 0 center no-repeat;
    background-size:cover;
}

h2 {
    font-size: 24px;
    line-height: 30px;
}

#main-text p {
    line-height: 23px;
    font-size: 14px;
}

#main-text {
    width: 400px;
    height: 401px;
    top: 71px;
}

#gmap {
    height: 600px;
    overflow:hidden;
}

#gmap iframe {
    margin-top: -80px;
}

#map-deets {
    width: 300px;
    padding: 40px 40px 50px 40px;
    margin-top: -175px;
}

footer {
    font-size: 11px;
}

#return-to-top {
    bottom: 0;
    right: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
}

.stickybar #email,
.stickybar #tel {
    padding-top: 11px;
}

header.header-thanks .container {
    margin-top: 60px;
}


} /* END Landscape ipad styles */

































/* Landscape phone to portrait tablet styles */
@media (max-width: 880px) {

#top-strip {
    padding: 0 20px;
}

#email a span,
#tel a span {
  display:none;
}

#tel i, #email i {
    width: 38px;
    height: 38px;
    line-height: 38px;
    font-size: 14px;
    top: -2px;
}

#email, #tel {
    padding-top: 31px;
}

#tel {
    margin-left: 10px;
}

header .container {
    top: 244px;
    margin-top: 0;
    max-width: 560px;
    margin-left: -280px;
    overflow: hidden;
}

header .container {
    top: 165px;
}

h1 {
    font-size: 36px;
}

header {
    height: 600px;
}

#callback input {
    margin-bottom: 5px;
}

input.message {
    width: 326px !important;
}

#callback input.submit {
    width: 159px;
    font-size: 12px;
}

#callback {
    max-width: 100%;
    margin-left: 34px;
}

#social {
    top: 458px;
}

#main-text {
    height: auto;
    top: auto;
    position: relative;
    width: 100%;
    padding: 30px;
    margin-bottom:50px;
}

.stickybar {
    padding: 0 25px;
}

#main-image {
    width: 100%;
    height: 300px;
    background: url(images/welcome.jpg) 0 center no-repeat;
    background-size: cover;
}

main {
    padding: 50px;
}

#map-deets {
  text-align:center;
    position: relative;
    z-index: 11;
    left: auto;
    top: auto;
    width: 100% !important;
    height: auto;
    background: #fff;
    padding: 50px !important;
    margin-top: 0 !important;
    line-height: 14px;
    -webkit-box-shadow: 0px 6px 39px -12px rgba(0,0,0,.1) !important;
    -moz-box-shadow: 0px 6px 39px -12px rgba(0,0,0,.1);
    box-shadow: 0px 30px 46px 0px rgba(0,0,0,.15);
}

#gmap {
    height: 700px;
    overflow: hidden;
    background:#fff;
}

#gmap iframe {
    margin-top: -155px;
}

#map-deets h3 {
    text-align: center;
}

#map-deets hr {
    margin: 20px auto 19px auto;
}

a.directions {
    margin: 25px auto 5px auto;
}

footer .container {
    max-width: 500px;
    line-height: 21px;
}

footer {
    padding: 50px 0;
}

h1.thanks {
    font-size: 31px;
    padding-top: 50px;
}

h1.thanks span {
    display: block;
    font-size: 16px;
    padding-top: 15px;
}

.down-container {
    bottom: 60px;
}

} /* END Landscape phone to portrait tablet styles */

































/* Landscape phones and down styles */
@media (max-width: 600px) {

header .container {
    top: 150px;
    margin-left: -140px;
    margin-top: 0;
    max-width: 280px;
}

.container {
    max-width: 280px;
}

h1 {
    font-size: 21px;
}

header {
    height: 730px;
}

#callback input {
    padding: 0 20px;
    width: 100%;
    font-size: 13px;
    margin: 0 0 5px 0;
}

#callback {
    max-width: 100%;
    margin-left: 0;
}

#callback input.submit {
    width: 100%;
    font-size: 12px;
}

#social {
    top: 580px;
    margin-right: -117px;
}

input.message {
    width: 100% !important;
}

h2 {
    font-size: 21px;
}

main {
    padding: 50px 0;
}

#main-text {
    margin-bottom: 30px;
}

span.adr {
    line-height: 24px;
}

#gmap {
    height: 600px;
}

#gmap iframe {
    margin-top: -203px;
}

footer .container {
    max-width: 280px;
    line-height: 21px;
}

h1.thanks {
    font-size: 30px;
    padding-top: 0;
}

h1.thanks span {
    display: block;
    font-size: 16px;
    padding-top: 14px;
    line-height: 21px;
}

header.header-thanks {
    height: 500px;
}

#social.social-thanks {
    top: 323px;
}

header p {
    font-size: 12px;
    line-height: 20px;
}

header.header-thanks .container {
    margin-top: 10px;
}

} /* END Landscape phones and down styles */



















