html {
    box-sizing: border-box;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}
body {
    font-family: "Comfortaa", sans-serif;
    line-height: 1.45;
    font-size: 20px;
    font-weight: 400;
    margin: 0;
    overflow-x: hidden;
    padding: 0;
    -webkit-font-smoothing: antialiased;
}
a,
h1,
h2,
h3,
h4,
h5,
.slide > blockquote cite {
    font-family: "Montserrat", sans-serif;
    font-weight: 800;
}
.text_card h2 {
    padding: 0 0 1em 0.1em;
    margin: -0.1em;
}

.notice {
    border-top: 6px solid #ff7959;
    border-bottom: 6px solid #ff7959;
    margin-top: 2em;
    max-width: 30rem;
    padding: 1em;
}

.notice strong {
    font-weight:700;
}

.text_card p {
    border-left: 10px #ff7959 solid;
    padding: 0 2em;
}
.review_conversation cite {
    display: block;
    font-weight: 400;
}
.brand-details,
.date h2,
.date h3,
.footmenu a,
.terms {
    font-size: 1rem;
}
.bread {
    padding: 1em;
}
.callus,
.contact a,
.hours span,
cite {
    font-weight: 700;
}
.callus {
    flex-grow: 2;
    margin-right: 1em;
    text-align: right;
}
.callus {
    display: inline-block;
    text-decoration: none;
}
footer {
    line-height: 1.8em;
}
.date h2,
.date h3 {
    margin: 0;
}
h1,
h2,
h3,
h4,
h5 {
    line-height: 1.15;
    margin: 2rem 0 1rem 0;
}
h1 {
    font-size: 2.441em;
    padding-left: 4vw;
    padding-right: 2vw;
}
h2 {
    font-size: 2.441em;
}
h3 {
    font-size: 1.953em;
}
h4 {
    font-size: 1.563em;
}
h5 {
    font-size: 1.25em;
}
.latestarticles h3 {
    font-size: 1.2em;
    padding-left: 1em;
    padding-right: 1em;
}
li > h4 {
    font-size: 1.3em;
    line-height: 1em;
    margin-bottom: 0;
}
.latestarticles p {
    padding-left: 1.4em;
    padding-right: 1.4em;
}
.latestarticles p:last-of-type {
    text-align: right;
}
p {
    margin-bottom: 1.25em;
}
small,
.text_small {
    font-size: 0.8em;
}
.services h2 {
    margin-left: 1em;
}
.services h3 {
    margin-top: 0;
}
.titleh1 {
    grid-column: 1/3;
    grid-row: 1/2;
    justify-self: left;
}
.reg_section h1 {
    margin: 0;
    padding: 0;
}
nav.scroll > span {
    flex: 0 0 auto;
}
nav.scroll > span {
    padding: 0.8em 1.5em;
}
@font-face {
    font-family: "Comfortaa";
    font-style: normal;
    font-weight: 400;
    src:
        local("Comfortaa Regular"),
        local("Comfortaa-Regular"),
        url(../fonts/comfortaa-v19-latin-regular.woff2) format("woff2"),
        url(../fonts/comfortaa-v19-latin-regular.woff) format("woff");
    font-display: swap;
}
@font-face {
    font-family: "Comfortaa";
    font-style: normal;
    font-weight: 700;
    src:
        local("Comfortaa Bold"),
        local("Comfortaa-Bold"),
        url(../fonts/comfortaa-v19-latin-700.woff2) format("woff2"),
        url(../fonts/comfortaa-v19-latin-700.woff) format("woff");
    font-display: swap;
}
@font-face {
    font-family: "Montserrat";
    font-style: normal;
    font-weight: 400;
    src:
        local("Montserrat Regular"),
        local("Montserrat-Regular"),
        url(../fonts/montserrat-v14-latin-regular.woff2) format("woff2"),
        url(../fonts/montserrat-v14-latin-regular.woff) format("woff");
    font-display: swap;
}
@font-face {
    font-family: "Montserrat";
    font-style: italic;
    font-weight: 400;
    src:
        local("Montserrat Italic"),
        local("Montserrat-Italic"),
        url(../fonts/montserrat-v14-latin-italic.woff2) format("woff2"),
        url(../fonts/montserrat-v14-latin-italic.woff) format("woff");
    font-display: swap;
}
@font-face {
    font-family: "Montserrat";
    font-style: normal;
    font-weight: 800;
    src:
        local("Montserrat ExtraBold"),
        local("Montserrat-ExtraBold"),
        url(../fonts/montserrat-v14-latin-800.woff2) format("woff2"),
        url(../fonts/montserrat-v14-latin-800.woff) format("woff");
    font-display: swap;
}
.text_card {
    border-radius: 4px 4px 60px 4px;
}
.artcl {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    justify-items: center;
    padding: 0 5vw;
}
.artcl section {
    display: block;
    grid-row-start: 4;
    grid-column: 1/5;
}
.slide > blockquote {
    font-size: 1.3em;
    max-width: 25em;
    text-align: left;
}
.slide > blockquote cite {
    display: block;
    padding: 0.7em 0;
    text-align: right;
}
.review_conversation blockquote {
    border-radius: 20px;
    display: inline-block;
    max-width: 25em;
    padding: 1em;
}
.categories {
    display: flex;
    flex-flow: row wrap;
}
.categories li {
    align-items: center;
    border-radius: 0.5em;
    display: flex;
    margin: 2em;
    padding-right: 0.5em;
}
.categories li:hover {
    transform: scale(1.02, 1.02);
    transition: scale 0.18s ease;
}
.categories li a:last-of-type {
    max-width: 15em;
    padding: 0 1em;
}
.cta {
    text-align: center;
}
.cta-icons {
    padding: 8vmin;
}
.cta-icons,
.latestarticles {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
}
.cta-icons img {
    width: 30vmin;
}
.cta-icons a {
    flex-grow: 1;
}
.date {
    grid-column: 1/3;
    grid-row: 2/3;
    margin-bottom: -3em;
    text-align: right;
}
.flex,
.flexbtwn,
.flexl,
.flexr,
header,
.footdiv,
.review_conversation div,
section {
    display: flex;
}
.flexbtwn,
section {
    align-items: end;
    flex-flow: row wrap;
    justify-content: space-evenly;
}
.flexl,
.review_conversation div:nth-child(odd) {
    justify-content: flex-start;
    margin: 2em auto;
}
.flexr,
.review_conversation div:nth-child(even) {
    justify-content: flex-end;
    margin: 2em auto;
}
.footdiv {
    flex-flow: row wrap;
    justify-content: space-between;
    padding: 0 1vmin;
}
.footdiv div {
    padding-left: 2vmin;
    padding-right: 2vmin;
}
.footdiv:nth-child(2) ul {
    padding: 5vh 3vw;
}
.footdiv:nth-child(2) {
    padding: 0;
}
.index {
    max-width: 33em;
    padding: 2vw 2vh;
}
.latestarticles {
    grid-row: 2/3;
    grid-column: 1/5;
}
.latestarticles li {
    border-radius: 0.5em;
    margin: 2rem;
    max-width: 30rem;
}
.latestarticles li:hover {
    transform: scale(1.02, 1.02);
    transition: all 0.18s ease;
}
.limiter,
.review_conversation {
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
}
.limiter_padded {
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
    padding: 2vmax;
}

.limiter_padded p {
    max-width:50rem
}
.location {
        padding: 0 2rem 0 0
}

.logo {
    background: #fff;
    flex: 0 0 19rem;
    padding: 1.5vmin 1vmin;
}
.materialL1,
.readability,
.top-level-li,
.review_conversation blockquote {
    box-shadow:
        0 1px 3px rgb(0 0 0 / 0.12),
        0 1px 2px rgb(0 0 0 / 0.24);
    z-index: 1;
}
.materialL2 {
    box-shadow:
        0 3px 6px rgb(0 0 0 / 0.16),
        0 3px 6px rgb(0 0 0 / 0.23);
    z-index: 2;
}
.materialL3 {
    box-shadow:
        0 10px 20px rgb(0 0 0 / 0.19),
        0 6px 6px rgb(0 0 0 / 0.23);
    z-index: 3;
}

.reg_section {
    align-items: center; 
    padding: 3em;
}

.reg_section picture {
    padding-top: 0;
    max-width: 36rem;
}
.reg_section img {
    border-radius: 20px;
    width: 100%;
}
.post {
    display: grid;
    grid-template-columns: [full-start] minmax(1em, 1fr) [main-start] minmax(0, 35em) [main-end] minmax(1em, 1fr) [full-end];
    padding: 0 0.5em;
    justify-content: center;
}
.post h2,
.post h3,
.post h4,
.post p,
.post ul {
    grid-column: main;
}
.postnav {
    grid-column: full;
    padding: 3em 1em;
}
.postnav a:last-of-type {
    float: right;
}
cite {
    margin-left: 6em;
    margin-top: 2em;
}
.scroll {
    display: flex;
    flex-wrap: nowrap;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
}
.scroll::-webkit-scrollbar {
    width: 0 !important;
}
.grid,
.services > ul {
    display: flex;
    flex-flow: row wrap;
}
.flex-split-sm {
    max-width: 20em;
}
.flex-split-sm {
    align-self: flex-start;
}
.flex-split-lg {
    width: 35em;
}
@supports (display: grid) {
    .grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }
    .footdiv {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(265px, 1fr));
    }
    .services > ul {
        display: grid;
        grid-gap: 5vmin;
        grid-template-columns: repeat(auto-fit, minmax(265px, 1fr));
    }
}
.text_card {
    max-width: 30em;
    order: 1;
}
.revs {
    align-self: center;
    margin: 0 auto;
}
section {
    margin: 0;
    padding: 8em 3em;
}
.services {
    text-align: center;
    display: block;
}
.services > ul {
    border-radius: 0 0 60px 0;
    font-size: 16px;
    text-align: left;
}
.services li {
    border-radius: 0.5em;
    max-width: 25em;
}
.top-level-li {
    padding: 0.5em 2em 1em 2em;
}
.top-level-li > ul {
    line-height: 1.85;
}
ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.wideboi {
    height: 22em;
    margin-top: 15vh;
    padding: 2em 0;
    text-align: center;
}
img {
    height: auto;
    width: 100%;
}
.accent-img {
    border-radius: 60px 4px 4px 4px;
    max-width: 34rem;
    margin-bottom: 2rem;
}
.flexl img {
    float: right;
    margin: -2rem -5rem;
}
.categories img {
    display: block;
    width: 5em;
}
.review_conversation blockquote > img,
.flexl img,
.flexr img {
    border-radius: 50%;
    height: 6rem;
    object-fit: cover;
    width: 6rem;
}
.flexr img {
    float: left;
    margin: -2rem -5rem;
}
.latestarticles img {
    object-fit: cover;
    object-position: 50% 40%;
    height: 30vh;
}
.latestarticles img,
.location picture img,
.logo img,
.post img {
    width: 100%;
}
.logo img {
    display: block;
    height: auto;
}
.post picture {
    object-fit: cover;
    object-position: 50% 40%;
    grid-column: full;
    padding: 20vh 0;
    margin: -1.2em auto;
    background: linear-gradient(#ececec, #a4a4a4) no-repeat center/1px 90%;
    max-width: 1200px;
    transition:
        object-fit 0.5s,
        height 0.5s,
        object-position 0.5s,
        padding 0.5s ease;
}
.post img:active {
    object-fit: contain;
    height: 80vh;
    object-position: 50% 50%;
    padding: 5vh;
}
.slide img {
    width: 15vmin;
    border-radius: 50%;
}
.services img {
    display: block;
    margin: 0 auto;
    padding: 0 0 1em 0;
    width: 6em;
}
source {
    display: none;
}
.text_card,
.brand-details {
    background-color: #bdd5ff;
}
.text_card h2 {
    background-color: #fff;
}
.callus {
    color: #fff;
}
a,
.categories a:visited,
.latestarticles a:visited,
.postnav a:visited {
    color: #ff7a59;
}
a:visited {
    color: #703c32;
}
.brand-details a {
    color: #414141;
}
.review_conversation blockquote,
.top-level-li {
    background: #e8f1f9;
}
.bread,
.bread a,
.bread a:visited {
    color: #ff755d;
}
.categories li,
.latestarticles li,
.top-level-li {
    background-color: rgb(249 252 255);
}
.catheading,
.catheading:visited,
h1,
h2,
h4 {
    color: #414141;
}
.footmenu {
    background: rgb(25 0 165 / 0.95);
}
footer {
    border-top: #b9b9b9 4px dashed;
}
h3 {
    color: #4f4f4f;
}
.scroll span a,
.footmenu span a,
.scroll span a:visited,
.footmenu span a:visited {
    color: #fff;
    text-decoration: none;
}
span.current-lnk > a,
span.current-lnk > a:visited {
    text-decoration: underline;
}
header {
    align-items: center;
    background: #2300a0;
    background: linear-gradient(to right, rgb(25 0 165 / 0.95), rgb(6 30 231 / 0.65));
    position: sticky;
    position: -webkit-sticky;
    top: 0;
}
@media (max-width: 600px) {
    body {
        font-size: 17px;
    }
    h1 {
        font-size: 1.602em;
    }
    h2 {
        font-size: 1.602em;
    }
    h3 {
        font-size: 1.424em;
    }
    h4 {
        font-size: 1.266em;
    }
    h5 {
        font-size: 1.125em;
    }
    .slide > blockquote {
        font-size: 0.9em;
    }
    .review_conversation blockquote {
        margin-left: 0.5rem;
        margin-right: 0.5rem;
    }
    .callus {
        display: none;
    }
    header {
        flex-wrap: wrap;
        justify-content: center;
    }
    .review_conversation blockquote > img,
    .review_conversation blockquote > img {
        margin: -3rem -1rem;
    }
    .footdiv {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    }
    .footmenu {
        display: none;
    }
    .index {
        margin-top: 5vmax;
    }
    .latestarticles li {
        margin: 2rem 0;
    }

    .logo {
        flex: 0 0 60%;
        padding: 1vmin 20vw;
    }
    nav.scroll > span {
        padding: 0.5em 0.3em;
        font-size: 1em;
    }
    section {
        margin: 0;
        padding: 4em 4vw;
    }
    .services > ul {
        grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    }
    small,
    .text_small {
        font-size: 0.889em;
    }
    .wideboi {
        height: 20em;
        margin-top: -15px;
        padding-top: 1.5em;
        border-left: 0.4em solid #ff7a59;
    }
}
@media (min-width: 601px) and (max-width: 1024px) {
    .callus {
        display: none;
    }
    .footdiv {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(265px, 1fr));
    }
    header {
        flex-wrap: wrap;
        justify-content: center;
    }
    .location {
        grid-column: span 2;
    }
    .index {
        margin-top: 5vmax;
    }
    .logo {
        flex: 0 0 60%;
        padding: 1vmin 20vw;
    }
    nav.scroll > span {
        padding: 0.5em 0.3em;
        font-size: 1em;
    }
    .services > ul {
        grid-template-columns: repeat(auto-fit, minmax(265px, 1fr));
    }
}
@media (min-width: 1025px) {
    .accent-img {
        max-width: 40rem;
    }
    .callus {
        display: block;
    }
    .cta-icons img {
        width: 20vmin;
    }
    header {
        justify-items: center;
    }
    h1 {
        padding-left: 1vw;
    }
  
    .logo {
        padding: 1.5vmin 1vmin;
    }
    nav.scroll > span {
        padding: 0.5em 1em;
        font-size: 1em;
    }
}
@media (min-width: 1350px) {
    .accent-img {
        margin-bottom: -9px;
    }
    h1 {
        padding-left: 1vw;
    }
    .text_card {
        order: 0;
    }
}
.hidden {
    display: none;
}
.inline {
    display: inline;
}
