/* Ryan Bansky Expert Tree Service - layout and form styles. By TechStarters Inc. */

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }

/* ---------- page panel ---------- */
div[align="center"] > table[width="893"] {
    box-shadow: 0 6px 28px rgba(0, 0, 0, 0.28);
    margin-bottom: 24px;
}

/* ---------- easier reading ---------- */
.main, span.main, p.main, td.main { font-size: 14px !important; line-height: 1.6 !important; }
.main2, td.main2, p.main2 { font-size: 15px !important; line-height: 1.65 !important; color: #2f2f2f; }
.btmtext, .btmtext a, .btm { font-size: 13px !important; line-height: 1.6; }
.btm a.bt-foot-phone { color: #006633; font-weight: bold; text-decoration: none; }
.btm a.bt-foot-phone:hover { text-decoration: underline; }

/* ---------- header: whole logo area and clickable phone number ---------- */
.bt-head { position: relative; line-height: 0; }
.bt-head img { display: block; }
.bt-head-phone { position: absolute; left: 55%; top: 33%; width: 32%; height: 38%; }
.bt-h1 { margin: 0 !important; padding: 0; font-size: inherit !important; line-height: 0; color: inherit !important; }

/* ---------- phone menu (hidden on computers) ---------- */
.bt-mrow { display: none; }
.bt-mbar { display: flex; gap: 8px; padding: 10px; background: #f4f0e2; }
.bt-mbar a, .bt-mbar span {
    flex: 1 1 0; text-align: center; padding: 12px 8px; border-radius: 4px;
    font: bold 16px/1.2 Arial, Helvetica, sans-serif; text-decoration: none !important;
}
.bt-mbar .bt-call { background: #2e7d32; color: #fff !important; }
.bt-mbar .bt-est { background: #fff; color: #1f5f1f !important; border: 2px solid #2e7d32; }
.bt-mnav { background: #1f7a1f; font-family: Arial, Helvetica, sans-serif; }
.bt-mnav summary {
    list-style: none; cursor: pointer; color: #fff; font-weight: bold; font-size: 16px;
    padding: 12px 14px; text-align: left;
}
.bt-mnav summary::-webkit-details-marker { display: none; }
.bt-mnav summary:after { content: "+"; float: right; font-size: 20px; line-height: 16px; }
.bt-mnav[open] summary:after { content: "\2212"; }
.bt-mnav nav { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: #16631a; border-top: 1px solid #16631a; }
.bt-mnav nav a, .bt-mnav nav span {
    display: block; background: #1f7a1f; color: #fff !important; text-decoration: none !important;
    padding: 12px 14px; font-size: 15px; text-align: left;
}
.bt-mnav nav span { background: #16631a; font-weight: bold; }

/* ---------- contact page ---------- */
.bt-contact { text-align: left; max-width: 800px; margin: 0 auto 16px; font-family: Arial, Helvetica, sans-serif; color: #2f2f2f; }
.bt-divider { height: 1px; background: #c9d6c3; margin: 6px 0 22px; }
.bt-contact-grid { display: flex; gap: 28px; align-items: flex-start; }
.bt-contact-info { flex: 0 0 220px; font-size: 15px; line-height: 1.6; }
.bt-contact-info img { width: 100%; max-width: 220px; height: auto; border: 1px solid #cfd8cc; border-radius: 4px; }
.bt-contact-info h2 { font-size: 18px; line-height: 1.3; margin: 14px 0 6px; color: #1f5f1f; font-weight: bold; }
.bt-contact-info p { margin: 0 0 10px; }
.bt-call-btn {
    display: inline-block; background: #2e7d32; color: #fff !important; padding: 10px 16px; border-radius: 4px;
    font-weight: bold; font-size: 16px; text-decoration: none !important;
}
.bt-call-btn:hover { background: #256628; }
.bt-points { list-style: none; padding: 0; margin: 14px 0 0; }
.bt-points li { position: relative; padding: 0 0 4px 16px; }
.bt-points li:before { content: ""; position: absolute; left: 2px; top: 0.62em; width: 6px; height: 6px; border-radius: 50%; background: #2e7d32; }
.bt-form {
    flex: 1 1 auto; background: #f6f9f4; border: 1px solid #d5e2cf; border-radius: 6px;
    padding: 20px 22px; scroll-margin-top: 24px;
}
.bt-form h2 { font-size: 22px; line-height: 1.3; margin: 0 0 4px; color: #1f5f1f; font-weight: bold; }
.bt-form .bt-note { font-size: 14px; color: #555; margin: 0 0 16px; }
.bt-req { color: #b3261e; }
.bt-row2 { display: flex; gap: 14px; }
.bt-row2 > .bt-field { flex: 1 1 0; min-width: 0; }
.bt-field { margin: 0 0 12px; }
.bt-field label { display: block; font-weight: bold; font-size: 14px; margin: 0 0 4px; color: #333; }
.bt-field input, .bt-field select, .bt-field textarea {
    display: block; width: 100%; box-sizing: border-box; font: 16px/1.3 Arial, Helvetica, sans-serif;
    padding: 9px 10px; border: 1px solid #b9c7b4; border-radius: 4px; background: #fff; color: #222; height: auto; margin: 0;
}
.bt-field textarea { min-height: 120px; resize: vertical; }
.bt-field input:focus, .bt-field select:focus, .bt-field textarea:focus { outline: 2px solid #2e7d32; outline-offset: 0; border-color: #2e7d32; }
.bt-submit {
    display: block; width: 100%; background: #2e7d32; color: #fff; border: 0; border-radius: 4px;
    font: bold 17px/1.2 Arial, Helvetica, sans-serif; padding: 13px 20px; cursor: pointer; margin-top: 4px;
}
.bt-submit:hover { background: #256628; }
.bt-submit[disabled] { opacity: 0.7; cursor: default; }
.bt-small { font-size: 13px; color: #555; margin: 12px 0 0; }

/* ---------- thank-you and error messages ---------- */
.bt-thanks { max-width: 640px; margin: 24px auto 30px; text-align: left; font: 16px/1.6 Arial, Helvetica, sans-serif; color: #2f2f2f; }
.bt-thanks h2 { color: #1f5f1f; font-size: 24px; line-height: 1.3; margin: 0 0 10px; font-weight: bold; }
.bt-thanks.bt-error h2 { color: #8a1c13; }
.bt-btn {
    display: inline-block; background: #2e7d32; color: #fff !important; padding: 10px 18px; border-radius: 4px;
    font-weight: bold; text-decoration: none !important; margin-top: 6px;
}

/* ---------- phones and small tablets ---------- */
@media (max-width: 920px) {
    body { background-image: none !important; background-color: #e9efe6 !important; margin: 0 !important; }
    div[align="center"] > table[width="893"] { box-shadow: none; margin: 0; }
    table, tbody, thead, tr, td, th {
        display: block !important; width: auto !important; max-width: 100% !important;
        height: auto !important; box-sizing: border-box;
    }
    table { margin-left: 0 !important; margin-right: 0 !important; }
    img { max-width: 100% !important; height: auto !important; }
    iframe { max-width: 100% !important; }
    td[background], table[background] { background-image: none !important; }
    td[background="images/page_bg.jpg"] { background-color: #fff !important; padding: 14px 14px 18px !important; }
    td[background="images/top.jpg"] { display: none !important; }
    img[src$="page_btm.jpg"] { display: none !important; }
    td[background="images/bottom.jpg"] { background-color: #f4f0e2 !important; padding: 14px 10px !important; }
    .bt-imgnav { display: none !important; }
    .bt-mrow, tr.bt-mrow { display: block !important; }
    .main, span.main, p.main, td.main, .main2, td.main2, p.main2 { font-size: 16px !important; }
    .btmtext, .btmtext a, .btm { font-size: 14px !important; line-height: 1.8; }
    p, li, td { overflow-wrap: break-word; }
    .bt-contact-grid { display: block; }
    .bt-contact-info { margin-bottom: 18px; }
    .bt-row2 { display: block; }
    .bt-form { padding: 16px 14px; }
}
