:root{font-family:Arial,Helvetica,sans-serif;color:#142336;background:#edf1f5;font-size:16px}*{box-sizing:border-box}body{margin:0}header{background:#122031;color:white;padding:23px max(24px,calc((100vw - 1240px)/2));display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{letter-spacing:.07em;font-size:18px}.brand strong{color:#f3b23d}.badge{font-size:12px;letter-spacing:.08em;border:1px solid #526072;padding:8px 10px}main{max-width:1240px;margin:auto;padding:32px 24px}.intro{margin-bottom:27px}h1{font-size:clamp(28px,4vw,42px);letter-spacing:-.035em;margin:10px 0}h2{font-size:20px;margin:0 0 20px}h3{font-size:17px}.eyebrow{font-size:12px;font-weight:bold;letter-spacing:.12em;color:#5d6876}p{line-height:1.5}.workspace{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(310px,1fr);gap:24px;align-items:start}section{background:white;border:1px solid #d9e0e7;padding:25px;border-radius:10px}aside{display:grid;gap:18px}label{display:block;font-size:14px;font-weight:bold;margin:12px 0 8px}input,select,button{font:inherit;min-height:46px;border-radius:5px}input,select{width:100%;padding:12px;border:1px solid #a8b4c1;background:white;color:#142336}button{background:#f3b23d;border:0;padding:11px 16px;font-weight:bold;color:#122031;cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #2776c9;outline-offset:3px}.row{display:flex;gap:10px}.row input{min-width:0}.row button{flex-shrink:0}#message{font-size:14px;color:#536172}#map{height:330px;background:#142336;border-radius:6px;overflow:hidden;color:#f3f6fa;position:relative}#mapEmpty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px;text-align:center;border:1px solid #394a5f}#mapEmpty p{max-width:360px;color:#becbd9;font-size:14px}.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.toolbar button,.secondary{background:#e8edf2;font-size:14px}.divider{height:1px;background:#dde4eb;margin:24px 0}.muted,.spec{font-size:14px;color:#576678}.run{display:flex;gap:10px;margin:12px 0;align-items:end}.run label{flex:1}.run button{background:#eef1f5;font-size:14px}.total,.rate{display:flex;align-items:center;justify-content:space-between;margin-top:22px;padding-top:18px;border-top:1px solid #dce3ea}.total strong{font-size:26px}.rate strong{font-size:20px}.check{display:flex;align-items:center;gap:10px;font-weight:normal;line-height:1.45}.check input{width:19px;min-height:19px;flex-shrink:0}.estimate{background:#122031;color:white;border:none}.estimate .eyebrow{color:#c3d0df}#price{font-size:clamp(28px,4vw,38px);font-weight:bold;color:#f3b23d;letter-spacing:-.03em}.fine{font-size:12px;color:#c0cddd;line-height:1.6}#breakdown,#extraNote{font-size:14px}#review{margin-top:20px;font-size:14px;line-height:1.7}details{margin-top:26px;border:1px solid #d2dce6;padding:18px;border-radius:8px}summary{cursor:pointer;font-weight:bold}details p{font-size:14px}details button{margin-top:12px}footer{text-align:center;padding:28px;font-size:12px;letter-spacing:.06em;color:#677584}@media(max-width:800px){.workspace{grid-template-columns:1fr}header{padding:18px}.brand{font-size:14px}.badge{font-size:10px}main{padding:24px 16px}section{padding:20px}.row{flex-direction:column}#map{height:300px}}@media print{header,details,.toolbar,button{display:none}main{padding:0}.workspace{display:block}section{break-inside:avoid}.estimate{color:#142336;background:white}.fine{color:#536172}}

.fence-point{width:18px;height:18px;border:3px solid white;border-radius:50%;background:#f3b23d;cursor:move;box-shadow:0 1px 5px #0008}.map-run{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;font-size:14px}#print{margin-top:12px}@media print{#map,.measure>label,.measure>.row,.measure>.toolbar,#message,#measurementMode{display:none}.estimate #price{color:#142336}}

.homeLink{color:white;font-size:14px}#requestQuote{margin-top:12px;width:100%}#quoteStatus{font-size:14px}

header{background:#fff;color:#142336;border-bottom:1px solid #d9e0e7;padding-top:12px;padding-bottom:12px}.brand{display:block;line-height:0;flex-shrink:1}.brand img{display:block;width:280px;max-width:100%;height:auto}.homeLink{color:#142336!important}@media(max-width:600px){.brand{max-width:220px}}
