@font-face {
    font-family: headerFont;
    src: url(fonts/doric-bold.ttf);
}

@font-face {
    font-family: regularFont;
    src: url(fonts/doric-regular.ttf)
}

@font-face {
    font-family: sansFont;
    src: url(fonts/doric-regular.ttf)
}

@font-face {
    font-family: doricMedium;
    src: url(fonts/doric-medium.ttf)
}

h3 {
    font-family: headerFont, serif;
    margin-top: 0;
    font-size: 30px;
    line-height: normal;
    margin-bottom: 16px;
}

h4 {
    font-family: headerFont, serif;
    margin-top: 0;
    line-height: normal;
    margin-bottom: 16px;
}

p {
    font-family: sansFont, serif;
    color: #222;
    font-size: 18px;
    line-height: 26px;
    margin-bottom: 0;
}

body {
    background-color: #fff
}

.darkbg {
    background-color: #17183b;
    padding-top: 60px;
    padding-bottom: 60px;
    margin-top: 60px;
    margin-bottom: 60px;
    padding-left: 0;
    padding-right: 0;
}

.marfix1 {
    margin-left: -15px;
    margin-right: -15px
}

.error {
    color: Red;
}

.calculator-container h1,
.calculator-container h2,
.calculator-container h3,
.calculator-container h4 {
    font-family: regularFont, serif;
    color: #212529;
}

.calculator-container p {
    font-family: regularFont, serif;
    color: #212529;
    font-size: 17px;
    line-height: 25px;
    margin-bottom: 24px
}

.calculator-container {
    background: #f8f8f8;
    padding: 32px 32px
}

.calculator-container h3 {
    margin-top: 0;
    font-size: 30px;
    line-height: normal;
    margin-bottom: 16px
}

.calculator-container h4 {
    font-size: 19px;
    line-height: 22px;
    color: #17183b;
    margin-bottom: 24px
}

.cta-getstarted {
    margin-bottom: 24px
}

.cta-getstarted p {
    font-family: sansFont, sans-serif;
    font-size: 14px;
    line-height: 17px;
    color: #17183b;
    margin-bottom: 0
}

.cta-getstarted a {
    font-family: sansFont, sans-serif;
    color: #17183b;
    font-size: 24px;
    line-height: 1
}

.cta-getstarted a:hover {
    text-decoration: none
}

.calculator-step1,
.calculator-step2 {
    background-color: #fff;
    padding: 32px 24px;
    border-top: solid 2px #ef5f9e;
}

.step1-info {
    border-left: 1px solid #ddd
}

.step1-info p {
    font-family: sansFont, sans-serif;
    font-size: 10px;
    line-height: 13px;
    margin-bottom: 0
}

.step1-info ul {
    list-style: none;
    padding-left: 0
}

.step1-info li {
    background: url(images/tmg-greenarrow.png) no-repeat left top;
    padding-left: 25px;
    background-position: 0;
    font-family: regularFont, serif;
    font-size: 14px;
    line-height: 24px;
    margin-top: 8px
}

.calculator-container input {
    width: 100%;
    margin-bottom: 6px;
    height: 48px;
    border: 1px solid #6f6f73;
    padding-left: 12px;
    font-size: 12px;
    line-height: normal
}

.calculator-container select {
    width: 100%;
    margin-bottom: 12px;
    height: 48px;
    border: 1px solid #6f6f73;
    padding-left: 12px;
    font-size: 12px;
    line-height: normal;
    font-family: sansFont, sans-serif
}

.calculator-container button {
    width: 100%;
    margin-bottom: 12px;
    height: 48px;
    border: 1px solid #6f6f73;
    padding-left: 12px;
    font-size: 12px;
    line-height: normal;
    font-family: sansFont, sans-serif
}

.calculator-container .calc-cta {
    border: none;
    background-color: #17183b;
    height: 48px;
    color: #fff;
    font-family: sansFont, sans-serif;
    font-size: 14px;
    line-height: 45px;
    margin-top: 0;
    width: 100%;
    cursor: pointer;

    padding: 0;
}

.input-split input {
    width: 31%;
    margin-bottom: 0
}

.input-split select {
    width: 31%
}

.input-split input:nth-child(2) {
    float: right;
    width: 65%
}

.input-split>.calc-cta {
    margin-top: 0;
    width: 65%
}

.calculator-step2>.calc-cta {
    width: 48%
}

.calculator-step2 .form-control {
    border-radius: 0;
    height: 48px
}

.input-split button {
    float: right
}

.calc-side img {
    width: 100%;
    margin-bottom: 20px
}

.adviser-block {
    border-bottom: 1px solid #ddd;
    padding-bottom: 6px;
    margin-bottom: 12px
}

.adviser-block img {
    width: 48px;
    display: inline;
    margin: 0 10px 0 0;
    float: left
}

.calc-side p {
    font-size: 10px;
    line-height: 13px;
    font-family: sansFont, sans-serif
}

select.form-control:not([size]):not([multiple]) {
    height: calc(2.75rem + 2px)
}

.calculator-step2 input {
    margin-bottom: 12px
}

.check-container {
    display: inline-block;
    position: relative;
    padding-left: 22px;
    margin-bottom: 12px;
    margin-right: 16px;
    cursor: pointer;
    font-size: 12px;
    font-family: sansFont, sans-serif;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.check-container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0
}

.checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 16px;
    width: 16px;
    background-color: #eee;
    border: 1px solid #ddd
}

.check-container:hover input~.checkmark {
    background-color: #ccc
}

.check-container input:checked~.checkmark {
    background-color: #17183b
}

.checkmark:after {
    content: "";
    position: absolute;
    display: none
}

.check-container input:checked~.checkmark:after {
    display: block
}

.check-container .checkmark:after {
    left: 5px;
    top: 1px;
    width: 5px;
    height: 10px;
    border: solid #fff;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.checkbox {
    width: 12px
}

.results-boxes h2 {
    font-size: 35px
}

.results-boxes p {
    font-size: 12px;
    line-height: 15px;
    border: none;
    padding-top: 0
}

.results-boxes sup {
    top: -.9em;
    margin-right: 2px;
    font-size: 45%
}

.results-ctas p {
    border: none;
    margin-top: 0;
    padding-top: 8px
}

.calculator-container .calc-cta-2 {
    border: 1px solid #17183b;
    background-color: #fff;
    height: 48px;
    color: #17183b;
    font-family: sansFont, sans-serif;
    font-size: 14px;
    line-height: 45px;
    width: 100%;
    cursor: pointer
}

.rborderfix,
.rborderfix2,
.rborderfix3 {
    border-right: 1px solid #ddd
}



label {
    font-size: 11px
}

.label2 {
    font-family: regularFont, serif;
    color: #222;
    font-size: 17px;
    line-height: 25px
}

.step-one {
    transition: all .2s linear
}

.step-two {
    display: none;
    transition: all .2s linear
}

.step-three {
    display: none;
    transition: all .2s linear
}

.input-wrapper {
    position: relative;
    width: 100%;
}

.input-wrapper:before {
    content: "\f053";
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    color: #88c3c1;
    font-size: 18px;
    padding-right: 0.5em;
    position: absolute;
    top: 10px;
    right: 0;
}

.input-wrapper2 {
    position: relative;
    width: 100%;
}

.input-wrapper2:before {
    content: "\f053";
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    color: #88c3c1;
    font-size: 18px;
    padding-right: 0.5em;
    position: absolute;
    right: 0;
}

.pageheader {
    width: 100%;
    padding-top: 20px;
    padding-bottom: 22px;
    border-bottom: 1px solid #767676;
    margin-bottom: 30px;
}

.tmglogo img {
    width: 100%;
    max-width: 400px;
}

.headerrer {
    position: relative;
    text-align: right;
}

.headerrer p {
    font-size: 11px;
    font-family: sansFont, sans-serif;
    margin: 0;
    position: absolute;
    top: -12px;
    right: 175px;
    color: #222222;
}

.headerrer img {
    max-width: 227px;
    width: 100%;
    top: 11px;
    position: relative;
}

.twentyfour {
    font-size: 24px;
}

.twelve {
    font-size: 12px;
}

.darkcol h3 {
    color: #ffffff;
    font-weight: 300;
    font-family: regularFont, serif;
}

.numberbullets {
    margin-top: 30px;
    margin-bottom: 20px;
}

.numberbullets ul {
    list-style: none;
    margin-left: 0;
    padding-left: 0;
}

.numberbullets li {
    margin-left: 0;
    margin-bottom: 7px;
    padding-left: 35px;
    color: #ffffff;
    font-family: regularFont, serif;
    font-size: 18px;
    line-height: 0.4;
}

.numberbullets img {
    margin: 10px 10px 10px -35px;
}

.iconbullets {
    margin-top: 30px;
}

.iconbullets ul {
    list-style: none;
    margin-left: 0;
    padding-left: 0;
}

/*.iconbullets li {
    margin-left: 0;
    margin-bottom: 7px;
    padding-left: 35px;
    font-family: regularFont, serif;
    line-height: 0.4;
    font-size: 18px;
}*/
.iconbullets li {
    margin-left: 0;
    margin-bottom: 30px;
    padding-left: 35px;
    font-family: regularFont, serif;
    line-height: 1.8;
    font-size: 18px;
}

/*.iconbullets img {
    margin: 10px 10px 10px -35px;
    position: relative;
    top: -5px;
}*/
.iconbullets img {
    margin: 0px 10px 0px -35px;
    position: relative;
    top: -4px;
}

.ticks img {
    top: -2px;
}

.ticks li {
    margin-bottom: 20px;
}

.trustpilot-column img {
    margin-bottom: 60px;
}

.tp-reviews {
    border-top: 1px solid #767676;
}

.tp-reviews h4 {
    margin-top: 30px;
    font-size: 26px;
    line-height: 36px;
    margin-bottom: 30px;
}

.reviewbox {
    background-color: #f8f8f8;
    border: 1px solid #767676;
    padding: 25px;
    margin-bottom: 20px;
}

.reviewbox p {
    font-style: italic;
    margin: 0;
    text-align: left;
}

.reviewbox h5 {
    text-align: left;
    font-size: 18px;
    margin-top: 8px;
    font-family: regularFont;
}

.pinkhighlight {
    font-size: 24px;
    color: #ef5f9e;
    font-family: headerFont, serif;
}

.partnershiprow {
    margin-top: 60px;
    border-top: 1px solid #767676;
    padding-top: 60px;
    padding-bottom: 60px;
}

.partnershiprow img {
    margin-bottom: 12px;
}

.leftcolumn h3 {
    margin-top: 60px;
}

footer {
    background-color: #045E6C;
    padding-top: 60px;
}

footer p {
    color: #ffffff;
    text-align: left;
    font-size: 16px;
    line-height: 32px;
}

footer h2 {
    color: #ffffff;
    text-align: left;
}

footer h3 {
    color: #ffffff;
    text-align: left;
    font-family: sansFont;
    font-size: 24px;
}

footer a {
    color: #ffffff;
    text-align: left;
    font-family: 'sansFont';
}

footer hr {
    border-top: 1px solid #ffffff;
}

footer .address p {
    line-height: 24px;
}

.awardwinning {
    text-align: right;
    margin-top: 30px;
}

.awardwinning p {
    text-align: center;
    font-family: sansFont, sans-serif;
    font-size: 14px;
}

.footer-bottom {
    padding-bottom: 20px;
}

.footer-copyright p {
    text-align: right;
}

.guide-desktop {
    float: right;
    width: 250px;
}

.guide-mobile {
    display: none;
}

.introhead h1 {
    font-family: headerFont, serif;
    margin-top: 0;
    font-size: 30px;
    line-height: normal;
    margin-bottom: 60px;
    text-align: center;
    border-bottom: 1px solid #767676;
    padding-bottom: 60px;
}

.results p {
    margin-top: 12px;
    margin-bottom: 12px;
}

.resultbox {
    background-color: #f8f8f8;
    border: 1px solid #767676;
    padding: 25px;
}

.boximage {
    background-image: url(images/kerri-boximage.png);
    background-position: center;
    background-size: cover;
    min-height: 150px;
}

.divider1 {
    margin-top: 60px;
    margin-bottom: 60px;
    border-bottom: 1px solid #767676;
}

#guidediv1,
#guidediv2 {
    padding-bottom: 60px;
    border-bottom: 1px solid #767676;
    margin-bottom: 60px;
}

#guidediv1 {
    text-align: center;
}

#guidediv1 img {
    width: 100%;
    max-width: 464px;
    margin-top: 30px;
}

.schedulebox {
    margin-top: 30px;
}

.schedulebox button {
    border: none;
    background-color: #17183b;
    height: 48px;
    color: #fff;
    font-family: sansFont, sans-serif;
    font-size: 14px;
    line-height: 45px;
    margin-top: 0;
    width: 100%;
    cursor: pointer;
    padding: 0;
    margin-top: 20px;
}

.schedulerow {
    margin-top: 60px;
    border-top: 1px solid #767676;
    padding-top: 60px;
    text-align: left;
}

.schedule-cta {
    margin-top: 30px;
}

.schedule-cta img {
    margin-right: 30px;
}

.schedule-cta button {
    background-color: #17183b;
    color: #ffffff;
    text-align: center;
    border: none;
    font-family: sanFont, sans-serif;
    font-size: 18px;
    line-height: 1;
    height: 48px;
    width: 100%;
    max-width: 330px;
    position: relative;
    padding-right: 26px;
    margin-top: 20px;
}

.schedule-cta button>img {
    position: absolute;
    right: 0;
    top: 0;
    margin-right: 0;
}

.site-main h1 {
    font-family: doricMedium, serif;
    margin-bottom: 32px;
    font-size: 40px;
}

@media only screen and (max-width: 768px) {
  .site-main h1 {
    margin-top: 1.5rem;
  }
}

.site-main h2 {
    font-family: doricMedium, serif;
    font-size: 30px;
}

.site-main .row {
    padding-top: 30px;
    padding-bottom: 30px;
    margin-bottom: 30px;
}

@media only screen and (min-width: 768px) {
    .site-main .row {
        padding-top: 50px;
        padding-bottom: 50px;
    }
}

.what-to-expect {
    padding: 40px 0;
    background-color: #f8f8f8;
}

@media only screen and (min-width: 768px) {
    .what-to-expect {
        padding: 20px 0;
    }
}

.iconbullets ul {
    list-style: none;
    margin-left: 0;
    padding-left: 0;
}

.iconbullets img {
    margin: 0px 10px 0px -35px;
    position: relative;
    top: -4px;
    width: 20px;
}

.ticks li {
    display: inline-block;
    margin-right: 5px;
    margin-left: 0px;
    max-width: 100%;
    vertical-align: top;
    text-align: left;
    line-height: 1.5;
}

.ticks img {
    top: -2px;
}

.pe-4 {
    padding-right: 1.5rem !important;
}

.ps-4 {
    padding-left: 0rem !important;
}

@media only screen and (min-width: 768px) {
    .ps-4 {
        padding-left: 4rem !important;
    }
}

.pageheader {
    position: fixed !important;
    border-bottom: none;
    top: 0 !important;
}

.pageheader {
    width: 100%;
    border-bottom: none;
    margin-bottom: 30px;
    background-color: #ffffff;
    position: relative;
    padding: 20px 0 20px 0;
    z-index: 2;
}

@media only screen and (min-width: 991px) {
    .pageheader {
        border-bottom: 1px solid #cdcdcd;
    }
}

.headerLogo {
    text-align: center;
}

@media only screen and (min-width: 768px) {
    .headerLogo {
        text-align: left;
    }
}

.openinghours {
    margin-top: 18px;
    margin-bottom: 8px;
}

.openinghours p {
    text-align: center;
}

.openinghours h3 {
    color: #CC2E82;
    text-decoration: underline;
    margin-bottom: 0;
    text-align: center;
    font-size: 30px;
}

@media only screen and (min-width: 768px) {
    .openinghours p {
        text-align: right;
    }

    .openinghours h3 {
        text-decoration: none;
        text-align: right;
    }
}

section.hero {
    margin-top: 80px;
}

@media only screen and (min-width: 567px) {
    section.hero {
        margin-top: 120px;
    }
}

@media only screen and (min-width: 768px) {
    section.hero {
        margin-top: 140px;
    }
}

.quickaction ul {
    display: flex;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    justify-content: flex-end;
    gap: 12px;
}

.quickaction a {
    display: block;
    padding: 0;
    border: 0;
    border-radius: 0;
    transition: all .3s ease;
}

.quickaction img {
    height: auto;
    width: 30px;
    fill: #2f114f;
}




.quotetext {
    font-style: italic;
}

.person-block h3 {
    font-size: 19px;
    margin-bottom: 0;
}

.person-block h4 {
    font-family: sansFont, sans-serif;
    font-size: 18px;
    color: #767676;
    margin-top: 0;
}

@media (max-width:991px) {
    .rborderfix4 {
        border-bottom: 1px solid #ddd;
        margin-bottom: 24px;
        padding-bottom: 24px;
    }

    .rborderfix2 {
        border-right: none
    }

    .footer-email {
        margin-bottom: 30px;
    }

    .boximage {
        background-image: url(images/kerri-boximage.png);
        background-position: center;
        background-size: cover;
        min-height: 150px;
        margin-left: 15px;
    }
}

@media (min-width:768px) {
    .padfixright {
        padding-right: 24px
    }

    .padfixleft {
        padding-left: 24px;
    }
}

@media (max-width: 768px) {
    .trustpilot-column {
        margin-top: 60px;
        padding-top: 60px;
        border-top: 1px solid #767676;
    }

    .trustpilot-column img {
        margin-bottom: 0;
    }

    .tp-reviews {
        border-top: none;
        margin-top: 0;
        padding-top: 30px;
    }

    .tp-reviews h4 {
        margin-top: 0;
    }

    .awardwinning {
        text-align: left;
    }

    .awardwinning p {
        text-align: left;
    }

    .footer-bottom p {
        text-align: center;
    }

    .guide-desktop {
        display: none;
    }

    .guide-mobile {
        display: block;
        width: 100%;
        max-width: 250px;
        margin: 12px auto 12px 0;
    }
}

@media (max-width:575px) {
    .calculator-container {
        padding: 32px;
    }

    .step1-info {
        border-left: none
    }

    .calculator-container h4 {
        min-height: 0;
    }

    .step1-info h4 {
        margin-top: 24px;
    }

    .headerrer p {
        top: -12px;
        right: unset;
        left: 18px;
    }
}

@media (max-width:400px) {
    .calculator-container {
        padding: 24px 16px;
    }

    .calculator-container h4 {
        font-size: 16px;
        line-height: 20px;
        margin-bottom: 8px;
    }

    .results-boxes h2 {
        font-size: 20px;
    }

    .results {
        padding: 24px 16px;
    }

    .calculator-container input {
        padding-left: 8px;
    }

    .calculator-step1,
    .calculator-step2 {
        padding: 24px 16px;
    }

    .calc-side img {
        margin-top: 8px;
    }
}

.body-copy {
    width: 75%;
    margin: 0 auto;
}

@media (max-width: 768px) {
    .body-copy {
        width: 100%;
    }
}

#scheduler {
    background-color: #045E6C;
    font-family: 'doricMedium', serif;
    color: #ffffff;
    margin-top: 2rem;
    padding: 0.5rem 2rem;
    border-radius: 10px;
    min-width: 240px;
}

.information-team-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 1.5rem;
}

@media only screen and (max-width: 768px) {
  .information-team-grid {
    grid-template-columns: 1fr;
  }
}
.information-team-block {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1rem;
}

.information-team-block img {
    margin-bottom: 1rem;
}

.trustpilot{
    background-color: #FCF2F9;
    padding: 3rem 0;
    margin-top: 3rem;
}

.footer-copy {
    display: block;
    margin-bottom: 1rem;
}

a:hover {
    color: #ffffff;
}