:root{font-family:DM Sans,system-ui,-apple-system,sans-serif;color:#18201b;background:#f4f2eb;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #18201b;--muted: #586057;--paper: #f4f2eb;--green: #174f3b;--lime: #d4ec84;--copper: #c17b43;--line: #d6d8ce;--mono: "DM Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}h1,h2,h3,h4{text-wrap:balance}p,li,dd{text-wrap:pretty}table,.vin-sample,.geo-stat-val,.worked-table-wrap{font-variant-numeric:tabular-nums}a{color:inherit}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #d47c43;outline-offset:3px}.shell{width:min(1180px,calc(100% - 48px));margin:auto}.skip-link{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--green);color:#fff;padding:10px 16px;border-radius:6px;text-decoration:none;font-weight:600;font-size:13px}.skip-link:focus{left:16px}.topbar{position:sticky;top:0;z-index:30;background:#f4f2ebf2;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{min-height:74px;display:flex;justify-content:space-between;align-items:center;gap:16px}.brand{display:inline-flex;gap:11px;align-items:center;text-decoration:none;font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.055em;font-size:20px}.brand-mark{width:34px;height:34px;background:var(--green);color:var(--lime);border-radius:10px;display:grid;place-items:center;font-family:var(--mono);font-size:12px;letter-spacing:-.08em}.brand-tld{font:600 10px var(--mono);color:var(--green);background:#e6efe8;padding:2px 6px;border-radius:4px;letter-spacing:.04em}.nav-links{display:flex;align-items:center;gap:22px}.nav-links a{text-decoration:none;font-size:13px;font-weight:500;color:#465046;min-height:44px;display:inline-flex;align-items:center}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--green);font-weight:600}.nav-cta{padding:10px 16px;border-radius:999px;background:var(--green);color:#fff!important;font-weight:600!important}.mobile-subnav{display:none;border-top:1px solid #e2e4db;padding:6px 0;overflow-x:auto}.mobile-subnav-inner{display:flex;gap:8px;white-space:nowrap}.mobile-subnav a{text-decoration:none;font-size:11.5px;font-weight:600;color:#3f483f;padding:6px 10px;border-radius:6px;background:#e9eae1}.mobile-subnav a[aria-current=page]{background:var(--green);color:#fff}.eyebrow{font:500 10.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--green);display:flex;gap:9px;align-items:center}.eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--copper);flex-shrink:0}.hero{padding:58px 0 64px;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(38px,4.8vw,62px);line-height:1.02;letter-spacing:-.055em;margin:18px 0 16px;font-weight:800;max-width:600px}.hero h1 em{font-style:normal;color:var(--green)}.hero-copy,.ms-hero-lead{font-size:15.5px;line-height:1.68;color:#464f45;max-width:540px;margin:0 0 24px}.ms-hero-lead strong{color:var(--ink);font-weight:600}.hero-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.button{min-height:50px;border-radius:8px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;border:0;font-weight:600;font-size:13px;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.button-dark{background:var(--green);color:#fff}.button-dark:hover:not(:disabled){background:#103e2e;box-shadow:0 7px 16px #174f3b24;transform:translateY(-1px)}.button-light{border:1px solid var(--line);color:var(--ink);background:#fffefa}.button-light:hover{background:#e9eae1;border-color:#bec5b8}.button:disabled{opacity:.68;cursor:wait}.micro-note{font:10.5px var(--mono);color:#555f55;margin-top:18px;display:flex;align-items:center;gap:8px}.micro-note span{width:6px;height:6px;background:#3d8b63;border-radius:50%;flex-shrink:0}.visual{position:relative;min-height:340px;display:grid;place-items:center}.visual-bg{position:absolute;inset:14px 0 0 20px;border-radius:50%;background:#e7e8dc}.vin-card{position:relative;width:min(460px,100%);background:#fffefa;border:1px solid #dbddd3;box-shadow:0 24px 55px #26352912;border-radius:12px;transform:rotate(-1.2deg);padding:24px}.card-top{display:flex;justify-content:space-between;align-items:center;font:10px var(--mono);letter-spacing:.08em;color:#555f55}.card-status{background:#e9f2dc;color:#265028;padding:5px 9px;border-radius:20px;letter-spacing:.03em;font-weight:500}.vin-label{font:10px var(--mono);color:#555f55;letter-spacing:.08em;margin:22px 0 9px}.vin-sample{display:grid;grid-template-columns:repeat(17,minmax(0,1fr));gap:3px;width:100%;font:500 clamp(11px,1.05vw,14px) var(--mono)}.vin-sample span{min-width:0;padding:9px 0;text-align:center;border-radius:4px;background:#f1f2ea}.vin-sample .digit{background:var(--green);color:#fff;font-weight:700}.vin-brackets{height:17px;margin:7px 1px 0;display:grid;grid-template-columns:3fr 6fr 8fr;gap:6px}.vin-brackets i{height:7px;border-top:1px solid #aeb4a7;border-left:1px solid #aeb4a7;border-right:1px solid #aeb4a7;border-radius:4px 4px 0 0}.vin-brackets i:first-child{border-color:#428664}.vin-brackets i:last-child{border-color:#c17b43}.bracket-labels{display:grid;grid-template-columns:3fr 6fr 8fr;gap:6px;color:#555f55;font:8.5px var(--mono);text-transform:uppercase;letter-spacing:.04em;text-align:center}.result-lines{margin-top:22px;border-top:1px solid #e5e6de;padding-top:15px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.result-lines small{font:9px var(--mono);text-transform:uppercase;color:#555f55;display:block;margin-bottom:4px}.result-lines b{font:600 13.5px Manrope,sans-serif}.card-foot{border-top:1px solid #e5e6de;margin-top:16px;padding-top:12px;display:flex;justify-content:space-between;font:9px var(--mono);color:#555f55}.seal{position:absolute;right:-4px;bottom:12px;width:82px;height:82px;border:1px solid #c9cdbf;border-radius:50%;background:var(--lime);display:grid;place-items:center;text-align:center;font:600 8.5px var(--mono);line-height:1.45;transform:rotate(8deg)}.workbench{background:#e9eae1;padding:68px 0 74px;border-top:1px solid #dfe0d7;border-bottom:1px solid #dfe0d7}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:26px}.section-head h2,.content h2{font:700 clamp(26px,3vw,34px)/1.12 Manrope,sans-serif;letter-spacing:-.04em;margin:10px 0 0}.section-head p{max-width:400px;color:var(--muted);font-size:13px;line-height:1.6;margin:0}.decoder{display:grid;grid-template-columns:1fr .92fr;gap:0;background:#fffefa;border:1px solid #d9dbd1;border-radius:12px;overflow:hidden;box-shadow:0 18px 45px #24301c09}.form-side{padding:30px}.output-side{padding:30px;background:#f5f5ef;border-left:1px solid #e3e4da;min-height:360px}.field-label{font:600 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#465046;display:flex;justify-content:space-between}.vin-input{width:100%;height:60px;border:1px solid #cdd1c6;border-radius:7px;background:#fffefa;padding:0 15px;margin:10px 0;font:500 17px var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--ink)}.vin-input::placeholder{color:#9da397}.help{font-size:11.5px;color:#555f55;margin:0 0 18px;line-height:1.58}.form-row{display:flex;gap:10px;align-items:center}.form-row .button{min-width:165px}.clear-button{border:1px solid #cbd0c5;border-radius:7px;background:#fffefa;color:#465046;font-size:12px;font-weight:500;min-height:48px;padding:0 14px;cursor:pointer}.clear-button:hover{background:#e9eae1}.notice{font-size:11.5px;color:#555f55;line-height:1.6;margin-top:20px;border-top:1px solid #e5e6dd;padding-top:15px}.output-kicker{font:600 10px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#555f55}.output-title{font:700 22px/1.2 Manrope,sans-serif;letter-spacing:-.035em;margin:12px 0 8px}.output-copy{font-size:12.5px;color:#4f584f;line-height:1.62;margin:0}.output-result{min-height:230px;display:flex;flex-direction:column;justify-content:center}.output-icon{width:38px;height:38px;border-radius:10px;background:#e8eadf;color:var(--green);display:grid;place-items:center;font:15px var(--mono);margin-bottom:15px}.data-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;margin-top:18px}.data-item{border-top:1px solid #e0e2d8;padding:10px 0}.data-item small{font:9px var(--mono);text-transform:uppercase;letter-spacing:.07em;color:#555f55;display:block;margin-bottom:3px}.data-item b{font-size:12px;font-weight:600}.api-note{font:9.5px var(--mono);color:#555f55;margin-top:16px;line-height:1.5}.api-note a{color:var(--green)}.features{padding:68px 0 72px}.feature-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:44px;align-items:end;margin-bottom:32px}.feature-intro h2{font:700 clamp(26px,3vw,34px)/1.12 Manrope,sans-serif;letter-spacing:-.04em;margin:12px 0 0}.feature-intro p{color:#4f584f;font-size:13.5px;line-height:1.68;max-width:510px;margin:0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.feature{padding:24px 24px 24px 0}.feature+.feature{border-left:1px solid var(--line);padding-left:24px}.feature-num{font:600 10px var(--mono);color:#754627}.feature h3{font:700 16px Manrope,sans-serif;margin:18px 0 8px;letter-spacing:-.02em}.feature p{font-size:12.5px;color:#4f584f;line-height:1.65;margin:0}.content{padding:0 0 68px}.content-grid{display:grid;grid-template-columns:.68fr 1.32fr;gap:50px;border-top:1px solid var(--line);padding-top:42px}.content-copy p{font-size:13.5px;line-height:1.78;color:#464f45;margin:0 0 15px}.content-copy p strong{color:var(--ink)}.content-copy h3{font:700 16px Manrope,sans-serif;margin:24px 0 8px}.content-copy a{color:var(--green);text-decoration-thickness:1px;text-underline-offset:3px;font-weight:500}.position-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px;margin-bottom:18px}.position{background:#e9eae1;padding:13px;border-radius:6px}.position b{font:600 11px var(--mono);color:var(--green);display:block;margin-bottom:5px}.position span{font-size:11px;color:#465046;line-height:1.45;display:block}.faq{background:#eaebe3;padding:64px 0;border-top:1px solid var(--line)}.faq-grid{display:grid;grid-template-columns:.68fr 1.32fr;gap:50px}.faq-list details{border-top:1px solid #d0d3c8;padding:17px 0}.faq-list details:last-child{border-bottom:1px solid #d0d3c8}.faq-list summary{font:700 13.5px Manrope,sans-serif;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:15px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";font:16px var(--mono);color:var(--green);flex-shrink:0}.faq-list details[open] summary:after{content:"−"}.faq-list p{font-size:12.5px;line-height:1.72;color:#464f45;max-width:650px;margin:12px 0 0}.footer{padding:32px 0 38px;border-top:1px solid var(--line)}.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.footer p{font-size:11px;color:#555f55;margin:0}.footer-links{display:flex;flex-wrap:wrap;gap:16px}.footer-links a{font-size:11px;color:#465046;text-decoration:none}.footer-links a:hover{color:var(--green);text-decoration:underline}.status-error{color:#a13f29!important}.status-good{color:#174f3b!important}.loader{width:16px;height:16px;border:2px solid #d9ded4;border-top-color:var(--green);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero-vin{height:50px;min-width:220px;max-width:270px;border:1px solid #cbd0c5;border-radius:8px;background:#fffefa;padding:0 14px;font:500 12.5px var(--mono);letter-spacing:.05em;text-transform:uppercase}.year-row{display:flex;align-items:center;gap:14px;margin:4px 0 12px}.year-row label{font:600 10px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:#465046}.year-row label span{color:#586057;text-transform:none;letter-spacing:0;font-weight:400}.year-row input{width:120px;height:46px;border:1px solid #cdd1c6;border-radius:6px;background:#fffefa;padding:0 10px;font:12px var(--mono)}.result-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.result-actions button{min-height:44px;padding:0 13px;border:1px solid #cbd0c5;border-radius:6px;background:#fffefa;color:var(--green);font-size:11px;font-weight:600;cursor:pointer}.result-actions button:hover{background:#e9eae1}.recall-box{margin-top:18px;padding:14px;border:1px solid #d8ddd1;border-radius:8px;background:#fffefa}.recall-box strong{font:600 12px Manrope,sans-serif}.recall-box ul{padding-left:18px;margin:10px 0;font-size:11.5px;line-height:1.6}.recall-box small{display:block;color:#465247;font-size:10.5px;line-height:1.55;margin-top:8px}.recall-box a{color:var(--green)}.compare-section{padding:60px 0}.compare-form{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end}.compare-form label{display:block;font:600 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}.compare-form input{width:100%;height:50px;border:1px solid #cbd0c5;border-radius:7px;background:#fffefa;padding:0 13px;font:500 12.5px var(--mono);text-transform:uppercase}.compare-result{margin-top:22px}.compare-table{width:100%;table-layout:fixed;border-collapse:collapse;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fffefa}.compare-table th,.compare-table td{padding:11px 14px;border:1px solid var(--line);text-align:left;vertical-align:top;font-size:11.5px;overflow-wrap:anywhere}.compare-table thead{background:#e9eae1}.compare-table thead th{font:700 11.5px Manrope,sans-serif}.compare-table tbody th{font:600 10px var(--mono);color:#465247;width:26%}.compare-table thead th:first-child{width:26%}.compare-table thead small{display:block;font:9.5px var(--mono);font-weight:400;color:#465247;margin-top:4px}.full-data{margin-top:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.full-data summary{min-height:46px;display:flex;align-items:center;cursor:pointer;color:var(--green);font-size:12px;font-weight:600}.check-digit-math{display:block;max-width:100%;overflow-x:auto;margin:18px 0;padding:14px 16px;border:1px solid var(--line);border-radius:8px;background:#fffefa;font-size:20px}.worked-table-wrap{max-width:100%;overflow-x:auto;margin-bottom:16px}.worked-table-wrap table{width:100%;border-collapse:collapse;background:#fffefa;font-size:11.5px}.worked-table-wrap caption{text-align:left;padding:10px 0;font-weight:600;color:#465247}.worked-table-wrap th,.worked-table-wrap td{padding:9px 8px;border:1px solid var(--line);text-align:left}.worked-table-wrap thead,.worked-table-wrap tfoot{background:#e9eae1;font-weight:600}@media(max-width:900px){.shell{width:min(100% - 32px,680px)}.nav-links a:not(.nav-cta){display:none}.mobile-subnav{display:block}.hero{padding:40px 0 48px;grid-template-columns:1fr;gap:28px}.decoder,.feature-intro,.feature-grid,.content-grid,.faq-grid,.compare-form{grid-template-columns:1fr}.output-side{border-left:0;border-top:1px solid #e3e4da}.feature,.feature+.feature{padding:18px 0;border-left:0;border-bottom:1px solid var(--line)}.feature:last-child{border-bottom:0}.section-head{display:block}.section-head p{margin-top:12px}}@media(max-width:480px){.shell{width:calc(100% - 26px)}.hero h1{font-size:36px}.hero-actions{display:grid;grid-template-columns:1fr}.hero-vin,.hero-actions .button{width:100%;max-width:none}.position-list{grid-template-columns:1fr}}@media print{.topbar,.footer,.hero,.workbench .section-head,.form-side,.features,.content,.faq,.result-actions,.compare-section,.geo-telemetry-section,.pillar-mesh-section,.rag-summary-wrap{display:none!important}.workbench{padding:0;background:#fff;border:0}.decoder{display:block;border:0;box-shadow:none}.output-side{display:block;border:0;background:#fff;padding:0}.output-side:before{content:"VINDECODE.INFO · Raport Dekodowania VIN (PN-ISO 3779 & NHTSA vPIC)";display:block;font:12px var(--mono);margin-bottom:20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
