:root{
  --bh-bg:#f4f5f7; --bh-card:#fff; --bh-text:#1f2328; --bh-muted:#69717c;
  --bh-dark:#20252b; --bh-accent:#f1a900; --bh-border:#e2e5e9; --bh-soft:#fff7df;
  --bh-radius:18px; --bh-shadow:0 14px 40px rgba(25,30,36,.08);
}
*{box-sizing:border-box} body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bh-bg);color:var(--bh-text)}
button,input,select{font:inherit}.hidden{display:none!important}
.bh-shell{max-width:1400px;margin:auto;padding:30px 22px 70px}
.bh-hero{position:relative;overflow:hidden;background:#fff;color:var(--bh-text);border:1px solid #e3ded5;border-radius:26px;padding:30px 36px;display:flex;gap:34px;justify-content:space-between;align-items:center;box-shadow:0 14px 40px rgba(25,30,36,.07)}
.bh-hero:after{content:"";position:absolute;right:-90px;top:-120px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(184,146,88,.13),rgba(184,146,88,0) 68%);pointer-events:none}
.bh-hero-main{display:flex;align-items:center;gap:32px;min-width:0;position:relative;z-index:1}
.bh-web-brand{flex:0 0 245px;padding-right:30px;border-right:1px solid #ddd5c8}
.bh-web-brand img{display:block;width:100%;height:auto;max-height:95px;object-fit:contain;object-position:left center}
.bh-hero-copy{min-width:0}
.bh-hero h1{font-size:clamp(30px,3.5vw,48px);max-width:780px;margin:7px 0 10px;letter-spacing:-.045em;line-height:1.04;color:#20252b}
.bh-hero p{max-width:760px;color:#687078;font-size:15px;line-height:1.65;margin:0}
.bh-kicker{font-weight:800;font-size:11px;letter-spacing:.18em;color:#a17b42}
.bh-hero-badge{position:relative;z-index:1;min-width:245px;padding:19px 21px;border:1px solid #ded7cb;border-radius:16px;background:#faf8f4}
.bh-hero-badge .bh-badge-label{display:block;margin:0 0 7px;color:#a17b42;font-size:10px;font-weight:800;letter-spacing:.16em}
.bh-hero-badge strong{display:block;font-size:15px;color:#24282d}
.bh-hero-badge small{display:block;margin-top:7px;color:#858b91;font-size:11px}
.bh-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:24px 0}
.bh-segmented{display:flex;background:#e7e9ec;padding:5px;border-radius:12px}.bh-segmented button{border:0;background:transparent;padding:11px 16px;border-radius:9px;font-weight:700;cursor:pointer}
.bh-segmented button.active{background:#fff;box-shadow:0 3px 10px rgba(0,0,0,.06)}
.bh-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:24px;align-items:start}
.bh-form{display:grid;gap:20px}.bh-card{background:var(--bh-card);border:1px solid var(--bh-border);border-radius:var(--bh-radius);padding:25px;box-shadow:0 7px 24px rgba(25,30,36,.04);margin-bottom:20px}
.bh-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.bh-card-head>div{display:flex;align-items:center;gap:12px}.bh-card h2{margin:0;font-size:21px}.step{width:36px;height:36px;border-radius:10px;background:var(--bh-dark);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:800}
.unit{font-size:12px;color:var(--bh-muted);background:#f1f3f5;padding:7px 10px;border-radius:9px;font-weight:700}
.bh-fields{display:grid;gap:14px}.bh-fields.two{grid-template-columns:repeat(2,1fr)}.bh-fields.three{grid-template-columns:repeat(3,1fr)}.bh-fields.four{grid-template-columns:repeat(4,1fr)}
label{font-size:13px;font-weight:700;color:#454c55}input,select{width:100%;margin-top:8px;border:1px solid #d7dbe0;border-radius:11px;background:#fff;padding:13px 14px;outline:none}
input:focus,select:focus{border-color:var(--bh-accent);box-shadow:0 0 0 3px rgba(241,169,0,.12)}
.bh-note{font-size:12px;line-height:1.6;color:var(--bh-muted);margin:12px 0 0}
.bh-services{margin-top:18px;display:grid;gap:10px}
.service-row{display:grid;grid-template-columns:38px minmax(0,1fr) 108px auto;gap:12px;align-items:center;padding:12px 13px;border:1px solid var(--bh-border);border-radius:12px;cursor:pointer}
.service-row:hover{background:#fafafa}.service-row input{width:18px;height:18px;margin:0;accent-color:var(--bh-accent)}
.service-name strong,.service-name span{display:block}.service-name strong{font-size:14px}.service-name span{font-size:11px;color:var(--bh-muted);margin-top:3px}
.service-price{font-size:13px;font-weight:800;white-space:nowrap}
.bh-subtitle{font-size:14px;margin:23px 0 12px}.bh-choice-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.choice{position:relative}.choice input{position:absolute;opacity:0}.choice span{display:flex;height:100%;min-height:68px;align-items:center;justify-content:center;text-align:center;border:1px solid var(--bh-border);border-radius:12px;padding:10px;cursor:pointer;font-size:12px}
.choice input:checked+span{border-color:var(--bh-accent);background:var(--bh-soft);box-shadow:inset 0 0 0 1px var(--bh-accent)}
.bh-summary-wrap{position:sticky;top:18px}.bh-summary{background:var(--bh-dark);color:#fff;border-radius:20px;padding:26px;box-shadow:var(--bh-shadow)}
.bh-summary h2{margin:6px 0 20px;font-size:24px}.summary-lines{display:grid;gap:0;max-height:420px;overflow:auto}
.summary-line{display:grid;grid-template-columns:1fr auto;gap:12px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.09)}
.summary-line small{display:block;color:#aeb5bd;margin-top:3px}.summary-line b{font-size:13px}.empty{padding:20px 0;color:#aeb5bd;font-size:13px}
.bh-total-row{display:flex;justify-content:space-between;align-items:flex-end;padding-top:22px;margin-top:10px}.bh-total-row span{font-size:13px;color:#b9c0c7}.bh-total-row strong{font-size:28px;color:var(--bh-accent)}
.bh-range{margin:12px 0 18px;padding:12px;background:rgba(255,255,255,.06);border-radius:10px;display:flex;justify-content:space-between;font-size:12px}
.bh-disclaimer{font-size:11px;line-height:1.6;color:#9fa7af}.bh-btn{border:0;border-radius:11px;padding:12px 15px;font-weight:800;cursor:pointer}
.bh-summary .bh-btn{width:100%;margin-top:9px}.bh-btn-primary{background:var(--bh-accent);color:#1d1d1d}.bh-btn-outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.18)}.bh-btn-light{background:#fff;border:1px solid var(--bh-border)}
.bh-btn-contractor{display:flex;align-items:center;gap:11px;text-decoration:none;background:var(--bh-accent);color:#1d1d1d;border:1px solid rgba(0,0,0,.08);padding:10px 14px 10px 12px;border-radius:14px;box-shadow:0 7px 18px rgba(0,0,0,.12);transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;white-space:nowrap}.bh-btn-contractor:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(0,0,0,.16);filter:brightness(1.03)}.bh-btn-contractor span:not(.bh-contractor-icon):not(.bh-contractor-arrow){display:flex;flex-direction:column;text-align:left;line-height:1.15}.bh-btn-contractor strong{font-size:13px;letter-spacing:.01em}.bh-btn-contractor small{font-size:11px;font-weight:700;margin-top:3px;opacity:.72}.bh-contractor-icon{font-size:21px}.bh-contractor-arrow{font-size:21px;font-weight:800;margin-left:2px}

dialog{border:0;border-radius:20px;padding:0;max-width:840px;width:min(92vw,840px);box-shadow:0 35px 100px rgba(0,0,0,.25)}dialog::backdrop{background:rgba(20,24,28,.66)}
.price-modal{padding:26px}.modal-head{display:flex;justify-content:space-between;align-items:flex-start}.modal-head h2{margin:5px 0}.icon-btn{border:0;background:#f1f3f5;border-radius:9px;padding:8px 11px;cursor:pointer}
.price-editor{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;max-height:55vh;overflow:auto;margin:18px 0}.price-edit{display:grid;grid-template-columns:1fr 105px;gap:10px;align-items:center;border-bottom:1px solid #eee;padding:8px 0}.price-edit label{font-weight:600}.price-edit input{margin:0;padding:9px}
.modal-actions{display:flex;justify-content:flex-end;gap:10px}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#181c20;color:#fff;padding:11px 16px;border-radius:10px;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1050px){.bh-grid{grid-template-columns:1fr}.bh-summary-wrap{position:static}.bh-choice-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.bh-shell{padding:16px 12px 50px}.bh-hero{padding:24px 20px;display:block}.bh-hero-main{display:block}.bh-web-brand{width:190px;padding:0 0 18px;border-right:0;border-bottom:1px solid #ddd5c8;margin-bottom:20px}.bh-hero-badge{margin-top:22px}.bh-toolbar{align-items:stretch;flex-direction:column}.bh-segmented>*{flex:1}.bh-fields.two,.bh-fields.three,.bh-fields.four{grid-template-columns:1fr 1fr}.bh-choice-grid{grid-template-columns:1fr 1fr}.price-editor{grid-template-columns:1fr}}
@media(max-width:470px){.bh-fields.two,.bh-fields.three,.bh-fields.four{grid-template-columns:1fr}.bh-choice-grid{grid-template-columns:1fr}.bh-card{padding:18px}.bh-hero h1{font-size:32px}}
@media print{.bh-hero,.bh-toolbar,.bh-form,.bh-btn,.bh-disclaimer{display:none!important}.bh-grid{display:block}.bh-summary-wrap{position:static}.bh-summary{color:#000;background:#fff;box-shadow:none}.bh-total-row strong{color:#000}}

.service-row{align-items:center}
.service-qty{width:108px;min-width:108px;box-sizing:border-box;margin:0;padding:10px 12px;border:2px solid #aeb5bd;border-radius:10px;background:#fff;color:#111;font:inherit;font-weight:700;text-align:center;box-shadow:inset 0 1px 2px rgba(0,0,0,.06)}
.service-qty::placeholder{color:#8b929a;opacity:1}.service-qty:focus{border-color:var(--bh-accent);box-shadow:0 0 0 3px rgba(241,169,0,.16);outline:none}
@media(max-width:700px){.service-row{grid-template-columns:32px minmax(0,1fr) 92px}.service-price{grid-column:2 / -1}.service-qty{width:92px;min-width:92px}}


.bh-notes{margin-top:18px}
.bh-notes label{display:block;font-weight:700;margin-bottom:8px}
.bh-notes textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:120px;padding:13px 14px;border:2px solid #c9ced6;border-radius:12px;background:#fff;color:#111;font:inherit;outline:none;transition:border-color .15s,box-shadow .15s}
.bh-notes textarea:focus{border-color:#111;box-shadow:0 0 0 3px rgba(0,0,0,.08)}
.summary-actions{display:grid;gap:10px;margin-top:14px}
.summary-actions .bh-btn{width:100%}
@page{size:A4 portrait;margin:12mm}
@media print{
  html,body{width:100%!important;min-width:0!important;height:auto!important;overflow:visible!important;background:#fff!important}
  .bh-toolbar,.summary-actions,.bh-disclaimer{display:none!important}
  .bh-form,.bh-notes{display:none!important}
  .bh-grid{display:block!important;width:100%!important;max-width:none!important;margin:0!important}
  .bh-summary-wrap{position:static!important;width:100%!important;max-width:none!important}
  .bh-summary{width:100%!important;box-sizing:border-box!important;color:#000!important;background:#fff!important;box-shadow:none!important;border:1px solid #ddd!important;border-radius:0!important;padding:8mm!important}
  .summary-lines{max-height:none!important;height:auto!important;overflow:visible!important}
  .summary-line{break-inside:avoid;page-break-inside:avoid}
  .bh-total-row{break-inside:avoid;page-break-inside:avoid}
}
/* FINAL PRINT FIX: full multi-page estimate + client notes at bottom */
@page{size:A4 portrait;margin:12mm}
@media print{
  html,body{width:100%!important;min-width:0!important;height:auto!important;overflow:visible!important;background:#fff!important}
  .bh-toolbar,.summary-actions,.bh-disclaimer{display:none!important}
  .bh-form{display:none!important}
  .bh-grid{display:block!important;width:100%!important;max-width:none!important;margin:0!important}
  .bh-summary-wrap{position:static!important;width:100%!important;max-width:none!important}
  .bh-summary{width:100%!important;box-sizing:border-box!important;color:#000!important;background:#fff!important;box-shadow:none!important;border:1px solid #ddd!important;border-radius:0!important;padding:8mm!important}
  .summary-lines{max-height:none!important;height:auto!important;overflow:visible!important;display:grid!important}
  .summary-line{break-inside:avoid;page-break-inside:avoid}
  .bh-total-row{break-inside:avoid;page-break-inside:avoid}
  .bh-notes{display:block!important;color:#000!important;background:#fff!important;margin-top:18px!important;padding-top:10px!important;border-top:1px solid #ccc!important;break-inside:avoid;page-break-inside:avoid}
  .bh-notes label{display:block!important;color:#000!important;font-weight:700!important;margin-bottom:6px!important}
  .bh-notes textarea{display:block!important;width:100%!important;min-height:90px!important;height:auto!important;box-sizing:border-box!important;color:#000!important;background:#fff!important;border:1px solid #999!important;border-radius:0!important;white-space:pre-wrap!important;overflow:visible!important;resize:none!important}
}

/* CLIENT PDF - professional branded print layout */
.print-branding{display:none}
.print-client-notes{display:none}
@media print{
  .print-branding{display:block!important;margin-bottom:9mm;padding-bottom:5mm;border-bottom:2px solid #c5a46d}
  .print-branding img{display:block;width:min(76mm,55%);height:auto;max-height:30mm;object-fit:contain;object-position:left center;margin-bottom:4mm}
  .print-title{font-size:20pt;font-weight:800;letter-spacing:.02em;color:#111;margin-top:2mm}
  .print-subtitle{font-size:9pt;color:#555;margin-top:2mm}
  .print-date-row{display:flex;gap:10px;justify-content:flex-end;align-items:center;font-size:9pt;color:#555;margin-top:-6mm}
  .print-date-row strong{color:#111}
  .bh-summary{font-family:Arial,Helvetica,sans-serif!important}
  .bh-summary .bh-kicker{color:#8e6d3b!important;letter-spacing:.16em}
  .bh-summary h2{font-size:17pt!important;margin-bottom:5mm!important;color:#111!important}
  .summary-lines{gap:0!important;border:1px solid #ddd!important;border-radius:3px!important;overflow:visible!important}
  .summary-line{padding:3.5mm 4mm!important;border-bottom:1px solid #e5e5e5!important;min-height:12mm;box-sizing:border-box}
  .summary-line:last-child{border-bottom:0!important}
  .summary-line b{color:#111!important}
  .summary-line small{color:#666!important}
  .bh-total-row{margin-top:6mm!important;padding:5mm!important;border:1px solid #d7c3a0!important;background:#f6f0e6!important;border-radius:3px!important}
  .bh-total-row strong{font-size:17pt!important;color:#111!important}
  .bh-range{color:#555!important}
  .bh-notes{margin-top:7mm!important;padding-top:5mm!important;border-top:1px solid #cfcfcf!important;break-inside:avoid;page-break-inside:avoid}
  .bh-notes textarea{display:none!important}
  .bh-notes label{display:block!important;font-size:11pt!important;color:#111!important;margin-bottom:3mm!important}
  .print-client-notes{display:block!important;white-space:pre-wrap;min-height:18mm;padding:4mm;background:#fafafa;border:1px solid #ddd;border-radius:3px;color:#222;font-size:10pt;line-height:1.5}
  .bh-summary-wrap,.bh-summary{break-inside:auto;page-break-inside:auto}
}

/* PREMIUM CLIENT PDF LAYOUT */
.print-thanks,.print-features,.print-footer{display:none}
@media print{
  .print-branding{margin:0 0 7mm!important;padding:0 0 5mm!important;border-bottom:1.5px solid #b89258!important}
  .print-brand-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12mm;margin-bottom:5mm}
  .print-branding img{width:82mm!important;max-width:68%!important;max-height:31mm!important;margin:0!important;object-position:left center}
  .print-slogan{border-left:1px solid #b89258;padding-left:5mm;margin-top:2mm;min-width:30mm;color:#202020;font-size:8pt;line-height:1.45;letter-spacing:.16em;text-align:left}
  .print-slogan span{display:block}
  .print-title{font-size:22pt!important;letter-spacing:.015em!important;margin-top:2mm!important;color:#111!important}
  .print-subtitle{font-size:8.5pt!important;color:#666!important;margin-top:2mm!important}
  .print-date-row{display:none!important}
  .print-meta-cards{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:4mm;margin-top:5mm}
  .print-meta-cards>div{background:#f5f5f3;border-radius:3mm;padding:3.5mm 4mm;min-height:16mm}
  .print-meta-cards span{display:block;font-size:7pt;color:#777;letter-spacing:.08em;margin-bottom:1.5mm}
  .print-meta-cards strong{display:block;font-size:9.5pt;color:#111}
  .bh-summary h2{display:none!important}
  .bh-kicker{display:none!important}
  .summary-lines{border:0!important;border-radius:0!important;margin-top:1mm!important}
  .summary-line{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;padding:3.2mm 4mm!important;min-height:11mm!important}
  .summary-line:nth-child(odd){background:#f7f7f6!important}
  .summary-line b:last-child{font-size:9.5pt!important}
  .summary-line small{font-size:7.5pt!important}
  .bh-total-row{margin-top:5mm!important;padding:4.5mm 5mm!important;border:0!important;border-left:4px solid #b89258!important;background:#f3ebde!important;border-radius:0!important}
  .bh-total-row span{font-size:10pt!important;color:#111!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.03em}
  .bh-total-row strong{font-size:20pt!important;color:#111!important}
  .bh-range{display:none!important}
  .bh-notes{margin-top:6mm!important;padding:4mm 0 0!important;border-top:1px solid #d5d5d5!important}
  .bh-notes label{font-size:10.5pt!important;text-transform:none!important}
  .print-client-notes{min-height:17mm!important;padding:4mm 4.5mm!important;background:#fafafa!important;border:0!important;border-left:2px solid #b89258!important;border-radius:0!important;font-size:9pt!important}
  .print-thanks{display:block!important;text-align:center;color:#b07f32;font-size:17pt;font-style:italic;font-family:Georgia,serif;margin:8mm 0 6mm}
  .print-features{display:grid!important;grid-template-columns:repeat(3,1fr);border-top:1px solid #d7c4a5;border-bottom:1px solid #d7c4a5;padding:4mm 0;margin-top:3mm}
  .print-features>div{display:flex;justify-content:center;align-items:center;gap:3mm;border-right:1px solid #d7d0c5;color:#222;text-align:left}
  .print-features>div:last-child{border-right:0}
  .print-features b{color:#b89258;font-size:19pt;font-weight:400}
  .print-features span{font-size:7.5pt;line-height:1.3;letter-spacing:.08em}
  .print-footer{display:flex!important;align-items:center;gap:5mm;border-top:1px solid #b89258;margin-top:5mm;padding-top:3.5mm;font-size:7.5pt;color:#333;flex-wrap:wrap}
  .print-footer span{white-space:nowrap}
  .print-footer em{margin-left:auto;font-family:Georgia,serif;font-size:9pt;color:#333}
}
@media print and (max-width:700px){
  .print-brand-head{gap:5mm}.print-branding img{width:70mm!important}.print-slogan{font-size:6.5pt}.print-title{font-size:17pt!important}.print-meta-cards{gap:2mm}.print-meta-cards>div{padding:2.5mm}.print-meta-cards strong{font-size:8pt}.print-footer{gap:3mm}.print-footer em{width:100%;margin-left:0}
}

/* FINAL REFERENCE-STYLE CLIENT PDF */
@media print{
  .print-branding{margin:0 0 7mm!important;padding:0 0 4.5mm!important;border-bottom:1.5px solid #b89258!important}
  .print-brand-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12mm!important;margin-bottom:5mm!important}
  .print-branding img{width:88mm!important;max-width:70%!important;max-height:32mm!important;object-fit:contain!important;object-position:left center!important}
  .print-slogan{border-left:1px solid #b89258!important;padding-left:5mm!important;margin-top:2mm!important;min-width:31mm!important;color:#202020!important;font-size:8pt!important;line-height:1.5!important;letter-spacing:.14em!important;text-align:left!important;font-weight:600!important}
  .print-slogan span{display:block!important}
  .print-title{font-size:21pt!important;font-weight:800!important;letter-spacing:.01em!important;margin-top:1mm!important;color:#111!important}
  .print-subtitle{font-size:8.5pt!important;color:#666!important;margin-top:1.5mm!important}
  .print-meta-cards{display:grid!important;grid-template-columns:1.25fr 1fr 1fr!important;gap:4mm!important;margin-top:5mm!important}
  .print-meta-cards>div{background:#f5f3ef!important;border-radius:2mm!important;padding:3mm 4mm!important;min-height:14mm!important}
  .print-meta-cards span{display:block!important;font-size:6.8pt!important;color:#777!important;letter-spacing:.08em!important;margin-bottom:1.3mm!important}
  .print-meta-cards strong{display:block!important;font-size:9pt!important;color:#111!important}

  .bh-summary .bh-kicker,.bh-summary>h2{display:none!important}
  .summary-lines{display:none!important}
  .print-estimate-table{display:block!important;margin-top:1mm!important;width:100%!important}
  .print-estimate-table table{width:100%!important;border-collapse:collapse!important;table-layout:fixed!important;font-family:Arial,Helvetica,sans-serif!important;font-size:7.8pt!important;color:#111!important}
  .print-estimate-table thead{display:table-header-group!important}
  .print-estimate-table th{background:#d9c5a4!important;color:#111!important;font-weight:800!important;text-align:left!important;padding:2.6mm 2.2mm!important;border-bottom:1px solid #b89258!important}
  .print-estimate-table td{padding:2.35mm 2.2mm!important;border-bottom:1px solid #e1dfda!important;vertical-align:middle!important;line-height:1.25!important;overflow-wrap:anywhere!important}
  .print-estimate-table tbody tr:nth-child(even){background:#f7f6f3!important}
  .print-estimate-table th:nth-child(1),.print-estimate-table td:nth-child(1){width:7mm!important;text-align:center!important}
  .print-estimate-table th:nth-child(2),.print-estimate-table td:nth-child(2){width:auto!important}
  .print-estimate-table th:nth-child(3),.print-estimate-table td:nth-child(3){width:15mm!important;text-align:right!important}
  .print-estimate-table th:nth-child(4),.print-estimate-table td:nth-child(4){width:13mm!important;text-align:center!important}
  .print-estimate-table th:nth-child(5),.print-estimate-table td:nth-child(5){width:27mm!important;text-align:right!important}
  .print-estimate-table th:nth-child(6),.print-estimate-table td:nth-child(6){width:30mm!important;text-align:right!important;font-weight:700!important}
  .print-estimate-table tr{break-inside:avoid!important;page-break-inside:avoid!important}

  .bh-total-row{margin-top:5mm!important;padding:3.5mm 4.5mm!important;border:0!important;border-left:3px solid #b89258!important;background:#eee4d4!important;border-radius:0!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .bh-total-row span{font-size:9.5pt!important;color:#111!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.02em!important}
  .bh-total-row strong{font-size:18pt!important;color:#111!important}
  .bh-range{display:none!important}

  .bh-notes{margin-top:6mm!important;padding:4mm 0 0!important;border-top:1px solid #d3d0ca!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .bh-notes label{display:block!important;font-size:10pt!important;font-weight:800!important;color:#111!important;margin-bottom:2.5mm!important}
  .bh-notes textarea{display:none!important}
  .print-client-notes{display:block!important;min-height:14mm!important;padding:3.5mm 4mm!important;background:#faf9f7!important;border:0!important;border-left:2px solid #b89258!important;border-radius:0!important;color:#222!important;font-size:8.8pt!important;line-height:1.45!important;white-space:pre-wrap!important}

  .print-thanks{display:block!important;text-align:center!important;color:#b07f32!important;font-size:15pt!important;font-style:italic!important;font-family:Georgia,serif!important;margin:8mm 0 5mm!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .print-features{display:grid!important;grid-template-columns:repeat(3,1fr)!important;border-top:1px solid #d7c4a5!important;border-bottom:1px solid #d7c4a5!important;padding:3.5mm 0!important;margin-top:2mm!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .print-features>div{display:flex!important;justify-content:center!important;align-items:center!important;gap:2.5mm!important;border-right:1px solid #d7d0c5!important;color:#222!important;text-align:left!important}
  .print-features>div:last-child{border-right:0!important}
  .print-features b{color:#b89258!important;font-size:17pt!important;font-weight:400!important}
  .print-features span{font-size:6.8pt!important;line-height:1.3!important;letter-spacing:.06em!important}
  .print-footer{display:flex!important;align-items:center!important;gap:4mm!important;border-top:1px solid #b89258!important;margin-top:4mm!important;padding-top:3mm!important;font-size:7pt!important;color:#333!important;flex-wrap:wrap!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .print-footer span{white-space:nowrap!important}
  .print-footer em{margin-left:auto!important;font-family:Georgia,serif!important;font-size:8pt!important;color:#333!important}

  @page{size:A4 portrait;margin:10mm 11mm 14mm 11mm}
}

/* E-MAIL QUOTE MODAL */
.email-modal{max-width:560px}.email-help{color:var(--bh-muted);font-size:13px;line-height:1.6;margin:8px 0 20px}.email-modal form>label{display:block;margin-top:4px}.email-modal-actions{margin-top:18px}.email-modal-actions .bh-btn{width:auto}.email-status{min-height:20px;margin-top:12px;font-size:13px;font-weight:700}.email-status.ok{color:#27733d}.email-status.error{color:#b42318}.email-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}

@media print{#emailQuoteDialog{display:none!important}}

/* Strefa wykonawcy: pełny podgląd i niezależny PDF */
body[data-app="contractor"] .summary-lines{max-height:none;overflow:visible}
.contractor-print-head{display:none}
@media print{
  body[data-app="contractor"] .contractor-print-head{display:block!important;margin:0 0 7mm!important;padding:0 0 5mm!important;border-bottom:1.5px solid #333!important}
  body[data-app="contractor"] .contractor-print-title{font-family:Arial,Helvetica,sans-serif!important;font-size:20pt!important;font-weight:800!important;letter-spacing:.01em!important;color:#111!important}
  body[data-app="contractor"] .contractor-print-subtitle{font-size:8.5pt!important;color:#666!important;margin-top:2mm!important}
  body[data-app="contractor"] .contractor-print-meta{display:grid!important;grid-template-columns:1fr 1fr!important;gap:4mm!important;margin-top:5mm!important}
  body[data-app="contractor"] .contractor-print-meta>div{background:#f5f5f3!important;border-radius:2mm!important;padding:3mm 4mm!important;min-height:14mm!important}
  body[data-app="contractor"] .contractor-print-meta span{display:block!important;font-size:6.8pt!important;color:#777!important;letter-spacing:.08em!important;margin-bottom:1.3mm!important}
  body[data-app="contractor"] .contractor-print-meta strong{display:block!important;font-size:9pt!important;color:#111!important}
  body[data-app="contractor"] .bh-summary .bh-kicker,body[data-app="contractor"] .bh-summary>h2{display:none!important}
  body[data-app="contractor"] .summary-lines{display:none!important}
  body[data-app="contractor"] .print-estimate-table{display:block!important;margin-top:1mm!important;width:100%!important}
  body[data-app="contractor"] .print-estimate-table table{width:100%!important;border-collapse:collapse!important;table-layout:fixed!important;font-family:Arial,Helvetica,sans-serif!important;font-size:8pt!important;color:#111!important}
  body[data-app="contractor"] .print-estimate-table thead{display:table-header-group!important}
  body[data-app="contractor"] .print-estimate-table th{background:#e5e5e2!important;color:#111!important;font-weight:800!important;text-align:left!important;padding:2.7mm 2.2mm!important;border-bottom:1px solid #999!important}
  body[data-app="contractor"] .print-estimate-table td{padding:2.4mm 2.2mm!important;border-bottom:1px solid #ddd!important;vertical-align:middle!important;line-height:1.25!important;overflow-wrap:anywhere!important}
  body[data-app="contractor"] .print-estimate-table tbody tr:nth-child(even){background:#f7f7f6!important}
  body[data-app="contractor"] .print-estimate-table th:nth-child(1),body[data-app="contractor"] .print-estimate-table td:nth-child(1){width:9mm!important;text-align:center!important}
  body[data-app="contractor"] .print-estimate-table th:nth-child(2),body[data-app="contractor"] .print-estimate-table td:nth-child(2){width:auto!important}
  body[data-app="contractor"] .print-estimate-table th:nth-child(3),body[data-app="contractor"] .print-estimate-table td:nth-child(3){width:16mm!important;text-align:right!important}
  body[data-app="contractor"] .print-estimate-table th:nth-child(4),body[data-app="contractor"] .print-estimate-table td:nth-child(4){width:14mm!important;text-align:center!important}
  body[data-app="contractor"] .print-estimate-table th:nth-child(5),body[data-app="contractor"] .print-estimate-table td:nth-child(5){width:29mm!important;text-align:right!important}
  body[data-app="contractor"] .print-estimate-table th:nth-child(6),body[data-app="contractor"] .print-estimate-table td:nth-child(6){width:31mm!important;text-align:right!important;font-weight:700!important}
  body[data-app="contractor"] .print-estimate-table tr{break-inside:avoid!important;page-break-inside:avoid!important}
  body[data-app="contractor"] .bh-total-row{margin-top:5mm!important;padding:4mm!important;background:#efefec!important;border:1px solid #d3d3ce!important}
  body[data-app="contractor"] .bh-total-row strong{color:#111!important}
  body[data-app="contractor"] .bh-range{background:#f7f7f6!important;color:#222!important}
  body[data-app="contractor"] .bh-range strong{color:#111!important}
  body[data-app="contractor"] .bh-disclaimer{display:block!important;color:#666!important;margin-top:4mm!important}
}

/* Główna stopka kalkulatora – spójna ze stroną BUD-HUT.PL */
.bh-site-footer{margin-top:64px;background:#171717;color:#eee;border-top:1px solid #2b2b2b}
.bh-footer-inner{max-width:1180px;margin:0 auto;padding:52px 28px 42px;display:grid;grid-template-columns:1.35fr 1fr 1fr 1.15fr;gap:42px}
.bh-footer-brand img{width:190px;height:auto;display:block;background:#fff;padding:10px;border-radius:8px;margin-bottom:18px}
.bh-footer-brand p,.bh-footer-col p{margin:0;color:#bdbdbd;font-size:14px;line-height:1.7}
.bh-footer-hours{margin-top:22px;display:flex;flex-direction:column;gap:5px;font-size:13px;color:#aaa}
.bh-footer-hours strong,.bh-footer-col h3{color:#fff}
.bh-footer-col h3{margin:0 0 17px;font-size:15px;letter-spacing:.08em;text-transform:uppercase}
.bh-footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.bh-footer-col span,.bh-footer-col a{font-size:13px;line-height:1.55;color:#aaa;text-decoration:none}
.bh-footer-col a:hover{color:#d6bd91}
.bh-footer-contact a{font-size:15px;color:#eee}
.bh-footer-contact strong{margin-top:12px;color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.bh-footer-bottom{max-width:1180px;margin:0 auto;padding:18px 28px 22px;border-top:1px solid #303030;display:flex;justify-content:space-between;gap:20px;color:#858585;font-size:12px}
.bh-footer-bottom span:last-child{color:#bda579;font-style:italic}
@media(max-width:850px){.bh-footer-inner{grid-template-columns:1fr 1fr;gap:32px}.bh-footer-brand{grid-column:1/-1}}
@media(max-width:560px){.bh-footer-inner{grid-template-columns:1fr;padding:40px 20px}.bh-footer-brand{grid-column:auto}.bh-footer-bottom{padding:18px 20px;flex-direction:column}.bh-footer-bottom span:last-child{display:none}}
@media print{.bh-site-footer{display:none!important}}


/* SEO content */
.bh-seo-section{margin:28px auto 0;padding:0 24px 26px;background:transparent}
.bh-seo-inner{max-width:1180px;margin:0 auto;padding:24px 28px;border:1px solid rgba(39,39,39,.08);border-radius:18px;background:#faf9f7;color:#30302e}
.bh-seo-inner .bh-kicker{display:inline-block;margin-bottom:6px;color:#9a7a43;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.bh-seo-inner h2{margin:0 0 10px;font-size:clamp(19px,2.2vw,25px);line-height:1.2;font-weight:700}
.bh-seo-inner p{max-width:1050px;margin:0 0 8px;color:#6b6964;font-size:14px;line-height:1.6}
.bh-seo-inner p:last-of-type{margin-bottom:0}
.bh-seo-links{display:flex;gap:16px;flex-wrap:wrap;margin-top:12px;padding-top:11px;border-top:1px solid rgba(39,39,39,.07)}
.bh-seo-links a{color:#8b6b35;font-size:13px;font-weight:700;text-decoration:none}
.bh-seo-links a:hover{text-decoration:underline}
@media(max-width:700px){.bh-seo-section{margin-top:20px;padding:0 14px 20px}.bh-seo-inner{padding:20px 18px;border-radius:15px}.bh-seo-inner p{font-size:13px;line-height:1.55}.bh-seo-links{flex-direction:column;gap:7px}}
@media print{.bh-seo-section{display:none}}

.field-optional{font-weight:400;color:var(--bh-muted);font-size:12px}
.email-modal form>label+label{margin-top:14px}
