.planner-page{padding:35px 4% 65px;background:#f4f5f6}.app-title{display:flex;justify-content:space-between;align-items:center;gap:25px;max-width:1400px;margin:auto auto 28px}.app-title h1{font-size:49px;line-height:1.12;margin:13px 0 9px}.app-title p{font-size:15px;color:#66727c;margin:0}.app-title .eyebrow{font-size:11px;letter-spacing:1.5px}#plan-workflow,#quote-workflow{max-width:1400px;margin:auto;background:white;border:1px solid #dce2e7;border-radius:3px;overflow:hidden}.wizard-progress,.quote-progress{list-style:none;display:flex;margin:0;padding:22px 32px;border-bottom:1px solid #dde4e8;gap:16px;justify-content:space-between;background:#fafbfc}.wizard-progress li{flex:1}.wizard-progress button{border:0;background:transparent;display:flex;align-items:center;gap:10px;color:#74838f;font-size:14px;padding:0;text-align:left}.wizard-progress button>span,.quote-progress li>span{display:grid;place-items:center;flex-shrink:0;width:29px;height:29px;border-radius:50%;border:1px solid #c4cfd6;font-size:12px}.wizard-progress button[aria-current=step]{color:#20262b;font-weight:600}.wizard-progress button[aria-current=step]>span,.quote-progress li.current>span{color:var(--gold);background:var(--charcoal);border-color:var(--charcoal)}#plan-form,#quote-form{padding:35px}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font-family:'Libre Caslon Display',Georgia,serif;font-size:34px;line-height:1.2;letter-spacing:-.3px;padding:0;margin-bottom:12px;max-width:100%}.step-copy{font-size:15px;color:#687985;max-width:850px;margin-bottom:26px}.property-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.choice{border:1px solid #d3dde4;padding:18px;display:flex;gap:12px;align-items:center;background:#fafbfc;cursor:pointer;border-radius:2px;min-height:80px;margin:0;font-size:16px;transition:border-color .2s,background .2s}.choice:has(input:checked){border-color:#b19150;background:#faf6ed}.choice:has(input:focus-visible){outline:3px solid #b19150;outline-offset:3px}.choice span{min-width:0}.choice:hover{border-color:#a4b3be}.choice input{flex-shrink:0}.service-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.service-choice{align-items:flex-start}.service-choice input{margin-top:5px}.service-choice b{font-size:16px;font-weight:500}.service-choice small{display:block;font-size:13px;color:#667886;line-height:1.7;margin-top:7px}.wizard-controls{display:flex;align-items:center;gap:15px;border-top:1px solid #dce4e9;padding-top:24px;margin-top:30px;flex-wrap:wrap}.wizard-controls>span{font-size:13px;color:#768591}.wizard-controls #plan-next,.wizard-controls #plan-to-quote,.wizard-controls #quote-next,.wizard-controls #quote-send{margin-left:auto}.plan-privacy{display:flex;justify-content:space-between;gap:25px;padding:18px 35px;border-top:1px solid #e0e6ea;background:#fafbfc;font-size:12px;color:#7a8993}.plan-privacy button,.text-button{background:none;border:0;border-bottom:1px solid #b5c1ca;padding:0;color:#82632d;font-size:13px;flex-shrink:0}.upload-bar{display:flex;justify-content:space-between;align-items:center;gap:25px;background:#f4f6f8;border:1px solid #dce4e9;padding:18px 22px;margin-bottom:12px}.upload-label{margin:0;font-size:14px}.upload-label input{font-size:13px;background:white;max-width:440px;padding:9px;min-height:38px}.upload-bar>div{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.layout-shell{display:grid;grid-template-columns:180px 1fr;gap:20px;margin-top:18px}.layout-tools{padding:16px;border:1px solid #d8e2e9;background:#f7f9fa;min-width:0}.tool-heading{font-size:11px;letter-spacing:1px;color:#6f7e88;display:block;margin-bottom:13px}.layout-tools button[data-marker-tool]{width:100%;display:flex;gap:10px;align-items:center;border:1px solid #d4dfe6;padding:11px 9px;background:white;color:#2d414f;font-size:13px;margin-bottom:9px;text-align:left;cursor:grab}.layout-tools button[data-marker-tool] b{display:grid;place-items:center;flex-shrink:0;width:24px;height:24px;border-radius:50%;font-size:12px;background:#253b4a;color:#fff}.layout-tools button[data-marker-tool][aria-pressed=true]{border-color:#b5975d;background:#fcf8f0}.layout-tools button[data-marker-tool][aria-pressed=true] b{background:#9a782e}.layout-tools .list-add{border:0;background:var(--charcoal);color:white;font-size:12px;padding:10px;width:100%;margin:7px 0 5px;min-height:40px}.layout-tools .field-note{font-size:12px}.layout-main{min-width:0}.board-heading{display:flex;justify-content:space-between;gap:20px;padding:0 0 10px;font-size:12px;color:#627786}.layout-board{position:relative;width:100%;aspect-ratio:16/10;background-color:#fbfcfd;background-image:linear-gradient(#e2e8ec 1px,transparent 1px),linear-gradient(90deg,#e2e8ec 1px,transparent 1px);background-size:5% 8%;border:1px solid #c9d5de;overflow:hidden;touch-action:pan-y;cursor:crosshair}.layout-board>img{position:absolute;width:100%;height:100%;object-fit:contain;pointer-events:none;background:white}.layout-board>svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}#marker-layer{position:absolute;inset:0;pointer-events:none}.map-marker{position:absolute;width:34px;height:34px;min-height:34px;border-radius:50%;border:2px solid white;box-shadow:0 2px 7px #0003;transform:translate(-50%,-50%);color:white;background:#294657;display:grid;place-items:center;z-index:3;pointer-events:auto;font-size:13px;font-weight:600;padding:0;cursor:grab;touch-action:none}.map-marker.selected{outline:3px solid #d6b570;outline-offset:2px;z-index:4}.map-marker.camera{background:#9d792f}.map-marker.alarm{background:#7a3434}.map-marker.patrol{background:#47736a}.map-marker.access{background:#5e527a}.marker-direction{position:absolute;right:-6px;top:12px;width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:7px solid currentColor;transform-origin:-11px 4px;color:#fff}.board-watermark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;color:#9aaab5;font-size:12px;letter-spacing:1px;pointer-events:none;width:80%;line-height:1.8}.board-watermark small{font-size:12px;letter-spacing:0;color:#a7b4bc}.board-legend{display:flex;flex-wrap:wrap;gap:15px;font-size:11px;color:#7b8b97;padding:13px 0}.marker-management{display:grid;grid-template-columns:.9fr 1.1fr;gap:25px;margin-top:23px}.marker-list-panel,.marker-editor{padding:23px;border:1px solid #dbe4eb;background:#f8fafb;min-width:0}.marker-list-panel h3,.marker-editor h3{font-size:19px}.marker-row{display:flex;align-items:center;gap:10px;border-bottom:1px solid #dce5eb;padding:10px 0}.marker-row>button{border:0;background:none;text-align:left;min-width:0;flex:1;font-size:14px;line-height:1.5;color:#425c6f}.marker-row.active>button{color:#8a6729;font-weight:600}.marker-row small{display:block;font-size:12px;color:#7c8b96}.marker-editor .form-grid{gap:0 18px}.marker-editor label{font-size:13px;margin-bottom:14px}.marker-editor input,.marker-editor textarea{font-size:14px;padding:9px 10px}.marker-editor input[type=range]{padding:0;accent-color:#9a792f}.marker-editor textarea{min-height:80px}.remove-marker{border:1px solid #bb9696;color:#883b3b;background:white;min-height:39px;padding:8px 13px;font-size:13px}.planning-note{margin-top:23px;line-height:1.8;font-size:13px}.review-header{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:20px}.review-header h3{font-size:25px;margin:0}.review-dl{display:grid;grid-template-columns:190px 1fr;gap:10px;font-size:15px;margin:0 0 25px}.review-dl dt{color:#778792}.review-dl dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.review-panel{padding:25px;background:#f7f9fa;border:1px solid #dce5ec;margin-bottom:20px}.review-panel h3{font-size:20px}.review-services{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 23px}.review-services span{font-size:13px;padding:7px 12px;background:#ece7db;color:#735626;border:1px solid #d9cbaa}.review-image svg{width:100%;height:auto;max-height:560px;border:1px solid #dce4e9;background:#fff}.review-markers{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.review-markers th,.review-markers td{padding:12px;border-bottom:1px solid #dce4e9;vertical-align:top;overflow-wrap:anywhere}.review-markers th{font-weight:500;color:#6c7d89}.review-markers td{white-space:pre-wrap}.review-table-scroll{overflow-x:auto}.review-markers{min-width:600px}.quote-heading{padding:35px 35px 25px}.quote-heading h2{font-size:43px;margin:13px 0 18px}.quote-heading>p{color:#6b7b88;font-size:15px}.quote-progress{justify-content:flex-start;gap:45px}.quote-progress li{display:flex;align-items:center;gap:9px;font-size:14px;color:#7f8c96}.quote-progress li.current{color:#253643;font-weight:500}.quote-service-options{display:grid;grid-template-columns:1fr 1fr;gap:10px 25px;background:#f6f8fa;border:1px solid #dae3e9;padding:23px;margin-bottom:25px}.quote-service-options label{margin:0;font-size:14px}.honey{display:none!important}.consent-label{margin-top:25px}.consent-label a{text-decoration:underline;color:#856728}.quote-step legend{margin-bottom:25px}.quote-step .notice{margin-top:25px}#print-plan{padding:30px;font-family:Arial,sans-serif}.print-summary h1{font-size:36px}.print-summary h2{font-size:23px}.print-summary p,.print-summary dt,.print-summary dd{font-size:14px}.print-summary .review-image svg{max-height:500px}
@media(max-width:1050px){.planner-page{padding:28px 4% 45px}.property-grid{grid-template-columns:repeat(3,1fr)}.layout-shell{grid-template-columns:145px 1fr;gap:14px}.layout-tools{padding:12px}.layout-tools button[data-marker-tool]{font-size:12px;padding:9px 6px;gap:7px}.layout-tools button[data-marker-tool] b{width:20px;height:20px;font-size:10px}.marker-management{gap:18px}.marker-list-panel,.marker-editor{padding:20px}.quote-progress{gap:28px}}
@media(max-width:750px){.app-title{align-items:flex-start;flex-direction:column;gap:17px}.app-title h1{font-size:40px}.app-title .eyebrow{font-size:10px}.wizard-progress{padding:20px;gap:10px}.wizard-progress button{flex-direction:column;align-items:center;gap:7px;width:100%;font-size:12px}.wizard-progress button>span{width:25px;height:25px;font-size:11px}#plan-form,#quote-form{padding:25px}legend{font-size:30px}.property-grid{grid-template-columns:1fr 1fr}.choice{padding:15px;min-height:70px;font-size:15px}.service-choice-grid{grid-template-columns:1fr}.service-choice b{font-size:15px}.upload-bar{align-items:stretch;flex-direction:column;gap:18px;padding:17px}.upload-bar>div{justify-content:flex-start}.upload-label input{max-width:none}.layout-shell{grid-template-columns:1fr;gap:16px}.layout-tools{display:flex;flex-wrap:wrap;gap:8px;padding:13px}.tool-heading{width:100%;margin:0}.layout-tools button[data-marker-tool]{width:auto;flex:1 1 125px;margin:0;font-size:12px;padding:10px 8px}.layout-tools .list-add{width:auto;flex:1 1 125px;margin:0}.layout-tools .field-note{width:100%;margin:0}.board-heading{font-size:11px}.layout-board{aspect-ratio:4/3}.map-marker{width:32px;height:32px;min-height:32px;font-size:12px}.marker-management{grid-template-columns:1fr;gap:16px}.board-legend{gap:10px;font-size:10px}.marker-editor .form-grid{grid-template-columns:1fr 1fr}.marker-editor .span-all{grid-column:1/-1}.marker-editor input{font-size:16px}.plan-privacy{padding:17px 25px;font-size:11px;gap:15px}.wizard-controls{gap:12px}.wizard-controls>span{font-size:11px}.wizard-controls .button{padding:12px 17px;font-size:13px}.review-panel{padding:20px}.review-dl{grid-template-columns:1fr;gap:3px;font-size:14px}.review-dl dt{margin-top:10px}.review-header h3{font-size:21px}.review-services span{font-size:12px}.quote-heading{padding:25px}.quote-heading h2{font-size:34px}.quote-progress{padding:18px 25px;gap:19px;justify-content:space-between}.quote-progress li{font-size:12px;flex-direction:column;gap:7px}.quote-progress li>span{width:25px;height:25px;font-size:11px}.quote-service-options{grid-template-columns:1fr;padding:20px;gap:12px}.planning-note{font-size:12px}.step-copy{font-size:14px}.board-watermark{font-size:10px}.board-watermark small{font-size:10px}}
@media(max-width:420px){#plan-form,#quote-form{padding:21px}.wizard-progress{padding:18px 15px;gap:8px}.wizard-progress button{font-size:11px}.property-grid{gap:10px}.choice{padding:13px;gap:10px}.app-title h1{font-size:35px}.wizard-controls{gap:10px}.wizard-controls .button{font-size:12px;padding:11px 14px}.wizard-controls #plan-to-quote{width:100%;margin:5px 0 0}.quote-heading{padding:22px}.marker-editor .form-grid{grid-template-columns:1fr}.marker-editor .span-all{grid-column:auto}.board-legend{font-size:9px}.plan-privacy{flex-direction:column;align-items:flex-start}.upload-bar .button{font-size:12px;padding:8px 12px}.quote-progress{padding:18px 21px;gap:12px}}
@media print{body>*{display:none!important}#print-plan{display:block!important;background:white;color:black}#print-plan *{animation:none!important;transition:none!important}.review-image{break-inside:avoid}.review-panel{border:0;padding:0;break-inside:auto}.review-markers{min-width:0;font-size:11px}.review-markers th,.review-markers td{padding:7px}.review-dl{grid-template-columns:140px 1fr;font-size:12px}h1,h2,h3{break-after:avoid}@page{margin:14mm}}
.marker-direction{left:50%;top:50%;right:auto;transform-origin:0 0}.map-label{position:absolute;left:calc(100% + 7px);top:50%;transform:translateY(-50%);font-size:10px;font-weight:400;line-height:1.4;max-width:145px;color:#334d60;background:#ffffffde;border:1px solid #d7e1e9;padding:3px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.map-marker.selected .map-label{background:#fff5dd;border-color:#cbb27e}.layout-board{aspect-ratio:16/10}
.layout-tools button[data-marker-tool]{font-size:14px}.quote-progress li{font-size:14px}.step-copy{font-size:16px}

#print-plan{display:none}@media print{#print-plan{display:block!important}}
