@font-face {
  font-family: 'KPManrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(kp-print-fonts/brand-font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'KPManrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(kp-print-fonts/brand-font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'KPManrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(kp-print-fonts/brand-font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'KPManrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(kp-print-fonts/brand-font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'KPOswald';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(kp-print-fonts/brand-font-5.ttf) format('truetype');
}
@font-face {
  font-family: 'KPOswald';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(kp-print-fonts/brand-font-6.ttf) format('truetype');
}
@font-face {
  font-family: 'KPOswald';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(kp-print-fonts/brand-font-7.ttf) format('truetype');
}

#print-doc *{box-sizing:border-box}
#print-doc{--ink:#0e0e0e;--paper:#f6f4ef;--bone:#ece7dd;--sun:#ffd014;--steel:#5a5a57;--line:#d9d4c9}
#print-doc{margin:0;background:#dcdad5;color:var(--ink);font-family:KPManrope,Arial,sans-serif;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}
#print-doc .page{width:135mm;height:240mm;margin:22px auto;padding:8mm 9mm 6mm;background:var(--paper);display:grid;grid-template-rows:11mm minmax(0,1fr) 6mm;gap:4mm;box-shadow:0 4px 30px #0002;break-after:page}
#print-doc .page:last-child{break-after:auto}
#print-doc .mast{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:2mm}
#print-doc .logo svg{display:block;width:26mm;height:10mm}
#print-doc .mast-meta{text-align:right;font-size:7.3pt;line-height:1.5}
#print-doc .mast-meta b{font-size:9pt}
#print-doc .body{min-height:0}
#print-doc .footer{display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid var(--line);padding-top:2mm;font-size:6.8pt;color:var(--steel)}
#print-doc .footer a{color:inherit;text-decoration:none}
#print-doc .eyebrow{font-size:7.5pt;letter-spacing:.7px;text-transform:uppercase;display:flex;align-items:center;gap:2.5mm;color:var(--steel);font-weight:700;margin:1mm 0 3mm}
#print-doc .eyebrow:before{content:'';display:block;width:8mm;height:2px;background:var(--sun)}
#print-doc h1,#print-doc h2,#print-doc h3,#print-doc .display{font-family:KPOswald,'Arial Narrow',Arial,sans-serif;font-weight:600;line-height:1.1;margin:0;text-transform:uppercase}
#print-doc h1{font-size:37pt;letter-spacing:-.5px}
#print-doc h1 em{color:var(--sun);font-style:normal}
#print-doc .cover{background:var(--ink);color:var(--paper);background-image:linear-gradient(#ffffff06 1px,transparent 1px),linear-gradient(90deg,#ffffff06 1px,transparent 1px);background-size:8mm 8mm}
#print-doc .cover .mast,#print-doc .cover .footer{border-color:#ffffff29}
#print-doc .cover .mast-meta,#print-doc .cover .footer{color:#ece7dd}
#print-doc .cover .logo svg text{fill:#f6f4ef}
#print-doc .cover .eyebrow{color:#c6c3bd}
#print-doc .photo{height:67mm;margin:5mm -9mm 0;position:relative;overflow:hidden}
#print-doc .photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 60%}
#print-doc .photo small{position:absolute;bottom:0;left:0;right:0;padding:1.5mm 9mm;background:#0e0e0ec9;color:white;font-size:6.4pt}
#print-doc .cover-price{padding:4mm 0;border-bottom:1px solid #ffffff29}
#print-doc .cover-price>span{font-size:8.5pt;color:#ccc9c1}
#print-doc .cover-price strong{display:block;color:var(--sun);font-family:KPOswald,sans-serif;font-size:36pt;line-height:1.2;margin:1mm 0 3mm}
#print-doc .split{display:grid;grid-template-columns:1fr 1fr;gap:5mm}
#print-doc .split span{font-size:8pt;color:#c6c3bd}
#print-doc .split b{font-size:12pt;color:var(--paper);display:block;margin-top:1mm}
#print-doc .facts{display:grid;grid-template-columns:repeat(3,1fr);gap:3mm;margin:4mm 0}
#print-doc .facts b{font-family:KPOswald,sans-serif;font-size:20pt;font-weight:500;display:block}
#print-doc .facts span{font-size:7.6pt;line-height:1.4;color:#ccc9c1;display:block;margin-top:1mm}
#print-doc .scope{border-top:1px solid #ffffff29;padding-top:3mm;font-size:8.3pt;line-height:1.5}
#print-doc .scope b{color:var(--sun)}
#print-doc .scope p{margin:0 0 2mm}
#print-doc .scope .muted{color:#bcb9b1;font-size:7.4pt}
#print-doc .overview h2{font-size:28pt;margin-bottom:2mm}
#print-doc .lead{font-size:8.7pt;color:var(--steel);line-height:1.5;margin:0 0 4mm}
#print-doc .summary-head{display:grid;grid-template-columns:7mm 1fr 29mm 8mm;gap:1mm;font-size:6.7pt;letter-spacing:.25px;color:var(--steel);padding:2mm 0;border-bottom:1px solid var(--ink)}
#print-doc .summary-head span:nth-last-child(-n+2){text-align:right}
#print-doc .summary-row{display:grid;grid-template-columns:7mm 1fr 29mm 8mm;gap:1mm;align-items:center;min-height:7.9mm;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);padding:1mm 0}
#print-doc .summary-no{font-family:KPOswald,sans-serif;color:var(--steel);font-size:10pt}
#print-doc .summary-name{font-size:8.9pt;line-height:1.2;font-weight:600}
#print-doc .summary-cost{text-align:right;font-size:9.2pt;font-weight:800;white-space:nowrap}
#print-doc .summary-page{text-align:right;font-size:7.4pt;color:var(--steel)}
#print-doc .summary-total{background:var(--sun);margin-top:4mm;padding:3mm;display:flex;justify-content:space-between;align-items:center;font-size:8.5pt;font-weight:700}
#print-doc .summary-total b{font-family:KPOswald,sans-serif;font-size:22pt;font-weight:600}
#print-doc .overview-note{font-size:7.7pt;color:var(--steel);margin-top:3mm;line-height:1.5}
#print-doc .stage-kicker{display:flex;justify-content:space-between;align-items:center;margin:0 0 2.5mm;font-size:7.4pt;color:var(--steel)}
#print-doc .stage-kicker strong{color:var(--ink);background:var(--sun);padding:1mm 2mm;font-size:8pt}
#print-doc .stage-title{font-size:25pt;line-height:1.1;margin-bottom:3mm}
#print-doc .full-title{font-size:7.7pt;color:var(--steel);line-height:1.4;margin:0 0 3mm}
#print-doc .stage-cost{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:2mm;background:var(--bone);padding:3mm;margin-bottom:4mm}
#print-doc .stage-cost span{font-size:7pt;color:var(--steel);display:block}
#print-doc .stage-cost b{font-size:10.5pt;display:block;white-space:nowrap;margin-top:1mm}
#print-doc .stage-cost .grand{border-left:1px solid #bfb9ac;padding-left:3mm}
#print-doc .stage-cost .grand b{font-size:13pt}
#print-doc .continuation .stage-title{font-size:21pt}
#print-doc .continuation .full-title{display:none}
#print-doc .continuation .stage-cost{padding:2mm;margin-bottom:3mm}
#print-doc .zone{display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:var(--paper);padding:2mm 2.5mm;margin:3mm 0 0;font-size:9pt;font-weight:700}
#print-doc .zone .zone-sum{font-size:8pt;font-weight:500}
#print-doc .zone.lab{background:var(--sun);color:var(--ink)}
#print-doc .ledger{width:100%;border-collapse:collapse;table-layout:fixed}
#print-doc .ledger th{font-size:7pt;color:var(--steel);text-align:right;font-weight:600;padding:2mm 1.3mm;border-bottom:1px solid var(--line);vertical-align:bottom}
#print-doc .ledger th:first-child{text-align:left}
#print-doc .ledger td{font-size:8.7pt;padding:2.5mm 1.3mm;vertical-align:top;line-height:1.35;border-bottom:1px solid var(--line)}
#print-doc .ledger td:first-child{font-size:9pt;overflow-wrap:anywhere}
#print-doc .ledger .num{text-align:right;white-space:nowrap;font-size:8.5pt}
#print-doc .ledger .quantity small{display:block;font-size:7.4pt;color:var(--steel);white-space:nowrap;margin-top:1mm}
#print-doc .ledger .cost{font-weight:800;color:var(--ink);background:#fff8}
#print-doc .code{display:block;font-size:6.6pt;color:var(--steel);margin-bottom:.5mm}
#print-doc .manual{font-size:6.6pt;color:var(--steel);display:block}
#print-doc .zone-subtotal{display:flex;justify-content:space-between;padding:2.3mm;font-size:8pt;font-weight:700;border-bottom:1px solid var(--ink);background:var(--bone)}
#print-doc .zone-subtotal b{font-size:10pt}
#print-doc .end-stage{border-top:2px solid var(--ink);margin-top:4mm;padding-top:3mm;display:flex;justify-content:space-between;align-items:center;font-size:8.5pt}
#print-doc .end-stage b{font-family:KPOswald,sans-serif;font-size:22pt}
#print-doc .explanation{font-size:8pt;color:var(--steel);line-height:1.55;margin-top:4mm}
#print-doc .next-stage{padding:3mm 0;margin-top:4mm;border-top:1px solid var(--line);font-size:8pt;color:var(--steel)}
#print-doc .next-stage a{color:var(--ink);text-decoration:none;font-weight:700}
#print-doc .closing-title{font-size:32pt;margin:4mm 0}
#print-doc .closing-price{font-size:36pt;color:var(--ink);background:var(--sun);padding:4mm;margin:4mm 0}
#print-doc .closing p{font-size:10pt;line-height:1.65}
#print-doc .closing .contact{border-top:1px solid var(--line);padding-top:5mm;margin-top:8mm;font-size:9pt}
#print-doc .mobile-ledger thead{display:none}
#print-doc .mobile-ledger td{padding:3mm 0!important}
#print-doc .mobile-name{font-size:11.6pt;line-height:1.35;margin-bottom:2.5mm;overflow-wrap:anywhere}
#print-doc .mobile-name .code{display:inline;color:var(--steel);font-size:7.5pt;margin-right:2mm}
#print-doc .metric-grid{display:grid;grid-template-columns:1fr 1fr 1.25fr;background:var(--bone)}
#print-doc .metric-grid>div{padding:2mm 2.5mm}
#print-doc .metric-grid>div+div{border-left:1px solid #d3cdbf}
#print-doc .metric-grid small{display:block;font-size:7.1pt;color:var(--steel);white-space:nowrap;margin-bottom:1mm}
#print-doc .metric-grid b{display:block;font-size:10.5pt;white-space:nowrap}
#print-doc .metric-grid .metric-total{background:#fff0a3}
#print-doc .metric-grid .metric-total b{font-size:11pt}
#print-doc .zone{margin-top:2mm}
#print-doc .mobile-ledger td{padding:2mm 0!important}
#print-doc .mobile-name{margin-bottom:1.5mm}
#print-doc .metric-grid>div{padding:1.5mm 2mm}
#print-doc{display:none;background:transparent;margin:0;font-family:KPManrope,Arial,sans-serif;line-height:1.4;text-align:left}
#print-doc.kp-measuring{display:block!important;position:fixed!important;left:-10000px!important;top:0!important;width:135mm!important;visibility:hidden!important;z-index:-1}
#print-doc .page{margin:0;box-shadow:none}
#print-doc .free-text{white-space:pre-wrap;overflow-wrap:anywhere}
#print-doc .stage-title{font-size:23pt;overflow-wrap:anywhere}
#print-doc .closing-title{font-size:21pt;margin:4mm 0 3mm}
#print-doc .continuation .body{padding-top:0}
#print-doc .manual-note{font-size:8pt;line-height:1.5;margin:2mm 0 3mm;color:var(--steel)}
#print-doc .facts b{font-size:18pt;overflow-wrap:anywhere}
#print-doc .cover h1{font-size:32pt;overflow-wrap:anywhere}
#print-doc .cover .scope{font-size:8.5pt;margin-top:3mm}
#print-doc .compact-cover h1{font-size:23pt}
#print-doc .compact-cover .photo{height:44mm}
#print-doc .compact-cover .facts b{font-size:13pt}
#print-doc .cover-overhead{font-size:8pt;margin-top:2mm}
#print-doc .metric-grid b,#print-doc .stage-cost b{font-size:10pt;white-space:normal;overflow-wrap:anywhere}
#print-doc .metric-grid .metric-total b{font-size:10.5pt}
#print-doc .stage-cost .grand b{font-size:12pt}
#print-doc .summary-row{break-inside:avoid}
#print-doc .summary-row{min-height:7.5mm}
#print-doc .summary-name{font-size:8.5pt;line-height:1.2}
.kp-cover-controls>label{display:block;margin:9px 0;font-size:11px;color:var(--tx2)}
.kp-cover-controls input:not([type=file]),.kp-cover-controls textarea{display:block;width:100%;margin-top:5px;padding:8px;background:var(--card);border:1px solid var(--bd);color:var(--tx);border-radius:5px;font:inherit}
.kp-cover-controls textarea{resize:vertical;min-height:62px}
.kp-cover-controls .kp-photo-button{background:var(--gold);padding:10px;color:#111;border-radius:5px;text-align:center;cursor:pointer;font-weight:700}
.kp-cover-controls img{width:100%;max-height:150px;object-fit:contain;border-radius:5px}
.kp-cover-controls [hidden]{display:none!important}
.kp-cover-controls button{border:1px solid var(--bd);background:var(--card);color:var(--tx2);padding:6px 9px;border-radius:4px;cursor:pointer}
.kp-cover-controls details{margin-top:10px;font-size:11px;color:var(--tx2)}
.kp-cover-controls summary{cursor:pointer}.kp-fact-input{display:grid;grid-template-columns:1.35fr 1fr;gap:5px;margin:5px 0}.kp-cover-help{font-size:10px;color:var(--mu);line-height:1.5}
@page{size:135mm 240mm;margin:0}
@media print{
 #print-doc{display:block!important;position:static!important;visibility:visible!important;width:135mm!important;margin:0!important;background:transparent!important;font-family:KPManrope,Arial,sans-serif!important;font-size:10pt;line-height:1.4}
 #print-doc .page{margin:0!important;box-shadow:none!important;zoom:1!important}
 #print-doc *{print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}
}

#print-doc .cover-highlights{margin:3mm 0 2mm}
#print-doc .highlight-heading{font-size:7pt;letter-spacing:.6px;text-transform:uppercase;color:var(--sun);font-weight:700;margin-bottom:2mm}
#print-doc .highlight-grid{display:grid;grid-template-columns:1fr 1fr;gap:2mm 4mm}
#print-doc .highlight-card{border-left:2px solid var(--sun);padding:1mm 0 1mm 2.5mm;min-width:0}
#print-doc .highlight-card span{display:block;color:#bcb9b1;font-size:7pt;line-height:1.35;margin-bottom:1mm}
#print-doc .highlight-card b{display:block;color:var(--paper);font-size:9pt;line-height:1.35;font-weight:600;overflow-wrap:anywhere}
#print-doc .cover-highlights+.scope{margin-top:2mm}

#print-doc .cover-with-highlights .photo{height:56mm}
#print-doc .cover-with-highlights.compact-cover .photo{height:44mm}

/* Full-sheet A4: scale the readable layout uniformly; never centre a small sheet inside A4. */
#print-doc.kp-measuring{width:210mm!important}
#print-doc .page{width:169.69697mm;height:240mm;zoom:1.2375}
@page{size:A4 portrait;margin:0}
@media print{
 html,body{margin:0!important;padding:0!important}
 #print-doc{width:210mm!important;margin:0!important;padding:0!important}
 #print-doc .page{zoom:1.2375!important;margin:0!important}
}
