/* V24 — Porto package architecture and the existing shared calculator. */
.bk-porto-packages.bk-prices-page > .bk-package-reading { margin:0 0 24px; padding:0; border:0; }
.bk-porto-packages .bk-package-hero { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr); gap:48px; align-items:center; max-width:none; margin-bottom:36px; }
.bk-porto-packages .bk-package-hero-copy .bk-package-icon { width:64px; height:64px; margin-bottom:22px; }
.bk-porto-packages .bk-package-starting { background:#f5f5f5; padding:30px; border-top:3px solid #212529; }
.bk-porto-packages .bk-package-starting .bk-detail-price { font-size:30px; line-height:1.35; font-weight:600; color:#212529; margin:0 0 24px; }
.bk-porto-packages .bk-package-starting .bk-estimate-link { margin:0 0 18px; }
.bk-porto-packages .bk-package-starting .btn { display:block; width:100%; padding:13px 18px; white-space:normal; }
.bk-porto-packages .bk-package-audience { margin-top:24px; padding-top:28px; }
.bk-porto-packages .bk-package-inclusions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 36px; padding-left:20px; margin:28px 0; }
.bk-porto-packages .bk-package-inclusions li { padding:0 8px 16px 0; border-bottom:1px solid #e3e5e7; }
.bk-porto-packages .bk-package-allowances { background:#f6f6f6; padding:32px; border:0; margin-top:40px; }
.bk-porto-packages .bk-package-allowances > h2 { margin-top:0; }
.bk-porto-packages .bk-package-allowance-table { background:white; margin:24px 0 28px; }
.bk-porto-packages .bk-package-allowance-table caption { padding:0 0 16px; }
.bk-porto-packages .bk-package-grid { gap:20px; }
.bk-porto-packages .bk-package-card { border-radius:0; box-shadow:none; padding:24px 20px; }
.bk-porto-packages .bk-package-card .bk-package-price strong { font-size:30px; }
.bk-porto-packages .bk-package-card .bk-package-actions a:not(.btn) { color:#b5091b; font-size:14px; }
.bk-porto-packages .bk-package-actions { gap:14px; }
.bk-porto-packages .bk-ie-card { border:0; border-radius:0; padding:28px; }
.bk-porto-packages .bk-ie-card h3 { margin-top:0; }
.bk-porto-packages .bk-ie-price { font-size:20px; }
.bk-porto-packages .bk-calculator { margin:48px 0; padding-top:40px; }
.bk-porto-packages .bk-calculator > h2 { margin-top:0; }
.bk-porto-packages .bk-calculator-layout { grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr); gap:32px; }
.bk-porto-packages .bk-calculator-result { padding:28px; }
.bk-porto-packages .bk-calculator-result .bk-calculator-total { font-size:34px; font-weight:600; }
.bk-porto-packages .bk-calculator :is(select,input[type="number"]) { font-size:16px; min-height:48px; border-color:#b8bec4; }
.bk-porto-packages .bk-calculator :is(.bk-calculator-check,.bk-form-help) { color:#555e68; }
.bk-porto-packages .bk-calculator-method > summary,.bk-porto-packages .bk-calculator-factor-group > summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:44px; color:#212529; list-style:none; }
.bk-porto-packages .bk-calculator-method { background:#f6f6f6; padding:18px 24px; border:0; }
.bk-porto-packages .bk-calculator-method > summary { color:white; background:#212529; padding:12px 18px; margin:-18px -24px 0; }
.bk-porto-packages .bk-calculator-method[open] > summary { margin-bottom:18px; }
.bk-porto-packages summary::-webkit-details-marker { display:none; }
.bk-porto-packages summary::marker { content:""; }
.bk-package-toggle { position:relative; flex:0 0 28px; width:28px; height:28px; border:1px solid currentColor; }
.bk-package-toggle::before,.bk-package-toggle::after { content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); background:currentColor; }
.bk-package-toggle::before { width:12px; height:2px; }
.bk-package-toggle::after { width:2px; height:12px; }
.bk-porto-packages details[open] > summary .bk-package-toggle::after { display:none; }
.bk-porto-packages a.btn-primary { color:#fff !important; background:#d50920 !important; border-color:#d50920 !important; text-decoration:none; }
.bk-porto-packages a.btn-primary > span { position:relative; z-index:1; color:#fff !important; }
.bk-porto-packages a.btn-primary:hover,.bk-porto-packages a.btn-primary:focus-visible { background:#b7071b !important; border-color:#b7071b !important; color:white !important; }
.bk-porto-packages .btn-outline-dark { color:#212529 !important; border:1px solid #212529; background:white; }
.bk-porto-packages .btn-outline-dark:hover { background:#212529; color:white !important; }
.bk-porto-packages .bk-calculator .btn-primary { isolation:isolate; }
.bk-porto-packages .bk-calculator .btn-primary::before { display:none; }
.bk-porto-packages :is(a,summary,button):focus-visible { outline:3px solid #b5091b; outline-offset:4px; }
@media(max-width:991px) {
 .bk-porto-packages .bk-package-hero { grid-template-columns:minmax(0,1fr) minmax(260px,1fr); gap:28px; }
 .bk-porto-packages .bk-calculator-layout { grid-template-columns:minmax(0,1.2fr) minmax(240px,1fr); gap:24px; }
}
@media(max-width:767px) {
 .bk-porto-packages .bk-package-hero { display:block; }
 .bk-porto-packages .bk-package-starting { padding:24px; margin-top:24px; }
 .bk-porto-packages .bk-package-inclusions { grid-template-columns:1fr; gap:14px; }
 .bk-porto-packages .bk-package-allowances { padding:24px 20px; }
 .bk-porto-packages .bk-calculator-layout { grid-template-columns:1fr; }
 .bk-porto-packages .bk-calculator-result { padding:24px; }
 .bk-porto-packages .bk-package-grid { grid-template-columns:1fr; }
 .bk-porto-packages .bk-package-card .bk-package-actions .btn { font-size:14px; padding:13px 16px; }
 .bk-porto-packages .bk-ie-card { padding:24px; }
}
