/* Homepage workspace. Scoped to avoid changing the other calculator layouts. */
.site-home { --home-border:#dedfdc; --home-muted:#626867; --home-paper:#f7f7f3; }
.site-home [hidden] { display:none!important; }
.site-home .v3-hero-inner { padding:44px 32px 48px; gap:64px; max-width:1240px; grid-template-columns:1.15fr 1fr; }
.site-home .v3-hero h1 { font-size:clamp(38px,4.2vw,60px)!important; max-width:620px; margin-bottom:20px; }
.site-home .v3-hero-sub { max-width:520px; line-height:1.65; font-size:16px; margin-bottom:24px; }
.site-home .v3-hero-img { height:330px; border-radius:12px; box-shadow:none; }
.site-home .v3-hero-img img { object-position:center 52%; }
.site-home .v3-hero-badge { top:auto; bottom:18px; left:18px; font-size:11px; padding:11px 14px; }
.site-home .v3-hero-cta { align-items:center; gap:24px; }
.site-home .v3-hero-cta .v3-btn-primary { padding:15px 22px; gap:18px; }
.home-text-link { color:#3f4646; font-weight:500; font-size:14px; padding:12px 0; }
.home-text-link:hover { color:#c00010; }
.site-home .v3-hero-tags { display:flex; flex-wrap:wrap; gap:18px; color:var(--home-muted); font-size:12px; margin-top:20px; }
.site-home .v3-hero-tags span::before { content:'✓'; margin-right:6px; color:#a40f1d; }
.site-home .site-hero-proof { margin-top:18px; font-size:11px; }
.home-workspace,.site-home .v3-tools,.home-guides,.home-supplier-inner { max-width:1240px; margin:0 auto; padding:52px 32px; }
.home-workspace-intro,.site-home .v3-tools-head { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:28px; }
.home-eyebrow { display:block; font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.12em; color:#a10c19; margin-bottom:12px; }
.home-workspace h2,.home-guides>h2,.site-home .v3-tools h2,.home-supplier-inner h2 { font-family:var(--font-display); font-size:34px; font-weight:400; line-height:1.15; letter-spacing:-.025em; margin:0; }
.home-workspace-intro>p { font-size:13px; color:var(--home-muted); margin:0 0 4px; }
.home-tool-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding:5px; background:#efefea; border:1px solid #e2e3de; border-radius:10px; margin-bottom:0; gap:5px; }
.home-tool-tabs a { padding:14px 12px; font-size:13px; font-weight:600; color:#5f6664; border-radius:6px; text-align:center; line-height:1.5; min-height:46px; }
.home-tool-tabs a:hover { color:#a90010; background:#ffffff90; }
.home-tool-tabs [aria-selected=true] { background:#fff; color:#ab0717; box-shadow:0 1px 5px #0000000a; }
.site-home .home-panel { padding:28px 0 0!important; background:#fff!important; border:0; scroll-margin-top:90px; }
.site-home .home-panel-inner { max-width:none!important; padding:0!important; }
.home-panel-heading { text-align:left!important; margin:0 0 24px!important; }
.home-panel-heading>span { display:none; }
.home-workspace .home-panel-heading h2 { font-family:var(--font-body); font-size:20px!important; font-weight:600; line-height:1.3; margin:0 0 8px; letter-spacing:-.015em; }
.home-panel-heading>p { max-width:none!important; font-size:13px!important; margin:0!important; color:var(--home-muted); }
.home-calculator-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:start; }
.home-inputs,.home-results { min-width:0; }
.home-step { margin-bottom:24px!important; }
.home-preset-preview { position:relative; margin:0 0 12px; overflow:hidden; border-radius:8px; background:#efeee8; }
.home-preset-preview img { display:block; width:100%; height:180px; object-fit:cover; }
.home-preset-preview figcaption { position:absolute; inset:auto 0 0; padding:26px 14px 12px; background:linear-gradient(transparent,#000b); color:#fff; font-size:12px; font-weight:500; line-height:1.5; }
.home-fixture-preview { display:flex; align-items:center; gap:18px; border:1px solid var(--home-border); background:#f7f7f3; }
.home-fixture-preview img { width:120px; height:100px; flex-shrink:0; }
.home-fixture-preview figcaption { position:static; padding:14px 14px 14px 0; background:none; color:#39433e; font-size:14px; }
.home-step-title { display:flex; align-items:center; gap:9px; font-size:13px; font-weight:600; margin-bottom:12px; }
.home-step-title>span { width:22px!important; height:22px!important; min-width:22px; border-radius:50%; font-size:11px!important; background:#f6e8e8!important; color:#a80b1a!important; margin:0!important; }
.home-step-title>span { display:inline-flex; align-items:center; justify-content:center; }
#lighting-workspace .home-panel-heading>span { display:none!important; }
#commercial-results .home-primary-results>div:last-child { grid-column:1/-1; }
.home-panel :is(input:not([type=range]),select) { min-height:48px; padding:12px 14px; border:1px solid #cfd2cf; border-radius:7px; color:#242a28; background:#fff; font-size:15px; width:100%; }
.home-panel input { font-variant-numeric:tabular-nums; }
.home-panel .result-value>span { margin-left:5px; }
.home-panel label { font-size:12px!important; }
.home-panel button { min-height:40px; }
.home-panel .unit-btn { min-height:36px; }
.home-panel .home-field-note,.home-panel #unit-hint,.home-panel #room-type-hint,.home-panel #area-type-hint { font-size:12px; line-height:1.65; color:#6d736f; margin-top:9px; }
.home-panel #room-type-hint,.home-panel #area-type-hint { margin-bottom:0; }
.home-panel #lm-per-sqft-label { display:block; font-size:11px; margin-top:4px; }
.home-results { border:1px solid var(--home-border)!important; background:var(--home-paper)!important; border-radius:12px!important; padding:24px!important; box-shadow:none!important; }
.home-results-heading { margin-bottom:18px!important; }
.home-results-heading h3 { color:#39433e; letter-spacing:.08em; }
.home-primary-results { display:grid!important; grid-template-columns:1fr 1fr!important; gap:12px!important; margin-bottom:20px!important; }
.home-primary-results>div { border:1px solid #e2e4de!important; border-radius:8px!important; box-shadow:none!important; padding:15px!important; background:#fff; min-width:0; }
.home-primary-results .home-fixture-total { grid-column:1/-1; background:#202c26!important; color:#fff; padding:20px 22px!important; }
.home-fixture-total :is(.text-th-black,.text-th-gray) { color:#eff5ec!important; }
.home-fixture-total .result-value { font-family:var(--font-display); font-size:44px!important; font-weight:400; line-height:1.15; margin:10px 0; }
.home-fixture-total .result-value>span { font-family:var(--font-body); font-size:14px; margin-left:8px; }
.home-primary-results .result-value:not(.home-fixture-total .result-value) { font-size:23px; line-height:1.5; overflow-wrap:anywhere; }
.home-primary-results .result-value>span { margin-left:5px; }
.home-panel #result-maintained { line-height:1.5; }
.home-panel .home-energy { margin:0 0 16px!important; padding:0!important; border:0!important; background:transparent!important; }
.home-energy .grid { grid-template-columns:1fr 1fr 1.05fr; align-items:end; }
.home-energy #indoor-annual-cost,.home-energy #cm-annual-cost { min-height:48px; display:flex; align-items:center; font-size:18px; }
.home-energy input { padding:10px; }
.home-result-actions { display:flex; flex-wrap:wrap; gap:8px!important; margin:0 0 12px!important; }
.home-result-actions button { padding:10px 13px; background:#fff; border:1px solid #d4d7d0; border-radius:6px; color:#414d43; font-size:12px; font-weight:600; line-height:1.3; }
.home-result-actions button:hover { color:#a40012; border-color:#bd1b2b; }
.home-result-actions button[onclick^=reset] { order:5; }
.home-estimate-note { font-size:12px; line-height:1.65; color:#677068; margin:0 0 18px; }
.home-live { display:flex; align-items:center; gap:7px; color:#43614b; font-size:11px; }
.home-live-dot { width:6px; height:6px; border-radius:50%; background:#4c7b56; }
.home-result-caption { font-size:12px; color:#6b7368; line-height:1.55; }
.home-fixture-total .home-result-caption { color:#dce6d8; }
.home-fixture-total .result-value { color:#fff; }
#lighting-workspace>.home-panel { padding:28px 0 0!important; background:#fff!important; }
#lighting-workspace .home-panel-inner { max-width:none!important; margin:0!important; padding:0!important; }
#lighting-workspace .home-panel-heading h2 { font-family:var(--font-body)!important; font-size:20px!important; font-weight:600!important; margin:0 0 8px!important; }
#lighting-workspace .home-panel-heading h2::after { display:none!important; }
#lighting-workspace .home-fixture-total .result-value>span { color:#eff5ec!important; }
#lighting-workspace .home-fixture-total .result-value { font-size:44px!important; }
#lighting-workspace #lm-per-sqft-label { overflow-wrap:anywhere; }
#lighting-workspace .home-results .home-primary-results { gap:12px!important; }
#lighting-workspace .home-details .site-result-grid { grid-template-columns:1fr!important; }
#lighting-workspace .home-energy .grid { grid-template-columns:1fr 1fr 1.05fr!important; }
#lighting-workspace .home-panel :is(input,select) { border:1px solid #cfd2cf!important; border-radius:7px!important; }
.home-details { border-top:1px solid var(--home-border); margin-top:12px; min-width:0; }
.home-details>summary { cursor:pointer; font-size:13px; font-weight:500; padding:15px 2px; color:#3a463e; }
.home-details>summary:hover { color:#ac0a1b; }
.home-details>summary>span { float:right; font-variant-numeric:tabular-nums; color:#7a8179; }
.home-details .home-step { margin:4px 0 12px!important; }
.home-maintenance .home-step-title { display:none; }
.site-home #indoor .mf-card { padding:12px 10px!important; min-height:68px!important; border-radius:7px; box-shadow:none; }
.site-home #indoor .mf-card .font-semibold { font-size:12px!important; }
.site-home #indoor .mf-card .text-xs { font-size:11px!important; }
.home-maintenance .grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.home-details .site-result-grid { grid-template-columns:1fr!important; gap:8px!important; }
.home-details .site-result-grid>div { padding:12px!important; }
.home-products { padding:0!important; border:0!important; margin:0!important; background:transparent!important; }
.home-wall-wash { margin:10px 0 0!important; border:0!important; border-top:1px solid var(--home-border)!important; border-radius:0!important; padding:12px 0 0!important; background:transparent!important; }
.home-wall-wash .mb-4 { margin-bottom:0; }
.home-wall-wash #ww-content { padding-top:12px; }
.home-assumptions { font-size:12px; line-height:1.7; color:#677067; border-bottom:1px solid #e2e5dd; padding:14px 0; margin-top:22px; }
.home-assumptions summary { cursor:pointer; font-weight:500; color:#435144; }
.home-assumptions p { max-width:900px; margin:12px 0; }
.home-assumptions a { color:#a80617; }
.site-home #distance.home-panel,.site-home #converter.home-panel { max-width:840px; margin:0 auto; }
.home-distance-units { display:flex; width:fit-content; margin-bottom:16px; border:1px solid #dce1d7; border-radius:6px; overflow:hidden; }
.home-distance-units button { padding:10px 16px; }
.site-home #distance .conv-result,.site-home #converter .conv-result { word-break:normal; overflow-wrap:anywhere; }
.site-home .v3-tools { padding-top:40px!important; padding-bottom:48px; }
.site-home .v3-tools-head { margin-bottom:24px; }
.home-tool-search { min-width:290px; }
.home-tool-search label { display:block; font-size:12px; color:#4e5950; margin-bottom:8px; }
.home-tool-search input { width:100%; padding:13px 15px; border:1px solid #ccd2c9; border-radius:7px; background:#fff; font-size:14px; }
.site-home .v3-bento { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.site-home .v3-bento .v3-card { grid-column:auto; min-height:0; padding:22px; border:1px solid #dde2d9; border-radius:9px; background:#fff; box-shadow:none; display:grid; grid-template-columns:34px 1fr; column-gap:14px; align-content:start; transition:border-color .2s,background .2s; }
.site-home .v3-bento .v3-card:hover { transform:none; border-color:#b10b1d; background:#fffdfb; }
.site-home .v3-bento .ico { width:34px; height:34px; margin:0; grid-row:1/4; background:#f3f4ef; border-radius:7px; }
.site-home .v3-bento .ico svg { width:20px; height:20px; }
.site-home .v3-bento .v3-card h3 { font-family:var(--font-body); font-size:15px; font-weight:600; line-height:1.45; color:#263c2d; margin:0 0 7px; text-wrap:initial; }
.site-home .v3-bento .v3-card p { font-size:13px; line-height:1.65; color:#677066; margin:0; }
.site-home .v3-bento .lk { margin-top:12px; font-size:12px; }
.home-search-status { min-height:18px; font-size:12px; color:#687566; margin-top:12px; }
#tool-search-empty { padding:28px; background:#f6f7f2; font-size:14px; border-radius:8px; }
#tool-search-clear { color:#ac0015; text-decoration:underline; margin-left:10px; }
.home-guides { padding-top:32px; padding-bottom:40px; }
.home-guides>h2 { margin-bottom:24px; }
.home-guides>.home-details { border:1px solid #dfe3db; border-radius:8px; margin-top:10px; }
.home-guides>.home-details>summary { padding:19px 22px; font-size:15px; }
.home-guides>.home-details>section { padding:20px 0!important; background:#fff!important; }
.home-guides section>div { max-width:none!important; }
.site-home .home-faq { padding:28px 32px 56px!important; max-width:1000px; margin:0 auto; }
.home-faq>div { padding:0!important; }
.home-faq .mb-10 { margin-bottom:24px; }
.home-faq .faq-question { font-size:14px; padding:16px 18px; }
.home-supplier-inner { display:grid; grid-template-columns:1.1fr 1fr; gap:80px; align-items:center; }
#b2b-overview { background:#f6f4ef; border-top:1px solid #e8e5df; }
.home-supplier-inner p { max-width:490px; font-size:14px; line-height:1.8; margin:18px 0 24px; color:#666b63; }
.home-product-links { display:grid; margin:0!important; gap:0!important; }
.home-product-links a { display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #d9dcd2; padding:15px 0; font-size:14px; font-weight:500; color:#324534; }
.home-product-links a span { color:#ab0015; }
.home-feedback { position:fixed; left:50%; transform:translateX(-50%); bottom:28px; z-index:500; padding:13px 20px; max-width:calc(100% - 32px); background:#203d2b; border-radius:8px; color:#fff; font-size:13px; box-shadow:0 4px 20px #0002; }
.home-copy-fallback { position:fixed; z-index:500; bottom:90px; right:24px; width:min(440px,calc(100% - 32px)); background:#fff; border:1px solid #c9d0c6; box-shadow:0 6px 32px #0003; padding:20px; border-radius:10px; }
.home-copy-fallback label { display:block; font-size:13px; margin-bottom:10px; }
.home-copy-fallback textarea { width:100%; min-height:140px; padding:10px; border:1px solid #b9c4b9; font-size:13px; }
.home-copy-fallback button { display:block; padding:10px 16px; background:#203d2b; color:#fff; border-radius:5px; margin-top:10px; }
#home-mobile-result { display:none; }
@media(min-width:1000px) and (min-height:850px) { .home-results { position:sticky; top:96px; } }
@media(max-width:1000px) { .home-calculator-grid { gap:24px; } .site-home .v3-hero-inner { gap:32px; } .site-home .v3-bento { grid-template-columns:repeat(2,minmax(0,1fr)); } .home-supplier-inner { gap:40px; } }
@media(max-width:768px) {
 #lighting-workspace .home-panel :is(input,select) { font-size:16px!important; }
 .site-home .v3-hero-inner { padding:30px 20px 32px; grid-template-columns:1fr; }
 .site-home .v3-hero h1 { font-size:40px!important; line-height:1.1!important; }
 .site-home .v3-hero-label { font-size:10px; margin-bottom:16px; }
 .site-home .v3-hero-sub { font-size:15px; margin-bottom:20px; }
 .site-home .v3-hero-right { display:block; min-width:0; }
 .site-home .v3-hero-img { height:240px; }
 .site-home .v3-hero-badge { bottom:12px; left:12px; max-width:calc(100% - 24px); padding:10px 12px; font-size:10px; }
 .site-home .v3-hero-cta { gap:16px; }
 .site-home .v3-hero-cta a { flex:initial; }
 .site-home .v3-hero-cta .v3-btn-primary { padding:13px 15px!important; font-size:13px; gap:10px; }
 .site-home .v3-hero-cta .home-text-link { font-size:12px; padding:12px 0!important; }
 .site-home .v3-hero-tags { gap:14px; font-size:11px; margin-top:18px; }
 .site-home .site-hero-proof { display:none; }
 .home-workspace,.site-home .v3-tools,.home-guides,.home-supplier-inner { padding:32px 20px; }
 .home-workspace-intro { display:block; margin-bottom:20px; }
 .home-workspace-intro>p { margin-top:10px; }
 .home-workspace h2,.home-guides>h2,.site-home .v3-tools h2,.home-supplier-inner h2 { font-size:29px; }
 .home-tool-tabs { grid-template-columns:1fr 1fr; gap:4px; }
 .home-tool-tabs a { padding:12px 7px; font-size:12px; }
 .site-home .home-panel { padding-top:22px!important; }
 .home-panel-heading { margin-bottom:22px!important; }
 .home-calculator-grid { grid-template-columns:1fr; gap:20px; }
 .home-panel input,.home-panel select { font-size:16px!important; }
 .home-panel .home-step { margin-bottom:20px!important; }
 .home-step .grid:has(#dim-length) { grid-template-columns:1fr 1fr; }
 .home-results { padding:20px!important; }
 .home-results .home-primary-results { grid-template-columns:1fr 1fr!important; }
 .home-results .home-primary-results>div { padding:12px!important; }
 .home-primary-results .home-fixture-total { padding:18px!important; }
 .home-primary-results .result-value:not(.home-fixture-total .result-value) { font-size:20px; }
 .home-result-actions { display:grid; grid-template-columns:1fr 1fr; }
 .home-result-actions button { min-height:44px; }
 .home-energy .grid { gap:9px; }
 .home-energy #indoor-annual-cost,.home-energy #cm-annual-cost { font-size:15px; }
 .site-home .v3-tools-head { display:block; }
 .home-tool-search { min-width:0; margin-top:24px; }
 .home-tool-search input { font-size:16px; }
 .site-home .v3-bento { grid-template-columns:1fr; gap:10px; }
 .site-home .v3-bento .v3-card { padding:18px; }
 .site-home .v3-bento .lk { display:none; }
 .home-guides>.home-details>summary { padding:17px 15px; font-size:14px; }
 .site-home .home-faq { padding:24px 20px 40px!important; }
 .home-supplier-inner { grid-template-columns:1fr; gap:28px; }
 .home-feedback { bottom:82px; text-align:center; width:max-content; }
 #home-mobile-result:not([hidden]) { display:flex; align-items:center; justify-content:space-between; gap:12px; position:fixed; z-index:180; bottom:0; left:0; right:0; background:#20382a; color:#fff; padding:13px 20px calc(13px + env(safe-area-inset-bottom)); box-shadow:0 -2px 12px #0002; font-size:13px; }
 #home-mobile-result strong { display:block; font-size:15px; }
 #home-mobile-result small { display:block; font-size:10px; color:#cedbd0; margin-top:3px; }
 .site-home.home-show-result-bar .v3-float { display:none; }
 .home-copy-fallback { right:16px; }
}
@media(max-width:360px) { .site-home .v3-hero h1 { font-size:35px!important; } .home-workspace,.site-home .v3-tools,.home-guides { padding-left:16px; padding-right:16px; } #lighting-workspace .home-energy .grid { grid-template-columns:1fr 1fr!important; } .home-energy .grid>div:last-child { grid-column:1/-1; } .home-results { padding:16px!important; } }
@media print {
 .site-home { padding:0!important; background:#fff!important; }
 .site-home>*,.home-workspace>*,.home-panel-heading>p,.home-result-actions,.home-wall-wash,.home-product-details,.home-assumptions { display:none!important; }
 .site-home #lighting-workspace,.site-home .home-panel:not([hidden]) { display:block!important; padding:0!important; margin:0!important; max-width:none; }
 .home-tool-tabs,.home-preset-preview { display:none!important; }
 .home-calculator-grid { grid-template-columns:1fr 1fr; gap:20px; }
 .home-results { position:static; border:1px solid #999!important; break-inside:avoid; }
 #lighting-workspace .home-fixture-total { background:#fff!important; }
 .home-fixture-total :is(.text-th-black,.text-th-gray),.home-fixture-total .home-result-caption,#lighting-workspace .home-fixture-total .result-value,#lighting-workspace .home-fixture-total .result-value>span { color:#111!important; }
 #lighting-workspace>.home-panel { padding:0!important; }
 .home-feedback,#home-mobile-result { display:none!important; }
 .home-details { break-inside:avoid; }
 .home-panel input,.home-panel select { border-color:#aaa; }
}
