/* Arbor Survey page styles: tools.css - calculator soft-gate pages */
.backlink{display:inline-block;font-weight:600;font-size:.9rem;margin-bottom:18px;}
.tool-gate{display:grid;grid-template-columns:1.15fr 1fr;gap:44px;align-items:start;}
.tg-intro h2{font-size:1.35rem;margin-bottom:.5em;}
.tg-intro p{margin:0 0 1em;}
.tg-points{list-style:none;margin:0 0 1.2em;padding:0;}
.tg-points li{position:relative;padding-left:26px;margin-bottom:10px;font-size:.98rem;}
.tg-points li::before{content:"";position:absolute;left:0;top:7px;width:10px;height:10px;border-radius:50%;border:2px solid var(--sage);}
.tg-note{font-size:.85rem;color:var(--mid-grey);border-left:3px solid var(--light-grey);padding-left:14px;margin:0;}

/* Form card (shared conventions with contact.css) */
.tg-panel{position:sticky;top:96px;}
.form-card{background:#fff;border:1px solid var(--light-grey);border-radius:10px;padding:30px 32px;border-top:4px solid var(--sage);}
.form-card h2{font-size:1.3rem;margin-bottom:.2em;}
.form-field{margin-bottom:18px;}
.form-field label{display:block;font-weight:600;font-size:.88rem;margin-bottom:6px;color:var(--dark-green);}
.form-field input,.form-field select{width:100%;padding:12px 14px;border:1px solid var(--light-grey);border-radius:8px;font-family:inherit;font-size:1rem;color:var(--near-black);background:#fff;}
.form-field input:focus,.form-field select:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px var(--pale-tint);}
.req{color:var(--terracotta);font-weight:700;}
.form-note{font-size:.82rem;color:var(--mid-grey);margin:2px 0 20px;}
.form-consent{font-size:.8rem;color:var(--mid-grey);margin:2px 0 16px;}
.form-err{display:none;background:var(--pale-tint);border-left:4px solid var(--terracotta);border-radius:6px;padding:14px 16px;font-size:.95rem;margin-top:16px;}
.form-err.show{display:block;}
.hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden;}

/* Unlocked state */
.tg-open{background:var(--pale-tint);border:1px solid var(--light-grey);border-top:4px solid var(--positive);border-radius:10px;padding:30px 32px;}
.tg-open h2{font-size:1.3rem;margin-bottom:.3em;}
.tg-open p{margin:0 0 1.1em;font-size:.98rem;}

@media (max-width:880px){ h1{font-size:2rem;} }
@media (max-width:760px){
  .tool-gate{grid-template-columns:1fr;gap:28px;}
  .tg-panel{position:static;}
}
