/* website estimator */
.ae{max-width:900px;margin:0 auto 10px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px rgba(20,40,60,.07);padding:26px 28px 0;position:relative}
.ae .ae-pane{padding:0 0 26px!important;margin:0}
.ae [hidden]{display:none!important}
body:has(.ae) .mobilebar{display:none}
.ae h2{font-size:clamp(24px,3vw,30px);margin:0 0 6px}
.ae-help{color:var(--muted);margin:0 0 18px;max-width:64ch}
.ae-steps{display:flex;gap:6px;list-style:none;margin:0 0 22px;padding:0;counter-reset:s}
.ae-steps li{flex:1;font-size:13px;font-weight:600;color:var(--muted);border-top:4px solid var(--line);padding-top:8px;counter-increment:s}
.ae-steps li::before{content:counter(s) ". "}
.ae-steps li.on,.ae-steps li.done{border-color:var(--navy);color:var(--navy)}
.ae-types{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.ae-types button{text-align:left;border:2px solid var(--line);background:#fff;border-radius:10px;padding:18px;cursor:pointer;font:inherit;transition:border-color .2s,background .2s}
.ae-types button:hover,.ae-types button:focus-visible{border-color:var(--navy);background:var(--gold-soft)}
.ae-types b{display:block;font-size:19px;color:var(--navy);margin-bottom:4px}.ae-types span{color:var(--muted);font-size:14px}
.ae-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 16px}
.ae-grid label{display:block;font-size:14px;font-weight:600;color:var(--ink)}
.ae-grid label small{display:block;font-weight:400;color:var(--muted);font-size:12px}
.ae-grid input,.ae-grid select,.ae-grid textarea{display:block;width:100%;margin-top:6px;padding:11px 12px;border:1px solid #cfcfcf;border-radius:6px;font:inherit;font-size:16px;background:#fff}
.ae-grid .ae-wide{grid-column:1/-1}
.ae-sub{grid-column:1/-1;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-dark);margin:6px 0 -4px}
.ae-calc{grid-column:1/-1;background:var(--gold-soft);border-radius:8px;padding:10px 14px;font-size:14px;color:var(--navy)}
.ae-nav{display:flex;gap:10px;justify-content:space-between;margin-top:22px;flex-wrap:wrap}
.ae-cat{border:1px solid var(--line);border-radius:10px;margin:0 0 10px;overflow:hidden}
.ae-cat>summary{cursor:pointer;padding:13px 16px;font-weight:700;color:var(--navy);display:flex;justify-content:space-between;gap:10px;list-style:none;background:#fafafa}
.ae-cat>summary::-webkit-details-marker{display:none}.ae-cat>summary::after{content:"+";font-size:20px;line-height:1}.ae-cat[open]>summary::after{content:"\2212"}
.ae-cat>summary small{font-weight:400;color:var(--muted);margin-left:auto}
.ae-it{display:grid;grid-template-columns:auto 1fr auto;gap:4px 12px;align-items:center;padding:10px 16px;border-top:1px solid var(--line)}
.ae-it input[type=checkbox]{width:20px;height:20px;accent-color:var(--navy)}
.ae-it label{cursor:pointer;font-size:15px}.ae-it label small{display:block;color:var(--muted);font-size:12px;font-weight:400}
.ae-it .q{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}
.ae-it .q input{width:76px;padding:7px 8px;border:1px solid #cfcfcf;border-radius:6px;font:inherit;font-size:16px;text-align:right}
.ae-it:not(.on) .q{visibility:hidden}
.ae-bar{position:sticky;bottom:0;margin:0 -28px;display:flex;justify-content:space-between;align-items:center;padding:14px 28px;background:var(--navy);color:#fff;border-radius:0 0 12px 12px}
.ae-bar b{font-size:20px}
.ae-msg{color:#a23b2a;font-size:14px;margin:0}
.ae-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px}
.ae-done{text-align:left;padding:10px 0}
.ae-range{font-family:var(--font-display);font-size:clamp(34px,6vw,54px);color:var(--navy);margin:4px 0 14px}
.ae-plus{background:var(--gold-soft);border-radius:8px;padding:14px 16px}
@media (max-width:760px){.ae{padding:18px 14px 0;border-radius:8px}.ae-bar{margin:0 -14px}.ae-types{grid-template-columns:1fr}.ae-grid{grid-template-columns:1fr 1fr}.ae-steps li{font-size:0}.ae-steps li::before{font-size:12px}.ae-bar{padding:12px 14px;border-radius:0 0 8px 8px}.ae-it{padding:10px 12px}}
@media (max-width:420px){.ae-grid{grid-template-columns:1fr}}
