/* Shared layout for migrated editorial and product pages. */

.content-page { background: var(--white); }
.content-page main { overflow: hidden; }
.content-page .main-nav { gap: 20px; }

.content-section { position: relative; padding-block: clamp(54px, 7vw, 104px); background: var(--white); }
.content-section--tint { background: var(--paper); }
.content-section--image { isolation: isolate; color: var(--white); background: var(--ink); }
.content-section--image::before { position: absolute; z-index: -2; inset: 0; content: ""; background-image: var(--section-image); background-position: center; background-size: cover; }
.content-section--image::after { position: absolute; z-index: -1; inset: 0; content: ""; background: linear-gradient(90deg, rgba(7,29,51,.93), rgba(7,29,51,.62) 58%, rgba(7,29,51,.32)); }

.page-hero { min-height: 360px; display: flex; align-items: center; padding-block: clamp(66px, 7vw, 96px); background: linear-gradient(135deg, #edf6fc, #f9fbfd); }
.page-hero:not(.content-section--image)::before { position: absolute; inset: 0; content: ""; opacity: .38; background-image: linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px); background-size: 68px 68px; mask-image: linear-gradient(120deg, #000, transparent 82%); }
.page-hero .shell { position: relative; z-index: 1; }
.page-hero .content-grid { align-items: center; }
.page-hero h1 { max-width: 1040px; margin: 0; font-size: clamp(42px, 5vw, 68px); font-weight: 770; line-height: .98; letter-spacing: -.045em; }
.page-hero h2 { max-width: 900px; font-size: clamp(38px, 5vw, 70px); }
.page-hero p { max-width: 760px; font-size: clamp(18px, 2vw, 25px); }

/* Editorial knowledge pages are intentionally denser than the landing page. */
.knowledge-page .page-hero { min-height: 240px; padding-block: clamp(38px, 4.5vw, 58px); }
.knowledge-page .page-hero:not(.content-section--image) { background:
  radial-gradient(circle at 82% 28%, rgba(41,163,218,.18), transparent 22%),
  linear-gradient(135deg, #edf6fc, #f9fbfd 72%); }
.knowledge-page .page-hero:not(.content-section--image)::after { position: absolute; right: 4%; bottom: 12%; width: min(38vw, 480px); height: min(18vw, 220px); content: ""; opacity: .46; background-image: url("assets/ui/knowledge-trajectory.svg"); background-position: right center; background-repeat: no-repeat; background-size: contain; pointer-events: none; }
.knowledge-page .page-hero h1 { max-width: 920px; font-size: clamp(38px, 4.2vw, 56px); line-height: 1.02; }
.knowledge-page .page-hero p { max-width: 820px; font-size: 17px; line-height: 1.5; }
.knowledge-page .content-section:not(.page-hero) { padding-block: clamp(26px, 3.2vw, 42px); }
.knowledge-page .content-grid { gap: clamp(18px, 2.5vw, 30px); }
.knowledge-page .content-grid + .content-grid { margin-top: 24px; }
.knowledge-page .content-grid--1 { width: min(940px, 100%); }
.knowledge-page .content-column h2 { margin-bottom: 14px; font-size: clamp(27px, 2.7vw, 36px); }
.knowledge-page .content-column h3 { margin: 16px 0 8px; font-size: clamp(21px, 1.8vw, 26px); }
.knowledge-page .content-column p,
.knowledge-page .content-column li { line-height: 1.58; }
.knowledge-page .content-column ul,
.knowledge-page .content-column ol { margin-block: 14px; }
.knowledge-page .content-media,
.knowledge-page .content-embed { border-radius: 16px; box-shadow: 0 14px 36px rgba(8,39,68,.10); }
.knowledge-page .content-embed { margin-block: 12px; }
.tutorial-page .content-section:not(.page-hero) { padding-block: 24px; }
.tutorial-page .content-column h3 { min-height: 2.5em; }
.tutorial-page .content-embed { margin-block: 8px; }
.tutorial-description > summary { display: none; }
.faq-list { background: var(--white); }
.faq-items { width: min(980px, 100%); display: grid; gap: 10px; margin-inline: auto; }
.faq-item { overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: var(--white); }
.faq-item > summary { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 16px 20px; color: var(--ink); font-size: 18px; font-weight: 800; line-height: 1.3; cursor: pointer; list-style: none; }
.faq-item > summary::-webkit-details-marker { display: none; }
.faq-item > summary::after { flex: 0 0 auto; content: "+"; color: var(--blue); font-size: 25px; font-weight: 500; }
.faq-item[open] > summary { background: var(--paper); }
.faq-item[open] > summary::after { content: "−"; }
.faq-answer { padding: 20px; border-top: 1px solid var(--line); }
.faq-answer > .content-grid + .content-grid { margin-top: 24px; }
.faq-answer .content-media,
.faq-answer .content-embed { box-shadow: none; }
.knowledge-page.camera-mount-page .page-hero:not(.content-section--image) { min-height: 0; padding-bottom: 22px; color: var(--white); background: var(--ink); }
.camera-mount-page .page-hero::before,
.camera-mount-page .page-hero::after { display: none; }
.camera-mount-page .page-hero h1 { color: var(--white); }
.camera-mount-page main > .content-section:nth-child(2) { padding-top: 0; color: var(--white); background: var(--ink); }
.camera-mount-page main > .content-section:nth-child(2) h2,
.camera-mount-page main > .content-section:nth-child(2) h3,
.camera-mount-page main > .content-section:nth-child(2) p { color: var(--white); }
.camera-mount-page main > .content-section:nth-child(2) .content-media { background: var(--white); border: 0; border-radius: 0; box-shadow: none; }
.license-plates-page .page-hero { min-height: 0; }
.license-plates-page .page-hero .content-grid { grid-template-columns: minmax(390px, .8fr) minmax(0, 1.35fr); }
.license-plates-page .page-hero .content-media { height: 310px; }
.license-plates-page .page-hero .content-media img { height: 100%; object-fit: cover; }
.knowledge-reviewed-hero .content-column { max-width: 980px; }
.knowledge-index-heading { padding-block: 20px !important; background: var(--paper); }
.knowledge-index-heading h2 { margin: 0; font-size: clamp(28px, 3vw, 38px); }
.tutorial-step-grid .content-grid { gap: 24px; }
.tutorial-step-grid .content-column { min-width: 0; }
.tutorial-step-grid .content-column h3 { min-height: 0; font-size: 22px; }
.tutorial-step-grid .content-embed { box-shadow: 0 6px 18px rgba(8,39,68,.06); }
.camera-requirements .content-grid { max-width: 980px; margin-inline: auto; }
.camera-requirements .content-column { padding: clamp(20px, 3vw, 34px); background: var(--paper); border: 1px solid var(--line); border-radius: 16px; }
.camera-models { background: var(--paper); }
.camera-models .content-grid { max-width: 1120px; margin-inline: auto; }
.camera-models .content-column { min-width: 0; }
.camera-models h2 { margin-bottom: 18px; }
.camera-models__lead { max-width: 820px; margin: 0; color: #506a7f; font-size: 17px; line-height: 1.65; }
.camera-models__group-title { margin: 42px 0 16px; padding-top: 22px; border-top: 1px solid var(--line); font-size: clamp(22px, 2.4vw, 30px); }
.camera-models__archive-note { max-width: 760px; margin: -5px 0 18px; color: #657b8c; font-size: 14px; }
.camera-model-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.camera-model-card { position: relative; min-width: 0; padding: 24px; background: var(--white); border: 1px solid rgba(7,29,51,.14); border-top: 4px solid var(--blue); border-radius: 15px; box-shadow: 0 8px 24px rgba(8,39,68,.06); }
.camera-model-card h4 { margin: 0 0 20px; overflow-wrap: anywhere; color: var(--ink); font-size: clamp(18px, 1.8vw, 23px); font-weight: 820; line-height: 1.25; letter-spacing: -.02em; }
.camera-model-card dl { display: grid; grid-template-columns: minmax(112px, .34fr) minmax(0, 1fr); gap: 0; margin: 0; }
.camera-model-card dt, .camera-model-card dd { margin: 0; padding: 10px 0; border-top: 1px solid rgba(7,29,51,.09); font-size: 13px; line-height: 1.45; }
.camera-model-card dt { padding-right: 14px; color: var(--blue); font-weight: 800; }
.camera-model-card dd { color: #435d72; }
.camera-model-card--archived { border-top-color: #8a9aa7; box-shadow: none; }
.camera-model-card__status { display: inline-flex; margin: -8px 0 18px; padding: 5px 9px; color: #526474; background: #edf1f4; border-radius: 999px; font-size: 10px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.camera-guide-section { padding-block: 28px !important; }
.camera-guide-section .content-grid { gap: 22px; }
.camera-guide-section .content-media { box-shadow: 0 5px 16px rgba(8,39,68,.05); }
.camera-guide-section ul, .camera-guide-section ol { padding-left: 24px; }
.camera-guide-section li + li { margin-top: 7px; }
.camera-guide-section li > ul { margin-top: 8px; }
.camera-guide__key { margin-bottom: 5px; color: var(--ink); font-weight: 800; }
.camera-section-band { padding-block: 24px !important; color: var(--white); background: var(--ink) !important; }
.knowledge-page .camera-section-band .content-column h2 { max-width: 980px; margin: 0; color: var(--white); font-size: clamp(27px, 3vw, 40px); }
.camera-scenario-summary .content-grid { align-items: stretch; }
.camera-scenario-summary .content-column { display: grid; grid-template-rows: 150px auto 1fr; padding: 18px; background: var(--white); border: 1px solid var(--line); border-radius: 16px; }
.camera-scenario-summary .content-media { height: 140px; background: #eef4f8; border: 0; box-shadow: none; }
.camera-scenario-summary .content-media img { width: 100%; height: 100%; object-fit: contain; }
.camera-example-grid .content-grid { align-items: stretch; }
.camera-example-grid .content-column { display: flex; min-width: 0; flex-direction: column; }
.camera-example-grid .content-media { width: 100%; height: 300px; display: grid; place-items: center; overflow: hidden; background: #eef4f8; border: 1px solid var(--line); box-shadow: none; }
.camera-example-grid .content-media img { width: 100%; height: 100%; object-fit: contain; }
.camera-example-grid .content-column > p { margin: 12px 0 0; color: #425f78; font-size: 14px; font-weight: 700; line-height: 1.45; }
.parking-windshield-guide { padding-block: clamp(48px, 6vw, 78px) !important; color: var(--white); background: var(--ink); }
.parking-windshield-intro { display: grid; grid-template-columns: minmax(320px, .82fr) minmax(520px, 1.18fr); align-items: start; gap: clamp(36px, 5vw, 72px); }
.parking-windshield-guide .eyebrow { color: #98dcf6; }
.parking-windshield-guide .eyebrow--gate span::before,
.parking-windshield-guide .eyebrow--gate span::after { border-color: var(--ink); }
.parking-windshield-guide h2 { max-width: 650px; margin: 0; color: var(--white); font-size: clamp(34px, 3.5vw, 46px); line-height: 1.04; letter-spacing: -.04em; }
.parking-windshield-lead { max-width: 650px; margin: 24px 0 0; color: #c3d6e5; font-size: 17px; line-height: 1.65; }
.parking-readability-rule { max-width: 650px; margin-top: 28px; padding: 20px 22px; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.16); border-left: 4px solid var(--category-transit); border-radius: 12px; }
.parking-readability-rule strong { display: block; margin-bottom: 7px; color: #ffb55f; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.parking-readability-rule p { margin: 0; color: #e5eef5; font-size: 14px; line-height: 1.55; }
.parking-night-gallery { min-width: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.parking-night-gallery a { position: relative; min-width: 0; display: block; overflow: hidden; background: #02080f; border: 1px solid rgba(255,255,255,.18); border-radius: 14px; }
.parking-night-gallery a:first-child { grid-column: 1 / -1; }
.parking-night-gallery img { width: 100%; aspect-ratio: 16 / 7; object-fit: cover; }
.parking-night-gallery a:not(:first-child) img { aspect-ratio: 16 / 8.5; }
.parking-night-gallery span { position: absolute; right: 10px; bottom: 10px; left: 10px; padding: 8px 10px; color: var(--white); background: rgba(7,29,51,.82); border-radius: 8px; font-size: 11px; font-weight: 800; letter-spacing: .035em; backdrop-filter: blur(6px); }
.parking-windshield-solutions { padding-block: clamp(44px, 5vw, 70px) !important; }
.parking-solutions-grid { grid-template-columns: minmax(0, .92fr) minmax(440px, 1.08fr); align-items: start; gap: clamp(34px, 5vw, 70px) !important; }
.parking-windshield-solutions h2 { margin: 0 0 24px; font-size: clamp(30px, 3vw, 43px); }
.parking-checklist { display: grid; gap: 10px; margin: 0 !important; padding: 0 !important; list-style: none; counter-reset: parking-step; }
.parking-checklist li { position: relative; min-height: 68px; display: grid; grid-template-columns: 44px 1fr; grid-template-rows: auto auto; column-gap: 13px; margin: 0 !important; padding: 14px 16px 14px 12px; background: var(--white); border: 1px solid var(--line); border-radius: 12px; counter-increment: parking-step; }
.parking-checklist li::before { grid-row: 1 / 3; width: 38px; height: 38px; display: grid; place-items: center; content: counter(parking-step); color: var(--white); background: var(--blue); border-radius: 50%; font-size: 14px; font-weight: 850; }
.parking-checklist strong { color: var(--ink); font-size: 15px; line-height: 1.35; }
.parking-checklist span { margin-top: 3px; color: #536d82; font-size: 13px; line-height: 1.48; }
.parking-guide-visual > a { display: block; overflow: hidden; background: var(--white); border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 16px 40px rgba(8,39,68,.11); }
.parking-guide-visual img { width: 100%; height: auto; }
.parking-guide-visual > p { margin: 12px 2px 0; color: #5b7286; font-size: 12px; line-height: 1.5; }
.parking-surveyor-alternative { display: grid; grid-template-columns: minmax(210px,.55fr) minmax(360px,1.15fr) auto; align-items: center; gap: 28px; margin-top: 32px; padding: 22px 26px; color: var(--white); background: linear-gradient(115deg, var(--blue), #073967); border-radius: 16px; }
.parking-surveyor-alternative span { color: #a9e4fa; font-size: 10px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.parking-surveyor-alternative h3 { margin: 4px 0 0 !important; color: var(--white); font-size: 23px !important; }
.parking-surveyor-alternative p { margin: 0; color: #dcecf7; font-size: 14px; line-height: 1.55; }
.parking-surveyor-alternative > a { color: var(--white); font-size: 12px; font-weight: 850; text-decoration: none; text-transform: uppercase; white-space: nowrap; }
.camera-cta-product .content-grid { align-items: center; }
.camera-cta-product .content-media { aspect-ratio: 3 / 2; background: #edf4f8; border: 1px solid rgba(255,255,255,.18); box-shadow: none; }
.camera-cta-product .content-media img { width: 100%; height: 100%; object-fit: cover; }
.classification-catalog-heading { padding-block: 20px !important; background: var(--paper); }
.classification-catalog-heading h2 { margin: 0; font-size: clamp(29px, 3.2vw, 42px); }
.classification-icon-grid { padding-block: 16px !important; }
.classification-icon-grid .content-grid { gap: 14px; }
.classification-icon-grid .content-media { height: 120px; display: grid; place-items: center; padding: 10px; border: 0; box-shadow: none; }
.classification-icon-grid .content-media img { width: 100%; height: 100%; object-fit: contain; }
.classification-icon-grid p { margin-top: 7px; font-size: 13px; font-weight: 750; text-align: center; }
.classification-reference { padding-block: 24px !important; }
.classification-reference:nth-child(even) { background: var(--paper); }
.classification-reference .content-grid { gap: 18px; }
.classification-reference .content-media { box-shadow: none; }
.classification-options .content-column { padding: 28px 30px; background: var(--paper); border: 1px solid var(--line); border-radius: 16px; }
.classification-options > .shell { max-width: 1040px; }
.classification-options ul { margin: 20px 0 0; padding-left: 24px; }
.classification-options li { margin-bottom: 12px; padding-left: 6px; color: #425f78; line-height: 1.6; }
.classification-options li::marker { color: var(--sky); }
.classification-options li strong { color: var(--ink); }
.classification-catalog-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.classification-catalog-disclosure { background: var(--paper); }
.classification-catalog-disclosure > summary { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 14px 18px; color: var(--blue); background: var(--white); border: 1px solid var(--line); border-radius: 14px; font-size: 16px; font-weight: 800; cursor: pointer; list-style: none; }
.classification-catalog-disclosure > summary::-webkit-details-marker { display: none; }
.classification-catalog-disclosure > summary::after { content: "+"; font-size: 24px; font-weight: 500; }
.classification-catalog-disclosure[open] > summary::after { content: "−"; }
.classification-catalog-disclosure > .content-grid { margin-top: 18px; }
.classification-variants-heading { padding-block: 30px 12px !important; }
.classification-variants-heading h2 { margin-bottom: 8px; }
.classification-variants-heading p { max-width: 760px; margin: 0; color: #536d82; }
.classification-variants { padding-block: 24px 46px !important; }
.classification-variants > .shell { display: grid; gap: 10px; }
.classification-variant { overflow: hidden; background: var(--white); border: 1px solid var(--line); border-radius: 14px; }
.classification-variant > summary { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 20px; color: var(--white); background: var(--ink); font-size: 18px; font-weight: 800; cursor: pointer; list-style: none; }
.classification-variant > summary::-webkit-details-marker { display: none; }
.classification-variant > summary::after { content: "+"; color: #8bd6f4; font-size: 24px; font-weight: 500; }
.classification-variant[open] > summary { background: #123652; }
.classification-variant[open] > summary::after { content: "−"; }
.classification-variant__body { padding: 30px; border-top: 1px solid var(--line); }
.classification-variant__body > .content-grid + .content-grid { margin-top: 22px; }
.classification-variant__body .content-media { box-shadow: none; }
.classification-variant__lead { max-width: 760px; margin: 0 0 22px; color: #425f78; font-size: 17px; line-height: 1.65; }
.classification-variant__body ul { margin: 16px 0 0; padding-left: 24px; }
.classification-variant__body li { margin-bottom: 9px; padding-left: 5px; line-height: 1.55; }
.classification-variant__body li::marker { color: var(--sky); }
.classification-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 22px; }
.classification-metric { padding: 18px; background: var(--paper); border: 1px solid var(--line); border-radius: 12px; }
.classification-metric strong { display: block; color: var(--blue); font-size: clamp(26px, 3vw, 38px); line-height: 1; }
.classification-metric span { display: block; margin-top: 8px; color: #536d82; font-size: 13px; font-weight: 750; }
.classification-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 28px; border-top: 1px solid var(--line); }
.classification-result { display: flex; justify-content: space-between; gap: 18px; padding: 11px 0; border-bottom: 1px solid var(--line); }
.classification-result span { color: #425f78; }
.classification-result strong { color: var(--ink); }
.classification-method-note { margin: 18px 0 0; color: #64798b; font-size: 13px; }
.classification-example-grid { align-items: stretch; gap: 22px 16px; }
.classification-example-grid .content-column { display: flex; min-width: 0; flex-direction: column; }
.classification-example-grid .content-media { width: 100%; height: 210px; display: grid; place-items: center; overflow: hidden; padding: 8px; background: #eef4f8; border: 1px solid var(--line); border-radius: 12px; }
.classification-example-grid .content-media img { width: 100%; height: 100%; object-fit: contain; }
.classification-example-grid .content-column > p { display: flex; gap: 7px; margin: 10px 2px 0; color: #425f78; font-size: 14px; line-height: 1.45; text-align: left; }
.classification-example-grid .content-column > p strong { flex: 0 0 auto; color: var(--blue); }
.classification-media-grid { align-items: center; }
.classification-media-grid .content-media { overflow: hidden; background: #eef4f8; border: 1px solid var(--line); border-radius: 12px; }
.classification-media-grid .content-media img { display: block; width: 100%; height: auto; max-height: 420px; object-fit: contain; }
.classification-page .knowledge-cta .content-grid { max-width: 760px; }
.ai-explainer-section { padding-block: clamp(26px, 3vw, 40px) !important; }
.ai-explainer-section .content-grid { align-items: center; }
.ai-history-disclosure { border: 1px solid var(--line); border-radius: 14px; background: var(--white); }
.ai-history-disclosure > summary { min-height: 60px; display: flex; align-items: center; justify-content: space-between; padding: 14px 18px; color: var(--ink); font-size: 18px; font-weight: 800; cursor: pointer; list-style: none; }
.ai-history-disclosure > summary::-webkit-details-marker { display: none; }
.ai-history-disclosure > summary::after { content: "+"; color: var(--blue); font-size: 24px; }
.ai-history-disclosure[open] > summary::after { content: "−"; }
.ai-history-disclosure > .content-grid { padding: 18px; border-top: 1px solid var(--line); }
.ai-explainer-step .shell { position: relative; }
.ai-explainer-step .shell::before { position: absolute; top: -6px; left: 0; content: attr(data-step); color: var(--sky); font-size: 12px; font-weight: 850; letter-spacing: .14em; }
.ai-explainer-step h2 { padding-top: 18px; }
.license-reference-section { padding-block: 22px !important; }
.license-reference-section .content-grid { gap: 16px; }
.license-reference-section .content-media { box-shadow: none; }
.license-types, .license-codes { padding-block: 32px !important; }
.license-types h2, .license-codes h2 { margin-bottom: 8px; font-size: clamp(30px, 3.2vw, 42px); }
.license-gallery { margin-top: 22px; }
.license-gallery .content-column { min-width: 0; display: flex; flex-direction: column; }
.license-gallery .content-media { height: 145px; display: grid; place-items: center; padding: 10px; background: var(--white); border: 1px solid var(--line); border-radius: 12px; }
.license-gallery .content-media img { width: 100%; height: 100%; object-fit: contain; }
.license-gallery .content-column > p { margin: 10px 3px 0; color: #536d82; font-size: 13px; font-weight: 450; line-height: 1.45; text-align: left; }
.license-gallery .content-column > p strong { display: block; margin-bottom: 3px; color: var(--ink); font-size: 15px; font-style: normal; font-weight: 800; }
.license-gallery .content-column > p span { display: block; font-style: normal; }
.license-codes > .shell > .content-grid:first-child { align-items: center; }
.license-codes > .shell > .content-grid:first-child .content-media { overflow: hidden; border: 1px solid var(--line); border-radius: 14px; }
.license-code-label { margin: 22px 0 9px; color: var(--ink); font-size: 14px; font-weight: 800; }
.license-code-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.license-code-pills > div { display: inline-flex; overflow: hidden; align-items: stretch; border: 1px solid #cddce7; border-radius: 9px; background: var(--white); }
.license-code-pills strong { padding: 7px 9px; color: var(--white); background: var(--blue); letter-spacing: .04em; }
.license-code-pills span { padding: 7px 10px; color: #425f78; }
.license-code-note { margin-top: 10px; color: #64798b; font-size: 13px; }
.license-product-link { padding-block: 36px !important; background: var(--paper); }
.license-product-link .content-grid { align-items: center; }
.license-product-link .content-media { box-shadow: none; }
.license-product-link h2 { margin-bottom: 14px; font-size: clamp(30px, 3.1vw, 42px); }
.license-product-link p { max-width: 680px; }
.license-product-link:nth-of-type(even) { background: var(--white); }
.license-alpr-benefits ul { display: grid; gap: 9px; margin: 18px 0; padding: 0; list-style: none; }
.license-alpr-benefits li { position: relative; display: grid; gap: 2px; padding: 11px 14px 11px 42px; background: var(--white); border: 1px solid var(--line); border-radius: 10px; }
.license-alpr-benefits li::before { position: absolute; top: 13px; left: 14px; width: 18px; height: 18px; display: grid; place-items: center; color: var(--white); background: var(--blue); border-radius: 50%; content: "✓"; font-size: 11px; font-weight: 900; }
.license-alpr-benefits li strong { color: var(--ink); font-size: 15px; }
.license-alpr-benefits li span { color: #536d82; font-size: 14px; }
.knowledge-cta { color: var(--white); background: var(--ink) !important; }
.knowledge-cta__copy,
.knowledge-cta .content-grid { max-width: 900px; margin-inline: auto; text-align: center; }
.knowledge-cta h2,
.knowledge-cta h3 { color: var(--white); font-size: clamp(32px, 3.8vw, 50px); }
.knowledge-cta p { color: #bad0e0; }
.knowledge-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 24px; }
.knowledge-actions .content-button--secondary { color: var(--blue); background: var(--white); border: 1px solid #c9d9e4; }

/* Company and brand pages use a denser editorial scale than a landing page. */
.about-page .page-hero { min-height: 300px; padding-block: clamp(44px, 5vw, 64px); }
.about-page .page-hero h1 { max-width: 1000px; font-size: clamp(42px, 4.7vw, 60px); }
.about-page .page-hero p { font-size: 17px; }
.about-page .content-section:not(.page-hero) { padding-block: clamp(30px, 4vw, 54px); }
.about-page .content-grid { gap: clamp(22px, 3vw, 38px); }
.about-page .content-grid + .content-grid { margin-top: 28px; }
.about-page .content-column h2 { margin-bottom: 18px; font-size: clamp(29px, 3.2vw, 44px); }
.about-page .content-column h3 { margin: 18px 0 10px; font-size: clamp(22px, 2.2vw, 29px); }
.about-page .content-media img { max-height: 480px; }
.about-reviewed-hero .content-column { max-width: 1000px; }
.about-reviewed-hero p { max-width: 820px; }
.brand-download { display: block; color: inherit; text-decoration: none; }
.brand-download .content-media { transition: border-color .2s ease, transform .2s ease; }
.brand-download:hover .content-media { border-color: rgba(18,89,213,.42); transform: translateY(-2px); }
.brand-download:focus-visible { outline: 3px solid var(--cyan); outline-offset: 4px; border-radius: 14px; }
.media-reviewed-grid .content-media { box-shadow: 0 5px 16px rgba(8,39,68,.05); }
.contractor-contact { color: var(--white); background: var(--ink) !important; }
.contractor-contact h2 { color: var(--white); }
.contractor-contact p { color: #bad0e0; }
.about-misja-firmy main > section:nth-child(2) .content-media { width: min(440px, 100%); margin-inline: auto; background: var(--white); border: 0; box-shadow: none; }
.about-misja-firmy main > section:nth-child(3),
.about-misja-firmy main > section:nth-child(4) { padding-block: 28px; }
.about-misja-firmy main > section:nth-child(3) .content-grid,
.about-misja-firmy main > section:nth-child(4) .content-grid { grid-template-columns: 220px minmax(0, 1fr); align-items: center; gap: 42px; }
.about-misja-firmy main > section:nth-child(3) .content-media,
.about-misja-firmy main > section:nth-child(4) .content-media { width: 190px; height: 190px; display: grid; place-items: center; margin-inline: auto; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.about-misja-firmy main > section:nth-child(3) .content-media img,
.about-misja-firmy main > section:nth-child(4) .content-media img { width: 100%; height: 100%; object-fit: contain; }
.about-misja-firmy main > section:nth-child(6),
.about-misja-firmy main > section:nth-child(7) { padding-block: 24px; }
.about-misja-firmy main > section:nth-child(6) .content-grid,
.about-misja-firmy main > section:nth-child(7) .content-grid { grid-template-columns: 150px minmax(0, 1fr) 150px minmax(0, 1fr); align-items: start; gap: 24px; }
.about-misja-firmy main > section:nth-child(6) .content-media,
.about-misja-firmy main > section:nth-child(7) .content-media { width: 140px; height: 140px; display: grid; place-items: center; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.about-misja-firmy main > section:nth-child(6) .content-media img,
.about-misja-firmy main > section:nth-child(7) .content-media img { width: 100%; height: 100%; object-fit: contain; }
.about-misja-firmy main > section:nth-child(6) h3,
.about-misja-firmy main > section:nth-child(7) h3 { margin-top: 4px; }
.about-referencje main > section:nth-child(2),
.about-referencje main > section:nth-child(4),
.about-wykonawcy main > section:nth-child(3),
.about-wykonawcy main > section:nth-child(7),
.about-wykonawcy main > section:nth-child(9),
.about-media-o-nas main > section:nth-child(2),
.about-oferty-pracy main > section:nth-child(2),
.about-logotyp-oraz-marka main > section:nth-child(2),
.about-logotyp-oraz-marka main > section:nth-child(4),
.about-logotyp-oraz-marka main > section:nth-child(7),
.about-logotyp-oraz-marka main > section:nth-child(9) { padding-block: 26px; }
.about-referencje main > section:nth-child(2) h2,
.about-referencje main > section:nth-child(4) h2,
.about-wykonawcy main > section:nth-child(3) h2,
.about-wykonawcy main > section:nth-child(7) h2,
.about-wykonawcy main > section:nth-child(9) h2,
.about-media-o-nas main > section:nth-child(2) h2,
.about-oferty-pracy main > section:nth-child(2) h2,
.about-logotyp-oraz-marka main > section:nth-child(2) h2,
.about-logotyp-oraz-marka main > section:nth-child(4) h2,
.about-logotyp-oraz-marka main > section:nth-child(7) h2,
.about-logotyp-oraz-marka main > section:nth-child(9) h2 { margin: 0; font-size: clamp(28px, 3vw, 38px); }
.about-historia-firmy .page-hero { min-height: 390px; }
.about-historia-firmy .page-hero .content-column { max-width: 760px; }
.about-historia-firmy main > section:nth-child(2) { padding-block: clamp(34px, 4vw, 52px); text-align: center; }
.about-historia-firmy main > section:nth-child(2) .content-grid { width: min(900px, 100%); margin-inline: auto; }
.about-historia-firmy main > section:nth-child(2) h2 { margin-bottom: 12px; }
.about-historia-firmy main > section:nth-child(2) p { max-width: 760px; margin-inline: auto; }

/* Historia AISP: jedna czytelna oś zamiast serii pełnoekranowych sekcji. */
.history-timeline-section { overflow: hidden; padding-block: clamp(48px, 7vw, 92px) !important; background: linear-gradient(180deg, #f4f9fc 0%, #fff 16%, #fff 84%, #f4f9fc 100%); }
.history-timeline { position: relative; display: grid; gap: 34px; margin: 0; padding: 0; list-style: none; }
.history-timeline::before { position: absolute; top: 12px; bottom: 12px; left: 50%; width: 3px; content: ""; transform: translateX(-50%); background: linear-gradient(180deg, var(--sky), var(--blue) 44%, #6848bc 72%, #ef8625); border-radius: 999px; }
.history-timeline__item { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 74px minmax(0, 1fr); align-items: start; }
.history-timeline__item::before { z-index: 2; width: 17px; height: 17px; grid-column: 2; grid-row: 1; justify-self: center; margin-top: 28px; content: ""; background: var(--white); border: 4px solid var(--blue); border-radius: 50%; box-shadow: 0 0 0 7px rgba(30,155,220,.13); }
.history-timeline__item:nth-child(4n+2)::before { border-color: #5ca447; }
.history-timeline__item:nth-child(4n+3)::before { border-color: #6848bc; }
.history-timeline__item:nth-child(4n)::before { border-color: #ef8625; }
.history-card { position: relative; grid-column: 1; grid-row: 1; overflow: hidden; padding: 26px; background: var(--white); border: 1px solid #d8e5ed; border-radius: 20px; box-shadow: 0 16px 44px rgba(8,39,68,.09); }
.history-timeline__item:nth-child(even) .history-card { grid-column: 3; }
.history-card::after { position: absolute; top: 35px; right: -38px; width: 76px; height: 1px; content: ""; background: linear-gradient(90deg, var(--sky), transparent); }
.history-timeline__item:nth-child(even) .history-card::after { right: auto; left: -38px; transform: scaleX(-1); }
.history-card__date { display: inline-flex; margin-bottom: 14px; padding: 6px 11px; color: #075a9e; background: #eaf7fd; border-radius: 999px; font-size: 12px; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.history-card__grid.content-grid--2 { grid-template-columns: minmax(0, 1.18fr) minmax(130px, .82fr); gap: 18px; }
.history-card__grid .history-copy { order: 1; }
.history-card__grid .history-media { order: 2; }
.history-card .content-column h2 { margin: 0 0 10px; font-size: clamp(23px, 2.2vw, 31px); line-height: 1.08; }
.history-card .content-column p,
.history-card .content-column li,
.history-card > p { font-size: 14px; line-height: 1.58; }
.history-card .content-column p { margin-bottom: 11px; }
.history-card .content-column ul { margin-block: 12px; }
.history-card .content-media { border-radius: 14px; box-shadow: none; }
.history-card .content-media img { width: 100%; max-height: 220px; object-fit: cover; }
.history-card .history-media > p { margin-top: 8px; font-size: 12px; line-height: 1.4; }
.history-card--new { padding: 30px; border-top: 4px solid var(--blue); background: linear-gradient(145deg, #fff 45%, #f1f9fd); }
.history-timeline__item:nth-child(4n+2) .history-card--new { border-top-color: #5ca447; }
.history-timeline__item:nth-child(4n+3) .history-card--new { border-top-color: #6848bc; }
.history-timeline__item:nth-child(4n) .history-card--new { border-top-color: #ef8625; }
.history-card--new h2 { margin: 0 0 12px; color: var(--ink); font-size: clamp(25px, 2.4vw, 34px); line-height: 1.08; letter-spacing: -.035em; }
.history-card--new p { margin: 0; color: #465f76; }
.history-card__link { display: inline-flex; margin-top: 18px; color: var(--blue); font-size: 13px; font-weight: 850; text-decoration: none; }
.history-card__link:hover { text-decoration: underline; text-underline-offset: 4px; }
.history-contact { position: relative; }
.history-contact::before { position: absolute; inset: 0; content: ""; background: linear-gradient(110deg, rgba(30,155,220,.05), transparent 60%); pointer-events: none; }
.about-referencje .university-logo-wall { padding-block: 26px; }
.about-referencje .university-logo-wall .content-grid { align-items: stretch; gap: 22px; }
.about-referencje .university-logo-wall .content-column { display: grid; grid-template-rows: 220px auto; align-items: start; }
.about-referencje .university-logo-wall .content-media { width: 100%; height: 220px; display: flex; align-items: center; justify-content: center; padding: 18px; overflow: visible; background: var(--white); border: 0; box-shadow: none; }
.about-referencje .university-logo-wall .content-media img { display: block; width: auto !important; height: auto !important; max-width: 100%; max-height: 100% !important; object-fit: contain; }
.about-referencje .university-logo-wall .content-column > p { margin: 12px 0 0; color: #425f78; font-size: 14px; font-style: normal; font-weight: 650; line-height: 1.45; text-align: center; }
.about-referencje main > section:nth-child(n+5) { padding-block: 24px; }
.about-referencje main > section:nth-child(n+5) .content-grid--4 { grid-template-columns: 170px minmax(0, 1fr) 170px minmax(0, 1fr); align-items: center; gap: 22px; }
.about-referencje main > section:nth-child(11) .content-grid--2 { grid-template-columns: 170px minmax(0, 1fr); align-items: center; }
.about-referencje main > section:nth-child(n+5) .content-media { height: 130px; display: grid; place-items: center; padding: 6px; background: var(--white); border: 0; border-radius: 12px; box-shadow: none; }
.about-referencje main > section:nth-child(n+5) .content-media img { width: 100%; height: 100%; object-fit: contain; }
.about-referencje main > section:nth-child(n+5) h2 { margin: 0 0 8px; font-size: 22px; }
.about-referencje main > section:nth-child(n+5) p { margin-bottom: 8px; font-size: 14px; line-height: 1.5; }
.contractor-partnership .content-grid,
.contractor-cooperation .content-grid,
.contractor-field .content-grid { grid-template-columns: minmax(0, .88fr) minmax(420px, 1.12fr); align-items: center; gap: clamp(34px, 5vw, 72px); }
.contractor-partnership .content-media,
.contractor-cooperation .content-media,
.contractor-field .content-media { overflow: hidden; aspect-ratio: 16 / 9; border: 0; border-radius: 18px; box-shadow: 0 18px 42px rgba(8,39,68,.12); }
.contractor-partnership .content-media img,
.contractor-cooperation .content-media img,
.contractor-field .content-media img { width: 100%; height: 100%; max-height: none; object-fit: cover; }
.contractor-logo-wall { padding-block: 20px !important; }
.contractor-logo-wall .content-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 14px; align-items: stretch; }
.contractor-logo-wall .content-column { min-width: 0; }
.contractor-logo-wall .content-media { width: 100%; height: 125px; display: flex; align-items: center; justify-content: center; padding: 14px; overflow: visible; background: var(--white); border: 1px solid var(--line); border-radius: 12px; box-shadow: none; }
.contractor-logo-wall .content-media img { display: block; width: auto !important; height: auto !important; max-width: 100%; max-height: 100% !important; object-fit: contain; }
.contractor-reference-link { padding-block: 12px 30px !important; text-align: center; }
.contractor-reference-link p { margin: 0; color: #536d82; font-size: 14px; }
.contractor-reference-link a { color: var(--blue); font-weight: 800; }
.contractor-process-heading { padding-block: 30px 16px !important; background: var(--paper); }
.contractor-process { padding-block: 20px 30px !important; background: var(--paper); }
.contractor-process-grid { align-items: stretch; gap: 16px; }
.contractor-process-grid .content-column { padding: 12px; background: var(--white); border: 1px solid var(--line); border-radius: 14px; }
.contractor-process-grid .content-media { height: 150px; overflow: hidden; border: 0; border-radius: 10px; box-shadow: none; }
.contractor-process-grid .content-media img { width: 100%; height: 100%; max-height: none; object-fit: cover; }
.contractor-process-grid .content-column > p { display: grid; grid-template-columns: auto 1fr; gap: 3px 10px; margin: 14px 2px 2px; color: #536d82; font-size: 13px; line-height: 1.45; }
.contractor-process__number { grid-row: 1 / 3; color: var(--sky); font-size: 12px; font-weight: 900; letter-spacing: .08em; }
.contractor-process-grid p strong { color: var(--ink); font-size: 15px; }
.contractor-process-note { padding-block: 14px 32px !important; background: var(--paper); text-align: center; }
.contractor-process-note h3 { max-width: 900px; margin: 0 auto; color: #425f78; font-size: 17px; line-height: 1.5; }
.contractor-value { padding-block: 32px !important; text-align: center; }
.contractor-value .content-grid { max-width: 860px; margin-inline: auto; }
.contractor-value h2 { font-size: clamp(30px, 3.4vw, 46px); }
.contractor-contact .content-grid { max-width: 820px; margin-inline: auto; text-align: center; }
.about-oferty-pracy main > section:nth-child(3) { padding-block: 32px; }
.about-oferty-pracy main > section:nth-child(3) .content-grid { gap: 28px; }
.about-oferty-pracy main > section:nth-child(3) .content-media { height: 230px; border-radius: 16px; }
.about-oferty-pracy main > section:nth-child(3) .content-media img { width: 100%; height: 100%; object-fit: cover; }
.about-oferty-pracy main > section:nth-child(3) h2 { margin: 18px 0 10px; font-size: clamp(24px, 2.2vw, 31px); }
.about-oferty-pracy main > section:nth-child(3) p { font-size: 14px; line-height: 1.55; }
.work-environment { background: var(--paper); }
.work-environment .content-grid { max-width: 1120px; margin-inline: auto; }
.work-environment h2 { margin-bottom: 12px; }
.work-environment__intro { max-width: 780px; margin-bottom: 28px; color: #46637c; font-size: 18px; line-height: 1.65; }
.work-environment__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.work-environment__card { min-width: 0; padding: 24px; background: var(--white); border: 1px solid var(--line); border-radius: 16px; }
.work-environment__card h3 { margin: 0 0 10px; color: var(--ink); font-size: 21px; line-height: 1.25; }
.work-environment__card p { margin: 0; color: #46637c; font-size: 15px; line-height: 1.6; }
.work-environment__links { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: 16px; }
.work-environment__links a { color: var(--blue); font-size: 13px; font-weight: 800; text-decoration: none; }
.work-environment__links a:hover { text-decoration: underline; }
.work-environment__note { margin: 20px 0 0; padding: 18px 20px; color: #36546d; background: #eaf4fb; border-left: 3px solid var(--sky); border-radius: 0 12px 12px 0; font-size: 15px; line-height: 1.6; }
.about-logotyp-oraz-marka main > section:nth-child(3) { padding-block: 30px; }
.about-logotyp-oraz-marka main > section:nth-child(3) .content-grid { grid-template-columns: 240px minmax(0, 1fr); align-items: center; gap: 42px; }
.about-logotyp-oraz-marka main > section:nth-child(3) .content-media { width: 220px; height: 220px; display: grid; place-items: center; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.about-logotyp-oraz-marka main > section:nth-child(3) .content-media img { width: 100%; height: 100%; object-fit: contain; }
.about-logotyp-oraz-marka main > section:nth-child(5) .content-media { height: 250px; display: grid; place-items: center; padding: 18px; }
.about-logotyp-oraz-marka main > section:nth-child(5) .content-media img { width: 100%; height: 100%; object-fit: contain; }
.about-logotyp-oraz-marka main > section:nth-child(6) .content-media { max-width: 900px; height: 230px; display: grid; place-items: center; margin-inline: auto; padding: 20px; }
.about-logotyp-oraz-marka main > section:nth-child(6) .content-media img { width: 100%; height: 100%; object-fit: contain; }
.about-logotyp-oraz-marka main > section:nth-child(8) .content-grid { width: min(900px, 100%); }
.about-logotyp-oraz-marka main > section:nth-child(8) h3 { margin: 22px 0 8px; font-size: 24px; }
.about-logotyp-oraz-marka main > section:nth-child(8) p,
.about-logotyp-oraz-marka main > section:nth-child(8) li { font-size: 15px; line-height: 1.55; }
.about-logotyp-oraz-marka .brand-asset-section .content-media { height: auto !important; min-height: 0; overflow: visible; padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.about-logotyp-oraz-marka .brand-asset-section .content-media img { display: block; width: auto; height: auto; max-width: 100%; max-height: 280px; margin-inline: auto; object-fit: contain; }
.about-logotyp-oraz-marka .brand-assets .content-grid { grid-template-columns: minmax(180px, .75fr) minmax(180px, .85fr) minmax(300px, 1.4fr); align-items: start; gap: clamp(28px, 4vw, 58px); }
.about-logotyp-oraz-marka .brand-assets .content-column { min-width: 0; }
.about-logotyp-oraz-marka .brand-assets .content-column:nth-child(1) .content-media img { max-height: 230px; }
.about-logotyp-oraz-marka .brand-assets .content-column:nth-child(2) .content-media img { max-height: 300px; }
.about-logotyp-oraz-marka .brand-assets h2,
.about-logotyp-oraz-marka .brand-horizontal-asset h2 { margin: 20px 0 6px; font-size: 24px; }
.about-logotyp-oraz-marka .brand-assets p,
.about-logotyp-oraz-marka .brand-horizontal-asset p { color: #536d82; font-size: 14px; line-height: 1.5; }
.about-logotyp-oraz-marka .brand-horizontal-asset .content-grid { max-width: 960px; margin-inline: auto; }
.about-logotyp-oraz-marka .brand-horizontal-asset .content-media img { width: min(820px, 100%); max-height: none; }
.about-logotyp-oraz-marka .brand-download::after { display: none; }
.about-logotyp-oraz-marka .brand-download .content-media { transition: opacity .2s ease; }
.about-logotyp-oraz-marka .brand-download:hover .content-media { transform: none; opacity: .86; }
.brand-download__label { display: table; margin: 12px auto 0; color: var(--blue); font-size: 12px; font-weight: 800; }
.trademark-records__intro { max-width: 850px; color: #425f78; font-size: 17px; line-height: 1.65; }
.trademark-records__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 26px; }
.trademark-record { min-width: 0; padding: 22px; background: var(--paper); border-top: 4px solid #3da565; border-radius: 14px; }
.trademark-record--pending { border-top-color: #e88924; }
.trademark-record__status { display: inline-flex; margin-bottom: 14px; padding: 5px 8px; color: #216a3e; background: #e5f5eb; border-radius: 999px; font-size: 10px; font-weight: 850; letter-spacing: .05em; text-transform: uppercase; }
.trademark-record--pending .trademark-record__status { color: #8c4b09; background: #fff0df; }
.trademark-record h3 { margin: 0 0 10px; font-size: 20px; line-height: 1.3; }
.trademark-record p { margin: 0 0 10px; color: #536d82; font-size: 14px; line-height: 1.55; }
.trademark-record .trademark-record__number { color: var(--ink); font-weight: 800; }
.trademark-record > a { display: inline-block; margin-top: 5px; color: var(--blue); font-size: 13px; font-weight: 800; text-decoration: none; }
.trademark-record > a:hover { text-decoration: underline; }
.trademark-records__legal { max-width: 900px; margin-top: 24px; padding-top: 22px; border-top: 1px solid var(--line); }
.trademark-records__legal p { margin: 0 0 8px; color: #536d82; font-size: 14px; line-height: 1.6; }
.reference-details > summary { display: none; }
.reference-list { padding-block: 32px !important; background: var(--white); }
.reference-list > .shell { display: grid; gap: 10px; }
.reference-item { overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: var(--white); }
.reference-item > summary { min-height: 60px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 14px 18px; color: var(--ink); font-size: 17px; font-weight: 800; cursor: pointer; list-style: none; }
.reference-item > summary::-webkit-details-marker { display: none; }
.reference-item > summary::after { content: "+"; color: var(--blue); font-size: 24px; font-weight: 500; }
.reference-item[open] > summary { background: var(--paper); }
.reference-item[open] > summary::after { content: "−"; }
.reference-item__body { padding: 22px; border-top: 1px solid var(--line); }
.reference-item__body .content-grid { align-items: center; }
.reference-item__body .content-media { max-height: 520px; box-shadow: none; }
.reference-image-link { display: block; cursor: zoom-in; }
.brand-download { position: relative; }
.brand-download::after { position: absolute; right: 12px; bottom: 12px; padding: 7px 10px; content: "Pobierz PNG ↓"; color: var(--white); background: rgba(7,29,51,.86); border-radius: 999px; font-size: 11px; font-weight: 800; }
.history-details > summary { display: flex; min-height: 40px; align-items: center; justify-content: space-between; padding: 8px 10px; color: var(--blue); background: var(--paper); border: 1px solid var(--line); border-radius: 9px; font-size: 13px; font-weight: 800; cursor: pointer; list-style: none; }
.history-details > summary::-webkit-details-marker { display: none; }
.history-details > summary::after { content: "+"; font-size: 19px; }
.history-details[open] > summary::after { content: "−"; }
.history-details[open] > :nth-child(2) { margin-top: 10px; }
.job-details > summary { display: none; }

.media-coverage-grid { gap: 26px; }
.media-coverage-grid .content-media { height: 270px; border-radius: 16px; }
.media-coverage-grid .content-media img { width: 100%; height: 100%; object-fit: cover; }
.media-coverage-grid h2 { margin: 18px 0 10px; font-size: clamp(23px, 2.2vw, 31px); }
.media-coverage-grid .content-column > p { margin: 0; }
.media-coverage-link { display: inline-flex; min-height: 42px; align-items: center; padding: 8px 15px; color: var(--blue); background: var(--paper); border: 1px solid var(--line); border-radius: 999px; font-size: 13px; font-weight: 850; text-decoration: none; }
.media-coverage-link:hover { color: var(--white); background: var(--blue); border-color: var(--blue); }

.content-grid { display: grid; gap: clamp(28px, 4vw, 66px); align-items: start; }
.content-grid + .content-grid { margin-top: clamp(30px, 5vw, 74px); }
.content-grid--1 { grid-template-columns: minmax(0, 1fr); }
.content-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.content-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.content-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(18px, 2.5vw, 34px); }
.content-column { min-width: 0; }
.content-column > *:first-child { margin-top: 0; }
.content-column > *:last-child { margin-bottom: 0; }

.content-column h1, .content-column h2, .content-column h3, .content-column h4 { color: var(--ink); text-wrap: balance; }
.content-section--image h1, .content-section--image h2, .content-section--image h3, .content-section--image h4 { color: var(--white); }
.content-column h1 { margin: 0 0 28px; font-size: clamp(42px, 6vw, 82px); line-height: .98; letter-spacing: -.05em; }
.content-column h2 { margin: 0 0 26px; font-size: clamp(32px, 4vw, 58px); line-height: 1.04; letter-spacing: -.042em; }
.content-column h3 { margin: 28px 0 14px; font-size: clamp(23px, 2.5vw, 36px); line-height: 1.12; letter-spacing: -.03em; }
.content-column h4 { margin: 24px 0 10px; color: var(--blue); font-size: 17px; letter-spacing: .02em; }
.content-column p, .content-column li, .content-column td, .content-column th { color: #465f76; font-size: 16px; line-height: 1.7; }
.content-section--image p, .content-section--image li { color: #d5e4ef; }
.content-column p { margin: 0 0 18px; }
.content-column ul, .content-column ol { margin: 20px 0; padding-left: 22px; }
.content-column li + li { margin-top: 8px; }
.content-column a:not(.content-button) { color: var(--blue); font-weight: 700; text-underline-offset: 3px; }
.content-section--image a:not(.content-button) { color: #8ee9e1; }
.content-column blockquote { margin: 30px 0; padding: 22px 26px; background: var(--paper); border-left: 4px solid var(--sky); border-radius: 0 16px 16px 0; }

.content-media { margin: 0; overflow: hidden; background: #edf4f8; border: 1px solid var(--line); border-radius: 22px; box-shadow: var(--shadow); }
.content-media + .content-media { margin-top: 24px; }
.content-media img { width: 100%; max-height: 680px; object-fit: contain; }
.content-grid--3 .content-media img, .content-grid--4 .content-media img { max-height: 420px; }
.content-column > .content-media + p { margin-top: 12px; text-align: center; font-style: italic; }
.content-embed { position: relative; aspect-ratio: 16 / 9; overflow: hidden; margin-block: 26px; background: var(--ink); border-radius: 22px; box-shadow: var(--shadow); }
.content-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.video-file-fallback { position: absolute; inset: 0; display: grid; place-items: center; overflow: hidden; color: var(--white); text-decoration: none; }
.video-file-fallback img { width: 100%; height: 100%; object-fit: cover; opacity: .62; transition: transform .25s ease, opacity .25s ease; }
.video-file-fallback span { position: absolute; display: flex; align-items: center; gap: 12px; padding: 14px 20px; color: var(--white); background: rgba(7,29,51,.88); border: 1px solid rgba(255,255,255,.35); border-radius: 999px; font-weight: 800; }
.video-file-fallback:hover img { opacity: .74; transform: scale(1.02); }

/* Reviewed AITracker overview layout. */
.product-hero { padding-block: clamp(44px, 6vw, 76px); background: linear-gradient(135deg, #f7fbfe, #fff); }
.product-hero .content-grid { grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr); align-items: center; gap: clamp(38px, 5vw, 76px); }
.product-hero .content-embed { margin: 0; border-radius: 26px; }
.product-hero h1 { margin-bottom: 22px; font-size: clamp(42px, 5vw, 68px); }
.product-hero .eyebrow { margin-bottom: 18px; font-size: 12px; }
.product-hero p.product-hero__lead { max-width: 590px; margin-bottom: 22px; font-size: 18px; line-height: 1.58; }
.product-hero__actions { display: flex; flex-wrap: wrap; gap: 10px; }
.product-hero a.content-button--secondary { color: var(--blue); background: var(--white); }
.product-hero a.content-button--secondary:hover { color: var(--white); background: var(--blue); }
.product-hero p.product-hero__trial { max-width: 520px; margin-top: 8px; color: var(--ink-soft); font-size: 14px; line-height: 1.5; }
.product-hero .video-file-fallback img { opacity: .9; }
.product-hero .video-file-fallback:hover img { opacity: 1; }
.product-hero .video-file-fallback span { bottom: 20px; left: 20px; padding: 11px 16px; font-size: 13px; }

.feature-strip { padding-block: 34px; }
.feature-strip + .feature-strip { padding-top: 0; }
.feature-strip .content-grid { gap: clamp(22px, 3vw, 38px); }
.feature-strip + .feature-strip .content-grid { width: min(620px, 100%); grid-template-columns: repeat(2, minmax(0, 1fr)); margin-inline: auto; }
.feature-strip .content-column { text-align: center; }
.feature-strip .content-media { width: 112px; height: 112px; margin: 0 auto 14px; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.feature-strip .content-media img { width: 100%; height: 100%; object-fit: contain; }
.feature-strip p { margin: 0; color: var(--ink); font-weight: 750; line-height: 1.35; }
.feature-strip--overview { padding-block: 42px; }
.feature-strip--overview .content-grid { row-gap: 22px; }
.feature-strip--overview .content-column { min-height: 176px; display: grid; grid-template-rows: 92px auto; align-content: start; padding: 18px 14px; background: var(--white); border: 1px solid var(--line); border-radius: 18px; }
.feature-strip--overview .content-media { width: 78px; height: 78px; margin-bottom: 10px; }
.feature-strip--overview p { max-width: 220px; margin-inline: auto; font-size: 14px; font-style: normal; }

.section-intro { max-width: 780px; margin: 0 auto 34px; text-align: center; }
.section-intro h2 { margin: 0 0 16px; color: var(--ink); font-size: clamp(34px, 4vw, 54px); line-height: 1.04; letter-spacing: -.04em; text-wrap: balance; }
.section-intro p { margin: 0; color: #465f76; font-size: 17px; line-height: 1.65; }
.aitracker-process .content-grid { gap: 22px; }
.aitracker-process .content-column { padding: 24px; background: var(--white); border: 1px solid var(--line); border-radius: 18px; }
.aitracker-process .content-media { width: 104px; height: 104px; margin: 0 0 18px; background: transparent; border: 0; border-radius: 16px; box-shadow: none; }
.aitracker-process .content-media img { width: 100%; height: 100%; object-fit: cover; }
.aitracker-process h2 { margin-bottom: 12px; font-size: clamp(24px, 2.3vw, 32px); }
.aitracker-process p { font-size: 14px; line-height: 1.55; }

.categories-overview { padding-block: clamp(48px, 6vw, 76px); }
.categories-overview .content-grid { align-items: center; }
.categories-overview h2 { max-width: 620px; font-size: clamp(42px, 5vw, 68px); }
.categories-overview .category-count { display: inline; color: var(--category-light); }
.categories-overview .category-title { display: inline; }
.categories-overview .content-media img { width: 100%; min-height: 300px; object-fit: cover; }
.category-summary { padding-top: 24px; }
.content-grid--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: clamp(16px, 2vw, 28px); }
.category-summary .content-media { width: 132px; height: 132px; margin-inline: auto; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.category-summary .content-media img { width: 100%; height: 100%; object-fit: contain; }
.category-summary .content-column > p { color: var(--ink); font-weight: 800; text-align: center; }
.category-summary ul { padding-left: 18px; }
.category-summary li, .category-summary li p { font-size: 14px; line-height: 1.45; }

.accuracy-results { padding-block: 52px; text-align: center; }
.accuracy-results .shell { display: flex; justify-content: center; }
.accuracy-results .content-grid { width: min(100%, 1360px); gap: 22px; align-items: stretch; }
.accuracy-results .content-column { display: grid; grid-template-rows: auto minmax(2.8em, auto) auto; align-content: start; justify-items: center; }
.accuracy-results h2 { margin-bottom: 6px; font-size: clamp(32px, 4vw, 48px); color: #155bd7; }
.accuracy-results .content-column:nth-child(2) h2, .accuracy-results .content-column:nth-child(2) p { color: #5ca447; }
.accuracy-results .content-column:nth-child(3) h2, .accuracy-results .content-column:nth-child(3) p { color: #6748b6; }
.accuracy-results .content-column:nth-child(4) h2, .accuracy-results .content-column:nth-child(4) p { color: #ef8625; }
.accuracy-results p { margin-bottom: 10px; color: #155bd7; }
.accuracy-report { width: 100%; min-height: 38px; display: inline-flex; align-items: center; justify-content: center; padding: 7px 14px; color: currentColor !important; border: 1px solid currentColor; border-radius: 3px; text-decoration: none; }
.accuracy-report:hover { color: var(--white) !important; background: var(--blue); border-color: var(--blue); }

.accuracy-detail { padding-block: clamp(46px, 6vw, 74px); background: var(--paper); }
.accuracy-detail .content-grid { align-items: center; gap: clamp(32px, 5vw, 68px); }
.accuracy-detail .content-media { background: var(--white); }
.accuracy-detail .content-media img { width: 100%; min-height: 330px; object-fit: cover; }
.accuracy-detail__link { margin-top: 6px; }

.aitracker-output, .aitracker-charts { padding-block: clamp(48px, 6vw, 76px); }
.aitracker-output .content-grid--1, .aitracker-charts .content-grid--1 { display: block; }
.aitracker-output > .shell > .content-grid, .aitracker-charts > .shell > .content-grid { margin-top: 30px; }
.aitracker-output .content-column:first-child, .aitracker-charts .content-column:first-child { max-width: 780px; }
.aitracker-output .content-column:first-child h2, .aitracker-charts .content-column:first-child h2 { margin-bottom: 16px; }
.aitracker-output__grid, .aitracker-charts__grid { gap: 24px; }
.aitracker-output__grid .content-column, .aitracker-charts__grid .content-column { padding: 18px; background: var(--white); border: 1px solid var(--line); border-radius: 18px; }
.aitracker-output__grid .content-media, .aitracker-charts__grid .content-media { height: 300px; background: var(--white); border: 0; border-radius: 12px; box-shadow: none; }
.aitracker-output__grid .content-media img, .aitracker-charts__grid .content-media img { width: 100%; height: 100%; max-height: none; object-fit: contain; }
.aitracker-output__grid .content-column > p:first-of-type, .aitracker-charts__grid .content-column > p:first-of-type { margin: 14px 0 4px; color: var(--ink); font-weight: 800; font-style: normal; text-align: left; }
.aitracker-output__grid .content-column > p, .aitracker-charts__grid .content-column > p { margin-bottom: 4px; font-size: 14px; line-height: 1.5; }
.evidence-link { display: block; width: 100%; height: 100%; cursor: zoom-in; }
.aitracker-charts { background: var(--paper); }

.aitracker-trial { padding-block: clamp(46px, 5vw, 66px); }
.aitracker-trial .content-grid { align-items: stretch; gap: 22px; }
.aitracker-trial .content-column { height: 100%; display: flex; flex-direction: column; padding: 26px; background: var(--white); border: 1px solid var(--line); border-radius: 18px; }
.aitracker-trial h2 { margin-bottom: 14px; font-size: clamp(25px, 2.5vw, 34px); }
.aitracker-trial p { font-size: 14px; line-height: 1.55; }
.aitracker-trial .content-button { align-self: flex-start; margin-top: auto; }
.aitracker-footer-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }

.categories-disclosure > summary { display: none; }

/* Liczbox overview: proportions follow the original page, with compact UI. */
.liczbox-overview-page .content-section:not(.page-hero) { padding-block: clamp(34px, 4vw, 58px); }
.liczbox-overview-page .page-hero { min-height: 500px; }
.liczbox-overview-page .page-hero h1 { font-size: clamp(48px, 6vw, 82px); }
.liczbox-overview-page .content-grid { gap: clamp(24px, 3vw, 44px); }
.liczbox-grant-logos { padding-block: 22px !important; }
.liczbox-grant-logos .content-grid { grid-template-columns: minmax(0, 2.15fr) minmax(240px, .85fr); align-items: center; gap: 28px; }
.liczbox-grant-logos .content-media { height: 108px; display: grid; place-items: center; padding: 14px 18px; background: var(--white); border: 0; border-radius: 0; box-shadow: none; }
.liczbox-grant-logos .content-media img { width: 100%; height: 78px; object-fit: contain; }
.liczbox-grant-logos .content-column:last-child .content-media img { width: min(72%, 220px); height: auto; max-height: 56px; }
.liczbox-intro .content-grid { align-items: center; }
.liczbox-intro .content-media { background: var(--white); border: 0; box-shadow: none; }
.content-grid--6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.liczbox-icon-grid { padding-block: 30px !important; }
.liczbox-icon-grid .content-grid { gap: 22px; align-items: start; }
.liczbox-icon-grid .content-media { width: 126px; height: 126px; margin-inline: auto; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.liczbox-icon-grid .content-media img { width: 100%; height: 100%; object-fit: contain; }
.liczbox-icon-grid .content-column > p { margin: 12px 0 0; color: var(--ink); font-size: 14px; font-weight: 700; font-style: normal; line-height: 1.35; text-align: center; }
.liczbox-icon-grid h3 { margin-top: 20px; font-size: 22px; }
.liczbox-specs { padding-block: 28px !important; }
.liczbox-specs .shell { padding: 26px 30px; background: var(--white); border: 1px solid var(--line); border-radius: 18px; }
.liczbox-specs .content-grid { gap: 0 42px; }
.liczbox-specs p { margin: 0; padding: 9px 0; border-bottom: 1px solid var(--line); font-size: 14px; line-height: 1.42; }
.liczbox-spec-download { padding-block: 0 34px !important; }
.liczbox-spec-download p { margin: 0; text-align: center; }
.liczbox-orange-partner .content-grid { grid-template-columns: 260px minmax(0, 1fr); align-items: center; }
.liczbox-orange-partner .content-media { width: 220px; height: 220px; margin-inline: auto; border: 0; border-radius: 14px; box-shadow: none; }
.liczbox-orange-partner .content-media img { width: 100%; height: 100%; object-fit: contain; }
.liczbox-orange-partner h2 { max-width: 700px; font-size: clamp(30px, 3.4vw, 48px); }
.liczbox-contact-grid .content-grid { grid-template-columns: 180px minmax(0, 1fr) 180px minmax(0, 1fr); align-items: center; gap: 28px; }
.liczbox-contact-grid .content-media { width: 180px; height: 180px; display: grid; place-items: center; margin-inline: auto; border-radius: 18px; }
.liczbox-contact-grid .content-media img { width: 100%; height: 100%; object-fit: contain; }
.liczbox-contact-grid h3 { margin-top: 0; }
.liczbox-dashboard-grid .content-media,
.liczbox-technology-grid .content-media,
.liczbox-platform-grid .content-media { border-radius: 14px; box-shadow: 0 12px 32px rgba(8,39,68,.09); }
.liczbox-platform-grid .content-media { height: 170px; display: grid; place-items: center; padding: 18px; background: var(--white); }
.liczbox-platform-grid .content-media img { width: 100%; height: 100%; object-fit: contain; }
.liczbox-benefit-grid h3,
.liczbox-extension-grid h3 { font-size: clamp(22px, 2vw, 30px); }
.liczbox-benefit-grid .content-media,
.liczbox-extension-grid .content-media { border-radius: 16px; box-shadow: 0 12px 30px rgba(8,39,68,.09); }
.liczbox-benefit-grid .content-grid { align-items: stretch; gap: 26px; }
.liczbox-benefit-grid .content-column { display: flex; min-width: 0; flex-direction: column; }
.liczbox-benefit-grid .content-media { width: 100%; aspect-ratio: 1 / 1; overflow: hidden; background: var(--paper); }
.liczbox-benefit-grid .content-media img { width: 100%; height: 100%; object-fit: cover; }
.liczbox-benefit-grid .content-column:nth-child(3) .content-media img { object-fit: contain; }
.liczbox-benefit-grid h3 { min-height: 2.5em; margin: 16px 0 9px; line-height: 1.18; }
.liczbox-benefit-grid p { margin: 0; color: #536d82; font-size: 15px; line-height: 1.55; }
.liczbox-hero .content-column { max-width: 980px; }
.liczbox-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.liczbox-actions .content-button--secondary { color: var(--blue); background: var(--white); border: 1px solid #c9d9e4; }
.liczbox-actions .content-button--secondary:hover { color: var(--white); background: var(--blue); border-color: var(--blue); }
.liczbox-overview-page .content-section:not(.page-hero),
.liczbox-benefits-page .content-section:not(.page-hero),
.liczbox-offer-page .content-section:not(.page-hero) { padding-block: clamp(30px, 4vw, 56px); }
.liczbox-roadmap-heading { padding-block: 22px !important; background: var(--paper); }
.liczbox-roadmap-heading h2 { margin: 0; font-size: clamp(29px, 3.2vw, 42px); }
.liczbox-roadmap { background: var(--paper); }
.liczbox-roadmap__intro { max-width: 820px; margin: 0 0 24px; color: #425f78; font-size: 17px; line-height: 1.6; }
.liczbox-roadmap__grid { align-items: stretch; gap: 18px; }
.liczbox-roadmap__card { min-width: 0; opacity: .94; }
.liczbox-roadmap__card .content-media { width: 100%; aspect-ratio: 1 / 1; overflow: hidden; background: var(--white); border: 1px solid var(--line); box-shadow: none; }
.liczbox-roadmap__card .content-media img { width: 100%; height: 100%; object-fit: contain; }
.liczbox-roadmap__card h3 { margin: 12px 0 0; font-size: clamp(19px, 1.7vw, 25px); line-height: 1.25; }
.liczbox-roadmap__note { margin: 22px 0 0; padding-top: 16px; color: #64798b; border-top: 1px solid var(--line); font-size: 13px; line-height: 1.5; }
.liczbox-deployment-cta { color: var(--white); background: var(--ink) !important; }
.liczbox-deployment-cta .content-grid { max-width: 940px; margin-inline: auto; text-align: center; }
.liczbox-deployment-cta h2 { color: var(--white); font-size: clamp(34px, 4vw, 54px); }
.liczbox-deployment-cta p { color: #bad0e0; font-size: 18px; }
.liczbox-city-intro .content-grid { grid-template-columns: 1fr; max-width: 900px; margin-inline: auto; text-align: center; }
.liczbox-city-intro h2 { font-size: clamp(32px, 4vw, 50px); }
.liczbox-city-intro p { font-size: 18px; line-height: 1.65; }
.liczbox-city-metrics .content-media,
.liczbox-city-differentiators .content-media { border-radius: 14px; box-shadow: none; }
.liczbox-city-usecases .content-grid { grid-template-columns: minmax(0, 1.12fr) minmax(380px, .88fr); align-items: center; gap: clamp(36px, 5vw, 72px); }
.liczbox-city-usecases h2 { margin-bottom: 24px; font-size: clamp(32px, 3.4vw, 46px); }
.liczbox-audience-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 24px; }
.liczbox-audience { min-width: 0; padding-top: 14px; border-top: 2px solid #d8e5ee; }
.liczbox-audience h3 { margin: 0 0 9px; color: var(--ink); font-size: 16px; font-weight: 850; line-height: 1.3; }
.liczbox-audience ul { margin: 0; padding-left: 18px; }
.liczbox-audience li { margin-bottom: 6px; color: #536d82; font-size: 14px; line-height: 1.45; }
.liczbox-audience li::marker { color: var(--sky); }
.liczbox-city-usecases .content-media { overflow: hidden; border-radius: 18px; box-shadow: 0 14px 34px rgba(8,39,68,.09); }
.liczbox-city-usecases .content-media img { width: 100%; height: auto; object-fit: contain; }
.liczbox-no-roadworks .content-grid { grid-template-columns: minmax(0, .85fr) minmax(0, .85fr) minmax(320px, 1.3fr); align-items: center; gap: 26px; }
.liczbox-no-roadworks .content-media { width: 100%; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 15px; box-shadow: none; }
.liczbox-no-roadworks .content-media img { width: 100%; height: 100%; object-fit: cover; }
.liczbox-no-roadworks .content-column > p { margin: 10px 0 0; color: #536d82; font-size: 14px; line-height: 1.5; }
.liczbox-no-roadworks h2 { margin: 0 0 18px; font-size: clamp(29px, 3vw, 40px); }
.liczbox-no-roadworks .content-column:last-child p { margin: 0 0 11px; font-size: 15px; line-height: 1.55; }
.liczbox-no-roadworks .content-column:last-child strong { color: var(--ink); font-weight: 850; }
.liczbox-city-differentiators .content-grid { align-items: stretch; gap: 24px; }
.liczbox-city-differentiators .content-column { display: flex; min-width: 0; flex-direction: column; }
.liczbox-city-differentiators .content-media { width: 100%; aspect-ratio: 1 / .9; overflow: hidden; background: var(--paper); }
.liczbox-city-differentiators .content-media img { width: 100%; height: 100%; object-fit: cover; }
.liczbox-city-differentiators h3 { min-height: 2.5em; margin: 14px 0 8px; font-size: clamp(21px, 1.9vw, 28px); line-height: 1.2; }
.liczbox-city-differentiators p { margin: 0; color: #536d82; font-size: 14px; line-height: 1.5; }
.liczbox-offer-heading { padding-block: 24px !important; text-align: center; }
.liczbox-offer-heading h2 { margin: 0; font-size: clamp(30px, 3.4vw, 44px); }
.liczbox-offer-action { padding-block: 16px !important; }
.liczbox-offer-action p { margin: 0; text-align: center; }
.liczbox-offer-action a { display: inline-flex; min-height: 56px; align-items: center; padding: 14px 24px; color: var(--white); background: var(--blue); border-radius: 999px; font-weight: 850; text-decoration: none; }
.liczbox-offer-note { padding-block: 18px !important; }
.liczbox-offer-note p { max-width: 760px; margin: 0 auto; color: #526c82; text-align: center; }
.liczbox-offer-checklist { background: var(--paper); }
.liczbox-offer-checklist .content-grid { grid-template-columns: 1fr; }
.liczbox-offer-checklist .content-column { max-width: 880px; margin-inline: auto; padding: clamp(24px, 4vw, 42px); background: var(--white); border: 1px solid var(--line); border-radius: 18px; }
.liczbox-offer-checklist h2 { font-size: clamp(30px, 3.4vw, 44px); }
.liczbox-offer-checklist li { margin-bottom: 10px; line-height: 1.55; }

/* Pobieranie: produkt, instalator i prawdziwe rezultaty zamiast dekoracyjnych kart. */
.download-page .content-section:not(.page-hero) { padding-block: clamp(34px, 4vw, 58px); }
.download-page .content-section h2 { font-size: clamp(29px, 3.5vw, 46px); }
.download-page .content-column > p { font-size: clamp(16px, 1.2vw, 18px); line-height: 1.65; }
.download-hero { min-height: 250px; padding-block: 46px; }
.download-hero h1 { max-width: 760px; font-size: clamp(42px, 5.2vw, 68px); }
.download-hero p { max-width: 720px; font-size: clamp(18px, 1.7vw, 23px); }
.download-panel { padding-top: 22px !important; }
.download-panel__grid { grid-template-columns: minmax(430px, .9fr) minmax(0, 1.1fr); align-items: center; gap: clamp(34px, 5vw, 76px); }
.download-panel__copy { max-width: 900px; padding: clamp(26px, 4vw, 46px); background: var(--white); border: 1px solid var(--line); border-radius: 20px; box-shadow: 0 10px 28px rgba(8,39,68,.06); }
.download-latest { display: inline-flex; min-height: 62px; align-items: center; justify-content: center; margin-bottom: 14px; padding: 16px 28px; font-size: 18px; }
.download-latest::before { margin-right: 10px; content: "⊞"; font-size: 22px; line-height: 1; }
.download-panel__visual { position: relative; min-width: 0; padding: 42px 0 24px; }
.download-product-badge { position: absolute; z-index: 2; top: 0; right: 7%; padding: 9px 14px; color: var(--white); background: var(--blue); border-radius: 999px; box-shadow: 0 8px 20px rgba(18,89,213,.2); font-size: 13px; font-weight: 800; }
.download-device { position: relative; margin: 0; padding: 13px 13px 18px; background: #102d46; border: 1px solid #2f4d66; border-radius: 18px 18px 10px 10px; box-shadow: 0 26px 55px rgba(8,39,68,.2); }
.download-device::after { position: absolute; right: -5%; bottom: -14px; left: -5%; height: 18px; content: ""; background: linear-gradient(180deg,#dbe4ea,#9eafba); border-radius: 2px 2px 13px 13px; box-shadow: 0 8px 16px rgba(8,39,68,.16); }
.download-device__screen { overflow: hidden; aspect-ratio: 16 / 9; background: #edf3f7; border-radius: 8px; }
.download-device__screen img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top center; }
.download-release { display: grid; gap: 4px; margin-bottom: 18px; color: #476279; }
.download-release strong { color: var(--ink); font-size: 17px; }
.download-release span { font-size: 14px; }
.download-older { margin: 0 0 20px; padding-top: 18px; border-top: 1px solid var(--line); color: #526c82; font-size: 14px !important; }
.download-panel ul { margin-bottom: 0; }
.download-requirements { margin-top: 22px; }
.download-requirements > summary { color: var(--ink); font-size: 17px; font-weight: 800; }
.download-guides-heading,
.download-charts-heading { padding-block: 25px !important; }
.download-guides-heading .shell,
.download-charts-heading .shell { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.download-guides-heading h2,
.download-charts-heading h2 { margin: 0; font-size: clamp(27px, 3vw, 38px); }
.download-docs-link { flex: 0 0 auto; color: var(--blue); font-size: 15px; font-weight: 800; text-decoration: none; }
.download-docs-link:hover { text-decoration: underline; }
.download-guides .content-grid { gap: 24px; }
.download-guides .content-embed { margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 6px 18px rgba(8,39,68,.05); }
.download-guides .video-file-fallback { aspect-ratio: 16 / 9; }
.download-guides .video-file-fallback img { width: 100%; height: 100%; object-fit: cover; }
.download-guides .video-file-fallback::after { content: "▶"; position: absolute; left: 18px; bottom: 16px; display: grid; width: 42px; height: 42px; place-items: center; color: var(--white); background: var(--blue); border-radius: 50%; box-shadow: 0 4px 14px rgba(8,39,68,.25); }
.download-guides .video-file-fallback span { inset: auto 70px 18px auto; padding: 7px 10px; font-size: 12px; }
.download-guides h2 { margin: 14px 0 0; font-size: clamp(19px, 1.8vw, 24px); line-height: 1.25; }
.download-interface .content-grid,
.download-correction .content-grid,
.download-accuracy .content-grid { align-items: center; }
.download-interface .content-media,
.download-correction .content-media { overflow: hidden; border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 7px 22px rgba(8,39,68,.06); }
.download-interface .content-media img { max-height: 390px; object-fit: cover; }
.product-image-link { display: block; color: inherit; text-decoration: none; }
.product-image-link:focus-visible { outline: 3px solid var(--cyan); outline-offset: 4px; border-radius: 14px; }
.product-image-link .content-media { transition: border-color .2s ease, transform .2s ease; }
.product-image-link:hover .content-media { border-color: rgba(18,89,213,.45); transform: translateY(-2px); }
.download-examples { padding-top: 20px !important; }
.download-examples .content-grid { gap: 22px; }
.download-examples .content-media { overflow: hidden; border: 1px solid var(--line); border-radius: 12px; box-shadow: 0 6px 18px rgba(8,39,68,.05); }
.download-examples .content-column > p,
.download-charts .content-column > p { margin: 13px auto 0; color: #334e65; font-size: 15px; font-style: normal; font-weight: 700; line-height: 1.45; text-align: center; }
.download-charts { padding-top: 30px !important; background: var(--paper); }
.download-charts .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px 28px; }
.download-charts .content-media { height: clamp(310px, 36vw, 460px); display: grid; place-items: center; padding: 18px; background: var(--white); border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 6px 18px rgba(8,39,68,.05); }
.download-charts .content-media img { width: 100%; height: 100%; object-fit: contain; }
.download-accuracy { text-align: center; }
.download-accuracy h2 { max-width: 900px; margin-inline: auto; }
.download-accuracy__intro { max-width: 820px; margin: 0 auto 30px; color: #526c82; font-size: clamp(16px, 1.4vw, 19px); line-height: 1.6; }
.download-accuracy .accuracy-results { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.accuracy-result { display: grid; min-width: 0; gap: 8px; padding: 24px 16px 16px; border-top: 4px solid var(--result-color); background: var(--white); box-shadow: 0 5px 16px rgba(8,39,68,.05); }
.accuracy-result strong { color: var(--result-color); font-size: clamp(32px, 3.8vw, 48px); line-height: 1; }
.accuracy-result span { min-height: 44px; color: var(--ink); font-size: 16px; font-weight: 800; }
.accuracy-result a { padding: 10px 12px; color: var(--result-color); border: 1px solid currentColor; border-radius: 4px; font-size: 14px; font-weight: 800; text-decoration: none; }
.accuracy-result a:hover { color: var(--white); background: var(--result-color); }
.download-accuracy__note { max-width: 850px; margin: 20px auto 0; color: #60788c; font-size: 13px; line-height: 1.5; }

/* Anonimizacja: zwarty przebieg usługi i jasna ścieżka rozpoczęcia pracy. */
.anonymization-page .content-section:not(.page-hero) { padding-block: clamp(34px, 4.5vw, 64px); }
.anonymization-hero .content-column { max-width: 900px; }
.anonymization-hero p { max-width: 820px; }
.anonymization-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.anonymization-actions .content-button--secondary { color: var(--blue); background: var(--white); border: 1px solid #c9d9e4; }
.anonymization-actions .content-button--secondary:hover { color: var(--white); background: var(--blue); border-color: var(--blue); }
.anonymization-steps .content-grid { align-items: center; gap: clamp(28px, 5vw, 64px); }
.anonymization-steps .content-embed { margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 8px 24px rgba(8,39,68,.07); }
.anonymization-process { display: grid; gap: 10px; margin: 24px 0 0; padding: 0; counter-reset: anonymization-step; list-style: none; }
.anonymization-process li { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 2px 14px; align-items: center; padding: 14px 16px; background: var(--paper); border: 1px solid var(--line); border-radius: 12px; counter-increment: anonymization-step; }
.anonymization-process li::before { width: 38px; height: 38px; display: grid; grid-row: 1 / span 2; place-items: center; color: var(--white); background: var(--blue); border-radius: 50%; content: counter(anonymization-step); font-size: 14px; font-weight: 850; }
.anonymization-process strong { color: var(--ink); font-size: 17px; }
.anonymization-process span { color: #526c82; font-size: 14px; line-height: 1.45; }
.anonymization-effects .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.anonymization-effects .content-column { display: grid; grid-template-columns: minmax(180px, .85fr) minmax(0, 1.15fr); align-items: center; gap: 24px; }
.anonymization-effects .content-media { grid-row: 1 / span 2; overflow: hidden; border: 1px solid var(--line); border-radius: 14px; box-shadow: none; }
.anonymization-effects h3 { margin: 0 0 8px; font-size: 25px; }
.anonymization-effects p { margin: 0; color: #526c82; line-height: 1.55; }
.anonymization-scope-heading,
.anonymization-extras-heading { padding-block: 24px !important; }
.anonymization-scope-heading h2,
.anonymization-extras-heading h2 { margin: 0; font-size: clamp(29px, 3.2vw, 42px); }
.anonymization-scope .content-grid { gap: 22px; }
.anonymization-scope .content-column { padding: 0 0 22px; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--white); }
.anonymization-scope .content-media { height: 230px; margin: 0 0 20px; border: 0; border-radius: 0; box-shadow: none; }
.anonymization-scope .content-media img { width: 100%; height: 100%; object-fit: cover; }
.anonymization-scope h3,
.anonymization-scope p { margin-inline: 20px; }
.anonymization-scope h3 { margin-top: 0; font-size: 23px; }
.anonymization-scope p { color: #526c82; font-size: 15px; line-height: 1.5; }
.anonymization-extras .content-grid { gap: 20px; }
.anonymization-extras .content-column { display: grid; grid-template-columns: 92px minmax(0, 1fr); align-items: center; gap: 4px 18px; padding: 18px; background: var(--paper); border-radius: 14px; }
.anonymization-extras .content-media { width: 92px; height: 92px; grid-row: 1 / span 2; margin: 0; border: 0; border-radius: 12px; box-shadow: none; }
.anonymization-extras .content-media img { width: 100%; height: 100%; object-fit: cover; }
.anonymization-extras h3 { margin: 0; font-size: 20px; }
.anonymization-extras p { margin: 0; color: #526c82; font-size: 14px; line-height: 1.45; }
.anonymization-security { min-height: 420px; display: flex; align-items: center; }
.anonymization-security .content-column { max-width: 760px; }
.anonymization-security h2 { font-size: clamp(34px, 4vw, 52px); }
.anonymization-security p { max-width: 720px; font-size: 17px; line-height: 1.65; }
.anonymization-cta { color: var(--white); background: var(--ink); }
.anonymization-cta__copy { max-width: 900px; margin-inline: auto; text-align: center; }
.anonymization-cta h2 { margin-bottom: 14px; color: var(--white); font-size: clamp(34px, 4vw, 54px); }
.anonymization-cta p { max-width: 720px; margin-inline: auto; color: #bad0e0; font-size: 18px; }
.anonymization-cta .anonymization-actions { justify-content: center; }

/* Podstrony funkcji AITrackera: obraz produktu, wynik i następny krok. */
.aitracker-detail-page .content-section:not(.page-hero) { padding-block: clamp(36px, 4.6vw, 66px); }
.detail-hero .content-column { max-width: 960px; }
.detail-hero p { max-width: 820px; }
.detail-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.detail-actions .content-button--secondary { color: var(--blue); background: var(--white); border: 1px solid #c9d9e4; }
.detail-actions .content-button--secondary:hover { color: var(--white); background: var(--blue); border-color: var(--blue); }
.detail-feature--tint { background: var(--paper); }
.detail-feature .content-grid { align-items: center; gap: clamp(30px, 5vw, 68px); }
.detail-feature h2 { font-size: clamp(30px, 3.6vw, 48px); }
.detail-feature h3 { font-size: clamp(23px, 2.4vw, 31px); }
.detail-feature p { color: #405b72; font-size: clamp(16px, 1.2vw, 18px); line-height: 1.65; }
.detail-feature .content-media { overflow: hidden; border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 8px 24px rgba(8,39,68,.07); }
.detail-image-link { display: block; color: inherit; text-decoration: none; }
.detail-image-link:focus-visible { outline: 3px solid var(--cyan); outline-offset: 4px; border-radius: 16px; }
.detail-image-link .content-media { transition: transform .2s ease, border-color .2s ease; }
.detail-image-link:hover .content-media { border-color: rgba(18,89,213,.42); transform: translateY(-2px); }
.detail-results-heading { padding-block: 24px !important; text-align: center; }
.detail-results-heading h2 { max-width: 900px; margin: 0 auto; font-size: clamp(29px, 3.2vw, 42px); }
.detail-results-grid { padding-top: 28px !important; background: var(--paper); }
.detail-results-grid .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; }
.detail-results-grid .content-column { min-width: 0; }
.detail-results-grid .content-media { height: clamp(300px, 34vw, 440px); display: grid; place-items: center; padding: 16px; background: var(--white); }
.detail-results-grid .content-media img { width: 100%; height: 100%; object-fit: contain; }
.detail-results-grid p { margin-top: 12px; color: var(--ink); font-size: 15px; font-weight: 800; text-align: center; }
.aitracker-detail-pomiar-predkosci main > .detail-feature:nth-child(3),
.aitracker-detail-pomiar-predkosci main > .detail-feature:nth-child(4) { padding-block: 30px; }
.aitracker-detail-pomiar-predkosci main > .detail-feature:nth-child(3) .content-grid,
.aitracker-detail-pomiar-predkosci main > .detail-feature:nth-child(4) .content-grid { gap: 24px; }
.aitracker-detail-pomiar-predkosci main > .detail-feature:nth-child(3) .content-media,
.aitracker-detail-pomiar-predkosci main > .detail-feature:nth-child(4) .content-media { box-shadow: none; }
.alpr-plate-grid { padding-block: 24px !important; }
.alpr-plate-grid .content-grid { gap: 18px; }
.alpr-plate-grid .content-media { height: 150px; border-radius: 12px; box-shadow: none; }
.alpr-plate-grid .content-media img { width: 100%; height: 100%; object-fit: cover; }
.alpr-plate-grid p { margin-top: 9px; font-size: 13px; line-height: 1.4; text-align: center; }
.detail-cta { color: var(--white); background: var(--ink) !important; }
.detail-cta__copy,
.detail-cta .content-grid { max-width: 900px; margin-inline: auto; text-align: center; }
.detail-cta h2 { color: var(--white); font-size: clamp(34px, 4vw, 54px); }
.detail-cta p { color: #bad0e0; }
.detail-cta .detail-actions { justify-content: center; }

/* Kontakt: zachowujemy zawartość oryginału, ale sprowadzamy ikony do właściwej skali. */
.contact-page .page-hero { min-height: 300px; }
.contact-page .content-section:not(.page-hero) { padding-block: clamp(28px, 4vw, 50px); }
.contact-heading { padding-block: 25px !important; }
.contact-heading h2 { margin: 0; font-size: clamp(29px, 3.2vw, 42px); }
.contact-details .content-grid { grid-template-columns: 150px minmax(0, 1fr) 130px minmax(0, 1.25fr); align-items: center; gap: 28px; }
.contact-details .content-media { display: grid; place-items: center; margin-inline: auto; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.contact-details .content-column:nth-child(1) .content-media { width: 145px; height: 145px; overflow: hidden; border-radius: 50%; }
.contact-details .content-column:nth-child(1) img { width: 100%; height: 100%; object-fit: cover; }
.contact-details .content-column:nth-child(2) .content-media { width: 140px; height: 74px; margin: 10px 0 0; }
.contact-details .content-column:nth-child(2) img,
.contact-details .content-column:nth-child(3) img { width: 100%; height: 100%; object-fit: contain; }
.contact-details .content-column:nth-child(3) .content-media { width: 115px; height: 115px; }
.contact-details h3 { margin-top: 0; font-size: clamp(21px, 2vw, 28px); }
.contact-details p { font-size: 14px; line-height: 1.55; }
.content-media.person-portrait { aspect-ratio: 1; overflow: hidden; background: var(--white); border: 4px solid var(--white); border-radius: 50%; outline: 1px solid rgba(21,95,166,.18); box-shadow: 0 14px 34px rgba(7,29,51,.14); }
.content-media.person-portrait img { width: 100%; height: 100%; max-height: none; object-fit: cover; object-position: 50% 46%; }
.liczbox-contact-grid .content-media.person-portrait { border-radius: 50%; }
.liczbox-contact-grid .content-media.person-portrait img { object-fit: cover; }
.history-contact .content-media.person-portrait { width: min(220px, 62vw); margin-inline: auto; }
.contact-phone .content-grid { grid-template-columns: 150px minmax(0, 1fr); align-items: center; }
.contact-phone .content-media,
.contact-newsletter .content-media { width: 130px; height: 130px; display: grid; place-items: center; margin-inline: auto; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.contact-phone .content-media img,
.contact-newsletter .content-media img { width: 100%; height: 100%; object-fit: contain; }
.contact-newsletter { background: var(--paper); }
.contact-newsletter .content-grid { grid-template-columns: 180px minmax(0, 1fr); align-items: center; }
.contact-newsletter .content-column:last-child .content-button { margin-top: 8px; }
.contact-mission .content-grid,
.contact-dream .content-grid { grid-template-columns: minmax(230px, 340px) minmax(0, 1fr); align-items: center; }
.contact-mission .content-media,
.contact-dream .content-media { overflow: hidden; border-radius: 18px; }
.contact-mission .content-media img,
.contact-dream .content-media img { width: 100%; height: 260px; object-fit: cover; }
.contact-mission h2,
.contact-dream h2 { font-size: clamp(30px, 3.2vw, 44px); }

/* Dokumenty prawne: czytelna szerokość wiersza i kompaktowa nawigacja po treści. */
.legal-page .page-hero { min-height: 260px; padding-block: 48px; }
.legal-page .page-hero h1 { max-width: 900px; font-size: clamp(38px, 4.5vw, 58px); }
.legal-page .page-hero p { font-size: 17px; }
.legal-page .legal-section { padding-block: clamp(26px, 3.5vw, 44px); }
.legal-page .legal-section.content-section--tint { padding-block: 24px; }
.legal-page .legal-section.content-section--tint h2 { margin: 0; font-size: clamp(27px, 3vw, 38px); }
.legal-page .legal-content { width: min(920px, 100%); margin-inline: auto; }
.legal-page .legal-content p,
.legal-page .legal-content li { font-size: 15px; line-height: 1.65; }
.legal-page .legal-content h1 { font-size: clamp(32px, 3.5vw, 46px); }
.legal-page .legal-content a { overflow-wrap: anywhere; }

.content-button { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 18px; margin: 10px 10px 10px 0; padding: 11px 20px; color: var(--white); background: var(--blue); border: 1px solid var(--blue); border-radius: 999px; font-size: 13px; font-weight: 800; text-decoration: none; }
.content-button:hover { color: var(--blue); background: var(--white); }

.content-column table { width: 100%; display: block; overflow-x: auto; border-collapse: collapse; }
.content-column th, .content-column td { min-width: 150px; padding: 13px 16px; text-align: left; border: 1px solid var(--line); }
.content-column th { color: var(--ink); background: var(--paper); }

.page-footer { color: var(--white); background: var(--ink); }
.page-footer__lead { min-height: 320px; display: flex; align-items: center; justify-content: space-between; gap: 60px; padding-block: 68px; }
.page-footer__lead .eyebrow { color: #9bd9f2; }
.page-footer__lead h2 { margin: 0; font-size: clamp(34px, 4.5vw, 64px); line-height: 1.02; letter-spacing: -.045em; }
.page-footer__map { display: grid; grid-template-columns: repeat(4, 1fr); gap: 34px; padding: 44px 0; border-top: 1px solid rgba(255,255,255,.14); border-bottom: 1px solid rgba(255,255,255,.14); }
.page-footer__group { display: flex; flex-direction: column; gap: 9px; }
.page-footer__group strong { margin-bottom: 8px; color: #9bd9f2; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; }
.page-footer__group a { color: #c5d4df; font-size: 13px; text-decoration: none; }
.page-footer__group a:hover { color: var(--white); }
.page-footer__bottom { min-height: 105px; display: grid; grid-template-columns: 142px 1fr auto; align-items: center; gap: 30px; }
.page-footer__bottom img { width: 142px; }
.page-footer__bottom p { margin: 0; color: #8fa7ba; font-size: 12px; }
.page-footer__bottom a { color: #c5d4df; }
.page-footer__bottom > div { display: flex; gap: 18px; font-size: 12px; }

@media (max-width: 1100px) {
  .content-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .content-grid--5 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .content-grid--6 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .page-footer__map { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 900px) {
  .product-hero .content-grid { display: flex; flex-direction: column; }
  .product-hero .content-column { width: 100%; }
  .product-hero .content-column:last-child { max-width: 760px; }
  .aitracker-footer-actions { width: 100%; justify-content: flex-start; }
}

@media (max-width: 760px) {
  .page-hero { min-height: 330px; padding-block: 68px; }
  .page-hero h1 { font-size: clamp(42px, 13vw, 62px); }
  .content-grid--2, .content-grid--3, .content-grid--4 { grid-template-columns: 1fr; }
  .content-grid--5 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .content-grid--6 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .content-section { padding-block: 56px; }
  .content-grid { gap: 28px; }
  .content-column h2 { font-size: clamp(30px, 10vw, 44px); }
  .content-column p, .content-column li, .content-column td, .content-column th { font-size: 15px; line-height: 1.62; }
  .content-media { border-radius: 16px; }
  .content-button { width: 100%; margin-right: 0; }
  .knowledge-page .page-hero { min-height: 0; padding-block: 32px; }
  .knowledge-page .page-hero h1 { font-size: clamp(36px, 10.8vw, 46px); }
  .knowledge-page .page-hero:not(.content-section--image)::after { width: 210px; height: 110px; opacity: .26; }
  .knowledge-page .content-section:not(.page-hero) { padding-block: 24px; }
  .camera-section-band { padding-block: 20px !important; }
  .knowledge-page .camera-section-band .content-column h2 { font-size: 26px; }
  .camera-scenario-summary .content-column { grid-template-rows: 128px auto 1fr; }
  .camera-scenario-summary .content-media { height: 118px; }
  .camera-example-grid .content-media { height: min(62vw, 250px); }
  .tutorial-page .content-section:not(.page-hero) { padding-block: 18px; }
  .tutorial-page .content-column h3 { min-height: 0; }
  .tutorial-description { margin-top: 10px; }
  .tutorial-description > summary { display: flex; min-height: 44px; align-items: center; justify-content: space-between; padding: 10px 12px; color: var(--blue); background: var(--paper); border: 1px solid var(--line); border-radius: 10px; font-size: 14px; font-weight: 800; cursor: pointer; list-style: none; }
  .tutorial-description > summary::-webkit-details-marker { display: none; }
  .tutorial-description > summary::after { content: "+"; font-size: 20px; }
  .tutorial-description[open] > summary::after { content: "−"; }
  .tutorial-description[open] > p:first-of-type { margin-top: 12px; }
  .knowledge-actions { flex-direction: column; }
  .knowledge-actions .content-button { width: 100%; justify-content: center; }
  .classification-icon-grid .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .classification-icon-grid .content-media { height: 96px; }
  .classification-catalog-disclosure > summary { min-height: 52px; padding: 11px 13px; font-size: 14px; }
  .classification-variants { padding-block: 18px 32px !important; }
  .classification-variant > summary { min-height: 52px; padding: 12px 14px; font-size: 15px; }
  .classification-variant__body { padding: 16px 14px; }
  .classification-options .content-column { padding: 20px 18px; }
  .classification-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .classification-results { grid-template-columns: 1fr; }
  .classification-example-grid .content-media { height: 150px; }
  .ai-history-disclosure > .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 12px; }
  .ai-history-disclosure .content-media { height: 110px; }
  .license-gallery .content-media { height: 115px; }
  .license-gallery { width: 100%; display: flex; gap: 12px; overflow-x: auto; padding-bottom: 10px; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .license-gallery::-webkit-scrollbar { display: none; }
  .license-gallery > .content-column { flex: 0 0 min(72vw, 240px); scroll-snap-align: start; }
  .license-code-pills > div { width: 100%; }
  .license-code-pills strong { min-width: 56px; text-align: center; }
  .license-product-link .content-media, .ai-explainer-step .content-media { height: 220px; }
  .license-product-link .content-media img, .ai-explainer-step .content-media img { width: 100%; height: 100%; object-fit: contain; }
  .camera-guide-section .content-grid { grid-template-columns: 1fr; }
  .parking-windshield-guide { padding-block: 38px !important; }
  .parking-windshield-intro { grid-template-columns: 1fr; gap: 28px; }
  .parking-windshield-guide h2 { font-size: clamp(31px, 9.5vw, 42px); }
  .parking-windshield-lead { margin-top: 18px; font-size: 15px; }
  .parking-readability-rule { margin-top: 20px; padding: 16px; }
  .parking-night-gallery { gap: 8px; }
  .parking-night-gallery img { aspect-ratio: 16 / 9; }
  .parking-night-gallery a:not(:first-child) img { aspect-ratio: 4 / 3; }
  .parking-night-gallery span { right: 6px; bottom: 6px; left: 6px; padding: 6px 7px; font-size: 9px; }
  .parking-solutions-grid { grid-template-columns: 1fr; gap: 28px !important; }
  .parking-windshield-solutions h2 { font-size: 30px; }
  .parking-checklist li { grid-template-columns: 38px 1fr; padding: 12px 11px; }
  .parking-checklist li::before { width: 34px; height: 34px; }
  .parking-checklist strong { font-size: 14px; }
  .parking-checklist span { font-size: 12px; }
  .parking-guide-visual { order: -1; }
  .parking-surveyor-alternative { grid-template-columns: 1fr; gap: 12px; margin-top: 24px; padding: 19px; }
  .parking-surveyor-alternative > a { margin-top: 4px; }
  .faq-item > summary { min-height: 56px; padding: 14px 16px; font-size: 16px; }
  .faq-answer { padding: 16px; }
  .classification-page .content-grid--4,
  .license-plates-page .content-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 12px; }
  .classification-page .content-grid--4 .content-media img,
  .license-plates-page .content-grid--4 .content-media img { max-height: 180px; }
  .license-plates-page .page-hero .content-grid { grid-template-columns: 1fr; }
  .license-plates-page .page-hero .content-media { width: min(230px, 72vw); height: 210px; margin-inline: auto; }
  .camera-mount-page main > .content-section:nth-child(2) .content-grid { width: 100%; display: flex; gap: 14px; overflow-x: auto; padding-bottom: 12px; scroll-snap-type: x mandatory; }
  .camera-mount-page main > .content-section:nth-child(2) .content-column { flex: 0 0 min(82vw, 310px); scroll-snap-align: start; }
  .camera-mount-page main > .content-section:nth-child(2) .content-grid { scrollbar-width: none; }
  .camera-mount-page main > .content-section:nth-child(2) .content-grid::-webkit-scrollbar { display: none; }
  .camera-mount-page main > .content-section:nth-child(2) .shell::after { display: block; margin-top: 8px; color: #9bd9f2; content: "Przesuń, aby zobaczyć kolejne schematy →"; font-size: 12px; font-weight: 700; }
  .about-page .page-hero { min-height: 0; padding-block: 38px; }
  .about-page .page-hero h1 { font-size: clamp(38px, 11vw, 48px); }
  .about-page .content-section:not(.page-hero) { padding-block: 26px; }
  .about-misja-firmy main > section:nth-child(3) .content-grid,
  .about-misja-firmy main > section:nth-child(4) .content-grid,
  .about-logotyp-oraz-marka main > section:nth-child(3) .content-grid { grid-template-columns: 86px minmax(0, 1fr); gap: 16px; }
  .about-misja-firmy main > section:nth-child(3) .content-media,
  .about-misja-firmy main > section:nth-child(4) .content-media,
  .about-logotyp-oraz-marka main > section:nth-child(3) .content-media { width: 82px; height: 82px; }
  .about-misja-firmy main > section:nth-child(3) h2,
  .about-misja-firmy main > section:nth-child(4) h2,
  .about-logotyp-oraz-marka main > section:nth-child(3) h2 { margin-bottom: 8px; font-size: 24px; }
  .about-misja-firmy main > section:nth-child(3) p,
  .about-misja-firmy main > section:nth-child(4) p,
  .about-logotyp-oraz-marka main > section:nth-child(3) p { font-size: 14px; line-height: 1.5; }
  .about-misja-firmy main > section:nth-child(6) .content-grid,
  .about-misja-firmy main > section:nth-child(7) .content-grid { grid-template-columns: 72px minmax(0, 1fr); gap: 14px; }
  .about-misja-firmy main > section:nth-child(6) .content-column:nth-child(odd),
  .about-misja-firmy main > section:nth-child(7) .content-column:nth-child(odd) { grid-column: 1; }
  .about-misja-firmy main > section:nth-child(6) .content-column:nth-child(even),
  .about-misja-firmy main > section:nth-child(7) .content-column:nth-child(even) { grid-column: 2; }
  .about-misja-firmy main > section:nth-child(6) .content-media,
  .about-misja-firmy main > section:nth-child(7) .content-media { width: 68px; height: 68px; }
  .contractor-partnership .content-grid,
  .contractor-cooperation .content-grid,
  .contractor-field .content-grid { grid-template-columns: 1fr; gap: 22px; }
  .contractor-logo-wall .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .contractor-logo-wall .content-media { height: 92px; padding: 10px; }
  .contractor-process-grid.content-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 12px; }
  .contractor-process-grid .content-media { height: 130px; border-radius: 12px; }
  .contractor-process-grid .content-media img { width: 100%; height: 100%; object-fit: cover; }
  .contractor-process-grid .content-column > p { margin-top: 8px; font-size: 12px; line-height: 1.4; }
  .about-oferty-pracy main > section:nth-child(3) .content-media { height: 190px; }
  .media-coverage-grid,
  .jobs-grid { width: 100%; display: flex; gap: 14px; overflow-x: auto; padding: 2px 2px 14px; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .media-coverage-grid::-webkit-scrollbar,
  .jobs-grid::-webkit-scrollbar { display: none; }
  .media-coverage-grid > .content-column,
  .jobs-grid > .content-column { flex: 0 0 84vw; scroll-snap-align: start; }
  .media-coverage-grid .content-media { height: 220px; }
  .media-coverage-grid h2 { font-size: 23px; }
  .about-media-o-nas main > section:nth-child(n+3),
  .about-oferty-pracy main > section:nth-child(3) { padding-block: 22px; }
  .about-media-o-nas main > section:nth-child(n+3) .shell::after,
  .about-oferty-pracy main > section:nth-child(3) .shell::after { display: block; margin-top: 6px; color: #52728d; content: "Przesuń, aby zobaczyć kolejne →"; font-size: 12px; font-weight: 750; }
  .job-details > summary { display: flex; min-height: 42px; align-items: center; justify-content: space-between; padding: 9px 11px; color: var(--blue); background: var(--paper); border: 1px solid var(--line); border-radius: 9px; font-size: 13px; font-weight: 800; cursor: pointer; list-style: none; }
  .job-details > summary::-webkit-details-marker { display: none; }
  .job-details > summary::after { content: "+"; font-size: 19px; }
  .job-details[open] > summary::after { content: "−"; }
  .job-details[open] > p { margin-top: 10px; }
  .work-environment__intro { margin-bottom: 18px; font-size: 15px; line-height: 1.55; }
  .work-environment__grid { grid-template-columns: 1fr; gap: 10px; }
  .work-environment__card { padding: 17px; }
  .work-environment__card h3 { font-size: 18px; }
  .work-environment__card p,
  .work-environment__note { font-size: 14px; line-height: 1.5; }
  .work-environment__links { gap: 10px 14px; margin-top: 13px; }
  .about-referencje .university-logo-wall .content-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
  .about-referencje .university-logo-wall .content-column { grid-template-rows: 112px auto; }
  .about-referencje .university-logo-wall .content-media { height: 112px; padding: 7px; }
  .about-referencje .university-logo-wall .content-column > p { margin-top: 8px; font-size: 11px; line-height: 1.35; }
  .about-referencje main > section:nth-child(n+5) .content-grid--4,
  .about-referencje main > section:nth-child(11) .content-grid--2 { grid-template-columns: 86px minmax(0, 1fr); gap: 14px; }
  .about-referencje main > section:nth-child(n+5) .content-media { height: 76px; }
  .about-referencje main > section:nth-child(n+5) h2 { font-size: 19px; }
  .about-logotyp-oraz-marka main > section:nth-child(5) .content-media { height: 190px; }
  .about-logotyp-oraz-marka main > section:nth-child(6) .content-media { height: 150px; }
  .about-logotyp-oraz-marka .brand-assets .content-grid { grid-template-columns: 1fr; gap: 30px; }
  .about-logotyp-oraz-marka .brand-assets .content-column:nth-child(1) .content-media img { max-height: 190px; }
  .about-logotyp-oraz-marka .brand-assets .content-column:nth-child(2) .content-media img { max-height: 260px; }
  .about-logotyp-oraz-marka .brand-horizontal-asset .content-media { height: auto; }
  .about-logotyp-oraz-marka .brand-assets h2,
  .about-logotyp-oraz-marka .brand-horizontal-asset h2 { font-size: 21px; }
  .trademark-records__intro { font-size: 15px; }
  .trademark-records__grid { grid-template-columns: 1fr; gap: 10px; margin-top: 18px; }
  .trademark-record { padding: 18px; }
  .about-historia-firmy .page-hero { min-height: 300px; }
  .history-timeline-section { padding-block: 38px !important; }
  .history-timeline { gap: 22px; }
  .history-timeline::before { left: 13px; }
  .history-timeline__item { display: block; padding-left: 42px; }
  .history-timeline__item::before { position: absolute; top: 0; left: 13px; width: 15px; height: 15px; margin-top: 23px; transform: translateX(-50%); }
  .history-card,
  .history-timeline__item:nth-child(even) .history-card { padding: 19px; border-radius: 16px; }
  .history-card::after,
  .history-timeline__item:nth-child(even) .history-card::after { top: 30px; right: auto; left: -29px; width: 28px; transform: none; }
  .history-card__date { margin-bottom: 11px; padding: 5px 9px; font-size: 10px; }
  .history-card__grid.content-grid--2 { grid-template-columns: minmax(0, 1fr) 88px; gap: 12px; }
  .history-card__grid .history-copy { grid-column: 1; grid-row: 1; }
  .history-card__grid .history-media { grid-column: 2; grid-row: 1; }
  .history-card .content-column h2,
  .history-card--new h2 { margin: 0 0 8px; font-size: 20px; }
  .history-card .history-media .content-media { width: 88px; height: 88px; border-radius: 10px; }
  .history-card .history-media .content-media img { width: 100%; height: 100%; object-fit: cover; }
  .history-card .history-media > p { display: none; }
  .history-card--new { display: block; padding: 21px; }
  .history-details > summary,
  .reference-details > summary { display: flex; min-height: 40px; align-items: center; justify-content: space-between; padding: 8px 10px; color: var(--blue); background: var(--paper); border: 1px solid var(--line); border-radius: 9px; font-size: 13px; font-weight: 800; cursor: pointer; list-style: none; }
  .reference-item > summary { min-height: 52px; padding: 11px 13px; font-size: 14px; }
  .reference-item__body { padding: 14px; }
  .history-details > summary::-webkit-details-marker,
  .reference-details > summary::-webkit-details-marker { display: none; }
  .history-details > summary::after,
  .reference-details > summary::after { content: "+"; font-size: 19px; }
  .history-details[open] > summary::after,
  .reference-details[open] > summary::after { content: "−"; }
  .history-details[open] > :nth-child(2),
  .reference-details[open] > :nth-child(2) { margin-top: 10px; }
  .product-hero { padding-block: 36px 46px; }
  .product-hero .content-grid { display: flex; flex-direction: column; }
  .product-hero .content-column { width: 100%; }
  .product-hero h1 { font-size: clamp(38px, 12vw, 54px); }
  .product-hero p.product-hero__lead { font-size: 16px; }
  .product-hero__actions { display: grid; grid-template-columns: 1fr; gap: 0; }
  .product-hero .content-embed { margin-top: 10px; border-radius: 18px; }
  .product-hero .video-file-fallback span { right: 14px; bottom: 14px; left: 14px; justify-content: center; text-align: center; }
  .feature-strip { padding-block: 24px; }
  .feature-strip .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 14px; }
  .feature-strip .content-media { width: 82px; height: 82px; margin-bottom: 9px; }
  .feature-strip p { font-size: 13px; }
  .feature-strip--overview .content-column { min-height: 154px; grid-template-rows: 76px auto; padding: 14px 9px; }
  .feature-strip--overview .content-media { width: 66px; height: 66px; }
  .section-intro { margin-bottom: 20px; text-align: left; }
  .section-intro h2 { font-size: 32px; }
  .section-intro p { font-size: 15px; }
  .categories-overview .category-count, .categories-overview .category-title { display: inline; }
  .categories-overview .content-media img { min-height: 0; }
  .category-summary .content-media { width: 94px; height: 94px; }
  .category-summary .content-column:last-child { grid-column: 1 / -1; width: min(220px, 100%); justify-self: center; }
  .category-summary ul { margin-top: 12px; }
  .accuracy-results .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 14px; }
  .accuracy-results h2 { font-size: 34px; }
  .accuracy-results p { font-size: 13px; }
  .accuracy-detail .content-media img { min-height: 0; }
  .aitracker-output, .aitracker-charts, .aitracker-trial { padding-block: 34px; }
  .aitracker-output__grid, .aitracker-charts__grid { grid-template-columns: 1fr; gap: 16px; }
  .aitracker-output__grid .content-column, .aitracker-charts__grid .content-column { padding: 12px; }
  .aitracker-output__grid .content-media, .aitracker-charts__grid .content-media { height: 220px; }
  .aitracker-trial .content-column { padding: 20px; }
  .aitracker-footer-actions { display: grid; grid-template-columns: 1fr; }
  .aitracker-footer-actions .button { width: 100%; }
  .aitracker-process { padding-block: 24px; }
  .aitracker-process .content-grid { gap: 0; }
  .aitracker-process .content-column { display: grid; grid-template-columns: 82px minmax(0, 1fr); grid-template-areas: "media title" "media copy"; align-items: center; gap: 4px 16px; padding: 18px 0; border-bottom: 1px solid var(--line); }
  .aitracker-process .content-column:last-child { border-bottom: 0; }
  .aitracker-process .content-media { width: 82px; height: 82px; grid-area: media; background: transparent; border: 0; border-radius: 14px; box-shadow: none; }
  .aitracker-process .content-media img { width: 100%; height: 100%; object-fit: cover; }
  .aitracker-process h2 { grid-area: title; margin: 0; font-size: 23px; }
  .aitracker-process p { grid-area: copy; margin: 0; font-size: 13px; line-height: 1.42; }
  .category-summary { padding-block: 28px; }
  .categories-disclosure > summary { display: flex; min-height: 50px; align-items: center; justify-content: space-between; padding: 13px 16px; color: var(--blue); background: var(--paper); border: 1px solid var(--line); border-radius: 12px; font-weight: 800; cursor: pointer; list-style: none; }
  .categories-disclosure > summary::-webkit-details-marker { display: none; }
  .categories-disclosure > summary::after { content: "+"; font-size: 24px; line-height: 1; }
  .categories-disclosure[open] > summary::after { content: "−"; }
  .categories-disclosure > .shell { width: 100%; margin-top: 24px; }
  .liczbox-grant-logos .content-grid { grid-template-columns: 1fr; gap: 8px; }
  .liczbox-grant-logos .content-media { height: 88px; overflow: hidden; padding: 10px; }
  .liczbox-grant-logos .content-media img { width: min(78vw, 285px); height: auto; max-height: 62px; }
  .liczbox-grant-logos .content-column:last-child .content-media img { width: min(30vw, 112px); max-height: 34px; }
  .liczbox-icon-grid .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .liczbox-icon-grid .content-media { width: 92px; height: 92px; }
  .liczbox-dashboard-grid .content-grid,
  .liczbox-technology-grid .content-grid,
  .liczbox-benefit-grid .content-grid,
  .liczbox-extension-grid .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 14px; }
  .liczbox-dashboard-grid .content-column > .content-media + p,
  .liczbox-technology-grid .content-column > .content-media + p { font-size: 13px; line-height: 1.42; }
  .liczbox-benefit-grid .content-column h3,
  .liczbox-extension-grid .content-column h3 { font-size: 21px; }
  .liczbox-benefit-grid .content-column p,
  .liczbox-extension-grid .content-column p,
  .liczbox-extension-grid .content-column li { font-size: 13px; line-height: 1.48; }
  .liczbox-benefit-grid .content-grid,
  .liczbox-roadmap__grid { gap: 22px 12px; }
  .liczbox-benefit-grid h3 { min-height: 0; margin-top: 11px; }
  .liczbox-benefit-grid p { font-size: 13px; line-height: 1.45; }
  .liczbox-roadmap__intro { margin-bottom: 18px; font-size: 15px; line-height: 1.5; }
  .liczbox-roadmap__note { margin-top: 18px; }
  .liczbox-specs .shell { padding: 18px; }
  .liczbox-orange-partner .content-grid { grid-template-columns: 1fr; text-align: center; }
  .liczbox-orange-partner .content-media { width: 150px; height: 150px; }
  .liczbox-contact-grid .content-grid { grid-template-columns: 96px minmax(0, 1fr); gap: 18px 16px; }
  .liczbox-contact-grid .content-media { width: 96px; height: 96px; }
  .liczbox-contact-grid h3 { margin-bottom: 6px; font-size: 23px; }
  .liczbox-contact-grid p { font-size: 13px; }
  .liczbox-actions { flex-direction: column; }
  .liczbox-actions .content-button { width: 100%; justify-content: center; }
  .liczbox-city-metrics .content-grid,
  .liczbox-city-differentiators .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .liczbox-city-usecases .content-grid { grid-template-columns: 1fr; gap: 24px; }
  .liczbox-audience-grid { grid-template-columns: 1fr; gap: 13px; }
  .liczbox-city-usecases h2 { margin-bottom: 18px; font-size: 30px; }
  .liczbox-no-roadworks .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 12px; }
  .liczbox-no-roadworks .content-column:last-child { grid-column: 1 / -1; }
  .liczbox-no-roadworks h2 { font-size: 28px; }
  .liczbox-city-differentiators h3 { min-height: 0; font-size: 21px; }
  .liczbox-city-differentiators p { font-size: 13px; line-height: 1.45; }
  .download-page .page-hero { min-height: 0; padding-block: 34px; }
  .download-page .content-section:not(.page-hero) { padding-block: 24px; }
  .download-panel__copy { padding: 22px 18px; }
  .download-panel__grid { grid-template-columns: 1fr; gap: 20px; }
  .download-panel__visual { padding: 34px 8px 22px; }
  .download-product-badge { right: 3%; }
  .download-latest { width: 100%; }
  .download-guides-heading,
  .download-charts-heading { padding-block: 19px !important; }
  .download-guides-heading .shell,
  .download-charts-heading .shell { align-items: flex-start; flex-direction: column; gap: 8px; }
  .download-guides .content-grid { display: flex; gap: 14px; overflow-x: auto; padding-bottom: 12px; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .download-guides .content-grid::-webkit-scrollbar { display: none; }
  .download-guides .content-column { flex: 0 0 min(82vw, 330px); scroll-snap-align: start; }
  .download-guides h2 { font-size: 20px; }
  .download-examples .content-grid,
  .download-charts .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 12px; }
  .download-examples .content-column > p,
  .download-charts .content-column > p { font-size: 13px; }
  .download-charts .content-media { height: 220px; padding: 8px; }
  .download-correction .content-column:first-child { order: 2; }
  .download-requirements > summary { display: flex; min-height: 46px; align-items: center; justify-content: space-between; padding: 11px 13px; color: var(--blue); background: var(--paper); border: 1px solid var(--line); border-radius: 10px; font-size: 14px; font-weight: 800; cursor: pointer; list-style: none; }
  .download-requirements > summary::-webkit-details-marker { display: none; }
  .download-requirements > summary::after { content: "+"; font-size: 20px; }
  .download-requirements[open] > summary::after { content: "−"; }
  .download-requirements[open] > ul { margin-top: 14px; }
  .download-accuracy .accuracy-results { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .anonymization-actions { flex-direction: column; }
  .anonymization-actions .content-button { width: 100%; justify-content: center; }
  .anonymization-steps .content-grid,
  .anonymization-effects .content-grid { grid-template-columns: 1fr; }
  .anonymization-effects .content-column { grid-template-columns: 108px minmax(0, 1fr); gap: 8px 16px; }
  .anonymization-effects .content-media { height: 108px; }
  .anonymization-effects h3 { font-size: 21px; }
  .anonymization-scope .content-grid { grid-template-columns: 1fr; }
  .anonymization-scope .content-media { height: 210px; }
  .anonymization-extras .content-grid { grid-template-columns: 1fr; }
  .anonymization-security { min-height: 340px; }
  .anonymization-security p { font-size: 15px; }
  .detail-actions { flex-direction: column; }
  .detail-actions .content-button { width: 100%; justify-content: center; }
  .detail-feature .content-grid { grid-template-columns: 1fr; gap: 22px; }
  .detail-results-grid .content-grid { grid-template-columns: 1fr; }
  .detail-results-grid .content-media { height: 300px; }
  .alpr-plate-grid .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 10px; }
  .alpr-plate-grid .content-media { height: 120px; }
  .contact-page .page-hero { min-height: 250px; padding-block: 38px; }
  .camera-models { padding-block: 48px !important; }
  .camera-models__lead { font-size: 15px; }
  .camera-models__group-title { margin-top: 32px; padding-top: 18px; }
  .camera-model-grid { grid-template-columns: 1fr; gap: 14px; }
  .camera-model-card { padding: 20px 18px; }
  .camera-model-card dl { grid-template-columns: 1fr; }
  .camera-model-card dt { padding: 11px 0 2px; }
  .camera-model-card dd { padding: 0 0 11px; border-top: 0; }
  .contact-page .content-section:not(.page-hero) { padding-block: 24px; }
  .contact-heading { padding-block: 19px !important; }
  .contact-details .content-grid { grid-template-columns: 86px minmax(0, 1fr); gap: 20px 16px; }
  .contact-details .content-column:nth-child(1) { grid-column: 1; grid-row: 1; }
  .contact-details .content-column:nth-child(2) { grid-column: 2; grid-row: 1; }
  .contact-details .content-column:nth-child(3) { grid-column: 1; grid-row: 2; }
  .contact-details .content-column:nth-child(4) { grid-column: 2; grid-row: 2; }
  .contact-details .content-column:nth-child(1) .content-media,
  .contact-details .content-column:nth-child(3) .content-media { width: 82px; height: 82px; }
  .contact-details .content-column:nth-child(2) .content-media { width: 105px; height: 54px; }
  .contact-details h3 { font-size: 21px; }
  .contact-details p { font-size: 13px; }
  .contact-phone .content-grid,
  .contact-newsletter .content-grid { grid-template-columns: 82px minmax(0, 1fr); gap: 16px; }
  .contact-phone .content-media,
  .contact-newsletter .content-media { width: 78px; height: 78px; }
  .contact-mission .content-grid,
  .contact-dream .content-grid { grid-template-columns: 108px minmax(0, 1fr); gap: 18px; }
  .contact-mission .content-media img,
  .contact-dream .content-media img { height: 108px; }
  .contact-mission h2,
  .contact-dream h2 { margin-bottom: 8px; font-size: 25px; }
  .contact-mission p,
  .contact-dream p { font-size: 13px; line-height: 1.48; }
  .legal-page .page-hero { min-height: 0; padding-block: 36px; }
  .legal-page .page-hero h1 { font-size: clamp(36px, 10vw, 46px); }
  .legal-page .legal-section { padding-block: 24px; }
  .legal-page .legal-section.content-section--tint { padding-block: 18px; }
  .legal-page .legal-content p,
  .legal-page .legal-content li { font-size: 14px; line-height: 1.58; }
  .page-footer__lead { min-height: 0; align-items: flex-start; flex-direction: column; gap: 32px; padding-block: 58px; }
  .page-footer__map { grid-template-columns: 1fr 1fr; gap: 34px 20px; }
  .page-footer__bottom { grid-template-columns: 1fr; gap: 20px; padding-block: 34px; }
  .page-footer__bottom > div { flex-wrap: wrap; }
}

@media (max-width: 430px) {
  .page-footer__map { grid-template-columns: 1fr; }
}

/* Traffic measurement: product evidence must stay current, legible and aligned. */
.aitracker-detail-pomiar-ruchu .traffic-measurement-feature .content-grid {
  align-items: center;
}

.aitracker-detail-pomiar-ruchu .traffic-measurement-feature .content-media {
  aspect-ratio: 16 / 9;
  background: #eaf2f8;
  border: 1px solid var(--line);
  box-shadow: 0 18px 42px rgba(7, 29, 51, .1);
}

.aitracker-detail-pomiar-ruchu .traffic-measurement-feature .content-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.aitracker-detail-pomiar-ruchu .traffic-measurement-feature__copy p {
  max-width: 620px;
  color: #405b72;
}

.aitracker-detail-pomiar-predkosci .speed-distance-setup .content-grid,
.aitracker-detail-pomiar-predkosci .speed-geocalibration .content-grid {
  align-items: center;
}

.aitracker-detail-pomiar-predkosci .speed-distance-setup .content-media,
.aitracker-detail-pomiar-predkosci .speed-geocalibration .content-media {
  aspect-ratio: 3 / 2;
  background: #eaf2f8;
  border: 1px solid var(--line);
  box-shadow: 0 18px 42px rgba(7, 29, 51, .1);
}

.aitracker-detail-pomiar-predkosci .speed-distance-setup .content-media img,
.aitracker-detail-pomiar-predkosci .speed-geocalibration .content-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.speed-setup-steps {
  display: grid;
  gap: 10px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
  counter-reset: speed-step;
}

.speed-setup-steps li {
  position: relative;
  padding: 12px 14px 12px 50px;
  color: #405b72;
  background: rgba(255, 255, 255, .76);
  border: 1px solid var(--line);
  border-radius: 12px;
  counter-increment: speed-step;
}

.speed-setup-steps li::before {
  content: counter(speed-step, decimal-leading-zero);
  position: absolute;
  top: 12px;
  left: 14px;
  color: var(--cyan);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
}

.speed-geocalibration__copy .content-button {
  margin-top: 12px;
}

.aitracker-detail-pomiar-alpr .alpr-current-proof .content-media {
  aspect-ratio: 16 / 9;
  background: #eaf2f8;
  border: 1px solid var(--line);
  box-shadow: 0 18px 42px rgba(7, 29, 51, .1);
}

.aitracker-detail-pomiar-alpr .alpr-current-proof .content-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.aitracker-detail-pomiar-alpr .alpr-versionless-cta {
  background: #fff;
}

@media (max-width: 760px) {
  .aitracker-detail-pomiar-ruchu .traffic-measurement-feature .content-grid {
    grid-template-columns: 1fr;
  }

  .aitracker-detail-pomiar-ruchu .traffic-measurement-feature__visual {
    order: 1;
  }

  .aitracker-detail-pomiar-ruchu .traffic-measurement-feature__copy {
    order: 2;
  }

  .aitracker-detail-pomiar-predkosci .speed-distance-setup .content-grid,
  .aitracker-detail-pomiar-predkosci .speed-geocalibration .content-grid {
    grid-template-columns: 1fr;
  }

  .aitracker-detail-pomiar-predkosci .speed-geocalibration .content-column:last-child {
    order: 1;
  }

  .aitracker-detail-pomiar-predkosci .speed-geocalibration__copy {
    order: 2;
  }
}

/* Clear operational contact paths: sales, product support and invoicing. */
.contact-channels__grid {
  align-items: stretch;
}

.contact-channel {
  padding: clamp(24px, 3vw, 38px);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 22px;
}

.contact-channel > span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.contact-channel h2 {
  margin: 12px 0 10px;
  font-size: clamp(24px, 3vw, 38px);
}

.contact-channel p {
  color: #405b72;
}

.contact-channel > a {
  display: inline-block;
  margin-top: 8px;
  color: var(--blue);
  font-size: clamp(18px, 2vw, 23px);
  font-weight: 800;
}

.support-contact-strip {
  background: #f3f8fc;
}

.support-contact-strip__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 36px;
  align-items: center;
  padding: clamp(24px, 4vw, 44px);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 22px;
}

.support-contact-strip__body h2 {
  margin: 10px 0;
  font-size: clamp(26px, 3vw, 42px);
}

.support-contact-strip__body > div > p:last-child {
  max-width: 760px;
  color: #405b72;
}

@media (max-width: 760px) {
  .contact-channels__grid,
  .support-contact-strip__body {
    grid-template-columns: 1fr;
  }

  .support-contact-strip__body {
    gap: 20px;
  }

  .support-contact-strip__body .content-button {
    width: 100%;
    text-align: center;
  }
}
