@charset "UTF-8";
:root{--hc23-ink:#203c32;--hc23-paper:#faf9f5;--hc23-orange:#bd4b2c;--hc23-line:#dce0d6;--hc23-muted:#667269;--hc23-soft:#eeefe6;--hc23-sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--hc23-serif:Georgia,"Times New Roman",serif}
/* One navigation shell across the public site, homeowner workspace, and equipment tools. */
.hc23-header,.hc23-header *,.hc23-footer,.hc23-footer *{box-sizing:border-box}
.hc23-header{position:relative;z-index:30;background:var(--hc23-paper);color:var(--hc23-ink);border-bottom:1px solid var(--hc23-line);font-family:var(--hc23-sans);font-size:14px;line-height:1.5}
.hc23-header-inner,.hc23-footer-inner{width:min(1240px,calc(100% - 80px));margin:0 auto}
.hc23-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:84px}
.hc23-brand{display:inline-flex;align-items:center;gap:8px;color:var(--hc23-ink);text-decoration:none!important;font:750 25px/1 var(--hc23-sans);letter-spacing:-1px;white-space:nowrap}
.hc23-brand-mark{display:grid;place-items:center;width:33px;height:37px;padding-bottom:4px;background:var(--hc23-orange);color:white;border-radius:12px 12px 12px 3px;font:700 29px/1 var(--hc23-serif);letter-spacing:-1px}
.hc23-brand-dot{color:var(--hc23-orange);margin-left:-7px}
.hc23-nav{display:flex;align-items:center;gap:7px;margin:0!important;flex-wrap:nowrap!important}
.hc23-nav a,.hc23-menu a,.hc23-header-link{display:inline-flex;align-items:center;min-height:44px;margin:0;padding:10px 12px;color:var(--hc23-ink);text-decoration:none;font:500 13px/1.5 var(--hc23-sans);border:0;border-radius:7px;background:none;white-space:nowrap}
.hc23-nav a:hover,.hc23-menu a:hover{background:var(--hc23-soft);color:var(--hc23-ink)}
.hc23-nav a[aria-current=page],.hc23-menu a[aria-current=page]{background:var(--hc23-soft);color:var(--hc23-ink);font-weight:650}
.hc23-header-actions{display:flex;align-items:center;gap:13px;flex:none}
.hc23-primary{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:11px 18px;min-height:44px;border:1px solid var(--hc23-orange);border-radius:7px;background:var(--hc23-orange);color:white!important;text-decoration:none;font:600 13px/1.5 var(--hc23-sans);white-space:nowrap}
.hc23-primary:hover{background:#9e3d23;border-color:#9e3d23}
.hc23-account{display:flex;align-items:center;min-width:0}
.hc23-account .button,.hc23-account .account-chip{min-height:44px;font-size:12px;padding:10px 14px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hc23-menu{position:relative;margin:0!important;padding:0!important;border:0!important;font-family:var(--hc23-sans);color:var(--hc23-ink);background:none}
.hc23-header .hc23-menu>summary{display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;margin:0!important;padding:10px 13px!important;border:1px solid var(--hc23-line);border-radius:7px;background:transparent;color:var(--hc23-ink);font:500 12px/1.5 var(--hc23-sans);list-style:none;cursor:pointer}
.hc23-menu>summary::-webkit-details-marker{display:none}.hc23-menu>summary:after{content:'⌄';font-size:14px;line-height:1}
.hc23-menu-panel{position:absolute;right:0;top:calc(100% + 10px);width:240px;max-width:calc(100vw - 32px);max-height:75vh;overflow:auto;padding:9px;border:1px solid var(--hc23-line);border-radius:12px;background:white;box-shadow:0 15px 40px #203c3217;z-index:60;display:grid;gap:2px}
.hc23-menu a{display:flex;white-space:normal;font-size:13px;min-height:44px;border-radius:7px;padding:10px 12px}
.hc23-menu hr{border:0;border-top:1px solid var(--hc23-line);width:100%;margin:6px 0}
.hc23-menu-label{font-size:10px;letter-spacing:1px;color:var(--hc23-muted);padding:9px 12px 4px;font-weight:650;text-transform:uppercase}
.hc23-menu-mobile{display:none}
.hc23-header a:focus-visible,.hc23-header summary:focus-visible,.hc23-footer a:focus-visible{outline:3px solid var(--hc23-orange);outline-offset:4px}
.hc23-footer{background:var(--hc23-paper);color:var(--hc23-ink);font:400 12px/1.7 var(--hc23-sans);padding:30px 0 24px;margin-top:48px;border-top:1px solid var(--hc23-line)}
.hc23-footer-top{display:flex;justify-content:space-between;gap:25px;align-items:center}
.hc23-footer .hc23-brand{font-size:22px}.hc23-footer .hc23-brand-mark{width:28px;height:32px;font-size:25px;border-radius:10px 10px 10px 3px}
.hc23-footer-links{display:flex;flex-wrap:wrap;gap:8px 22px;justify-content:flex-end}
.hc23-footer a:not(.hc23-brand){display:inline-flex;align-items:center;min-height:40px;text-decoration:none;color:var(--hc23-ink);font-size:12px}
.hc23-footer a:hover{text-decoration:underline}.hc23-footer-bottom{display:flex;justify-content:space-between;gap:25px;align-items:flex-start;border-top:1px solid var(--hc23-line);padding-top:18px;margin-top:22px;color:var(--hc23-muted);font-size:11px}
.hc23-footer-bottom p{margin:0}.hc23-footer-access{display:flex;gap:18px;flex-wrap:wrap;justify-content:flex-end}
.hc23-footer-bottom .hc23-footer-access a{font-size:11px;color:var(--hc23-muted);min-height:32px}
.hc23-breadcrumbs{display:flex;gap:9px;align-items:center;flex-wrap:wrap;color:var(--hc23-muted);font:400 12px/1.6 var(--hc23-sans);margin:0 0 26px}
.hc23-breadcrumbs a{color:inherit;text-decoration:none;min-height:30px;display:inline-flex;align-items:center}.hc23-breadcrumbs a:hover{text-decoration:underline}
.hc23-context{padding:16px 19px;margin:22px 0;border:1px solid var(--hc23-line);border-radius:10px;background:var(--hc23-soft);font-size:14px;line-height:1.8;color:var(--hc23-ink)}
/* The older controllers retain their existing controls and data contracts. */
body.hc23-legacy{--bg:#faf9f5;--card:#fff;--ink:#203c32;--muted:#667269;--line:#dce0d6;--sun:#bd4b2c;--sun-soft:#f0e3d7;--cool:#203c32;--cool-soft:#eeefe6;--display:Georgia,"Times New Roman",serif;--body:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);background-image:none;color:var(--ink);font:400 16px/1.7 var(--body);margin:0}
body.hc23-legacy .wrap{width:min(1100px,calc(100% - 80px));max-width:1100px;padding:42px 0 0;margin:0 auto}
body.hc23-legacy .wrap.workspace{max-width:1180px;width:min(1180px,calc(100% - 80px))}
body.hc23-legacy .wrap.narrow{max-width:780px}
body.hc23-legacy h1{font:400 clamp(36px,4.4vw,54px)/1.12 var(--display);letter-spacing:-1.6px;margin:13px 0 18px}
body.hc23-legacy h2{font:400 31px/1.2 var(--display);letter-spacing:-.5px;margin:0 0 15px}
body.hc23-legacy h3{font:400 25px/1.25 var(--display);letter-spacing:-.3px;margin:0 0 12px}
body.hc23-legacy h4{font-family:var(--body);font-size:16px;font-weight:600;line-height:1.5}
body.hc23-legacy a{color:var(--ink);text-underline-offset:4px}
body.hc23-legacy .tag{font:650 11px/1.6 var(--body);letter-spacing:1.5px;color:var(--muted);text-transform:uppercase;margin:0 0 12px}
body.hc23-legacy .lede{font-size:17px;line-height:1.8;max-width:750px;color:var(--muted);margin:0 0 24px}
body.hc23-legacy .card,body.hc23-legacy .hc-detail,body.hc23-legacy .result-next,body.hc23-legacy .empty-state,body.hc23-legacy .account-settings{background:white;border:1px solid var(--line)!important;box-shadow:none;border-radius:16px}
body.hc23-legacy .card{padding:25px;margin:18px 0}
body.hc23-legacy .btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;max-width:100%;padding:12px 19px;border:1px solid var(--line);border-radius:8px;box-shadow:none;font:600 14px/1.5 var(--body);text-decoration:none;cursor:pointer;white-space:normal;transform:none}
body.hc23-legacy .btn.sun{background:var(--sun);border-color:var(--sun);color:white}
body.hc23-legacy .btn.sun:hover:not(:disabled){background:#9e3d23;border-color:#9e3d23}
body.hc23-legacy .btn.ghost{background:white;color:var(--ink);border-color:#bbc7b8}
body.hc23-legacy .btn.ghost:hover:not(:disabled){background:var(--hc23-soft);color:var(--ink)}
body.hc23-legacy .btn:disabled{opacity:.6;cursor:wait}
body.hc23-legacy .muted,body.hc23-legacy .saved-detail,body.hc23-legacy .equipment-model{color:var(--muted)}
body.hc23-legacy .small{font-size:14px;line-height:1.8}
body.hc23-legacy .note{font-size:13px;line-height:1.8;color:var(--muted);background:none;padding-top:20px;border-top:1px solid var(--line)}
body.hc23-legacy input:not([type=checkbox]):not([type=hidden]),body.hc23-legacy select,body.hc23-legacy textarea{font:400 16px/1.5 var(--body);min-height:48px;background:white;color:var(--ink);border-color:#aeb8ad;border-radius:7px}
body.hc23-legacy input[type=checkbox],body.hc23-legacy input[type=radio]{accent-color:var(--sun)}
body.hc23-legacy label{font:600 14px/1.6 var(--body)}
body.hc23-legacy details:not(.hc23-menu)>summary{color:var(--ink);font:600 14px/1.6 var(--body);min-height:44px}
body.hc23-legacy details:not(.hc23-menu){border-color:var(--line)}
body.hc23-legacy .sub-panel,body.hc23-legacy .friend-cta,body.hc23-legacy .referral-intro{background:var(--hc23-soft);border-color:var(--line);color:var(--ink)}
body.hc23-legacy .ui-status:not(:empty),body.hc23-legacy .ui-inline-status:not(:empty),body.hc23-legacy .scan-reader-status{background:#edf1e8;border-color:#d6dfcd;color:#344b38;line-height:1.7}
body.hc23-legacy .verification-banner{background:#f6ece0;border-color:#e3ceba;color:#62452a}
body.hc23-legacy .stage-pill,body.hc23-legacy .status-pill{background:var(--hc23-soft);color:var(--ink)}
body.hc23-legacy .stage-pill.planning,body.hc23-legacy .status-pill.new{background:#f4e4d6;color:#8a432b}
body.hc23-legacy .stage-pill.maintain,body.hc23-legacy .status-pill.completed{background:#e3eddc;color:#355335}
body.hc23-legacy .equipment-age{color:var(--sun);font:400 44px/1 var(--display)}
body.hc23-legacy .equipment-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
body.hc23-legacy .equipment-top>div{min-width:0}
body.hc23-legacy .equipment-top h3{font:400 31px/1.15 var(--display);overflow-wrap:anywhere}
body.hc23-legacy .equipment-age.unknown{background:var(--hc23-soft);color:var(--muted);font:500 12px/1.5 var(--body)}
body.hc23-legacy .equipment-overview{border-color:var(--line)}
body.hc23-legacy .equipment-overview p{color:#405149}
body.hc23-legacy .equipment-overview p span{color:var(--muted)}
body.hc23-legacy .equipment-grid .home-equipment{margin:0}
body.hc23-legacy .workspace-links a{background:white;color:var(--ink);border-color:var(--line)}
body.hc23-legacy .num,body.hc23-legacy .metric-grid .num{background:white;border-color:var(--line);box-shadow:none}
body.hc23-legacy .num b,body.hc23-legacy .metric-grid .num b{color:var(--ink);font-family:var(--display);font-weight:400}
body.hc23-legacy .metric-hero{background:var(--ink);color:white;border-color:var(--ink)}
body.hc23-legacy .metric-hero p,body.hc23-legacy .metric-hero h2{color:white}
body.hc23-legacy .metric-hero strong{font-family:var(--display);font-weight:400}
body.hc23-legacy .request-issue,body.hc23-legacy .request-top .small{color:#405149}
body.hc23-legacy .hc-result{background:var(--hc23-soft);border:1px solid var(--line);border-top:4px solid var(--sun);color:var(--ink);border-radius:16px;box-shadow:none;padding:28px}
body.hc23-legacy .hc-eyebrow{font:600 11px/1.6 var(--body);letter-spacing:1px;color:var(--muted)}
body.hc23-legacy .result-layout .hc-brand{font:400 38px/1.15 var(--display);letter-spacing:-1px}
body.hc23-legacy .result-layout .hc-age{font:400 100px/1 var(--display);letter-spacing:-4px;color:var(--ink);margin:22px 0}
body.hc23-legacy .hc-age span{display:block;font:400 13px/1.6 var(--body);letter-spacing:0;margin-top:8px;color:var(--muted)}
body.hc23-legacy .result-layout .hc-age.unknown{font-size:40px;letter-spacing:-1px;line-height:1.2}
body.hc23-legacy .result-layout .hc-next{font:600 19px/1.4 var(--body);color:var(--sun);text-transform:none}
body.hc23-legacy .hc-stage{border-top:1px solid #c9d2c0;padding-top:16px}
body.hc23-legacy .hc-stage>p{font:600 10px/1.6 var(--body);letter-spacing:1px;color:var(--muted)}
body.hc23-legacy .hc-stage-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
body.hc23-legacy .hc-stage-steps span{padding:9px 5px;background:#e1e6d9;border-radius:6px;text-align:center;font:500 10px/1.5 var(--body);color:#51634e}
body.hc23-legacy .hc-stage-steps span.current{background:var(--ink);color:white}
body.hc23-legacy .hc-badge{display:inline-flex;margin-top:18px;padding:7px 12px;background:#f4e4d6;color:#8a432b;border:1px solid #dec0ab;border-radius:25px;font:600 12px/1.6 var(--body)}
body.hc23-legacy .hc-share-preview{background:var(--ink);color:white;border-color:var(--ink)}
body.hc23-legacy .hc-share-preview p{color:white}
body.hc23-legacy .result-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch;margin:20px 0}
body.hc23-legacy .result-next p{color:#405149}
body.hc23-legacy .auth-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:35px;align-items:start;margin-bottom:25px}
body.hc23-legacy .auth-help{padding:28px 10px}
body.hc23-legacy .auth-grid>.card{margin-top:0}
body.hc23-legacy .scan-progress{display:flex;gap:10px;margin:24px 0}
body.hc23-legacy .progress-step{background:var(--hc23-soft);color:var(--muted);border-color:var(--line);padding:10px 15px;border-radius:8px;font:500 13px/1.6 var(--body)}
body.hc23-legacy .progress-step.is-current{color:var(--ink);border-color:#a9b89f;background:#e5ebdd}
body.hc23-legacy .progress-step b{background:var(--ink);color:white}
body.hc23-legacy .scan-photo-preview{max-height:260px;object-fit:contain;border-radius:10px;margin-top:12px}
body.hc23-legacy .scan-stage{max-width:780px}
body.hc23-legacy :is(.upload-field,.scan-stage){border-color:var(--line);background:transparent}
body.hc23-legacy :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--sun);outline-offset:4px}
.hc23-help-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:28px 0}
.hc23-help-card{border:1px solid var(--hc23-line);border-radius:15px;background:white;padding:25px;min-width:0}
.hc23-help-card p{font-size:14px;color:var(--hc23-muted);line-height:1.8}
.hc23-help-card a{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
.hc23-help-email{background:var(--hc23-ink);color:white;border-radius:15px;padding:30px;margin-top:30px}
.hc23-help-email p,.hc23-help-email h2,.hc23-help-email a{color:white!important}
.hc23-help-email .hc23-email-link{display:inline-block;font-size:clamp(20px,3vw,30px);overflow-wrap:anywhere;margin:8px 0}
.hc23-help-email .btn{border-color:#ffffff65!important;color:white!important;background:transparent!important}
.hc23-help-status{font-size:13px;min-height:20px}
.hc23-legal-intro{max-width:850px}.hc23-legal-sections{max-width:850px}
.hc23-legal-toc{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 35px}
.hc23-legal-toc a{display:inline-flex;align-items:center;min-height:44px;border:1px solid var(--hc23-line);background:white;border-radius:30px;padding:9px 16px;font-size:13px;text-decoration:none}
.hc23-legal-sections h2{margin-top:35px!important;scroll-margin-top:25px}
.hc23-legal-sections h3{font-size:23px!important;margin-top:28px!important}
.hc23-legal-sections p,.hc23-legal-sections li{font-size:15px;line-height:1.9}
.hc23-legal-group{margin-block:35px;padding-block:20px;border-top:1px solid var(--hc23-line)}
.hc23-partner-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:55px;align-items:center;margin:15px 0 55px}
.hc23-partner-price{padding:35px;border-radius:18px;background:var(--hc23-ink);color:white}
.hc23-partner-price p,.hc23-partner-price h2{color:white!important}
.hc23-partner-price strong{font:400 64px/1.1 var(--hc23-serif);letter-spacing:-2px}
.hc23-partner-price small{display:block;font-size:13px;margin:12px 0}
.hc23-partner-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-block:35px}
.hc23-partner-steps article{background:white;border:1px solid var(--hc23-line);border-radius:14px;padding:24px}
.hc23-partner-steps article>span{color:var(--hc23-orange);font-size:12px;display:block;margin-bottom:15px}
.hc23-partner-steps p{font-size:14px;color:var(--hc23-muted)}
.hc23-partner-form-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:start;padding-top:30px;margin-top:40px;border-top:1px solid var(--hc23-line)}
.hc23-partner-form-section form{background:white;padding:26px;border:1px solid var(--hc23-line);border-radius:15px}
.hc23-partner-form-section .field:first-of-type{margin-top:0}
body.hc23-workspace .header{border:0}
body.hc23-workspace .shell{max-width:1240px}
body.hc23-workspace .page-top>p{line-height:1.8}
@media(max-width:1080px){.hc23-nav{gap:2px}.hc23-nav a{font-size:12px;padding-inline:9px}.hc23-header-inner{gap:15px}.hc23-brand{font-size:23px}.hc23-header-actions{gap:9px}.hc23-account .button,.hc23-account .account-chip{max-width:155px;padding-inline:12px}.hc23-partner-hero{gap:30px}}
@media(max-width:900px){.hc23-header-inner,.hc23-footer-inner{width:calc(100% - 48px)}.hc23-nav{display:none}.hc23-menu-mobile{display:block}.hc23-header-inner{min-height:76px}.hc23-header-actions{margin-left:auto}.hc23-account .account-chip{max-width:150px}.hc23-footer-top{align-items:flex-start}body.hc23-legacy .wrap,body.hc23-legacy .wrap.workspace{width:calc(100% - 48px)}body.hc23-legacy .auth-grid{gap:25px}.hc23-partner-hero{grid-template-columns:1fr}.hc23-partner-price{max-width:600px}.hc23-partner-form-section{grid-template-columns:1fr;gap:20px}}
@media(max-width:620px){.hc23-header-inner,.hc23-footer-inner{width:calc(100% - 36px)}.hc23-header-inner{min-height:72px;gap:12px}.hc23-brand{font-size:22px;gap:7px}.hc23-brand-mark{width:28px;height:32px;font-size:25px;border-radius:10px 10px 10px 3px}.hc23-header-actions{gap:8px}.hc23-primary{font-size:11px;padding:10px 12px;gap:12px}.hc23-header-link{display:none}.hc23-account .button,.hc23-account .account-chip{max-width:135px;font-size:11px;padding:9px 11px;min-height:42px}.hc23-header .hc23-menu>summary{font-size:11px;padding:10px 11px!important;min-height:42px}.hc23-menu-panel{width:250px}.hc23-footer{margin-top:35px;padding-top:25px}.hc23-footer-top{display:block}.hc23-footer-links{justify-content:flex-start;gap:0 19px;margin-top:18px}.hc23-footer a:not(.hc23-brand){font-size:11px;min-height:42px}.hc23-footer-bottom{display:block;margin-top:18px;font-size:10px}.hc23-footer-access{justify-content:flex-start;gap:16px;margin-top:8px}.hc23-footer-bottom .hc23-footer-access a{min-height:36px;font-size:10px}body.hc23-legacy .wrap,body.hc23-legacy .wrap.workspace{width:calc(100% - 36px);padding-top:25px}body.hc23-legacy h1{font-size:37px;letter-spacing:-1px}body.hc23-legacy h2{font-size:29px}body.hc23-legacy .lede{font-size:16px}body.hc23-legacy .auth-grid,body.hc23-legacy .result-layout{grid-template-columns:1fr;gap:18px}body.hc23-legacy .auth-help{padding:8px 0 20px}body.hc23-legacy .card{padding:22px}body.hc23-legacy .equipment-grid{grid-template-columns:1fr}body.hc23-legacy .hc-result{padding:25px}body.hc23-legacy .result-layout .hc-age{font-size:90px}.hc23-breadcrumbs{font-size:11px;margin-bottom:19px}.hc23-context{font-size:13px;padding:14px 16px}.hc23-help-grid{grid-template-columns:1fr;gap:12px}.hc23-help-card,.hc23-help-email{padding:22px}.hc23-partner-hero{margin-bottom:30px}.hc23-partner-price{padding:28px}.hc23-partner-steps{grid-template-columns:1fr;gap:12px}.hc23-partner-form-section form{padding:22px}.hc23-legal-sections p,.hc23-legal-sections li{font-size:14px}.hc23-legal-toc{gap:8px}.hc23-legal-toc a{font-size:12px;padding:9px 13px}}
@media(max-width:380px){.hc23-brand{font-size:20px}.hc23-header-inner{gap:8px}.hc23-header-actions{gap:6px}.hc23-account .button,.hc23-account .account-chip{max-width:100px;font-size:10px;padding-inline:8px}.hc23-header .hc23-menu>summary{font-size:10px;padding-inline:9px!important}.hc23-primary{font-size:10px;padding-inline:10px;gap:8px}body.hc23-legacy .equipment-tools .tool-columns{grid-template-columns:1fr}body.hc23-legacy .equipment-age{font-size:36px}}
@media(max-width:620px){.hc23-account{display:none}}
@media(max-width:380px){.hc23-header-actions>.hc23-primary{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.hc23-header,.hc23-footer,.hc23-breadcrumbs,.hc23-context{display:none!important}body.hc23-legacy{background:white!important}body.hc23-legacy .wrap{width:100%!important;padding:0!important;margin:0!important}}
