
:root{
  --navy:#12233d; --navy2:#1c3557; --ink:#0f1a2b; --muted:#5a6577; --line:#e2e7ef; --bg:#f5f7fa; --card:#fff;
  --gold:#13a06a; --gold2:#0d8456; --goldt:#0d7f52; --goldt2:#0a6943; --focus:#2563eb;
  --serif:"Inter","Helvetica Neue",Arial,system-ui,sans-serif; --r:14px;
  --shadow:0 1px 2px rgba(15,26,43,.05),0 12px 32px -14px rgba(15,26,43,.18);
  --brass:#13a06a; --brassd:#0d7f52; --brassl:#7ee6b6; --evergreen:#0b1628; --evergreen2:#12233d; --ivory:#f5f7fa; --paper:#fff; --sand:#eef2f7;
  --ez-accent:#13a06a; --ez-accent-d:#0d7f52; --ez-soft:#e9f7f0; --ez-dark:#0b1628;
}
body{background:#fff;color:var(--ink)}
.btn{text-transform:none;letter-spacing:0;border-radius:12px;font-size:15.5px;font-weight:650;padding:0 20px}
.btn.primary{background:var(--ez-accent);color:#fff}
.btn.primary:hover{background:var(--ez-accent-d);color:#fff}
.btn.secondary{border-radius:12px;color:var(--ez-dark);border-color:var(--ez-dark);background:#fff}
.zm-popup .btn{text-transform:none;letter-spacing:0}
.card{border-radius:16px}
.inp input,.inp select,.inp textarea{background:#fff;border-color:#d4dbe5}
.seg{background:#eef2f7}
.note{background:#f3f6fa;border-left-color:var(--ez-accent)}
.ez-top{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.ez-top .wrap{display:flex;align-items:center;gap:12px;min-height:60px}
.ez-logo{display:inline-flex;align-items:center;gap:9px;font-weight:800;font-size:20px;letter-spacing:-.3px;color:var(--ez-dark);text-decoration:none}
.ez-logo svg{width:28px;height:28px;flex:0 0 auto}
.ez-nav{margin-left:auto;display:flex;align-items:center;gap:4px}
.ez-nav a{color:var(--ink);text-decoration:none;font-weight:600;font-size:15px;padding:8px 10px;border-radius:10px}
.ez-nav a:hover{background:#f1f4f8}
.ez-nav .ez-hide-s{display:none}
.ez-cartbtn{position:relative;display:inline-flex;align-items:center;gap:6px}
.ez-cartbtn svg{width:22px;height:22px}
.ez-count{min-width:20px;height:20px;border-radius:10px;background:var(--ez-accent);color:#fff;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}
.ez-count[data-n="0"]{background:#c9d1dc}
.ez-staging{background:#fff7e0;color:#6b4e00;font-size:13px;text-align:center;padding:6px 12px;border-bottom:1px solid #f1e2b3}
.ez-hero{background:radial-gradient(1200px 500px at 85% -10%,#dff5ea 0,rgba(223,245,234,0) 60%),linear-gradient(180deg,#fff 0,#f5f7fa 100%);padding:40px 0 22px}
.ez-hero h1{font-size:clamp(32px,8.5vw,58px);line-height:1.04;letter-spacing:-1.2px;color:var(--ez-dark);font-weight:800;max-width:15ch}
.ez-hero h1 em{font-style:normal;color:var(--ez-accent-d)}
.ez-hero p.lede{font-size:18px;color:var(--muted);max-width:56ch;margin:14px 0 18px}
.ez-pills{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.ez-pills li{background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:14px;font-weight:600;color:#2a3546}
.ez-pills li b{color:var(--ez-accent-d)}
.ez-mapsec{padding:8px 0 28px;background:#f5f7fa}
#zoning.tool{padding-top:8px}
.ez-mapsec .zm-wrap{border-radius:16px}
.ez-mapsec .zn-views{max-width:360px}
.zm-map{height:clamp(440px,70svh,760px)}
.ez-sec{padding:52px 0}
.ez-sec.alt{background:#f5f7fa}
.ez-sec h2{font-size:clamp(26px,6vw,38px);letter-spacing:-.6px;color:var(--ez-dark);font-weight:800;margin:6px 0 8px}
.ez-sec .ez-subp{color:var(--muted);font-size:17px;max-width:60ch;margin:0 0 24px}
.eyebrow{color:var(--ez-accent-d)}
.ez-steps{display:grid;gap:14px;grid-template-columns:1fr;counter-reset:s;list-style:none;margin:0;padding:0}
.ez-steps li{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:var(--shadow)}
.ez-steps li::before{counter-increment:s;content:counter(s);display:inline-flex;width:34px;height:34px;border-radius:10px;background:var(--ez-soft);color:var(--ez-accent-d);font-weight:800;align-items:center;justify-content:center;margin-bottom:10px}
.ez-steps h3{font-size:18px;color:var(--ez-dark);margin:0 0 4px}
.ez-steps p{margin:0;color:var(--muted)}
.ez-plans{display:grid;gap:16px;grid-template-columns:1fr}
.ez-plan{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow);display:flex;flex-direction:column}
.ez-plan.feat{border:2px solid var(--ez-accent);}
.ez-plan .tag{position:absolute;top:-12px;left:20px;background:var(--ez-accent);color:#fff;font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;padding:4px 10px;border-radius:999px}
.ez-plan h3{font-size:20px;color:var(--ez-dark);margin:0}
.ez-price{font-size:40px;font-weight:800;letter-spacing:-1px;color:var(--ez-dark);margin:8px 0 2px}
.ez-price small{font-size:16px;font-weight:600;color:var(--muted);letter-spacing:0}
.ez-plan ul{margin:14px 0 18px;padding:0 0 0 20px;color:#2a3546}
.ez-plan li{margin:6px 0}
.ez-plan .btn{margin-top:auto;width:100%}
.ez-soon{display:inline-block;font-size:12px;font-weight:700;color:#6b4e00;background:#fff3cf;border-radius:6px;padding:2px 8px;margin-left:6px;vertical-align:middle}
.ez-faq details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:4px 18px;margin-bottom:10px}
.ez-faq summary{cursor:pointer;font-weight:700;font-size:17px;padding:14px 0;color:var(--ez-dark);list-style:none;display:flex;justify-content:space-between;gap:10px}
.ez-faq summary::after{content:"+";font-size:22px;line-height:1;color:var(--ez-accent-d)}
.ez-faq details[open] summary::after{content:"–"}
.ez-faq p{margin:0 0 14px;color:#3a4556}
.ez-foot{background:var(--ez-dark);color:#c6d0dd;padding:40px 0 28px;font-size:14px}
.ez-foot a{color:#fff}
.ez-foot .ez-logo{color:#fff}
.ez-foot nav{display:flex;flex-wrap:wrap;gap:6px 16px;margin:14px 0}
.ez-foot .disc{border-top:1px solid #23324a;margin-top:18px;padding-top:16px;color:#9fb0c5;font-size:13px;line-height:1.55}
.ez-credit{color:#c6d0dd}

.ez-cta{display:flex;flex-direction:column;gap:8px;margin:12px 0 4px}
.ez-cta .btn{min-height:44px;font-size:15px;width:100%;padding:0 12px}
.ez-cta .btn.ghost{background:#fff;color:var(--ez-dark);border:1.5px solid #cfd7e2}
.ez-cta .ez-cov{font-size:12.5px;color:var(--muted);margin:2px 0 0;line-height:1.4}
.zm-popup .ez-cta .btn{min-height:40px;font-size:14px;border-radius:10px}
.ez-toast{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);background:var(--ez-dark);color:#fff;padding:12px 16px;border-radius:12px;font-weight:600;z-index:200;box-shadow:var(--shadow);max-width:92vw}
.ez-toast a{color:#9ff0c9;margin-left:8px}

.ez-page{padding:28px 0 56px;background:#f5f7fa;min-height:60vh}
.ez-page h1{font-size:clamp(28px,7vw,40px);letter-spacing:-.6px;color:var(--ez-dark);font-weight:800;margin:0 0 6px}
.ez-co[hidden],.ez-done[hidden]{display:none!important}
.ez-co{display:grid;gap:16px;grid-template-columns:1fr;align-items:start}
.ez-item{display:grid;grid-template-columns:1fr auto;gap:8px 12px;padding:14px 0;border-bottom:1px solid var(--line)}
.ez-item:last-child{border-bottom:0}
.ez-item .zone{font-size:13px;color:var(--muted)}
.ez-item .price{font-weight:800;color:var(--ez-dark);white-space:nowrap}
.ez-item .row2{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ez-item .row2 select{min-height:40px;font-size:15px;border:1.5px solid #d4dbe5;border-radius:10px;padding:0 10px;background:#fff;font-family:inherit}
.ez-item .row2 input{flex:1 1 220px;min-height:40px;font-size:15px;border:1.5px solid #d4dbe5;border-radius:10px;padding:0 10px;font-family:inherit}
.ez-rm{background:none;border:0;color:#b42318;font-weight:600;cursor:pointer;font-family:inherit;font-size:14px;min-height:40px}
.ez-total{display:flex;justify-content:space-between;font-weight:800;font-size:18px;padding-top:12px;border-top:2px solid var(--ez-dark);margin-top:6px}
.ez-pay{background:#fff8e6;border:1px solid #f1dfaa;border-radius:12px;padding:14px;color:#5a4300;font-size:15px}
.ez-disc{max-height:150px;overflow:auto;font-size:13px;color:#3a4556;background:#f7f9fc;border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.ez-check{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;margin:12px 0}
.ez-check input{width:20px;height:20px;margin-top:2px;flex:0 0 auto}
.ez-err{color:#b42318;font-weight:600;font-size:14px;margin:8px 0 0}
.ez-empty{text-align:center;padding:24px 8px;color:var(--muted)}
.ez-done{text-align:center;padding:28px 16px}
.ez-done .big{font-size:30px;font-weight:800;color:var(--ez-dark);margin:8px 0}
.ez-hp{position:absolute;left:-5000px}
.ez-draft{display:inline-block;background:#fde8e8;color:#9b1c1c;font-weight:800;font-size:13px;letter-spacing:.8px;padding:4px 10px;border-radius:6px;margin-bottom:10px}
.ez-legal{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;max-width:820px}
.ez-legal h2{font-size:20px;margin:22px 0 8px;color:var(--ez-dark)}
.ez-legal p{color:#2f3a4b}
@media (min-width:720px){
  .ez-nav .ez-hide-s{display:inline-block}
  .ez-hero{padding:64px 0 30px}
  .ez-steps{grid-template-columns:repeat(3,1fr)}
  .ez-plans{grid-template-columns:repeat(3,1fr)}
  .ez-co{grid-template-columns:1.2fr 1fr}
  .ez-cta{flex-direction:row;flex-wrap:wrap}
  .ez-cta .btn{width:auto;flex:1 1 auto}
  .zm-popup .ez-cta{flex-direction:column}
  .zm-popup .ez-cta .btn{width:100%}
}

.ez-promo{margin-top:14px}
.ez-promo .field{margin-bottom:6px}
.ez-promo-row{display:flex;gap:8px;align-items:stretch}
.ez-promo-row .inp{flex:1;min-width:0;display:flex}
.ez-promo-row input{width:100%;min-height:44px;text-transform:uppercase;letter-spacing:.04em}
.ez-promo-row .btn{min-height:44px;padding:0 18px;white-space:nowrap}
.ez-promo-msg{font-size:14px;font-weight:600;margin:6px 0 0}
.ez-promo-msg.ok{color:#0d7f52}.ez-promo-msg.bad{color:#b42318}
.ez-line{display:flex;justify-content:space-between;font-size:15px;padding:4px 0}
.ez-line.disc{color:#0d7f52;font-weight:600}
.ez-line .rm{background:none;border:0;color:inherit;text-decoration:underline;cursor:pointer;font:inherit;padding:0 0 0 8px}

.ez-stack>*+*{margin-top:14px}
.ez-badge{display:inline-block;font-size:12.5px;font-weight:700;padding:3px 10px;border-radius:999px;background:#fff8e6;color:#5a4300;border:1px solid #f1dfaa;white-space:nowrap}
.ez-badge.on{background:#e7f5ee;color:#0d7f52;border-color:#bfe3d1}
.ez-meter{height:10px;border-radius:99px;background:#e9edf1;overflow:hidden;margin:6px 0 4px}
.ez-meter i{display:block;height:100%;background:var(--ez-accent)}
.ez-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.ez-row:last-child{border-bottom:0}
.ez-row .sub{color:var(--muted);font-size:13.5px}
.ez-row .act{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.ez-row .act .btn{min-height:38px;padding:6px 12px;font-size:14px}
.ez-planpick{border:0;padding:0;margin:0 0 12px}
.ez-planpick label{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:12px;margin-top:8px;cursor:pointer}
.ez-planpick input{width:20px;height:20px;margin-top:2px;flex:0 0 auto}
@media (min-width:900px){.ez-plans:has(> .ez-plan:not(.ez-custom):nth-child(4)){grid-template-columns:repeat(2,1fr)}}
@media (min-width:1180px){.ez-plans:has(> .ez-plan:not(.ez-custom):nth-child(4)){grid-template-columns:repeat(4,1fr)}}

.ez-sec h1{font-size:clamp(26px,6vw,38px);letter-spacing:-.6px;color:var(--ez-dark);font-weight:800;margin:6px 0 8px}
.ez-nav a[aria-current="page"]{color:var(--ez-accent-d)}
.ez-menubtn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;background:none;border-radius:10px;color:var(--ink);cursor:pointer;padding:0}
.ez-menubtn:hover{background:#f1f4f8}
.ez-menubtn svg{width:24px;height:24px}
.ez-menu{border-top:1px solid var(--line);background:#fff}
.ez-menu[hidden]{display:none}
.ez-top .ez-menu .wrap{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:0;padding-top:4px;padding-bottom:10px}
.ez-menu a{text-align:left;padding:13px 4px;font-weight:600;font-size:16px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}
.ez-menu a:last-child{border-bottom:0}
@media (min-width:720px){.ez-menubtn,.ez-menu{display:none!important}}
.ez-nav a{white-space:nowrap}

.ez-plan.ez-custom{grid-column:1/-1;display:grid;grid-template-columns:1fr;gap:16px;align-items:center}
.ez-cu-head h3{margin:0}
.ez-cu-tag{margin:6px 0 0;color:var(--muted);font-weight:600;font-size:16px}
.ez-cu-note{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.35}
.ez-plan ul.ez-cu-tiers{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:12px}
.ez-cu-tiers li{margin:0;border:1px solid var(--line);border-radius:12px;background:var(--bg);padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.ez-cu-min{font-size:13px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--ez-accent-d)}
.ez-cu-num{font-size:30px;font-weight:800;letter-spacing:-.5px;color:var(--ez-dark);line-height:1.15}
.ez-cu-num small{font-size:15px;font-weight:600;color:var(--muted);letter-spacing:0}
.ez-cu-inc{font-size:14.5px;color:#2a3546}
.ez-cu-cta{display:flex;flex-direction:column;gap:8px;align-items:stretch;text-align:center}
.ez-cu-cta .btn{margin-top:0;width:100%}
.ez-cu-cta small{color:var(--muted);font-size:13.5px}
.ez-cu-cta small a.ez-cu-more{color:var(--brassd);font-size:inherit;font-weight:600;text-decoration:none}
.ez-cu-cta small a.ez-cu-more:hover,.ez-cu-cta small a.ez-cu-more:focus-visible{text-decoration:underline}
@media (min-width:700px){.ez-plan ul.ez-cu-tiers{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1000px){.ez-plan.ez-custom{grid-template-columns:170px 1fr 210px;gap:24px}}

.ez-draft-sm{font-size:12px;color:#8a5a00;background:#fff6e0;display:inline-block;padding:2px 8px;border-radius:5px;margin:0 0 8px}
.ez-legal ul{padding-left:20px;color:#2f3a4b}.ez-legal li{margin:4px 0}
.ez-upd{font-size:13px;color:#5b6676}
.ez-bracket{background:#f6f7f9;border-left:3px solid #c3cad5;padding:10px 12px;font-size:14px}
.ez-legal-links{margin:14px 0 6px;font-size:13.5px;color:#c6d0dd}.ez-legal-links span{margin-right:10px;color:#fff}
.ez-renew-sm{font-size:12.5px;line-height:1.45;color:#5b6676;margin:10px 0 0;text-align:center}.ez-renew-sm a{color:#0d7f52}
.ez-renew{font-size:14px;margin:14px 0 6px;color:#1d2433}
.ez-cancel{margin-top:10px}.ez-cancel a{color:#0d7f52;font-weight:600}
.ez-disc-lbl{font-weight:800;margin:0 0 6px;color:#0b1628}
.ez-disc+.ez-disc{margin-top:10px}
.zm-attrib{font-size:12px;color:#5b6676;margin:8px 2px 0;line-height:1.5}.zm-attrib a{color:#0d7f52}

.ez-own{border:1px solid #d9e2dc;border-radius:10px;background:#f7faf8;padding:10px 12px;margin:4px 0;font-size:13px;line-height:1.4;text-align:left}
.ez-own-lock{background:#fbfaf6;border-style:dashed}
.ez-own-h{font-weight:700;margin:0 0 6px;font-size:13.5px;color:var(--ez-dark)}
.ez-own-t{margin:0 0 4px;color:var(--muted);font-size:12.5px}
.ez-own dl{margin:0;display:grid;grid-template-columns:minmax(90px,38%) 1fr;gap:4px 10px}
.ez-own dt{color:var(--muted);font-size:12px}
.ez-own dd{margin:0;font-size:12.5px;word-break:break-word}
.ez-own-src{margin:6px 0 0;font-size:11.5px;color:var(--muted)}
.ez-own-warn{margin:0 0 6px;padding:6px 8px;border-left:3px solid #b00020;background:#fdeceb;color:#7a0016;font-size:12px;font-weight:600}
.zm-popup .ez-own dl{grid-template-columns:1fr}
