﻿@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New&display=swap');



body, html {
    height: 100%;
    box-sizing: border-box;
    margin: 0;
    color: #0A4322;
    background-color: #F8FDF9;
    /*font-family: 'Segoe UI Semilight', 'Segoe UI', 'Trebuchet MS', Arial;
    font-weight: 300;*/
    font-size: 20px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 400;
    font-style: normal;
}
@media screen and (max-width: 635px) {
    body, html {
        font-size: 16px;
    }
}
* {
    box-sizing: border-box;
}
body {
    overflow-y: scroll;
}

#well {
    background-color: #FFF;
    position: relative;
    max-width: 900px;
    min-width: 390px;
    margin: 0 auto;
    min-height: 100%;
    box-shadow: 0px 0px 12px 1px rgba(192,192,192,0.18), 0px 0px 5px 1px rgba(192,192,192,0.25);
}

#title {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    font-size: 36pt;
    text-align: center;
    font-family: Garamond;
    padding: 36px 0 0 0;
    white-space: nowrap;
}

    #title::before, #title::after {
        flex: 0 1 140px;
        content: " ";
        background-size: contain;
        background-repeat: no-repeat;
        background-image: url('/images/ivy.png');
        aspect-ratio: 140 / 71;
        margin: 0 10px;
    }

    #title::after {
        transform: rotateY(180deg);
    }

.hr-deco {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    margin: 20px 0;
}

.break {
    display: inline-block;
    height: 2px;
    max-width: 240px;
    width: 240px;
    flex: 1 1 2px;
    margin: 0 20px;
}

    .break.right {
        background: linear-gradient(to right, rgba(25,118,24,1) 0%,rgba(15,71,14,1) 40%,rgba(7,32,6,0.6) 68%,rgba(0,0,0,0) 100%);
    }

    .break.left {
        background: linear-gradient(to right, rgba(0,0,0,0) 0%,rgba(7,32,6,0.6) 32%,rgba(15,71,14,1) 60%,rgba(25,118,24,1) 100%);
    }

.leaf {
}

.inline-list {
    display: block;
    text-align: center;
    margin: 8px 0 5px 0;
    padding: 0;
}

    .inline-list li {
        display: inline-block;
    }

        .inline-list li:not(:last-of-type)::after {
            content: "▪";
            width: 14px;
            height: 14px;
        }

        .inline-list li a {
            color: #197618;
            padding: 0 12px;
            font-size: 14pt;
        }

#content {
    padding: 35px 60px 60px 60px;
    line-height: 1.6;
    vertical-align: top;
    text-align: justify
}
@media screen and (max-width: 635px) {
    #content {
        padding: 35px 30px 60px 30px;
    }
}

    #content p {
        margin-block-end: 2em;
    }

        #content p:last-of-type {
            margin-block-end: 0;
        }

    #content ul li {
        margin-block-end: 2em;
    }

#footerContent {
    padding: 2em 0;
    text-align: center;
}

aside {
    margin: 5px 0 20px 15px;
    color: #777;
}

    aside a, aside a:hover, aside a:visited, aside a:active {
        color: #777;
    }

label {
    display: block;
    margin: 1em 0;
}

select, option, input[type=text], input[type=submit], textarea {
    resize: none;
    border-radius: 0.25rem;
    display: block;
    min-width: 100%;
    max-width: 100%;
    min-height: 0.5rem;
    border: 1px solid #197618;
    padding: 5px;
    color: #0A4322;
    font-size: 20px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 400;
    margin: 0.25em 0 0 0;
    background-color: white;
}

.field-validation-error {
    color: #FF5974;
    font-size: 16px;
}

button {
    font-size: 18px;
    color: #fff;
    background-color: #0A4322;
    padding: 12px 26px;
    float: right;
    border-radius: 0.25rem;
    cursor: pointer;
}

.right-aligned-button-container {
    display: flex;
    flex-flow: row nowrap;
    justify-content: end;
}

.page-header {
    display: flex;
    justify-content: center;
    font-size: 25px;
    margin: 18px 0 0 0;
}

.centered {
    text-align: center;
}





.quote-success-container {
    position: fixed;
    display: flex;
    top: 0;
    right: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0,0,0,0.3);
    justify-content: center;
    align-items: center;
}
.quote-success-modal {
    display: flex;
    flex-flow: column nowrap;
    background-color: #F8FDF9;
    border-radius: 1rem;
    padding: 2rem;
    gap: 2rem;
    max-width: 33%;
}

.quote-success-modal-title {
    font-weight: bold;
}
.quote-success-modal-body {
}
.quote-success-modal-button-container {
    display: flex;
    flex-flow: row nowrap;
    justify-content: end;
}