/* v2: Joel's branded quote / invoice, copied from the Kurrent invoice (Oct 28 2026) and scoped under .d2 */
@font-face{font-family:'Inter';src:url(/fonts/inter-400.woff2) format('woff2');font-weight:400}
@font-face{font-family:'Inter';src:url(/fonts/inter-500.woff2) format('woff2');font-weight:500}
@font-face{font-family:'Inter';src:url(/fonts/inter-600.woff2) format('woff2');font-weight:600}
@font-face{font-family:'Inter';src:url(/fonts/inter-700.woff2) format('woff2');font-weight:700 800}
@font-face{font-family:'Montserrat';src:url(/fonts/montserrat-var.woff2) format('woff2');font-weight:100 900}
@font-face{font-family:'Cormorant Garamond';src:url(/fonts/cormorantgaramond-normal-500.woff2) format('woff2');font-weight:500}
.d2 * { box-sizing:border-box; }
.d2 { font-family:'Inter'; color:rgb(16,57,68); font-size:9.6pt; line-height:normal; -webkit-font-smoothing:antialiased; }
.d2 .page {width:8.5in; height:11in; background:rgb(250,248,243); padding:0.36in 0.6in 0.4in; position:relative;}
.d2 .topbar {position:absolute; top:0; left:0; right:0; height:0.12in; background:rgb(16,57,68);}
.d2 .topbar2 {position:absolute; top:0.12in; left:0; right:0; height:1.5pt; background:rgb(201,169,110);}
.d2 .head {display:flex; justify-content:space-between; align-items:center; margin-top:0.05in;}
.d2 .brand {display:flex; align-items:center;}
.d2 .brand img {width:0.95in; margin-right:16pt;}
.d2 .bname {font-family:'Cormorant Garamond'; font-weight:600; font-size:18.5pt; letter-spacing:2.2pt; line-height:1.05; text-transform:uppercase;}
.d2 .baddr {font-size:8pt; line-height:1.45; margin-top:6pt; color:rgb(60,90,98);}
.d2 .qt {text-align:right;}
.d2 .qt h1 {font-family:'Cormorant Garamond'; font-weight:500; font-size:34pt; letter-spacing:8pt; margin:0 -8pt 0 0; line-height:1;}
.d2 .qt .gl {width:1.1in; height:1.2pt; background:rgb(201,169,110); margin:7pt 0 7pt auto;}
.d2 .meta {font-size:8.6pt; line-height:1.75;}
.d2 .meta span {font-family:'Montserrat'; font-size:6.8pt; letter-spacing:1.6pt; color:rgb(201,169,110); text-transform:uppercase; font-weight:600; margin-right:6pt;}
.d2 .rule {height:0.8pt; background:rgb(201,169,110); margin:11pt 0 10pt;}
.d2 .info {display:flex;}
.d2 .info > div {flex:1; padding-right:10pt;}
.d2 .info > div + div {border-left:0.6pt solid rgba(201,169,110,.7); padding-left:14pt;}
.d2 .lbl {font-family:'Montserrat'; font-size:6.8pt; letter-spacing:1.8pt; color:rgb(201,169,110); text-transform:uppercase; font-weight:600; margin-bottom:4pt;}
.d2 .val {font-size:9.6pt; line-height:1.35;}
.d2 .val b {font-family:'Cormorant Garamond'; font-size:14pt; font-weight:600;}
.d2 table {width:100%; border-collapse:collapse; margin-top:11pt; font-variant-numeric:tabular-nums;}
.d2 thead tr {background:rgb(16,57,68);}
.d2 th {background:transparent; color:rgb(250,248,243); font-family:'Montserrat'; font-weight:600; font-size:7pt; letter-spacing:1.6pt; text-transform:uppercase; padding:6pt 7pt; text-align:left;}
.d2 th.num {text-align:right;}
.d2 th.qty {text-align:center;}
.d2 td {padding:2.9pt 7pt; font-size:8.9pt; border-bottom:0.4pt solid rgba(201,169,110,.45);}
.d2 tbody tr:nth-child(even) td {background:rgba(201,169,110,.10);}
.d2 tbody tr:nth-child(odd) td {background:#fff;}
.d2 td.qty {text-align:center; width:0.45in;}
.d2 td.loc {font-weight:600; width:0.85in; white-space:nowrap;}
.d2 td.desc {color:rgb(55,85,93);}
.d2 td.num {text-align:right; white-space:nowrap; width:0.95in;}
.d2 td.tot {font-weight:600;}
.d2 tbody tr:last-child td {border-bottom:1.2pt solid rgb(201,169,110);}
.d2 .bottom {display:flex; justify-content:space-between; margin-top:11pt;}
.d2 .notes {flex:1; font-size:7.9pt; line-height:1.5; color:rgb(55,85,93); padding-top:2pt; padding-right:24pt;}
.d2 .thanks {font-family:'Cormorant Garamond'; font-style:italic; font-size:15.5pt; color:rgb(16,57,68); margin-bottom:5pt; font-weight:500;}
.d2 .notes p {margin:0 0 1.5pt;}
.d2 .notes .em {color:rgb(16,57,68); font-weight:600;}
.d2 .totals {width:2.85in; font-variant-numeric:tabular-nums;}
.d2 .tl {display:flex; justify-content:space-between; padding:3.8pt 2pt; font-size:9.2pt; border-bottom:0.4pt solid rgba(201,169,110,.5);}
.d2 .tl .k {font-family:'Montserrat'; font-size:7pt; letter-spacing:1.5pt; text-transform:uppercase; font-weight:600; padding-top:1.5pt;}
.d2 .disc {color:rgb(150,110,50);}
.d2 .grand {background:rgb(16,57,68); color:rgb(250,248,243); margin-top:7pt; padding:8.5pt 12pt; display:flex; justify-content:space-between; align-items:center; border-top:2.5pt solid rgb(201,169,110);}
.d2 .grand .k {font-family:'Cormorant Garamond'; font-size:15pt; letter-spacing:3.5pt; font-weight:600;}
.d2 .grand .v {font-size:16pt; font-weight:700; color:#fff;}
.d2 .tax {text-align:right; font-size:7.6pt; color:rgb(90,115,120); margin-top:5pt;}
.d2 .foot {position:absolute; left:0.6in; right:0.6in; bottom:0.34in; text-align:center;}
.d2 .foot .gl {height:0.8pt; background:rgb(201,169,110); margin-bottom:8pt;}
.d2 .foot .f1 {font-family:'Montserrat'; font-size:7.2pt; letter-spacing:1.2pt; color:rgb(16,57,68); font-weight:500;}
.d2 .foot .dot {color:rgb(201,169,110); padding:0 7pt;}
.d2 .trk {font-size:7.1pt; color:rgb(160,125,65); font-style:italic; margin-top:0.6pt; letter-spacing:.2pt;}
.d2 td {line-height:1.16;}
.d2 td {padding:7.6pt 7pt; font-size:9.2pt;}
.d2 .totals .tl.sub {font-size:9.6pt; font-weight:600; color:rgb(16,57,68); padding:4pt 2pt;}
.d2 .totals .tl.disc .sv {color:rgb(16,57,68); font-weight:600;}
.d2 .totals .tl.after {border-top:0.9pt solid rgb(201,169,110);}
.d2 .totals .tl.after .sv {font-size:10.6pt; font-weight:700;}
.d2 .totals .tl.taxrow {align-items:center; padding:5pt 2pt; border-bottom:none; color:rgb(16,57,68);}
.d2 .totals .fill {display:block; width:1.45in; height:20pt; background:#fff; border:0.9pt solid rgb(16,57,68); border-radius:1.5pt;}
.d2 .grand {padding:6pt 7pt 6pt 12pt; margin-top:3pt;}
.d2 .grand .gfill {border:1pt solid rgb(201,169,110); height:24pt; width:1.45in;}
.d2 thead {display: table-header-group;}
.d2 tr {page-break-inside: avoid;}
.d2 .bottom {page-break-inside: avoid;}
.d2 .tl.disc {background:rgba(30,125,60,.09); color:rgb(30,125,60); border-radius:3pt;}
.d2 .tl.disc .k, .d2 .tl.disc .sv {color:rgb(30,125,60) !important; font-weight:700;}
.d2 .tsum {font-size:9.2pt; line-height:1.45;}
.d2 .tsum .r {display:flex; justify-content:space-between; gap:8pt;}
.d2 .tsum .r.d {color:rgb(30,125,60); font-weight:700;}
.d2 .tsum .r.f {border-top:0.7pt solid rgb(201,169,110); margin-top:2pt; padding-top:2pt; font-weight:700; font-size:10.4pt;}
.d2 .tsum .nt {font-size:7pt; opacity:.7;}
.d2 .brand img {height:0.95in !important; width:auto !important;}
.d2 .brand.lock {display:block !important; width:3.55in;}
.d2 .brand.lock .lmark {width:2.55in !important; height:auto !important; margin:0 !important; display:block;}
.d2 .brand.lock .lrule {width:2.55in; height:0; border-top:0.8pt solid rgb(201,169,110); margin:7pt 0 5pt;}
.d2 .brand.lock .laddr {font-family:'Montserrat'; font-size:7.6pt; letter-spacing:1.1pt; text-transform:uppercase; color:rgb(16,57,68); font-weight:600; white-space:nowrap;}
.d2 .brand.lock .lcont {font-family:'Inter'; font-size:8pt; color:rgb(16,57,68); margin-top:2.5pt; white-space:nowrap; letter-spacing:.2pt;}
.d2 .brand.lock .ld {color:rgb(201,169,110); padding:0 3pt;}
.d2 .brand.lock5 {display:block !important; width:2.75in; text-align:center;}
.d2 .brand.lock5 .lmark {width:2.3in !important; height:auto !important; margin:0 auto !important; display:block;}
.d2 .brand.lock5 .lrule {width:2.3in; border-top:0.8pt solid rgb(201,169,110); margin:5pt auto 4pt;}
.d2 .brand.lock5 .laddr {font-family:'Montserrat'; font-size:6.9pt; letter-spacing:.6pt; text-transform:uppercase; color:rgb(16,57,68); font-weight:600; white-space:nowrap;}
.d2 .brand.lock5 .lcont {font-family:'Inter'; font-size:8pt; color:rgb(16,57,68); margin-top:3pt; white-space:nowrap;}
.d2 .brand.lock5 .lcont span {display:inline-block; margin:0 5pt;}
.d2 .brand.lock5 .ic {width:8.5pt; height:8.5pt; vertical-align:-1.2pt; margin-right:3pt;}
.d2 .brand.lock5 .lweb {font-family:'Inter'; font-size:8pt; font-weight:600; color:rgb(160,125,65); letter-spacing:.3pt; margin-top:2pt;}
.d2 .brand.lock5 .laddr {font-size:6.25pt !important; letter-spacing:.25pt !important;}
.d2 .brand.lock5 .lcont {font-size:7.6pt !important;}
.d2 .brand.lock5 .lcont span {margin:0 3.5pt !important;}
.d2 .brand.lock5 .lweb {font-size:7.6pt !important;}
.d2 .brand.lock5 {width:2.3in !important;}
.d2 .brand.lock5 .laddr {font-size:5.85pt !important; letter-spacing:.2pt !important;}
.d2 .brand.lock5 .lcont, .d2 .brand.lock5 .lweb {font-size:7.2pt !important;}
.d2 .brand.lock5 .lcont span {margin:0 2.5pt !important;}
.d2 .wl {border-bottom:0.7pt solid rgba(16,57,68,.55); height:17pt; margin-right:4pt;}
.d2 .wl.first {height:15pt;}
.d2 .ln {display:inline-block; width:1.75in; border-bottom:0.7pt solid rgb(16,57,68); height:11pt; vertical-align:baseline;}
.d2 .tyn {margin:10pt 0 4pt;padding:8pt 12pt;border-left:2.5pt solid rgb(201,169,110);background:rgba(201,169,110,.10);font-family:'Inter';font-size:9pt;line-height:1.45;color:rgb(16,57,68);font-style:italic}
/* v2 additions (same look) */
.d2 th { white-space:nowrap; }
.d2 .page { overflow:hidden; margin:0 0 18px; box-shadow:0 2px 14px rgba(10,43,49,.18); }
.d2 .val.vsm { font-size:8.2pt; color:rgb(90,115,120); margin-top:3pt; }
.d2 .info > div.psum { flex:1.15; }
.d2 .psum .tsum { background:#fff; border:0.8pt solid rgba(201,169,110,.8); border-radius:3pt; padding:5pt 8pt; }
.d2 .psum .tsum .r.f { font-size:10.4pt; }
.d2 tr.hd td { background:rgba(16,57,68,.06) !important; font-family:'Montserrat'; font-size:7.4pt; letter-spacing:1.4pt; text-transform:uppercase; font-weight:600; }
.d2 .tyn { margin-top:16pt; font-size:9.6pt; }
.d2 .contline { display:flex; justify-content:space-between; margin-top:0.12in; padding-bottom:6pt; border-bottom:0.8pt solid rgb(201,169,110); font-family:'Montserrat'; font-size:7pt; letter-spacing:1.4pt; text-transform:uppercase; font-weight:600; color:rgb(16,57,68); }
.d2 .ic { width:8.5pt; height:8.5pt; vertical-align:-1.2pt; margin-right:3pt; }
.d2.offscreen { position:fixed; left:-12000px; top:0; width:816px; pointer-events:none; }
.d2.offscreen .page { box-shadow:none; margin:0; }
@media print {
  @page { size:letter; margin:0; }
  body { background:#fff !important; }
  .noprint, #toast, #netbar, #phtray { display:none !important; }
  .docscroll, .docscale { transform:none !important; margin:0 !important; height:auto !important; width:auto !important; overflow:visible !important; }
  .d2 .page { box-shadow:none; margin:0; page-break-after:always; break-after:page; }
  .d2 .page:last-child { page-break-after:auto; break-after:auto; }
}
