@charset "utf-8";

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
    line-height: 1;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/******************************************************************************/
/* Body                                                                       */
/******************************************************************************/

body {
    font-family:Arial, Helvetica, sans-serif;
    font-size:15px;
    color:#6F6F6E;
    letter-spacing:0.02em;
}

@media only screen and (min-width:768px) and (max-width:999px) {
    body {
        font-size:14px;
    }
}

@media only screen and (min-width:480px) and (max-width:767px) {
    body {
        font-size:13px;
    }
}

@media only screen and (max-width:479px) {
    body {
        font-size:12px;
    }
}

/******************************************************************************/
/* Header                                                                     */
/******************************************************************************/

header {
    position:fixed;
    width:100%;
    height:150px;
    padding:40px 5px 30px 5px;
    box-sizing:border-box;
    background-color:#FFFFFF;
    z-index:1000;
}

@media only screen and (min-width:768px) and (max-width:999px) {
    header {
        height:120px;
        padding:30px 5px 20px 5px;
    }
}

@media only screen and (min-width:480px) and (max-width:767px) {
    header {
        height:90px;
        padding:20px 5px 10px 5px;
    }
}

@media only screen and (max-width:479px) {
    header {
        height:65px;
        padding:10px 5px 5px 5px;
    }
}

header > div {
    display:flex;
    flex-direction:row;
    flex-wrap:nowrap;
    justify-content:space-between;
    align-items:stretch;
    max-width:1200px;
    height:100%;
    margin:0px auto 0px auto;
}

header > div > h1 {
    width:240px;
    height:100%;
    font-size:0em;
    text-indent:-8000px;
    background-image:url(/images/1.png);
    background-repeat:no-repeat;
    background-position:left top;
    background-size:contain;
}

@media only screen and (min-width:768px) and (max-width:999px) {
    header > div > h1 {
        width:210px;
        height:70px;
    }
}

@media only screen and (min-width:480px) and (max-width:767px) {
    header > div > h1 {
        width:180px;
        height:60px;
    }
}

@media only screen and (max-width:479px) {
    header > div > h1 {
        width:150px;
        height:50px;
    }
}

header > div > h1 > a {
    display:block;
    width:100%;
    height:100%;
}


header > div > nav {
}

header > div > nav > div {
    display:none;
    width:32px;
    height:32px;
    font-size:32px;
    cursor:pointer;
}

header > div > nav > div.Active {
    color:#C8AB3D;
}

header > div > nav > div > p {
    font-size:0em;
    text-indent:-8000px;
}


@media only screen and (min-width:480px) and (max-width:767px) {
    header > div > nav > div {
        display:block;
        margin-top:14px;
    }
}

@media only screen and (max-width:479px) {
    header > div > nav > div {
        display:block;
        margin-top:9px;
    }
}

@media only screen and (min-width:768px) {
    header > div > nav > ul {
        display:flex;
        flex-direction:row;
        flex-wrap:nowrap;
        justify-content:flex-end;
        align-items:stretch;
        margin-top:40px;
    }

    @media only screen and (min-width:768px) and (max-width:999px) {
        header > div > nav > ul {
            margin-top:30px;
        }
    }

    header > div > nav > ul > li {
        position:relative;
        height:40px;
        line-height:40px;
    }

    header > div > nav > ul > li:nth-last-child(3), header > div > nav > ul > li:nth-last-child(2) {
        width:40px;
        text-align:center;
        border-radius:50%;
    }

    header > div > nav > ul > li:nth-last-child(3), header > div > nav > ul > li:nth-last-child(2), header > div > nav > ul > li:last-child {
        margin-left:20px;
        background-color:#C8AB3D;
    }

    header > div > nav > ul > li:nth-last-child(3) {
        margin-left:60px;
    }

    @media only screen and (max-width:1130px) {
        header > div > nav > ul > li:last-child {
            display:none;
        }
    }

    @media only screen and (max-width:900px) {
        header > div > nav > ul > li:nth-last-child(2) {
            display:none;
        }
    }

    @media only screen and (max-width:850px) {
        header > div > nav > ul > li:nth-last-child(3) {
            display:none;
        }
    }

    header > div > nav > ul > li > a {
        padding:15px;
        color:inherit;
        font-weight:bold;
        text-transform:uppercase;
        text-decoration:none;
    }

    header > div > nav > ul > li:nth-last-child(3) > a, header > div > nav > ul > li:nth-last-child(2) > a {
        padding:0px;
        font-size:2em;
        color:#FFFFFF;
    }

    header > div > nav > ul > li:nth-last-child(3) > a > span > strong, header > div > nav > ul > li:nth-last-child(2) > a > span > strong, header > div > nav > ul > li:nth-last-child(3) > a > span:last-child, header > div > nav > ul > li:nth-last-child(2) > a > span:last-child {
        display:none;
    }

    header > div > nav > ul > li:last-child > a {
        color:#FFFFFF;
        text-transform:none;
    }

    header > div > nav > ul > li > a:hover, header > div > nav > ul > li > a.Active {
        color:#C8AB3D;
    }

    header > div > nav > ul > li:nth-last-child(3) > a:hover, header > div > nav > ul > li:nth-last-child(3) > a.Active, header > div > nav > ul > li:nth-last-child(2) > a:hover, header > div > nav > ul > li:nth-last-child(2) > a.Active, header > div > nav > ul > li:last-child > a:hover, header > div > nav > ul > li:last-child > a.Active {
        color:#6F6F6E;
    }

    header > div > nav > ul > li > span.ion-log-in::before {
        display:none;
    }

    header > div > nav > ul > li > ul {
        position:absolute;
        display:none;
        width:100%;
        right:0px;
        padding-top:2px;
        background-color:#FFFFFF;
    }

    header > div > nav > ul > li:hover > ul {
        display:block;
    }

    header > div > nav > ul > li > ul > li {
        line-height:normal;
    }

    header > div > nav > ul > li > ul > li > a {
        display:block;
        padding:10px 20px 10px 15px;
        color:inherit;
        text-decoration:none;
    }

    header > div > nav > ul > li > ul > li > a:hover, header > div > nav > ul > li > ul > li > a.Active {
        color:#C8AB3D;
    }
}

@media only screen and (max-width:767px) {
    header > div > nav > ul {
        display:none;
        position:fixed;
        width:100%;
        top:90px;
        left:0px;
        padding:30px;
        box-sizing:border-box;
        background-color:#FFFFFF;
        z-index:200;
    }

    @media only screen and (max-width:479px) {
        header > div > nav > ul {
            top:65px;
        }
    }

    header > div > nav > ul > li {
        font-size:1.2em;
    }

    header > div > nav > ul > li > a {
        padding:10px;
        line-height:40px;
        color:inherit;
        text-transform:uppercase;
        text-decoration:none;
    }

    header > div > nav > ul > li:nth-last-child(3) > a > span:first-child, header > div > nav > ul > li:nth-last-child(2) > a > span:first-child {
        display:none;
    }

    header > div > nav > ul > li:last-child > a {
        color:#FFFFFF;
        text-transform:none;
        background-color:#C8AB3D;
    }

    header > div > nav > ul > li > a:hover, header > div > nav > ul > li > a.Active {
        color:#C8AB3D;
    }

    header > div > nav > ul > li:last-child > a:hover, header > div > nav > ul > li:last-child > a.Active {
        color:#6F6F6E;
    }

    header > div > nav > ul > li > span {
        float:right;
        line-height:40px;
    }

    header > div > nav > ul > li > span.Active {
        color:#C8AB3D;
    }

    header > div > nav > ul > li > span.ion-log-in::before {
        transform: rotate(45deg);
        cursor:pointer;
    }

    header > div > nav > ul > li > ul {
        display:none;
        margin-left:20px;
    }

    header > div > nav > ul > li > ul > li {
    }

    header > div > nav > ul > li > ul > li > a {
        padding:10px;
        line-height:40px;
        color:inherit;
        text-decoration:none;
    }

    header > div > nav > ul > li > ul > li > a:hover {
        color:#C8AB3D;
    }
}

/******************************************************************************/
/* Main                                                                       */
/******************************************************************************/

section {
    padding:150px 0px 80px 0px;
}

@media only screen and (min-width:768px) and (max-width:999px) {
    section {
        padding-top:120px;
    }
}

@media only screen and (min-width:480px) and (max-width:767px) {
    section {
        padding-top:90px;
    }
}

@media only screen and (max-width:479px) {
    section {
        padding-top:65px;
    }
}

section > div {
    margin-bottom:40px;
}

section > div#SectionHeader {
    position:relative;
    z-index:10;
}

section > div.SectionInfo {
    padding:50px 0px 50px 0px;
    background-color:#E9E9E9;
}

section > div#SectionHeader > img {
    width:100%;
}

section > div > div {
    max-width:1200px;
    margin:0px auto 0px auto;
}

section > div#SectionHeader > div {
    position:absolute;
    max-width:100%;
    width:100%;
    top:40%;
    transform:translateY(-50%);
}

section > div.SectionNormal > div, section > div.SectionInfo > div {
    padding:0px 100px 0px 100px;
}

@media only screen and (max-width:767px) {
    section > div.SectionNormal > div, section > div.SectionInfo > div {
        padding:0px 5px 0px 5px;
    }
}


section > div > div div.SectionBoxFlex {
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:space-between;
    align-items:center;
}

section div.SectionHighlight > div div.SectionBoxFlex {
    padding:10px;
    border-radius:6px;
    box-shadow:12px 12px 50px rgba(0, 0, 0, 0.4);
}

section > div.SectionNormal2 > div div.SectionBoxFlex {
    flex-direction:row-reverse;
}

section > div > div div.SectionBoxFlex > div {
    position:relative;
    flex:0 0 calc(50% - 5px);
    max-width:calc(50% - 5px);
}

section > div > div div.SectionBoxFlex3 > div {
    flex:0 0 calc(33% - 5px);
    max-width:calc(33% - 5px);
}

section > div > div div.SectionBoxFlex4 > div {
    flex:0 0 calc(25% - 5px);
    max-width:calc(25% - 5px);
}

@media only screen and (max-width:479px) {
    section > div > div div.SectionBoxFlex > div, section > div > div div.SectionBoxFlex3 > div, section > div > div div.SectionBoxFlex4 > div {
        flex:100%;
        max-width:100%;
    }
}

section > div > div div#AppointmentRequestBack {
    width:20px;
    margin:0px 0px -10px calc(20% - 35px);
    line-height:20px;
    text-align:center;
    border:1px solid #6F6F6E;
    border-radius:50%;
    cursor:pointer;
}

section > div > div div#AppointmentRequest {
    width:60%;
    margin:0px auto 0px auto;
    border-top:1px solid #6F6F6E;
}

section > div > div div#AppointmentRequest > div > div {
    display:flex;
    flex-direction:row;
    flex-wrap:nowrap;
    justify-content:space-between;
    align-items:center;
    padding:20px 0px 20px 0px;
    border-bottom:1px solid #6F6F6E;
}

section > div > div div#AppointmentRequest > div > div {
    cursor:pointer;
}

section > div#SectionHeader h2 {
    margin:0px 0px 1.6em 0px;
    font-size:1.6em;
    font-weight:bold;
    text-align:center;
    color:#C8AB3D;
}

section h3 {
    margin:0px 0px 1em 0px;
    font-size:1.4em;
    font-weight:bold;
    text-align:center;
    color:#C8AB3D;
}

section div.SectionBoxFlex h3 {
    text-align:left;
}

section h4 {
    margin:2em 0px 1em 0px;
    font-size:1.2em;
    font-weight:bold;
    color:#C8AB3D;
}

section h4:first-of-type {
    margin:0px 0px 1em 0px;
}

section h5 {
    margin:0px 0px 1em 0px;
    font-size:1.2em;
    font-weight:bold;
}

section > div > div div#AppointmentRequest {
    font-size:1.1em;
}

section > div > div div#AppointmentRequest > div > div h5 {
    margin:0px 0px 0.5em 0px;
}

section > div > div div#AppointmentRequest > div > div.TherapyServices h5, section > div > div div#AppointmentRequest > div#Appointment > div h5 {
    margin:0px;
}

section > div > div div#AppointmentRequest > div:not(#Appointment) > div:hover h5, section > div > div div#AppointmentRequest > div:not(#Appointment) > div:hover p {
    color:#C8AB3D;
}


section div.SectionBoxFlexPerformance a {
    text-decoration:none;
}

section p {
    margin:0px 0px 1em 0px;
    font-size:1.1em;
    line-height:1.4em;
    text-align:center;
}

section div.SectionBoxFlex:not(.SectionBoxFlex3) p,  section > div.SectionNormalLeft p {
    text-align:left !important;
}

section div.SectionBoxFlexPerformance p {
    position:absolute;
    width:100%;
    bottom:20px;
    font-size:1.2em;
    color:#FFFFFF;
}

section > div > div div#AppointmentRequest p, section > div > div form#AppointmentForm p {
    margin:0px;
    text-align:left;
}

section > div > div div#AppointmentRequest p > span {
    margin-left:15px;
}

section > div > div div#AppointmentRequest p > span.ion-log-in::before {
    transform: rotate(45deg);
}


section > div.SectionInfo p {
    text-align:center;
}

section > div#SectionHeader p {
    font-size:1.2em;
    text-align:center;
}

@media only screen and (max-width:767px) {
    section > div#SectionHeader form {
        display:none;
    }
}

@media only screen and (max-width:479px) {
    section > div#SectionHeader p {
        display:none;
    }
}

section p.Error {
    color:#FF0000;
}

section p strong {
    font-weight:bold;
}

section p em {
    font-style:italic;
}

section p a {
    color:inherit;
}

section ol, section ul {
    margin:0px 0px 1em 20px;
    list-style-type:disc;
}

section ol {
    list-style-type:decimal;
}

section ol > li, section ul > li {
    font-size:1.1em;
    line-height:1.4em;
}

section ol > li > ul > li {
    font-size:1em;
}

section ol > li {
    padding:10px 0px 10px 0px;
    border-bottom:1px solid #6F6F6E;
}

section ol > li:first-child {
    border-top:1px solid #6F6F6E;
}

section ol > li:hover, section ol > li.Active {
    color:#C8AB3D;
}

section ol > li  strong, section ul > li strong {
    font-weight:bold;
}

section ol > li a, section ul > li a {
    color:inherit;
}

section ol > li > ul > li {
    color:#6F6F6E;
}

section img {
    width:auto;
    height:auto;
    max-width:100%;
}

section img.MarginBottom {
    margin-bottom:10px;
}

section div.SectionBoxFlex3 img.MarginBottom {
    margin-bottom:10px;
}





section form > fieldset {
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:space-between;
    align-items:flex-start;
    width:50%;
    margin:0px auto 0px auto;
}

@media only screen and (max-width:479px) {
    section form > fieldset {
        width:100%;
    }
}

section form > fieldset div.Form {
    flex-basis:24%;
    margin:0px 0px 15px 0px;
}

section form > fieldset div.Form.Form100 {
    flex-basis:100%;
}

section form > fieldset div.Form > div {
    display:flex;
    flex-direction:row;
    flex-wrap:nowrap;
    justify-content:flex-start;
    align-items:flex-start;
}

section form > fieldset div.Form > label {
}

section form > fieldset div.Form > div > label {
    width:auto;
    line-height:32px;
    margin:0px 20px 0px 5px;
    font-size:15px;
}

section form > fieldset div.Form > div > label.Error {
    color:#FF0000;
}

section form > fieldset div.Form > div > label > a {
    color:inherit;
}

section form > fieldset div.Form > div > input, section form > fieldset div.Form > div > select, section form > fieldset div.Form > div > textarea {
    display:block;
    width:100%;
    height:32px;
    line-height:32px;
    padding:5px;
    font-family:Arial, Helvetica, sans-serif;
    font-size:15px;
    color:#6F6F6E;
    background-color:#FFFFFF;
    border:0px;
    box-sizing:border-box;
}

section form > fieldset div.Form > div > input::-moz-placeholder {
    font-size:12px;
    color:#B0B0B0;
    opacity:1;
}

section form > fieldset div.Form > div > input::-webkit-input-placeholder {
    font-size:12px;
    color:#B0B0B0;
    opacity:1;
}

section form > fieldset div.Form > div > input:-ms-input-placeholder {
    font-size:12px;
    color:#B0B0B0;
    opacity:1;
}

section form > fieldset div.Form > div > textarea::-moz-placeholder {
    font-size:12px;
    color:#B0B0B0;
    opacity:1;
}

section form > fieldset div.Form > div > textarea::-webkit-input-placeholder {
    font-size:12px;
    color:#B0B0B0;
    opacity:1;
}

section form > fieldset div.Form > div > textarea:-ms-input-placeholder {
    font-size:12px;
    color:#B0B0B0;
    opacity:1;
}

section div.SectionNormal form > fieldset div.Form > div > input, section div.SectionNormal form > fieldset div.Form > div > select, section div.SectionNormal form > fieldset div.Form > div > textarea {
    background-color:#E9E9E9;
}


section form > fieldset div.Form > div > input[type=checkbox], section form > fieldset div.Form > div > input[type=radio] {
    width:auto;
    height:26px;
}

section form > fieldset div.Form > div > select:invalid {
    font-size:12px;
    color:#B0B0B0;
}

section form > fieldset div.Form > div > select > option {
    color:#6F6F6E;
}

section form > fieldset div.Form > div > select > option:first-child {
    font-size:12px;
    color:#B0B0B0;
}

section form > fieldset div.Form > div > textarea {
    height:100px;
    line-height:1.3em;
}

section form > fieldset div.Form > div > input.Error, section form > fieldset div.Form > div > select.Error, section form > fieldset div.Form > div > textarea.Error {
    border:1px solid #FF0000;
}

section form > fieldset div.Form > div > a.Submit {
    display:inline-block;
    width:auto;
    height:40px;
    line-height:40px;
    margin:0px auto 0px auto;
    padding:0px 10px 0px 10px;
    color:#FFFFFF;
    text-decoration:none;
    background-color:#C8AB3D;
    border:none;
}

section form > fieldset div.Form > div > a.Submit:hover {
    color:#6F6F6E;
}




/******************************************************************************/
/* Footer                                                                     */
/******************************************************************************/

footer {
    position:fixed;
    bottom:0px;
    width:100%;
    overflow:hidden;
    background-color:#6F6F6E;
}

footer > div {
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:space-between;
    align-items:stretch;
    max-width:1200px;
    margin:0px auto 0px auto;
    padding:5px;
}

footer > div > nav {
}

footer > div > nav > ul {
    display:flex;
    flex-direction:row;
    flex-wrap:nowrap;
    justify-content:flex-end;
    align-items:stretch;
}

@media only screen and (max-width:767px) {
    footer > div > nav > ul {
        flex-direction:column;
    }
}

footer > div > nav > ul > li {
    line-height:20px;
    color:#FFFFFF;
}

footer > div > nav > ul > li > a {
    padding:0px 5px 0px 5px;
    color:inherit;
    text-transform:uppercase;
    text-decoration:none;
}

footer > div > nav:first-child > ul > li > a {
    padding:0px 10px 0px 10px;
}

@media only screen and (max-width:767px) {
    footer > div > nav > ul > li > a, footer > div > nav:first-child > ul > li > a {
        padding:0px;
    }
}

footer > div > nav > ul > li > a:hover, footer > div > nav > ul > li > a.Active {
    color:#C8AB3D;
}

/******************************************************************************/
/* General                                                                    */
/******************************************************************************/
