/* Shared, restrained hierarchy. Calculations and tariff rules stay in the product modules. */
.portfolio-page{--portfolio-ink:#234658;--portfolio-blue:#087a9e;--portfolio-line:#d4e3e9}
.portfolio-benefits{margin:24px 0;padding:24px;border:1px solid #d4e3e9;border-radius:16px;background:#f4f9fc;color:#234658;break-inside:avoid}
.portfolio-benefits h2{font-size:20px;line-height:1.3;margin:0 0 18px;font-weight:700}
.portfolio-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.portfolio-benefits h3{font-size:16px;line-height:1.4;font-weight:700;margin:0 0 8px}
.portfolio-benefits p{font-size:16px;line-height:1.55;font-weight:400;margin:0}
.portfolio-benefits figure{margin:20px 0 0;text-align:center}
.portfolio-benefits figure img{max-width:100%;width:680px;height:240px;object-fit:contain;background:white;border-radius:10px}
.portfolio-benefits figcaption,.portfolio-cash-view figcaption{font-size:14px;line-height:1.4;color:#56707e;font-weight:400;margin-top:8px}
.portfolio-cash-view{text-align:center;margin:16px auto;break-inside:avoid}
.portfolio-cash-view img{width:230px!important;height:180px!important;max-width:100%;object-fit:contain!important}
.offer-deadline{display:flex;flex-direction:column;gap:6px;background:#fff3e7;border:1px solid #ed862d;border-left:4px solid #ed862d;border-radius:12px;padding:16px 20px;margin:20px 0;text-align:right;color:#6b481c;break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}
.offer-deadline span{font-size:14px;font-weight:400}.offer-deadline strong{font-size:16px;font-weight:700;line-height:1.4}
.offer-deadline-controls{margin:0 0 20px}.offer-deadline-controls summary{cursor:pointer;padding:8px 0;color:#126781}.offer-deadline-controls p{font-size:14px;line-height:1.5}.offer-deadline-controls button{margin:4px 8px 4px 0;min-height:44px}
.portfolio-brand{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px}.portfolio-brand img{width:145px;max-width:45%;height:45px;object-fit:contain}.portfolio-footer{border-top:1px solid #d4e3e9;margin-top:20px;padding-top:10px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:14px}.portfolio-footer img{width:100px;height:30px;object-fit:contain}
@media screen{
 .portfolio-page :is(main,#workspace,#paymentApp) h1{font-size:28px!important;line-height:1.25!important;font-weight:400!important}
 .portfolio-page :is(main,#workspace,#paymentApp) h2{font-size:20px!important;line-height:1.35!important;font-weight:700!important}
 .portfolio-page :is(main,#workspace,#paymentApp) h3{font-size:16px!important;line-height:1.4!important;font-weight:700!important}
 .portfolio-page :is(.hero-price strong,.rate strong,.result,.pt-product-cost strong,.pdf-rate strong,.print-rate strong,.price-value,.conditions p,.pricing p){font-size:16px!important;line-height:1.5!important;color:#087a9e;font-weight:700!important;font-variant-numeric:tabular-nums}
 .portfolio-page :is(.hero-text,.m2-lead,.home-eyebrow,.home-points li,.promise-row p,.hardware-grid p,.included-list p){font-size:16px!important;line-height:1.55!important}
 .portfolio-page :is(.combo-logos,.combination-logos){justify-content:center;align-items:center}
 .portfolio-page :is(.hero-world,.product-halo){box-shadow:none;background:none}
 .portfolio-page .stars{display:none}
 .portfolio-page .pt-product-device>img{height:250px;object-fit:contain;max-width:100%}
 .portfolio-page .home-term-details{display:none}
 .portfolio-page #gastroOffer>.grid>div{border:1px solid #d4e3e9;border-radius:12px;background:#eff7fb;padding:20px}
 .portfolio-page #gastroOffer>.grid>div+div{border-color:#ed862d;background:#fff8f0}
 .portfolio-page #gastroOffer .result{text-align:right;display:block}
}
@media(max-width:700px){.portfolio-benefit-grid{grid-template-columns:1fr;gap:16px}.portfolio-benefits{padding:18px}.portfolio-benefits figure img{height:190px}.offer-deadline{padding:14px}.portfolio-page :is(main,#workspace,#paymentApp) h1{font-size:26px!important}}
@media print{
 .offer-deadline-controls{display:none!important}.offer-deadline{padding:3mm 4mm;margin:3mm 0;gap:1mm;border-radius:2mm}.offer-deadline span{font-size:9pt!important}.offer-deadline strong{font-size:10pt!important}
 .portfolio-benefits{padding:4mm;margin:4mm 0;border-radius:2mm;print-color-adjust:exact;-webkit-print-color-adjust:exact}.portfolio-benefits h2{font:700 13pt/1.3 Arial,sans-serif!important;margin:0 0 3mm}.portfolio-benefits h3{font:700 10pt/1.4 Arial,sans-serif!important;margin:0 0 1mm}.portfolio-benefits p{font:400 10pt/1.4 Arial,sans-serif!important}.portfolio-benefit-grid{gap:5mm;grid-template-columns:repeat(3,minmax(0,1fr))}.portfolio-benefits figure{margin:3mm 0 0}.portfolio-benefits figure img{width:135mm;height:43mm}.portfolio-benefits figcaption,.portfolio-cash-view figcaption{font:400 9pt/1.35 Arial,sans-serif!important}
 .portfolio-cash-view{margin:2mm auto}.portfolio-cash-view img{height:32mm!important;width:45mm!important}
 .portfolio-brand{margin-bottom:4mm}.portfolio-brand img{width:40mm;height:12mm}.portfolio-footer{font:9pt Arial,sans-serif}.portfolio-footer img{width:28mm;height:8mm}
 body :is(.booking-customer-sheet,.rating-customer-sheet){font:10pt/1.4 Arial,sans-serif}
 body :is(.booking-customer-title,.rating-customer-title) h1{font:400 20pt/1.25 Arial,sans-serif!important}
 body :is(.booking-customer-sheet,.rating-customer-sheet) section>h2{font:700 13pt/1.3 Arial,sans-serif!important}
 body :is(.booking-customer-rate,.rating-customer-rate) strong{font:700 10pt/1.4 Arial,sans-serif!important;color:#087a9e}
 body :is(.booking-customer-rate,.rating-customer-rate) small{font:400 9pt/1.35 Arial,sans-serif!important}
 .booking-customer-brand img,.rating-customer-brand img{width:40mm;height:12mm;object-fit:contain;object-position:left center}
 .booking-customer-recipient{margin:4mm 0}.booking-customer-title{margin-bottom:4mm}.booking-customer-services p,.booking-customer-prices>p,.rating-customer-services p,.rating-customer-prices>p{font-size:9pt}
 .booking-customer-prices{padding:3mm 4mm;margin-top:4mm}.booking-customer-rate{padding:2mm 0}
 .rating-customer-product .rating-product-stands{width:58mm;height:30mm}.rating-customer-product .rating-product-logo{object-position:center}.rating-customer-product{margin-bottom:3mm}
 .portfolio-page :is(.pdf-document,.print-document,#gastroOffer,#homeSummary){font-family:Arial,sans-serif;font-size:10pt;line-height:1.4}
 .portfolio-page :is(.pdf-rate strong,.print-rate strong,.pt-product-cost strong,#gastroOffer .result){font-size:10pt!important;font-weight:700!important;color:#087a9e!important}
 .portfolio-page :is(#gastroOffer,#homeSummary) h2{font:700 13pt/1.3 Arial,sans-serif!important}
 .portfolio-page :is(#gastroOffer,#homeSummary) h3{font:700 10pt/1.4 Arial,sans-serif!important}
 .portfolio-page #homeSummary{border:0;padding:0}.portfolio-page #homeSummaryFields{font-size:10pt}
}

.portfolio-created-with{width:28mm;height:8mm;object-fit:contain}
.single-validity-controls{max-width:1100px;margin:24px auto;padding:0 20px}
@media print{.single-validity-controls,#cashOfferValidity{display:none!important}.portfolio-page .booking-customer-footer,.portfolio-page .rating-customer-footer{align-items:center}.portfolio-page #homeSummaryValidity:empty{display:none}body.print-offer main>header{display:none!important}.portfolio-page #homeSummaryPrice{font-size:10pt!important;font-weight:400;line-height:1.5}.portfolio-page #homeSummaryFields:empty{display:none}body.print-offer #gastroOffer>h2{font-size:20pt!important}body.print-offer main{max-width:none;padding:0}body.print-offer #gastroOffer>.portfolio-benefits{break-inside:avoid}body.print-offer #gastroOffer>.grid{gap:6mm}body.print-offer #gastroOffer>.grid>div{padding:3mm;background:#f2f8fb;border:1px solid #d4e3e9;border-radius:2mm}.portfolio-page .home-validity-editor{display:none!important}}

.portfolio-page #gastroValidity{padding:0;border:0;margin:0;background:none}
@media print{
 @page portfolioOffer{size:A4;margin:12mm}
 #gastroOffer,#homeSummary{page:portfolioOffer}
 body.print-offer #gastroOffer{margin:0!important}body.print-offer #gastroOffer .result{text-align:right;display:block}
 body.print-offer #gastroOffer>.grid>div+div{border-color:#ed862d;background:#fff8f0}
 .booking-customer-brand{padding-bottom:2mm}.booking-customer-recipient{margin:2mm 0}.booking-customer-title{margin-bottom:2mm}
 .booking-customer-sheet .portfolio-benefits{padding:3mm;margin:2mm 0}.booking-customer-sheet .portfolio-benefits figure img{height:26mm}.booking-customer-sheet .portfolio-benefits figure{margin-top:2mm}.booking-customer-sheet .portfolio-benefits figcaption{margin-top:1mm}
 .booking-customer-services ul{gap:1mm 5mm;margin-bottom:2mm}.booking-customer-services p,.booking-customer-prices>p{margin:1mm 0}.booking-customer-sheet .offer-deadline{padding:2mm 3mm;margin:2mm 0}
 .booking-customer-rate{padding:1mm 0}.booking-customer-prices{margin-top:2mm;padding:3mm}.booking-customer-footer{margin-top:3mm;padding-top:2mm}
 .booking-customer-sheet .offer-price-lead,.rating-customer-sheet .offer-price-lead{display:inline;margin-right:1mm;font-size:10pt}
 .booking-customer-sheet,.rating-customer-sheet{font-family:Arial,sans-serif!important}
 body .booking-customer-recipient h2,body .rating-customer-recipient h2{font:700 13pt/1.3 Arial,sans-serif!important}
 .booking-customer-services li,.rating-customer-services li{font:400 10pt/1.4 Arial,sans-serif}
}
@media print{
 .booking-customer-recipient p:not(:first-child){display:inline;margin-right:3mm}
 .booking-customer-title>p:last-child{display:none}
 .booking-customer-sheet .portfolio-benefits h2{margin-bottom:2mm}
 .booking-customer-sheet .portfolio-benefits figure img{height:24mm}
 .booking-customer-footer{margin-top:2mm;padding-top:1mm}
}
@media print{
 #gastroOffer .portfolio-benefits figure img{height:35mm}
 #gastroOffer .portfolio-footer{margin-top:3mm;padding-top:2mm}
 #gastroOffer>.hint{font-size:9pt;line-height:1.4}
 #offerCustomer{font-size:13pt;font-weight:700}
}
.print-device-views{display:flex;gap:16px;align-items:center;justify-content:center;min-width:0}.print-device-views>img{width:50%;height:180px;object-fit:contain}.print-device-views .portfolio-cash-view{width:50%;margin:0}.print-device-views .portfolio-cash-view img{max-width:100%}
.portfolio-price-row{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:12px 0;border-bottom:1px solid #d4e3e9}.portfolio-price-row strong{font-size:16px;color:#087a9e;font-weight:700;text-align:right}
@media print{
 .portfolio-page .no-print{display:none!important}
 .portfolio-page:has(#homeSummary) main> :not(#homeSummary){display:none!important}
 #homeSummaryCustomer{font:700 13pt/1.4 Arial,sans-serif}
 #homeSummaryPrice{white-space:normal;padding:3mm 4mm;background:#f2f8fb;border:1px solid #d4e3e9;border-radius:2mm}
 .portfolio-price-row{padding:2mm 0}.portfolio-price-row strong{font:700 10pt/1.4 Arial,sans-serif}
 .portfolio-page #singlePrint{font:10pt/1.4 Arial,sans-serif!important}
 .portfolio-page #singlePrint h1{font:400 20pt/1.3 Arial,sans-serif!important}.portfolio-page #singlePrint h2{font:700 13pt/1.3 Arial,sans-serif!important}.portfolio-page #singlePrint h3{font:700 10pt/1.4 Arial,sans-serif!important}
 .portfolio-page #singlePrint .print-benefits{grid-template-columns:repeat(3,minmax(0,1fr));gap:3mm}.portfolio-page #singlePrint .print-benefit{padding:2mm}.portfolio-page #singlePrint .print-benefit p{font:10pt/1.4 Arial,sans-serif;margin:0}
 .portfolio-page #singlePrint .print-hero{grid-template-columns:1.35fr 1fr;gap:4mm}.portfolio-page #singlePrint .print-device-views>img,.portfolio-page #singlePrint .print-device-views .portfolio-cash-view img{height:40mm!important}
 .portfolio-page #singlePrint .print-price{padding:3mm;text-align:right}.portfolio-page #singlePrint .print-price strong,.portfolio-page #singlePrint .print-price .monthly{font:700 10pt/1.4 Arial,sans-serif!important;color:#087a9e}
}

/* Real second product view and quiet headings in the detailed cash offer. */
.portfolio-page .r1-package-images:has(.portfolio-cash-view){display:flex;gap:8px;align-items:center;justify-content:center}
.portfolio-page .r1-package-images:has(.portfolio-cash-view)>img{width:50%;max-width:50%;object-fit:contain}
.portfolio-page .r1-package-images .portfolio-cash-view{width:50%;max-width:50%;margin:0}
.portfolio-page .r1-package-images .portfolio-cash-view img{width:100%!important;max-width:100%;height:150px!important}
@media print{
 .portfolio-page #printDocument{font:10pt/1.4 Arial,sans-serif}
 .portfolio-page #printDocument h1{font:400 20pt/1.25 Arial,sans-serif!important}
 .portfolio-page #printDocument h2{font:700 13pt/1.3 Arial,sans-serif!important}
 .portfolio-page #printDocument h3{font:700 10pt/1.35 Arial,sans-serif!important}
 .portfolio-page #printDocument .r1-package-images .portfolio-cash-view img{height:23mm!important}
 .portfolio-page #printDocument .r1-package-images .portfolio-cash-view figcaption{display:none}
 .portfolio-page #printDocument .offer-deadline{margin:2mm 0;padding:2mm 3mm}
}

.offer-deadline-actions{margin:0 0 16px}.offer-deadline-actions button{min-height:44px;padding:10px 16px;border:1px solid #c4762e;border-radius:8px;background:#fff3e7;color:#6b481c;font:600 14px/1.4 var(--paytec-font-text,Arial,sans-serif);cursor:pointer;max-width:100%;white-space:normal}.offer-deadline-actions p{font-size:13px;line-height:1.5;margin:6px 0}.offer-deadline-actions button:focus-visible{outline:3px solid #0076b3;outline-offset:2px}.offer-deadline-actions button:disabled{opacity:.65;cursor:wait}
@media print{.offer-deadline-actions{display:none!important}}

@media print{.rating-customer-sheet .offer-deadline{padding:2mm 3mm;margin:2mm 0}.rating-customer-sheet .rating-customer-footer{margin-top:2mm;padding-top:1mm}.rating-customer-sheet .rating-customer-title{margin-bottom:2mm}.rating-customer-sheet .rating-customer-product{margin-bottom:3mm}}
