/* A compact quote workspace, scoped to the SAM calculator. */
.legacy-content .sam-calc { --calc-red:#aa3036; --calc-ink:#20272b; --calc-mint:#bfe7d5; margin:0; border:1px solid #dedfda; border-radius:24px; overflow:hidden; background:#fff; box-shadow:0 16px 48px #24312c08; scroll-margin-top:112px; }
.legacy-content .sam-calc-header { display:flex; justify-content:space-between; align-items:flex-start; gap:24px; padding:32px 36px 26px; }
.legacy-content .sam-calc-eyebrow { margin:0 0 8px; color:var(--calc-red); font-size:14px; font-weight:750; letter-spacing:.13em; line-height:1.4; }
.legacy-content .sam-calc-header h2 { margin:0; color:var(--calc-ink); font-size:clamp(24px,2.6vw,33px); font-weight:750; letter-spacing:-.035em; line-height:1.15; }
.legacy-content .sam-calc-lead { margin:10px 0 0; color:#60696b; font-size:15px; line-height:1.5; }
.legacy-content .sam-calc-badge { display:flex; flex-shrink:0; align-items:center; gap:8px; padding:10px 12px; border:1px solid #e0e4e0; border-radius:10px; background:#f7f8f5; color:#4a5b53; font-size:14px; font-weight:650; }
.legacy-content .sam-calc-badge svg { flex:none; }
.legacy-content .sam-calc-body { padding:0 36px 24px; }
.legacy-content .sam-calc-workspace { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:stretch; margin:0; }
.legacy-content .sam-calc fieldset { padding:14px 0 0; margin:0; border:0; min-width:0; }
.legacy-content .sam-calc legend { margin:0; padding:0; color:var(--calc-ink); font-size:22px; font-weight:700; line-height:1.3; letter-spacing:-.02em; }
.legacy-content .sam-calc-hint { margin:0 0 22px; color:#667174; font-size:14px; line-height:1.5; }
.legacy-content .sam-calc-label { display:block; margin:0 0 8px; color:#526064; font-size:14px; font-weight:650; line-height:1.4; }
.legacy-content .sam-calc-price-wrap { display:flex; align-items:center; border:1px solid #d9ddd8; background:#f6f7f3; border-radius:13px; padding:0 22px; transition:border-color .15s,box-shadow .15s; }
.legacy-content .sam-calc-price-wrap:focus-within { border-color:var(--calc-red); box-shadow:0 0 0 3px #aa303612; }
.legacy-content .sam-calc input[type=number] { appearance:textfield; -moz-appearance:textfield; box-sizing:border-box; width:100%; min-width:0; height:78px; margin:0; padding:12px 0; border:0; border-radius:0; outline:none; background:transparent; color:var(--calc-ink); line-height:1.1; font-family:inherit; font-size:clamp(32px,3.4vw,44px); font-weight:700; letter-spacing:-.045em; font-variant-numeric:tabular-nums; box-shadow:none; }
.legacy-content .sam-calc input[type=number]::-webkit-inner-spin-button, .legacy-content .sam-calc input[type=number]::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.legacy-content .sam-calc-price-wrap > span { padding-left:12px; color:#737c78; font-size:22px!important; font-weight:500; }
.legacy-content .sam-calc input[type=range] { --sam-range-fill:37.5%; appearance:none; -webkit-appearance:none; display:block; width:100%; height:44px; margin:12px 0 -2px; padding:0; border:0; background:transparent; cursor:pointer; }
.legacy-content .sam-calc input[type=range]::-webkit-slider-runnable-track { height:5px; border-radius:20px; background:linear-gradient(to right,var(--calc-red) var(--sam-range-fill),#e3e6e1 var(--sam-range-fill)); }
.legacy-content .sam-calc input[type=range]::-moz-range-track { height:5px; border-radius:20px; background:#e3e6e1; }
.legacy-content .sam-calc input[type=range]::-moz-range-progress { height:5px; border-radius:20px; background:var(--calc-red); }
.legacy-content .sam-calc input[type=range]::-webkit-slider-thumb { appearance:none; -webkit-appearance:none; width:23px; height:23px; margin-top:-9px; border:5px solid #fff; border-radius:50%; background:var(--calc-red); box-shadow:0 0 0 1px #e3d4d4,0 3px 8px #38272526; }
.legacy-content .sam-calc input[type=range]::-moz-range-thumb { width:13px; height:13px; border:5px solid #fff; border-radius:50%; background:var(--calc-red); box-shadow:0 0 0 1px #e3d4d4,0 3px 8px #38272526; }
.legacy-content .sam-calc-range-labels { display:flex; justify-content:space-between; color:#52615a; font-size:14px; line-height:1.5; }
.legacy-content .sam-calc-presets-label { margin-top:22px; }
.legacy-content .sam-calc-presets { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.legacy-content .sam-calc-presets button { min-height:42px; padding:8px 4px; border:1px solid #dfe3df; border-radius:9px; background:#fff; color:#52605a; line-height:1.3; font-family:inherit; font-size:14px; font-weight:600; cursor:pointer; transition:background .15s,border-color .15s; }
.legacy-content .sam-calc-presets button:hover { background:#f7f0ef; border-color:#c9b0ae; }
.legacy-content .sam-calc-presets button[aria-pressed=true] { background:#f9ebeb; border-color:#b64c50; color:#9b282e; }
.legacy-content .sam-calc-limit { margin:18px 0 0; font-size:14px; color:#52615a; }
.legacy-content .sam-calc-limit strong { color:#46564c; font-weight:600; }
.legacy-content .sam-calc-output { min-width:0; padding:24px 28px 0; border-radius:17px; background:#20292b; color:#f6f9f7; }
.legacy-content .sam-calc-output-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; margin-bottom:22px; font-size:14px; letter-spacing:.13em; color:#b3c4be; font-weight:650; }
.legacy-content .sam-calc-estimate { border:1px solid #51605b; border-radius:6px; padding:4px 7px; font-weight:400; letter-spacing:0; color:#c7d3ce; }
.legacy-content .sam-calc-own > div { color:#d7e2dd; font-size:15px; line-height:1.4; }
.legacy-content .sam-calc-own > strong { display:block; margin:8px 0 22px; color:#fff; font-size:clamp(34px,3.8vw,48px); font-weight:650; line-height:1.1; letter-spacing:-.045em; font-variant-numeric:tabular-nums; }
.legacy-content .sam-calc-grant { display:flex; flex-wrap:wrap; gap:6px 12px; justify-content:space-between; align-items:center; padding-top:18px; border-top:1px solid #43514c; }
.legacy-content .sam-calc-grant > div { color:#c9d8d1; font-size:14px; }
.legacy-content .sam-calc-grant > strong { color:var(--calc-mint); font-size:24px; letter-spacing:-.03em; font-weight:650; font-variant-numeric:tabular-nums; }
.legacy-content .sam-calc-share { display:flex; height:7px; margin:20px 0 10px; overflow:hidden; border-radius:20px; background:#de9496; }
.legacy-content .sam-calc-share > div { width:80.3%; background:var(--calc-mint); transition:width .2s ease; }
.legacy-content .sam-calc-share-labels { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; color:#c7d4ce; font-size:14px; line-height:1.5; }
.legacy-content .sam-calc-share-labels > div { display:flex; align-items:center; gap:5px; }
.legacy-content .sam-calc-share-labels strong { color:#edf2ef; font-weight:600; }
.legacy-content .sam-calc-share-labels i { width:6px; height:6px; display:inline-block; border-radius:50%; }
.legacy-content .sam-calc-dot-grant { background:var(--calc-mint); }
.legacy-content .sam-calc-dot-own { background:#de9496; }
.legacy-content .sam-calc-breakdown { margin:22px 0 0; padding:0; border:0; border-radius:0; border-top:1px solid #43514c; background:transparent; color:#d6e2dc; }
.legacy-content .sam-calc-breakdown summary { display:flex; align-items:center; justify-content:space-between; gap:12px; list-style:none; min-height:54px; padding:12px 0; color:#d6e2dc; font-size:14px; font-weight:500; cursor:pointer; }
.legacy-content .sam-calc-breakdown summary::-webkit-details-marker { display:none; }
.legacy-content .sam-calc-breakdown summary::after { content:none; }
.legacy-content .sam-calc-breakdown summary > span { font-size:20px!important; font-weight:300; }
.legacy-content .sam-calc-breakdown[open] summary > span { transform:rotate(45deg); }
.legacy-content .sam-calc-breakdown p { margin:0 0 12px; font-size:14px; color:#aebfb6; line-height:1.5; }
.legacy-content .sam-calc-breakdown dl { margin:0; padding:0 0 18px; }
.legacy-content .sam-calc-breakdown dl > div { display:flex; flex-wrap:wrap; justify-content:space-between; gap:5px 16px; padding:8px 0; border-top:1px solid #394841; font-size:14px; line-height:1.4; }
.legacy-content .sam-calc-breakdown dd { margin:0; color:#e3eee8; font-weight:600; white-space:nowrap; }
.legacy-content .sam-calc-empty { padding:34px 0 50px; }
.legacy-content .sam-calc-empty strong { display:block; max-width:14ch; font-size:28px; line-height:1.2; font-weight:600; letter-spacing:-.03em; }
.legacy-content .sam-calc-empty p { font-size:14px; color:#b9c8c1; margin:18px 0 0; line-height:1.6; }
.legacy-content .sam-calc-footer { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:32px; align-items:center; margin-top:24px; padding-top:20px; border-top:1px solid #eaede8; }
.legacy-content .sam-calc-note { margin:0; max-width:78ch; font-size:14px; color:#52615a; line-height:1.7; }
.legacy-content .sam-calc-note a { color:#56665b; text-underline-offset:3px; }
.legacy-content .sam-calc-contact { padding-left:28px; border-left:1px solid #e1e5e0; }
.legacy-content .sam-calc-contact p { margin:0 0 4px; font-size:14px; color:#68756d; line-height:1.5; }
.legacy-content .sam-calc-contact a { display:inline-flex; align-items:center; gap:16px; color:var(--calc-red); font-size:17px; font-weight:700; text-decoration:none; white-space:nowrap; min-height:32px; }
.legacy-content .sam-calc-contact a:hover { text-decoration:underline; }
.legacy-content .sam-calc-error { margin:12px 0 0; color:#a1272d; font-size:14px; line-height:1.5; }
.legacy-content .sam-calc [hidden] { display:none!important; }
.legacy-content .sam-calc :is(input[type=range],summary,a,button):focus-visible { outline:3px solid #b54b53; outline-offset:4px; }
.legacy-content .sam-calc .sam-calc-sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media(max-width:900px) {
 .legacy-content .sam-calc-header { padding:26px 26px 22px; flex-wrap:wrap; gap:14px; }
 .legacy-content .sam-calc-body { padding:0 26px 24px; }
 .legacy-content .sam-calc-workspace { gap:24px; }
 .legacy-content .sam-calc-output { padding-inline:22px; }
 .legacy-content .sam-calc-badge { padding:7px 10px; }
 .legacy-content .sam-calc-grant { display:block; }
 .legacy-content .sam-calc-grant strong { display:block; margin-top:6px; }
}
@media(max-width:700px) {
 .legacy-content .sam-calc { border-radius:18px; scroll-margin-top:92px; }
 .legacy-content .sam-calc-header { padding:24px 20px 22px; }
 .legacy-content .sam-calc-header h2 { font-size:26px; }
 .legacy-content .sam-calc-lead { font-size:14px; }
 .legacy-content .sam-calc-body { padding:0 20px 22px; }
 .legacy-content .sam-calc-workspace { grid-template-columns:minmax(0,1fr); gap:22px; }
 .legacy-content .sam-calc legend { font-size:20px; }
 .legacy-content .sam-calc fieldset { padding-top:10px; }
 .legacy-content .sam-calc-hint { margin-bottom:18px; font-size:14px; }
 .legacy-content .sam-calc input[type=number] { height:68px; font-size:36px; }
 .legacy-content .sam-calc-price-wrap { padding-inline:16px; }
 .legacy-content .sam-calc-presets { gap:6px; }
 .legacy-content .sam-calc-presets button { min-height:44px; font-size:14px; }
 .legacy-content .sam-calc-output { padding:22px 20px 0; }
 .legacy-content .sam-calc-output-heading { margin-bottom:20px; }
 .legacy-content .sam-calc-own > strong { font-size:40px; }
 .legacy-content .sam-calc-grant { display:flex; }
 .legacy-content .sam-calc-grant strong { margin-top:0; font-size:23px; }
 .legacy-content .sam-calc-footer { grid-template-columns:1fr; gap:18px; margin-top:20px; padding-top:18px; }
 .legacy-content .sam-calc-contact { padding:0; border:0; }
 .legacy-content .sam-calc-contact a { min-height:44px; }
}
@media(max-width:360px) {
 .legacy-content .sam-calc-header { padding-inline:16px; }
 .legacy-content .sam-calc-body { padding-inline:16px; }
 .legacy-content .sam-calc-own > strong { font-size:34px; }
 .legacy-content .sam-calc-output { padding-inline:16px; }
 .legacy-content .sam-calc-presets { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(prefers-reduced-motion:reduce) { .legacy-content .sam-calc * { transition:none!important; } }
.legacy-content .sam-overview p { max-width:90ch; }
.legacy-content .sam-quick-links { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.legacy-content .sam-quick-links a { padding:12px 18px; min-height:44px; border:1px solid #cbd3d6; border-radius:30px; font-size:14px; font-weight:650; }
.subpage-main.page-program_s-a-m .legacy-content .ux-sections > .imported-row.ux-section.sam-demo-link { display:block; padding:32px 36px; border:1px solid #e5d9d6; border-left:4px solid #aa3036; border-radius:16px; background:#faf5f2; }
.page-program_s-a-m .sam-demo-link > .imported-column { width:100%; }
.page-program_s-a-m .sam-demo-link p { max-width:82ch; }
.page-program_s-a-m .sam-demo-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); align-items:center; gap:32px; }
.page-program_s-a-m .sam-demo-copy { min-width:0; }
.page-program_s-a-m .legacy-content .sam-demo-map { margin:0; min-width:0; }
.page-program_s-a-m .legacy-content .sam-demo-map img { display:block; width:100%; height:auto; max-height:none; margin:0; border-radius:0; object-fit:contain; }
.legacy-content #sam-auto-demonstracyjne { scroll-margin-top:150px; }
.legacy-content .sam-demo-link h2 { font-size:clamp(25px,3vw,36px); line-height:1.2; }
.legacy-content .sam-demo-link .sam-demo-image { display:block; overflow:hidden; border-radius:14px; }
.legacy-content .sam-demo-link .sam-demo-image img { display:block; width:100%; height:auto; max-height:none; object-fit:contain; }
.legacy-content .sam-demo-link a:focus-visible { outline:3px solid #b52632; outline-offset:4px; }
@media(max-width:640px) { .subpage-main.page-program_s-a-m .legacy-content .ux-sections > .sam-demo-link { grid-template-columns:minmax(0,1fr); } }

/* SAM page: real adaptations introduce the offer before the detailed programme copy. */
.page-program_s-a-m .sam-visual-intro { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:40px; row-gap:22px; align-items:center; }
.page-program_s-a-m .sam-visual-intro-copy { grid-column:1; grid-row:1; min-width:0; }
.subpage-main.page-program_s-a-m .legacy-content .ux-sections .sam-visual-intro-copy h2 { font-size:clamp(24px,2.1vw,29px)!important; line-height:1.22; }
.page-program_s-a-m .sam-visual-intro .sam-intro-photo { grid-column:2; grid-row:1 / 3; }
.page-program_s-a-m .sam-visual-intro .sam-quick-links { grid-column:1; grid-row:2; align-self:start; margin:0; gap:10px; }
.page-program_s-a-m .sam-visual-intro .sam-quick-links a { padding:10px 15px; font-size:14px; text-decoration:none; }
.page-program_s-a-m .sam-visual-intro .sam-quick-links a:first-child { border-color:#aa3036; background:#aa3036; color:#fff; }
.page-program_s-a-m .sam-visual-intro .sam-quick-links a:hover { border-color:#aa3036; }
.page-program_s-a-m .legacy-content :is(.sam-intro-photo,.sam-model-photo) { margin:0; min-width:0; width:100%; overflow:hidden; border-radius:14px; background:#f4f3ef; }
.page-program_s-a-m .legacy-content :is(.sam-intro-photo,.sam-model-photo) img { display:block; width:100%; height:auto; min-height:0; max-height:none; margin:0; border-radius:0; aspect-ratio:auto; object-fit:contain; }
.page-program_s-a-m .legacy-content :is(.sam-intro-photo,.sam-model-photo) figcaption { margin:0; padding:13px 16px; font-size:14px; line-height:1.55; color:#58625d; background:#f4f3ef; }
.page-program_s-a-m .sam-basics-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:40px; }
.page-program_s-a-m .sam-basics-grid > div { min-width:0; }
.page-program_s-a-m .sam-basics-grid p:last-child { margin-bottom:0; }
.page-program_s-a-m .sam-model-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; align-items:center; }
.page-program_s-a-m .sam-model-grid > div { min-width:0; }
.subpage-main.page-program_s-a-m .legacy-content .ux-sections > .imported-row.ux-section.sam-model-showcase { background:#20292b; color:#e4ebe7; border-color:#20292b; }
.subpage-main.page-program_s-a-m .legacy-content .ux-sections > .imported-row.ux-section.sam-model-showcase h2 { color:#fff; }
.page-program_s-a-m .sam-model-showcase .button { margin-top:10px; }
.page-program_s-a-m .legacy-content .sam-demo-link .sam-demo-image { border-radius:14px; }
@media(max-width:900px) {
 .page-program_s-a-m .sam-visual-intro,.page-program_s-a-m .sam-model-grid { column-gap:24px; }
 .page-program_s-a-m .sam-basics-grid { grid-template-columns:1fr; gap:28px; }
}
@media(max-width:700px) {
 .page-program_s-a-m .sam-visual-intro,.page-program_s-a-m .sam-model-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
 .page-program_s-a-m .sam-visual-intro .sam-intro-photo { grid-column:1; grid-row:3; }
 .page-program_s-a-m .sam-visual-intro-copy { grid-column:1; grid-row:1; }
 .page-program_s-a-m .sam-visual-intro .sam-quick-links { grid-column:1; grid-row:2; }
 .page-program_s-a-m .sam-visual-intro-copy p:last-child { margin-bottom:0; }
 .page-program_s-a-m .sam-visual-intro .sam-quick-links a { min-height:44px; display:flex; align-items:center; }
 .page-program_s-a-m .sam-model-grid .sam-model-photo { grid-row:1; }
 .subpage-main.page-program_s-a-m .legacy-content .ux-sections > .imported-row.ux-section.sam-model-showcase { padding:24px 20px; border-radius:16px; }
 .subpage-main.page-program_s-a-m .legacy-content .ux-sections > .imported-row.ux-section.sam-demo-link { padding:24px 20px; }
 .page-program_s-a-m .sam-demo-grid { grid-template-columns:minmax(0,1fr); gap:20px; }
 .page-program_s-a-m .legacy-content .sam-demo-map { grid-row:1; width:100%; max-width:300px; justify-self:center; }
}

/* The utility controls occupy their own footer row instead of covering content. */
.site-footer .sam-page-utilities { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-top:28px; padding-top:24px; border-top:1px solid #ffffff30; }
.sam-page-utilities :is(.wst-contact,.wst-privacy,.back-to-top) { position:relative; inset:auto; z-index:auto; margin:0; transform:none; box-shadow:none; }
.sam-page-utilities :is(.wst-privacy,.back-to-top,.wst-contact-toggle) { min-height:48px; font-size:14px; border-radius:24px; }
.sam-page-utilities .wst-contact-toggle span { display:inline; }
.sam-page-utilities .wst-contact-toggle { padding:12px 18px; }
.sam-page-utilities .back-to-top { display:inline-flex; align-items:center; gap:8px; width:auto; height:auto; padding:12px 18px; border:1px solid #ced8d2; background:#fff; color:#343f38; }
.sam-page-utilities .back-to-top[hidden] { display:none; }
.sam-page-utilities .back-to-top svg { width:20px; height:20px; }
.sam-page-utilities #wst-contact-panel { left:0; right:auto; z-index:45; }
.page-program_s-a-m #pfron-qa-2026 details { scroll-margin-top:112px; }
.page-program_s-a-m #pfron-qa-2026 details:target { border-color:#aa3036; }
@media(max-width:700px) {
 .page-program_s-a-m #pfron-qa-2026 details { scroll-margin-top:92px; }
 .sam-page-utilities #wst-contact-panel { position:fixed; inset:auto 16px 16px; width:auto; max-height:calc(100dvh - 108px); overflow:auto; }
}
