/* HQ — shared brand stylesheet for document deliverables (contract, proposal, invoice) */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{--ink:#141413;--paper:#fff;--pine:#0E9E73;--pine-ink:#0B7E5C;--ink-soft:#3A3A38;--muted:#8C8C88;--line:#EAEAE8;--line2:#D8D8D5;}
html{-webkit-font-smoothing:antialiased;}
body{font-family:'Figtree',system-ui,sans-serif;background:#E7E7E4;color:var(--ink);}

/* preview chrome + document switcher */
.chrome{background:var(--ink);padding:14px 28px;display:flex;align-items:center;gap:22px;position:sticky;top:0;z-index:10;}
.chrome .mk{width:26px;height:26px;display:block;color:#fff;flex-shrink:0;}
.chrome b{font-family:'Manrope',sans-serif;font-weight:800;font-size:13px;color:#fff;letter-spacing:-.01em;}
.docnav{display:flex;gap:4px;}
.docnav a{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.5);text-decoration:none;padding:5px 11px;border:1px solid transparent;}
.docnav a:hover{color:#fff;}
.docnav a.on{color:#fff;border-color:rgba(255,255,255,.22);}
.chrome .tag{margin-left:auto;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.4);}

.stack{max-width:1180px;margin:0 auto;padding:40px 20px 80px;display:flex;flex-direction:column;align-items:center;gap:36px;}

/* A4 page */
.page{background:#fff;width:794px;max-width:100%;min-height:1123px;padding:54px 60px 48px;position:relative;display:flex;flex-direction:column;border:1px solid var(--line2);}
.page.wide{width:1123px;min-height:794px;}

/* 16:9 slide */
.slide{background:#fff;width:1000px;max-width:100%;aspect-ratio:16/9;padding:40px 52px 30px;position:relative;display:flex;flex-direction:column;border:1px solid var(--line2);}

@media(max-width:1040px){ .slide{padding:30px 30px 22px;} }
@media(max-width:840px){ .page,.page.wide{width:100%;min-height:0;padding:36px 28px;} }

/* masthead */
.mast{display:flex;align-items:flex-start;gap:20px;padding-bottom:16px;border-bottom:1.5px solid var(--ink);}
.mast svg{width:62px;height:62px;flex-shrink:0;color:var(--ink);}
.mast-co{padding-top:2px;}
.mast-name{font-weight:700;font-size:14px;letter-spacing:.01em;color:var(--ink);}
.mast-addr{font-size:11px;font-weight:300;color:var(--ink-soft);line-height:1.55;margin-top:3px;}
.mast-contact{margin-top:7px;display:flex;flex-wrap:wrap;gap:5px 16px;font-size:11px;color:var(--ink-soft);}
.mast-contact span{display:inline-flex;gap:6px;align-items:baseline;}
.mast-contact .lab{font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}
.mast-contact a{color:var(--ink);text-decoration:none;}
.mast-meta{margin-left:auto;text-align:right;padding-top:2px;}

/* footer */
.foot{margin-top:auto;padding-top:14px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);}
.foot .pg b{color:var(--ink);font-weight:700;}
.foot > span:first-child{font-family:'Manrope',sans-serif;font-weight:800;font-size:10px;letter-spacing:.06em;}

.body{flex:1 0 auto;padding-top:26px;}
.slide .body{padding-top:18px;}

/* document type */
.eyebrow{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--pine);}
h1.doc{font-family:'Manrope',sans-serif;font-weight:800;font-size:22px;letter-spacing:-.025em;line-height:1.2;color:var(--ink);margin:10px 0 4px;}
h1.doc .sub{display:block;font-size:15px;color:var(--ink-soft);font-weight:800;margin-top:3px;}
h2.anexa{font-family:'Manrope',sans-serif;font-weight:800;font-size:20px;letter-spacing:-.02em;color:var(--ink);}
.sec-label{font-weight:700;font-size:12.5px;color:var(--ink);margin:0 0 8px;display:flex;gap:9px;align-items:baseline;}
.sec-label .n{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);}
p{font-size:12px;font-weight:300;line-height:1.62;color:var(--ink-soft);margin-bottom:10px;}
p strong, .b{font-weight:600;color:var(--ink);}
a{color:var(--ink);text-decoration:underline;text-decoration-color:rgba(20,20,19,0.25);text-underline-offset:2px;word-break:break-word;}
ul.dots{list-style:none;margin:6px 0 10px;}
ul.dots li{position:relative;padding-left:18px;font-size:12px;font-weight:300;color:var(--ink-soft);line-height:1.6;margin-bottom:5px;}
ul.dots li::before{content:'';position:absolute;left:2px;top:8px;width:5px;height:5px;background:var(--pine);}

/* tables */
table{width:100%;border-collapse:collapse;margin:12px 0 16px;font-size:11px;}
thead th{background:var(--ink);color:#fff;font-weight:600;font-size:10px;text-align:left;padding:8px 9px;line-height:1.3;border-right:1px solid rgba(255,255,255,.12);}
thead th:last-child{border-right:none;}
tbody td{padding:6px 9px;border-bottom:1px solid var(--line);color:var(--ink-soft);font-weight:300;vertical-align:middle;}
td.num,th.num{text-align:right;white-space:nowrap;}
td.c,th.c{text-align:center;}
tr .zero{color:#B9B9B5;}
.rowname{font-weight:500;color:var(--ink);}
.subline{font-size:10px;color:var(--muted);line-height:1.45;}
tr.total td{border-top:1.5px solid var(--ink);border-bottom:none;font-weight:600;color:var(--ink);padding-top:8px;}
tr.grand td{background:rgba(14,158,115,.07);border-top:2px solid var(--ink);border-bottom:none;font-weight:700;color:var(--ink);padding:9px;}
tr.grand td .eur{color:var(--pine-ink);}

/* signatures */
.sign{display:flex;justify-content:space-between;gap:40px;margin-top:34px;}
.sign .col{width:46%;}
.sign .who{font-size:12px;color:var(--ink);margin-bottom:30px;}
.sign .who b{font-weight:700;}
.sign .rule{border-top:1px solid var(--ink-soft);width:170px;}
.sign .hint{font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:5px;}
.datestamp{font-size:12px;color:var(--ink);margin-top:22px;}
.datestamp .lab{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-right:6px;}

/* condensed masthead on continuation pages/slides */
.stack > .page:not(:first-child) .mast,.stack > .slide:not(:first-child) .mast{align-items:center;border-bottom:1px solid var(--line2);padding-bottom:12px;}
.stack > .page:not(:first-child) .mast svg,.stack > .slide:not(:first-child) .mast svg{width:44px;height:44px;}
.stack > .page:not(:first-child) .mast .mast-addr,.stack > .page:not(:first-child) .mast .mast-contact,
.stack > .slide:not(:first-child) .mast .mast-addr,.stack > .slide:not(:first-child) .mast .mast-contact{display:none;}
.stack > .page:not(:first-child) .mast-co,.stack > .slide:not(:first-child) .mast-co{padding-top:0;}

/* recipient block (proposal cover, invoice) */
.recip{margin-left:auto;text-align:right;}
.recip .lab{font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);display:block;}
.recip .val{font-family:'Manrope',sans-serif;font-weight:800;font-size:20px;letter-spacing:-.02em;color:var(--ink);line-height:1.1;margin:1px 0 9px;}
.recip .val.sm{font-size:12px;font-weight:700;font-family:'Figtree',sans-serif;letter-spacing:0;}

/* benefit grid (proposal slide 1) */
.lead{font-size:13px;font-weight:300;color:var(--ink-soft);line-height:1.5;margin-bottom:4px;}
.lead b{font-weight:700;color:var(--ink);}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 34px;margin-top:22px;}
.benefit .bn{font-family:'Manrope',sans-serif;font-weight:800;font-size:30px;color:var(--ink);letter-spacing:-.03em;line-height:1;}
.benefit .bt{font-weight:700;font-size:13px;color:var(--ink);margin:8px 0 0;}
.benefit .bmark{width:26px;height:2px;background:var(--pine);margin:7px 0 8px;}
.benefit .bd{font-size:11px;font-weight:300;color:var(--ink-soft);line-height:1.5;}

/* offer cards (proposal slide 2) */
.offers{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:18px;}
.offer{border:1px solid var(--line2);padding:22px 24px;display:flex;flex-direction:column;}
.offer .oey{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);}
.offer .ot{font-family:'Manrope',sans-serif;font-weight:800;font-size:17px;letter-spacing:-.02em;color:var(--ink);margin:5px 0 12px;}
.offer .od{font-size:11.5px;font-weight:300;color:var(--ink-soft);line-height:1.55;flex:1 0 auto;}
.offer .od b{font-weight:700;color:var(--ink);}
.offer .cost{margin-top:16px;padding-top:13px;border-top:1px solid var(--line);display:flex;align-items:baseline;gap:8px;}
.offer .cost .amt{font-family:'Manrope',sans-serif;font-weight:800;font-size:22px;color:var(--ink);letter-spacing:-.02em;}
.offer .cost .per{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);}
.note{font-size:11px;font-weight:300;color:var(--ink-soft);line-height:1.5;margin-top:16px;}
.note b{font-weight:700;color:var(--ink);}
.obs{font-size:10.5px;font-weight:300;color:var(--muted);line-height:1.5;margin-top:14px;}
.obs .h{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:3px;}

/* invoice header */
.inv-head{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;margin-top:22px;padding-bottom:14px;border-bottom:1.5px solid var(--ink);}
.inv-no{font-family:'Manrope',sans-serif;font-weight:800;font-size:24px;letter-spacing:-.025em;color:var(--ink);}
.inv-no .pre{display:block;font-family:'JetBrains Mono',monospace;font-size:9.5px;font-weight:500;letter-spacing:.18em;color:var(--muted);margin-bottom:3px;-webkit-text-fill-color:initial;}
.inv-total{text-align:right;}
.inv-total .lab{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);}
.inv-total .amt{font-family:'Manrope',sans-serif;font-weight:800;font-size:22px;color:var(--ink);letter-spacing:-.02em;}
.parties{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:18px;}
.party .ph{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;}
.party .pn{font-weight:700;font-size:13px;color:var(--ink);margin-bottom:4px;}
.fiscal{font-size:10.5px;font-weight:300;color:var(--ink-soft);line-height:1.62;}
.fiscal .k{font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}
.dates{display:flex;gap:26px;margin-top:4px;}
.dates .d .lab{font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:block;}
.dates .d .v{font-size:12px;font-weight:600;color:var(--ink);}

/* legal fine print */
.legal{font-size:9px;font-weight:300;color:var(--muted);line-height:1.55;margin-top:8px;}
.legal h4{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-weight:500;margin:12px 0 5px;}
.svc-track{margin-top:14px;}
.svc-track th{font-size:8px;padding:7px 6px;}
.svc-track td{height:46px;border:1px solid var(--line2);vertical-align:top;}

/* ---- print / PDF ---- */
@media print{
  *{-webkit-print-color-adjust:exact !important;print-color-adjust:exact !important;}
  html,body{background:#fff !important;}
  .chrome{display:none !important;}
  .stack{display:block;max-width:none;width:auto;margin:0;padding:0;gap:0;}
  .page{width:210mm;min-height:0;height:296.6mm;border:none !important;overflow:hidden;break-inside:avoid;}
  .page + .page{break-before:page;}
  .slide{width:297mm;height:209.6mm;aspect-ratio:auto;border:none !important;overflow:hidden;break-inside:avoid;padding:30px 40px 22px;}
  .slide + .slide{break-before:page;}
}
