/* Shared approved brand typography. Offer choices/prices are unchanged. */
.home-bundle-products{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:14px 0}
.home-bundle-products article{min-width:0;padding:14px;border:1px solid #d4e3e9;border-radius:10px;background:#f4f9fc;break-inside:avoid}
.home-bundle-products img{display:block;width:150px;max-width:100%;height:50px;object-fit:contain;object-position:left center}
.home-bundle-products h3{font:600 16px/1.3 var(--paytec-font-text)!important;margin:10px 0 6px}
.home-bundle-products p{font:400 14px/1.4 var(--paytec-font-text);margin:0}
@media print {
 body :is(.payment-document,.rating-customer-sheet,.booking-customer-sheet,#homeSummary,#gastroOffer,#singlePrint,#printDocument),
 body :is(.payment-document,.rating-customer-sheet,.booking-customer-sheet,#homeSummary,#gastroOffer,#singlePrint,#printDocument) * {
  font-family:'Paytec Montserrat',sans-serif!important;
  font-size:10pt!important;line-height:1.35!important;letter-spacing:normal!important;
 }
 body :is(.payment-document,.rating-customer-sheet,.booking-customer-sheet,#homeSummary,#gastroOffer,#singlePrint,#printDocument) h1 {font-family:'Paytec Orbitron',sans-serif!important;font-size:20pt!important;font-weight:400!important;line-height:1.25!important;}
 body :is(.payment-document,.rating-customer-sheet,.booking-customer-sheet,#homeSummary,#gastroOffer,#singlePrint,#printDocument) h2 {font-family:'Paytec Orbitron',sans-serif!important;font-size:13pt!important;font-weight:400!important;line-height:1.3!important;}
 body :is(.payment-document,.rating-customer-sheet,.booking-customer-sheet,#homeSummary,#gastroOffer,#singlePrint,#printDocument) :is(small,figcaption,footer,footer *, .print-note,.print-terms p,.po-footer *,.po-header span,.po-customer span,.po-customer small,.rating-customer-brand span,.booking-customer-brand span) {font-size:9pt!important;}
 body .po-sheet {min-height:262mm;}
 body .po-header-service {height:27mm;position:relative;padding-right:29mm;}
 body .po-header-service .paytec-service-seal {position:absolute;top:0;right:0;margin:0;}
 body .po-header-service .paytec-service-seal img {width:25mm!important;height:25mm!important;}
 body .rating-customer-brand {position:relative;min-height:25mm;padding-right:28mm;align-items:flex-start;}
 body .rating-customer-brand .paytec-service-seal {position:absolute;right:0;top:0;margin:0;}
 body .rating-customer-brand .paytec-service-seal img {width:25mm!important;height:25mm!important;}
 body .rating-customer-product {padding:2mm 3mm;gap:4mm;}
 body .rating-customer-software {flex-basis:65mm;}
 body .rating-customer-software>img {width:65mm;max-height:40mm;object-fit:contain;}
 body .rating-customer-stars {font-size:13pt!important;}
 body .rating-customer-services ul {gap:1mm 5mm;}
 body .rating-customer-prices {margin-top:2mm;padding:2mm 3mm;}
 body .rating-customer-rate {padding:1mm 0;}
 body .rating-customer-footer {margin-top:2mm;}
 body .booking-customer-footer {margin-top:3mm;}
 body .portfolio-benefits .paytec-service-seal {margin:0 0 2mm 4mm;}
 /* Rating fits the common single-product offer on one sheet without splitting prices. */
 body #ratingCustomerDocument .rating-customer-sheet * {font-size:9pt!important;line-height:1.3!important;}
 body #ratingCustomerDocument .rating-customer-sheet h1 {font-size:20pt!important;line-height:1.2!important;}
 body #ratingCustomerDocument .rating-customer-sheet h2 {font-size:13pt!important;line-height:1.25!important;}
 body #ratingCustomerDocument .rating-customer-sheet :is(h3,.rating-customer-rate strong) {font-size:10pt!important;}
 body #ratingCustomerDocument .rating-customer-product {margin:2mm 0;}
 body #ratingCustomerDocument .rating-customer-services ul {margin-bottom:1mm;}
 body #ratingCustomerDocument .rating-customer-software>img {height:30mm;max-height:30mm;object-fit:contain;}
 body #ratingCustomerDocument .rating-customer-product .rating-product-logo {height:8mm;}
 body #ratingCustomerDocument .rating-customer-software figcaption {margin-top:1mm;}
 body #ratingCustomerDocument .rating-customer-rate small {display:inline;margin-left:2mm;}
 body #ratingCustomerDocument .rating-customer-prices .offer-setup-services p {margin:1mm 0;}
 body #ratingCustomerDocument .rating-customer-brand {min-height:21mm;}
 body #ratingCustomerDocument .rating-customer-brand .paytec-service-seal img {width:21mm!important;height:21mm!important;}
 body #singlePrint .print-conditions {break-before:auto;page-break-before:auto;margin-top:4mm;}
 body #singlePrint .print-conditions>.print-header {display:none;}
 body #singlePrint {position:relative;}
 body #singlePrint>.print-header:first-child {min-height:28mm;padding-right:34mm;box-sizing:border-box;margin-bottom:3mm;}
 body #singlePrint>.pt-service-card {position:absolute;top:0;right:0;width:32mm;margin:0!important;}
 body #singlePrint>.pt-service-card .paytec-service-seal {margin:0;}
 body #singlePrint>.pt-service-card .paytec-service-seal img {width:24mm!important;height:24mm!important;}
 body #singlePrint>.pt-service-card .pt-service-updates {font-size:9pt!important;margin:1mm 0;}
 body #gastroOffer>.portfolio-brand {position:relative;min-height:26mm;padding-right:29mm;box-sizing:border-box;}
 body #gastroOffer>.portfolio-brand .offer-service-mark {position:absolute;right:0;top:0;}
 body #gastroOffer>.portfolio-brand .paytec-service-seal {margin:0;}
 body #gastroOffer>.portfolio-brand .paytec-service-seal img {width:25mm!important;height:25mm!important;}
 body #gastroOffer>.portfolio-footer {break-inside:avoid;margin-top:2mm;padding-top:2mm;}
 body #singlePrint *,body #gastroOffer * {font-size:9pt!important;line-height:1.3!important;}
 body #singlePrint h1,body #gastroOffer h1 {font-size:20pt!important;line-height:1.2!important;}
 body #singlePrint h2,body #gastroOffer h2 {font-size:13pt!important;line-height:1.25!important;}
 body #singlePrint :is(h3,strong),body #gastroOffer :is(h3,.result) {font-size:10pt!important;}
 body #singlePrint .print-device-views>img,body #singlePrint .print-device-views .portfolio-cash-view img {height:30mm!important;}
 body #singlePrint .print-hero {margin:2mm 0;}
 body #singlePrint .print-header {padding-bottom:2mm;}
 body #singlePrint .package-parts {gap:2mm;}
 body #singlePrint .package-part {padding:1.5mm;}
 body #singlePrint .package-part img {height:9mm!important;}
 body #singlePrint .print-conditions h2 {break-after:avoid;}
 body #gastroOffer .portfolio-benefits {padding:3mm;margin:2mm 0;}
 body #gastroOffer .portfolio-benefits figure img {height:25mm;}
 body #gastroOffer .portfolio-benefit-grid {gap:3mm;}
 body #gastroOffer .offer-deadline {padding:2mm 3mm;margin:2mm 0;}
 body #singlePrint .print-terms {margin:2mm 0;padding:0;border:0;}
 body #singlePrint .print-terms p {margin:1mm 0;}
 body #singlePrint .print-terms .print-footer {margin-top:1mm;padding-top:1mm;}
 body #singlePrint .print-table :is(th,td) {padding:1.5mm 2mm;}
 body #singlePrint .print-total {padding:2mm 3mm;margin:2mm 0;}
 body #singlePrint .print-total p {margin:1mm 0;}
 body #singlePrint .print-conditions>.print-customer {display:none;}
 /* Outrank legacy ID-based Arial print rules; keep original brand faces embedded. */
 html body.portfolio-page :is(#singlePrint,#homeSummary,#gastroOffer,#paymentApp,#ratingCustomerDocument,#bookingCustomerDocument,#printDocument)[id] * {font-family:'Paytec Montserrat',sans-serif!important;}
 html body.portfolio-page :is(#singlePrint,#homeSummary,#gastroOffer,#paymentApp,#ratingCustomerDocument,#bookingCustomerDocument,#printDocument)[id] :is(h1,h2) {font-family:'Paytec Orbitron','Paytec Montserrat',sans-serif!important;font-weight:400!important;}
 body #singlePrint .print-device-views>img,body #singlePrint .print-device-views .portfolio-cash-view img {height:24mm!important;}
 body #singlePrint .print-title {margin:2mm 0;}
 body #singlePrint .print-subtitle {margin:1mm 0;}
 body #singlePrint .print-benefits {margin:2mm 0;}
 body #homeSummary .home-bundle-products{grid-template-columns:repeat(3,minmax(0,1fr));gap:3mm;margin:2mm 0}
 body #homeSummary .home-bundle-products:has(article:last-child:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}
 body #homeSummary .home-bundle-products article{padding:2mm 3mm;border-radius:2mm}
 body #homeSummary .home-bundle-products img{width:35mm;height:10mm}
 body #homeSummary .home-bundle-products h3{font-size:10pt!important;margin:2mm 0 1mm}
 body #homeSummary .home-bundle-products p{font-size:9pt!important;margin:0}
 body #homeSummary:has(.home-bundle-included) .portfolio-summary-image img{height:28mm}
 /* Keep cash offers compact despite legacy mobile/print specificity. */
 html body.portfolio-page #singlePrint .print-device-views>img,
 html body.portfolio-page #singlePrint .print-device-views .portfolio-cash-view img{height:24mm!important}
 html body.portfolio-page #singlePrint .package-part{display:grid;grid-template-columns:10mm minmax(0,1fr);align-items:start;gap:1mm 2mm;text-align:left;padding:1.5mm}
 html body.portfolio-page #singlePrint .package-part img{width:10mm!important;height:9mm!important}
 html body.portfolio-page #singlePrint .package-part .package-benefit{grid-column:1/-1;margin:0!important}
 html body.portfolio-page #singlePrint h2{margin:2mm 0 1.5mm}
 html body.portfolio-page #singlePrint .print-benefit p{font-size:9pt!important;line-height:1.25!important}
 html body.portfolio-page #singlePrint .print-conditions{margin-top:2mm}
 html body.portfolio-page #singlePrint .print-customer{margin:1mm 0}
 html body.portfolio-page #singlePrint>.print-header:first-child{min-height:24mm;padding-bottom:1mm;margin-bottom:2mm}
 html body.portfolio-page #singlePrint .print-terms h3{margin:1mm 0}
 html body.portfolio-page #singlePrint .print-terms p{margin:1mm 0}
 html body.portfolio-page #singlePrint .package-part small{display:none}
 html body.portfolio-page #singlePrint .package-feature{margin:1mm 0!important}
 html body #ratingCustomerDocument .rating-customer-sheet .rating-customer-rate>strong{display:grid;grid-template-columns:minmax(0,1fr) 22mm 33mm;align-items:center;column-gap:2mm;width:80mm;flex:0 0 80mm}
 html body #ratingCustomerDocument .rating-customer-sheet .rating-customer-rate .offer-price-lead{grid-column:1;grid-row:1;text-align:right}
 html body #ratingCustomerDocument .rating-customer-sheet .rating-rate-value{grid-column:2;grid-row:1;text-align:right;white-space:nowrap;font-size:10pt!important}
 html body #ratingCustomerDocument .rating-customer-sheet .rating-customer-rate>strong>small{grid-column:3;grid-row:1;text-align:left;margin:0;white-space:nowrap}
 /* Show the original booking time selection at readable scale, not the surrounding website. */
 html body #bookingCustomerDocument .portfolio-benefits{display:grid;grid-template-columns:minmax(0,1fr) 88mm;gap:2mm 5mm;position:relative}
 html body #bookingCustomerDocument .portfolio-benefits>.paytec-service-seal{position:absolute;top:2mm;right:3mm;margin:0}
 html body #bookingCustomerDocument .portfolio-benefits>h2{grid-column:1/-1;min-height:21mm;padding-right:26mm;margin:0}
 html body #bookingCustomerDocument .portfolio-benefit-grid{grid-template-columns:1fr;gap:3mm;align-content:start}
 html body #bookingCustomerDocument .portfolio-summary-image{margin:0;align-self:start}
 html body #bookingCustomerDocument .booking-print-detail{position:relative;overflow:hidden;width:88mm;height:44.3mm;border-radius:2mm;background:#fff;border:1px solid #d4e3e9}
 html body #bookingCustomerDocument .booking-print-detail img{position:absolute;width:462.9mm!important;max-width:none!important;height:260.4mm!important;left:-186.85mm;top:-155.5mm;object-fit:fill;border-radius:0}
 html body #bookingCustomerDocument .portfolio-benefits>.paytec-service-seal img{width:20mm!important;height:20mm!important}
}

/* Home: aligned benefit columns, full recipient block and an actual website example. */
#homeSummaryCustomer>span{display:block}
#homeSummary>.portfolio-brand{position:relative;padding-right:110px;min-height:90px}
#homeSummary>.portfolio-brand>.paytec-service-seal{position:absolute;right:0;top:0;margin:0}
#homeSummary>.portfolio-brand>.paytec-service-seal img{width:85px;height:85px}
#homeSummary .portfolio-benefits{clear:both}
#homeSummary .portfolio-benefits>h2{margin:0 0 16px}
#homeSummary .portfolio-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
#homeSummary .portfolio-benefit-grid h3{margin:0 0 8px;min-height:2.7em}
#homeSummary .portfolio-benefit-grid p{margin:0}
@media print{
 html body #homeSummary>.portfolio-brand{min-height:22mm;padding-right:26mm;box-sizing:border-box}
 html body #homeSummary>.portfolio-brand>.paytec-service-seal img{width:21mm!important;height:21mm!important}
 html body #homeSummaryCustomer{margin:2mm 0 3mm}
 html body #homeSummary .portfolio-benefits{padding:3mm;margin:2mm 0;break-inside:avoid}
 html body #homeSummary .portfolio-benefits>h2{margin:0 0 3mm}
 html body #homeSummary .portfolio-benefit-grid{gap:4mm}
 html body #homeSummary .portfolio-benefit-grid h3{min-height:2.7em;margin:0 0 1.5mm}
 html body #homeSummary .portfolio-summary-image{margin:3mm 0 0;text-align:center}
 html body #homeSummary .portfolio-summary-image img{width:150mm!important;max-width:100%;height:66mm!important;object-fit:contain}
 html body #homeSummary:has(.home-bundle-included) .portfolio-summary-image img{height:42mm!important}
 html body #homeSummary .portfolio-footer{margin-top:3mm;padding-top:2mm}
}

@media print{
 html body.home-print{background:#fff!important}
 html body #homeSummary .portfolio-benefit-grid article{display:grid;grid-template-rows:28pt auto;align-content:start}
 html body #homeSummary .portfolio-benefit-grid h3{height:auto;min-height:0;margin:0!important}
 html body #homeSummary .portfolio-benefit-grid p{margin:0!important}
}

@media print{
 html body .rating-customer-sheet .rating-customer-recipient{margin:3mm 0 8mm}
}

@media print{
 html body .booking-customer-sheet .booking-customer-recipient{margin:3mm 0 8mm}
 html body .booking-customer-sheet .booking-customer-recipient p:not(:first-child){display:block;margin:0}
 html body #homeSummaryCustomer{margin-bottom:8mm}
 html body.portfolio-page #singlePrint>.print-customer{margin-bottom:6mm}
 html body #gastroOffer #offerCustomer{margin-bottom:8mm}
 /* Prices keep their column positions; emphasis comes from structure, not bold numbers. */
 html body :is(.rating-customer-rate,.booking-customer-rate)>strong,
 html body :is(.rating-customer-rate,.booking-customer-rate)>strong *,
 html body .portfolio-price-row>strong,
 html body .po-price-row>b,html body .po-once-price,html body .po-fees b,
 html body #singlePrint .offer-condition-row>strong,
 html body #singlePrint .print-table td,
 html body #gastroOffer :is(#offerMonthly,#offerSetup,#smartServiceRate){font-weight:400!important;font-variant-numeric:tabular-nums}
}

@media print{
 @page bookingCustomer{size:A4;margin:11mm 14mm}
 @page portfolioOffer{size:A4;margin:10mm 12mm}
 @page cashOffer{size:A4;margin:11mm 13mm}
 html body #singlePrint{page:cashOffer}
 html body.portfolio-page #singlePrint .print-device-views>img,
 html body.portfolio-page #singlePrint .print-device-views .portfolio-cash-view img{height:22mm!important}
 html body #homeSummary:has(.home-bundle-included) .portfolio-summary-image img{height:38mm!important}
 html body #gastroOffer .portfolio-benefits figure img{height:23mm!important}
}

@media print{
 html body #homeSummary:has(.home-bundle-included) .portfolio-summary-image img{height:28mm!important}
 html body #homeSummary:has(.home-bundle-included) .portfolio-footer{margin-top:2mm;padding-top:1mm}
 html body #gastroOffer>h2{margin:3mm 0!important}
 html body #gastroOffer .gastro-offer-price h3{margin:1.5mm 0!important}
 html body #gastroOffer .gastro-offer-price p{margin:2mm 0!important}
 html body #gastroOffer .gastro-conditions{padding-top:2mm!important}
 html body :is(#singlePrint,#gastroOffer,#homeSummary) [data-internal-note]{display:none!important}
}

@media print {
 html body #smartPaymentOffer {margin-top:2mm!important;padding:2mm 0!important;break-inside:avoid;break-before:auto!important;page-break-before:auto!important}
 html body #smartPaymentOffer p{margin:1.5mm 0!important}
 html body #smartPaymentOffer figure{margin:1mm 0!important}
 html body #smartPaymentOffer figure img{height:18mm!important;width:auto!important}
 html body #smartPaymentOffer>strong{font-weight:400!important;font-variant-numeric:tabular-nums}
}

/* Full postal address keeps its space; remove duplicate captions, not content. */
@media print{
 html body.portfolio-page #singlePrint .print-device-views figcaption{display:none}
 html body.portfolio-page #singlePrint .print-hero{margin:1mm 0}
 html body.portfolio-page #singlePrint .print-terms .print-footer{display:none}
}
