#plan-comparison{--ink:#193238;--green:#285542;--paper:#f4f6f2;--sage:#e4ecdf;--muted:#67736c;--line:#cad4cd}
#plan-comparison *{box-sizing:border-box}
#plan-comparison{margin:0;background:var(--paper);color:var(--ink);font-family:"Malgun Gothic","Apple SD Gothic Neo",sans-serif;line-height:1.7;word-break:keep-all}
#plan-comparison button,#plan-comparison a{-webkit-tap-highlight-color:transparent}
#plan-comparison button{font:inherit;cursor:pointer}
#plan-comparison button:focus-visible,#plan-comparison a:focus-visible{outline:3px solid #a5792c;outline-offset:4px}
#plan-comparison .preview{padding:11px 6%;background:var(--ink);color:#fff;font-size:13px;display:flex;justify-content:space-between;gap:14px}
#plan-comparison .preview span:last-child{color:#c6d7ce}
#plan-comparison main{max-width:1440px;margin:auto;padding:50px 5% 60px}
#plan-comparison .intro{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:30px}
#plan-comparison .intro h1{font-size:clamp(29px,3.2vw,44px);font-weight:600;line-height:1.4;letter-spacing:-1.6px;margin:0}
#plan-comparison .intro p{color:var(--muted);font-size:16px;max-width:405px;margin:0 0 5px}
#plan-comparison .switch{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0;border-top:1px solid var(--line)}
#plan-comparison .switch>p{margin:0;font-size:16px}
#plan-comparison .tabs{display:flex;gap:4px;background:#e7ebe6;padding:4px;border-radius:7px}
#plan-comparison .tabs button{border:0;background:transparent;color:#58645d;border-radius:4px;padding:11px 20px;line-height:1.5;font-weight:600}
#plan-comparison .tabs button[aria-selected=true]{background:var(--green);color:white}
#plan-comparison .compare{display:grid;grid-template-columns:1fr 1fr;gap:22px}
#plan-comparison .plan{background:#fff;border:1px solid var(--line);min-width:0}
#plan-comparison .plan.selected{border:2px solid var(--green)}
#plan-comparison .plan-head{padding:23px 26px 18px;display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line)}
#plan-comparison .plan-head h2{margin:0;font-size:25px;letter-spacing:-.8px}
#plan-comparison .plan-head p{margin:1px 0 0;color:var(--muted);font-size:13px}
#plan-comparison .far{font-size:24px;font-weight:600;white-space:nowrap}
#plan-comparison .selected .plan-head{background:var(--sage)}
#plan-comparison .drawing{margin:0;aspect-ratio:1.342;position:relative;background:#fff;display:flex;align-items:center;justify-content:center}
#plan-comparison .drawing img{display:block;width:100%;height:100%;object-fit:contain}
#plan-comparison .enlarge{position:absolute;bottom:12px;right:12px;background:var(--ink);color:#fff;border:1px solid #fff;padding:7px 13px;border-radius:3px;font-size:13px}
#plan-comparison .pending{margin:19px;align-self:stretch;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border:1px dashed #bac6be;background:repeating-linear-gradient(0deg,transparent,transparent 29px,#eef1ed 30px),repeating-linear-gradient(90deg,transparent,transparent 29px,#eef1ed 30px),#fafbf9;padding:22px}
#plan-comparison .pending svg{width:55px;height:65px;margin-bottom:17px;stroke:#71887a;fill:#fafbf9;stroke-width:1.5}
#plan-comparison .pending strong{font-size:21px;font-weight:500;background:#fafbf9}
#plan-comparison .pending p{font-size:14px;color:var(--muted);margin:12px 0;background:#fafbf9}
#plan-comparison .pending small{font-size:12px;color:#78857b;background:#fafbf9}
#plan-comparison .plan-foot{padding:17px 25px;border-top:1px solid var(--line);display:flex;gap:15px;align-items:center;justify-content:space-between;min-height:78px}
#plan-comparison .plan-foot strong{font-size:17px;font-weight:500}
#plan-comparison .plan-foot p{margin:0;font-size:13px;color:var(--muted);max-width:290px}
#plan-comparison .purpose{display:flex;gap:20px;padding:21px 25px;margin-top:19px;background:var(--sage);align-items:center}
#plan-comparison .purpose strong{font-size:19px;flex:0 0 auto}
#plan-comparison .purpose p{margin:0;color:#445c4e;font-size:15px}
#plan-comparison .questions{margin-top:40px}
#plan-comparison .questions h2{font-size:23px;font-weight:500;margin:0 0 20px;letter-spacing:-.6px}
#plan-comparison .question-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
#plan-comparison .question-grid article{border-top:2px solid #97aa9c;padding-top:15px}
#plan-comparison .question-grid h3{font-size:19px;font-weight:600;margin:0 0 8px}
#plan-comparison .question-grid p{font-size:14px;margin:0;color:var(--muted)}
#plan-comparison .note{font-size:12px;color:#728076;margin-top:28px}
#plan-comparison dialog{border:0;padding:0;background:#f4f6f2;max-width:96vw;max-height:94dvh;width:1350px;color:var(--ink)}
#plan-comparison dialog::backdrop{background:#102328db}
#plan-comparison .dialog-head{display:flex;align-items:center;justify-content:space-between;padding:10px 18px;gap:14px;position:sticky;top:0;background:var(--paper)}
#plan-comparison .dialog-head button{background:var(--ink);color:#fff;border:0;padding:8px 17px}
#plan-comparison .dialog-body{overflow:auto;max-height:80dvh}
#plan-comparison .dialog-body img{display:block;width:100%;height:auto}
#plan-comparison .dialog-head strong{font-size:15px}
#plan-comparison footer{padding:22px 5%;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
#plan-comparison .source-check{margin-top:26px;padding:16px 20px;border:1px solid var(--line);font-size:14px;color:#56665c}
#plan-comparison .source-check summary{cursor:pointer;color:var(--ink);font-weight:600}
#plan-comparison .source-check p{max-width:850px;margin:12px 0 0}
@media(hover:hover){#plan-comparison .enlarge:hover{background:var(--green)}
#plan-comparison .tabs button:not([aria-selected=true]):hover{background:#d7e1d6}}
@media(max-width:760px){#plan-comparison main{padding:28px 18px 40px}
#plan-comparison .preview{padding:10px 18px;font-size:11px}
#plan-comparison .intro{display:block;margin-bottom:22px}
#plan-comparison .intro h1{font-size:31px;letter-spacing:-1px}
#plan-comparison .intro p{font-size:14px;margin-top:17px}
#plan-comparison .switch{display:block;padding:16px 0}
#plan-comparison .switch>p{font-size:14px;margin-bottom:12px}
#plan-comparison .tabs{width:100%}
#plan-comparison .tabs button{flex:1;padding:12px 6px;font-size:13px}
#plan-comparison .compare{grid-template-columns:1fr;gap:18px}
#plan-comparison .plan-head{padding:18px}
#plan-comparison .plan-head h2{font-size:21px}
#plan-comparison .far{font-size:22px}
#plan-comparison .plan-foot{padding:14px 18px;display:block;min-height:0}
#plan-comparison .plan-foot p{margin-top:5px;max-width:none}
#plan-comparison .pending{margin:12px;padding:18px}
#plan-comparison .pending strong{font-size:18px}
#plan-comparison .pending p{font-size:13px}
#plan-comparison .pending svg{width:35px;height:43px;margin-bottom:10px}
#plan-comparison .purpose{display:block;padding:18px}
#plan-comparison .purpose strong{font-size:17px}
#plan-comparison .purpose p{margin-top:8px;font-size:14px}
#plan-comparison .question-grid{grid-template-columns:1fr;gap:20px}
#plan-comparison .questions{margin-top:28px}
#plan-comparison .questions h2{font-size:21px}
#plan-comparison .dialog-body img{min-width:900px}
#plan-comparison .dialog-head strong{font-size:13px}}
#plan-comparison .drawing{aspect-ratio:650/700;overflow:hidden;background:#ededeb;isolation:isolate}
#plan-comparison .drawing>svg{display:block;width:100%;height:100%;flex:none}
#plan-comparison .drawing>.source-original{display:none}
#plan-comparison .plan-head{height:116px}
#plan-comparison .plan-foot{height:104px}
#plan-comparison .plan-foot strong{flex:0 0 42%}
#plan-comparison .plan-head h2{font-size:24px}
#plan-comparison .plan-head p{font-size:12px}
#plan-comparison .comparison-note{font-size:13px;line-height:1.8;color:var(--muted);margin:15px 0 0}
#plan-comparison .location-comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:32px;scroll-margin-top:110px}
#plan-comparison .location-comparison-card{margin:0;min-width:0;background:#fff;border:1px solid var(--line)}
#plan-comparison .location-comparison-card figcaption{padding:16px 22px;font-size:19px;font-weight:600;border-bottom:1px solid var(--line)}
#plan-comparison .location-comparison-card.integrated figcaption{background:var(--sage)}
#plan-comparison .location-capture{position:relative;display:block;width:100%;padding:0;border:0;background:#e8eded;aspect-ratio:1;overflow:hidden}
#plan-comparison .location-capture img{display:block;width:100%;height:100%;object-fit:contain}
#plan-comparison .location-capture span{position:absolute;bottom:35px;right:12px;padding:7px 12px;background:var(--ink);border:1px solid white;border-radius:3px;color:white;font-size:13px}
@media(max-width:760px){#plan-comparison .location-comparison-grid{grid-template-columns:1fr;gap:18px;margin-top:24px}#plan-comparison .location-comparison-card figcaption{font-size:17px;padding:14px 18px}}
#plan-comparison .drawing-quality-note{margin:0;padding:0 25px 18px;font-size:12px;line-height:1.8;color:var(--muted)}
#plan-comparison .plan-controls{padding:16px 20px;background:var(--paper);border-bottom:1px solid var(--line)}
#plan-comparison .plan-controls>span{display:block;margin-bottom:8px;font-size:12px;line-height:20px;color:var(--muted)}
#plan-comparison .plan-controls .tabs{width:100%;gap:8px}
#plan-comparison .plan-controls button{flex:1;min-width:0;min-height:44px;padding:8px;font-size:13px}
@media(max-width:760px){#plan-comparison .plan-controls button{font-size:12px;padding:8px 4px}}
#plan-comparison .intro{margin-bottom:20px}
#plan-comparison main{padding-top:32px}
#plan-comparison .solo-canvas{contain:paint}
#plan-comparison .drawing-load-status{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;color:var(--muted);font-size:14px;text-align:center}
#plan-comparison .drawing-load-status[hidden]{display:none}
#plan-comparison .enlarge:disabled{opacity:.5;cursor:wait}
#plan-comparison .drawing *{transition:none;animation:none}
#plan-comparison .dialog-body>.map-zoom{display:block;width:100%;max-height:none;min-width:0;height:auto}
#plan-comparison .map-only-head{font-size:13px;color:#5a6b60;margin:0 0 14px}
@media(max-width:760px){#plan-comparison .plan-head{height:102px}
#plan-comparison .plan-head h2{font-size:20px}
#plan-comparison .far{font-size:20px}
#plan-comparison .plan-foot{height:112px}
#plan-comparison .plan-foot strong{font-size:16px}
#plan-comparison .drawing{aspect-ratio:650/700}
#plan-comparison .dialog-body>.map-zoom{min-width:650px}
#plan-comparison .intro h1{font-size:29px}}
#plan-comparison .land-numbers{margin-top:36px}
#plan-comparison .land-numbers h2{font-size:25px;line-height:1.5;margin:0 0 8px;letter-spacing:-.7px}
#plan-comparison .land-numbers>p{font-size:14px;color:var(--muted);margin:0 0 20px}
#plan-comparison .land-numbers table{width:100%;border-collapse:collapse;table-layout:fixed;font-variant-numeric:tabular-nums;background:#fff;font-size:15px}
#plan-comparison .land-numbers th,#plan-comparison .land-numbers td{padding:15px 17px;border-bottom:1px solid var(--line);text-align:right}
#plan-comparison .land-numbers thead{background:var(--ink);color:white}
#plan-comparison .land-numbers th:first-child{text-align:left;width:28%}
#plan-comparison .land-numbers tbody th{font-weight:500}
#plan-comparison .land-numbers small{display:block;font-size:12px;font-weight:400}
#plan-comparison .land-numbers .result{background:var(--sage);font-weight:700;font-size:21px}
#plan-comparison .land-numbers .result th{font-size:15px;font-weight:600}
#plan-comparison .land-numbers .result small{color:#45604e}
#plan-comparison .land-numbers .assumptions{font-size:13px;line-height:1.8;margin:14px 0 0;color:var(--muted)}
@media(max-width:760px){#plan-comparison .land-numbers h2{font-size:21px}
#plan-comparison .land-numbers table{font-size:12px}
#plan-comparison .land-numbers th,#plan-comparison .land-numbers td{padding:12px 6px}
#plan-comparison .land-numbers th:first-child{width:27%}
#plan-comparison .land-numbers small{font-size:10px}
#plan-comparison .land-numbers .result{font-size:16px}
#plan-comparison .land-numbers .result th{font-size:12px}
#plan-comparison .land-numbers .assumptions{font-size:12px}}

html:has(#plan-comparison:target),html:has(#land-title:target),html:has(#household-title:target),html:has(#design-title:target){scroll-behavior:auto}
#plan-comparison{font-family:var(--sans);line-height:1.7;word-break:keep-all;border-top:1px solid #cad4cd;scroll-margin-top:100px}
#plan-comparison .intro{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:32px;padding:0;background:transparent}
#plan-comparison .intro h2{font:500 clamp(28px,3vw,44px)/1.5 var(--sans);letter-spacing:-1.2px;margin:0}
#plan-comparison .intro>p{font-size:15px;color:#67736c;max-width:370px;margin:0}
#plan-comparison h2,#plan-comparison h3{font-family:var(--sans)}
#plan-comparison .land-numbers h2,#plan-comparison .questions h2{font-weight:600}
#plan-comparison .plan-head{height:auto;min-height:120px}
#plan-comparison .plan-foot{height:auto;min-height:112px}
#plan-comparison .plan-head h2{line-height:1.5;font-weight:600;letter-spacing:-.7px}
#plan-comparison .land-numbers{margin-top:48px}
#plan-comparison [id$="title"]{scroll-margin-top:110px}
#plan-comparison .source-check summary{min-height:30px}
#plan-comparison button{touch-action:manipulation}
#plan-comparison dialog{overscroll-behavior:contain}
#plan-comparison .dialog-body{max-height:80dvh}
#plan-comparison .map-zoom{background:#ededeb}
@media(max-width:1100px){.header-shell nav{gap:14px}.header-shell nav a{font-size:13px}#plan-comparison .intro{display:block}#plan-comparison .intro>p{margin-top:16px;max-width:none}#plan-comparison .plan-head{display:block;min-height:124px}#plan-comparison .plan-head .far{display:block;margin-top:6px;font-size:20px}}
@media(max-width:760px){#plan-comparison{padding:64px 18px}#plan-comparison .intro h2{font-size:29px}#plan-comparison .plan-head{min-height:0}#plan-comparison .plan-foot{min-height:0}#plan-comparison .land-numbers{margin-top:36px}#plan-comparison .land-numbers table{font-size:12px}#plan-comparison .result td{font-size:15px}#plan-comparison .compare{grid-template-columns:1fr}#plan-comparison .land-numbers th,#plan-comparison .land-numbers td{overflow-wrap:anywhere}#plan-comparison .land-numbers .result td{white-space:nowrap}#plan-comparison .land-numbers .result small{white-space:normal}}
