:root{color-scheme:light;--green:#19D42F;--charcoal:#5C5C5B;--tint:#EAF7E3;--lgrey:#A5A5A5;--offwhite:#F4F4F4;--white:#FFFFFF;--line:#E3E3E1;--font-display:"Montserrat","Segoe UI",system-ui,-apple-system,Roboto,sans-serif;--font-body:"Open Sans","Segoe UI",system-ui,-apple-system,Roboto,"Helvetica Neue",Arial,sans-serif;--wrap:1300px;--pad:clamp(16px,4vw,56px)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--charcoal);background:var(--white);font-size:19px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--green);text-decoration:none;font-weight:700}a:hover{opacity:.85}h1,h2,h3,h4{font-family:var(--font-display);font-weight:800;line-height:1.08;letter-spacing:-.015em;color:var(--charcoal);text-wrap:balance}p{text-wrap:pretty}img{display:block;max-width:100%}::selection{background:var(--green);color:var(--white)}:focus-visible{outline:3px solid var(--green);outline-offset:2px;border-radius:4px}.wrap{max-width:var(--wrap);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}.eyebrow{font-family:var(--font-display);font-size:13.5px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:var(--charcoal);display:inline-flex;align-items:center;gap:10px}.eyebrow:before{content:"";width:26px;height:3px;background:var(--green);border-radius:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--font-display);font-weight:700;border-radius:11px;cursor:pointer;border:0;transition:transform .12s ease,opacity .15s ease}.btn:active{transform:translateY(1px)}.btn:hover{opacity:.9}.btn-green{background:var(--green);color:#232322}.btn-charcoal,.topbar{background:var(--charcoal);color:var(--white)}.topbar .inner{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:9px 0;font-size:15px}.topbar .tag{font-family:var(--font-display);font-weight:600;letter-spacing:.08em;color:#e0e0de;font-size:12.5px}.topbar .right{display:flex;align-items:center;gap:22px}.topbar .hours{color:#e0e0de}.topbar a.phone{color:var(--white);font-weight:800}header.site{position:sticky;top:0;z-index:50;background:var(--white);border-bottom:1px solid var(--line);box-shadow:0 1px 14px #0000000a}header.site .inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 0}.brand img{height:54px;width:auto;display:block}nav.main{display:flex;align-items:center;gap:28px}nav.main a{color:var(--charcoal);font-size:17px;font-weight:600}nav.main a.active{border-bottom:3px solid var(--green);padding-bottom:2px}.header-cta{display:flex;align-items:center;gap:16px}.callbox{display:flex;flex-direction:column;line-height:1.15;color:var(--charcoal)}.callbox span{font-family:var(--font-display);font-weight:700;font-size:10px;letter-spacing:.13em;color:var(--lgrey)}.callbox b{font-weight:800;font-size:20px}.hamburger{display:none;background:none;border:1.5px solid var(--line);border-radius:10px;padding:9px 11px;cursor:pointer}.hamburger svg{width:24px;height:24px;display:block}.intro{background:var(--charcoal);position:relative}.intro:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--green)}.intro .inner{max-width:900px;padding:clamp(56px,9vh,96px) 0}.intro .eyebrow{color:var(--white)}.intro h1{color:var(--white);font-size:clamp(36px,4.8vw,62px);margin:18px 0 20px}.intro h1 em{font-style:normal;color:var(--green)}.intro p.lead{font-size:clamp(18px,1.5vw,22px);color:#ededec;max-width:56ch;line-height:1.6;margin-bottom:26px}.intro .bigphone{display:inline-block;font-family:var(--font-display);font-weight:800;font-size:clamp(30px,4vw,48px);color:var(--white)}.intro .meta{color:#dadad8;font-size:16.5px;margin-top:10px}section.block{padding:clamp(66px,9vh,116px) 0}.band{background:var(--offwhite)}.sec-head{max-width:780px;margin-bottom:44px}.sec-head h2{font-size:clamp(31px,4vw,48px);margin-top:16px}.sec-head p{color:var(--charcoal);font-size:18.5px;margin-top:16px;line-height:1.62}.picker{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:44px}.pick{background:var(--white);border:2px solid var(--line);border-radius:18px;padding:30px;cursor:pointer;text-align:left;font-family:var(--font-body);transition:border-color .15s ease,box-shadow .15s ease}.pick:hover{border-color:var(--charcoal)}.pick.active{border-color:var(--green);box-shadow:0 4px 22px #19d42f21}.pick .plab{font-family:var(--font-display);font-weight:700;font-size:11.5px;letter-spacing:.12em;color:var(--lgrey);text-transform:uppercase}.pick h3{font-size:clamp(21px,2.2vw,26px);margin:10px 0 8px}.pick p{font-size:15.5px;line-height:1.55;color:var(--charcoal)}.pick .tick{float:right;width:30px;height:30px;border-radius:50%;border:2px solid var(--line);display:flex;align-items:center;justify-content:center;font-weight:800;color:transparent}.pick.active .tick{background:var(--green);border-color:var(--green);color:var(--charcoal)}.contact-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(28px,4vw,56px);align-items:start}.cform{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:clamp(28px,3.6vw,44px)}.cform h3{font-size:24px;margin-bottom:6px}.cform .sub{color:var(--lgrey);font-size:16px;margin-bottom:26px}.frow{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-weight:700;font-size:15px;color:var(--charcoal);font-family:var(--font-display)}.field input,.field select,.field textarea{font-family:var(--font-body);font-size:17px;padding:15px 17px;border:1.5px solid var(--line);border-radius:10px;background:var(--offwhite);color:var(--charcoal);width:100%}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--green);background:var(--white)}.field textarea{min-height:110px;resize:vertical}.hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}.cform .btn{width:100%;font-size:18px;padding:18px;margin-top:6px}.cform .fine{color:var(--lgrey);font-size:13.5px;margin-top:14px;text-align:center}[hidden]{display:none!important}.side{display:flex;flex-direction:column;gap:20px}.side-card{background:var(--charcoal);border-radius:18px;padding:34px 32px;color:#e6e6e4}.side-card .clab{font-family:var(--font-display);font-weight:700;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--green);margin-bottom:14px}.side-card .avatar{width:64px;height:64px;border-radius:50%;background:#ffffff1f;border:2px solid var(--green);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:19px;color:var(--white);margin-bottom:16px}.side-card b.name{font-family:var(--font-display);font-weight:800;font-size:22px;color:var(--white);display:block}.side-card .role{color:#dadad8;font-size:15px;margin:3px 0 18px}.side-card a.cphone{display:block;font-weight:800;font-size:23px;color:var(--white);margin-bottom:4px}.visit{background:var(--white);border:1px solid var(--line);border-radius:18px;overflow:hidden}.visit .map{aspect-ratio:16/9;background:repeating-linear-gradient(45deg,#ededeb,#ededeb 14px,#e6e6e4 14px 28px);display:flex;align-items:center;justify-content:center;position:relative}.visit .map span{background:var(--white);border:1px dashed var(--lgrey);color:var(--charcoal);font-family:var(--font-display);font-weight:700;font-size:11px;letter-spacing:.08em;padding:9px 16px;border-radius:999px}.visit .body{padding:24px 26px 28px}.visit h3{font-size:20px;margin-bottom:10px}.visit .row{display:flex;gap:12px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--line);font-size:16px}.visit .row:last-child{border-bottom:0}.visit .row svg{width:22px;height:22px;flex:none;stroke:var(--charcoal);fill:none;stroke-width:1.8;margin-top:3px}.visit .row b{font-family:var(--font-display)}.visit .row .mailslot a{color:var(--green)}.faqs{display:grid;grid-template-columns:1fr 1fr;gap:18px}.faq{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:26px 28px}.faq h3{font-size:18.5px;margin-bottom:8px}.faq p{font-size:15.5px;line-height:1.58}footer.site{background:var(--charcoal);padding:clamp(56px,8vh,88px) 0 0}footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:44px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,.15)}footer .flogo img{height:48px;width:auto;margin-bottom:18px}footer .about{color:#dadad8;font-size:16px;line-height:1.6;max-width:34ch}footer .socials{display:flex;gap:12px;margin-top:18px}footer .socials a{width:40px;height:40px;border-radius:50%;border:1.5px solid rgba(255,255,255,.35);display:flex;align-items:center;justify-content:center;transition:border-color .15s ease}footer .socials a:hover{border-color:var(--green);opacity:1}footer .socials svg{width:18px;height:18px;fill:#fff}footer .ftitle{font-family:var(--font-display);font-weight:700;font-size:11.5px;letter-spacing:.12em;color:#c7c7c5;margin-bottom:18px}footer .flist{display:flex;flex-direction:column;gap:12px}footer .flist a{color:var(--white);font-size:16px;font-weight:600}footer .fphone{color:var(--white);font-size:22px;font-weight:800}footer .fmuted{color:#dadad8;font-size:16px}footer .legal{padding:26px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}footer .legal span{color:#c7c7c5;font-size:12.5px;font-family:var(--font-display);font-weight:600;letter-spacing:.06em}.foot-space{height:74px}.mobar{position:fixed;bottom:0;left:0;right:0;z-index:60;display:none;background:var(--charcoal);border-top:1px solid rgba(255,255,255,.18);box-shadow:0 -4px 20px #00000040}.mobar a{flex:1;text-align:center;padding:18px 10px;color:var(--white);font-weight:800;font-size:17px}.mobar a.call{border-right:1px solid rgba(255,255,255,.18)}.mobar a.quote{background:var(--green);color:#232322}.header-cta .btn{font-size:16px;padding:14px 24px}@media(max-width:1080px){.picker,.contact-grid,.faqs{grid-template-columns:1fr}}@media(max-width:860px){nav.main,.header-cta .callbox,.header-cta .btn{display:none}.hamburger{display:block}.mobar{display:flex}body{padding-bottom:62px}.brand img{height:46px}}@media(max-width:560px){body{font-size:18px}.frow{grid-template-columns:1fr}footer .cols{grid-template-columns:1fr 1fr}.topbar .tag{display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
