/* OL-MI — fotografia bez kadrowania, rytm podstron, formularze i detale. */
.olmi-section { --olmi-radius:20px; }
.olmi-section h1,.olmi-section h2 { text-wrap:balance; }
.olmi-section p { text-wrap:pretty; }
.olmi-section [id] { scroll-margin-top:36px; }
.olmi-section .olmi-button:focus-visible,.olmi-section a:focus-visible,.olmi-section summary:focus-visible { outline:3px solid var(--olmi-red); outline-offset:5px; }
.olmi-section legend.olmi-sr-only { display:block; min-width:0; max-width:1px; inline-size:1px; min-inline-size:0; }
.olmi-section .olmi-button:focus { background:var(--olmi-red); color:#fff; }
.olmi-section .olmi-button-secondary:focus { background:#181b20; border-color:#181b20; color:#fff; }
.olmi-section .olmi-symbol { width:48px; height:48px; flex-shrink:0; display:grid; place-items:center; background:#fff; border:1px solid #e2e5e8; border-radius:14px; color:#242a32; }
.olmi-section .olmi-symbol svg { width:24px; height:24px; }
.olmi-section .olmi-lead { color:#616974; font-size:1.12rem; line-height:1.85; margin:24px 0 28px; }

/* Hero: pełne zdjęcie we własnym polu, podpis pod fotografią. */
.olmi-v2-hero { padding:40px 0 48px; background:linear-gradient(120deg,#f5f6f7,#f0f2f4); }
.olmi-v2-hero .olmi-hero-grid { gap:48px; }
.olmi-v2-hero .olmi-hero-copy { padding:20px 0; }
.olmi-v2-hero .olmi-hero-visual { display:flex; flex-direction:column; aspect-ratio:auto; border:1px solid #e0e4e8; border-radius:20px; background:#fff; box-shadow:0 16px 40px #161b2307; overflow:hidden; }
.olmi-v2-hero .olmi-hero-visual::after { display:none; }
.olmi-v2-hero .olmi-hero-visual > img { order:1; display:block; width:100%; height:auto; aspect-ratio:auto; object-fit:contain; object-position:center; border-radius:0; }
.olmi-v2-hero .olmi-hero-stamp { order:0; position:static; display:flex; justify-content:space-between; align-items:center; padding:20px 24px; color:#181b20; font-size:1.15rem; }
.olmi-v2-hero .olmi-hero-stamp span { margin:0; font-size:.58rem; color:#656d78; }
.olmi-v2-hero figcaption { order:2; position:static; padding:23px 90px 23px 24px; color:#242a32; }
.olmi-v2-hero figcaption > span { font-size:1rem; font-style:normal; letter-spacing:-.02em; }
.olmi-v2-hero figcaption small { color:#66707b; font-size:.67rem; }
.olmi-v2-hero .olmi-hero-circle { width:44px; height:44px; right:24px; bottom:24px; }
.olmi-v2-hero .olmi-quick-select { margin-top:38px; border:1px solid #e0e4e8; border-radius:16px; padding:18px 24px; box-shadow:0 8px 25px #161b2304; }
.olmi-v2-hero .olmi-quick-select a { min-height:48px; transition:background .2s,color .2s; }
.olmi-v2-hero .olmi-quick-select a:hover { color:var(--olmi-red); background:#faf3f4; }

/* Pełny kadr także na kartach, miniaturach i stronie samochodu. */
.olmi-catalog .olmi-car-photo { display:block; aspect-ratio:16/11; background:#f1f3f5; padding:46px 12px 42px; border-bottom:1px solid #e8eaed; }
.olmi-catalog .olmi-car-photo img { width:100%; height:100%; object-fit:contain; object-position:center; transform:none; border-radius:2px; }
.olmi-catalog .olmi-car-card:hover .olmi-car-photo img { transform:none; }
.olmi-catalog .olmi-car-photo .olmi-status { top:12px; left:14px; box-shadow:none; padding:6px 9px; font-size:.63rem; }
.olmi-catalog .olmi-photo-count { bottom:10px; left:14px; background:transparent; color:#5b6470; padding:0; }
.olmi-catalog .olmi-photo-arrow { bottom:8px; right:14px; width:28px; height:28px; }
.olmi-catalog .olmi-car-card { box-shadow:none; border-color:#e4e7eb; }
.olmi-catalog .olmi-car-card:hover { transform:translateY(-4px); box-shadow:0 14px 30px #18203008; }
.olmi-single .olmi-gallery-main { background:#f1f3f5; padding:12px; aspect-ratio:16/11; display:grid; place-items:center; border:1px solid #e1e6eb; }
.olmi-single .olmi-gallery-main img { object-fit:contain; width:100%; height:100%; max-height:650px; }
.olmi-single .olmi-gallery-thumbs button { padding:5px; background:#f1f3f5; border:1px solid #dce1e6; }
.olmi-single .olmi-gallery-thumbs img { object-fit:contain; width:100%; height:100%; }
.olmi-single .olmi-gallery-thumbs button[aria-pressed=true] { border:2px solid var(--olmi-red); background:#fff; }
.olmi-single .olmi-single-details { gap:36px; padding-top:48px; border-top:1px solid #e2e6ea; margin-top:48px; }
.olmi-single .olmi-single-details > section { background:#f7f8f9; padding:32px; border:1px solid #e8ebee; border-radius:20px; }
.olmi-single .olmi-single-details h2 { font-size:1.55rem; margin-bottom:24px; }
.olmi-single .olmi-single-details h2:not(:first-child) { margin-top:36px; }
.olmi-single .olmi-equipment { gap:10px; }
.olmi-single .olmi-equipment li { background:white; border:1px solid #e5e8eb; padding:12px; border-radius:8px; }
.olmi-single .olmi-spec-table > div { padding:14px 0; border-color:#e0e5e9; }

/* Katalog: lekki panel z własnymi kontrolkami. */
.olmi-catalog:not(.olmi-catalog-home) { background:linear-gradient(#f5f6f7 0,#fff 650px); padding-top:36px; }
.olmi-catalog .olmi-catalog-heading { position:relative; max-width:none; padding:18px 0 38px; border-bottom:1px solid #dfe4e9; margin-bottom:34px; }
.olmi-catalog .olmi-catalog-heading .olmi-breadcrumb { margin-bottom:38px; }
.olmi-catalog .olmi-catalog-heading h1 { font-size:clamp(2.6rem,4.4vw,4.8rem); max-width:18ch; line-height:1.08; }
.olmi-catalog .olmi-catalog-heading p:last-child { font-size:1rem; max-width:53ch; margin-bottom:0; }
.olmi-catalog .olmi-filters { background:white; border:1px solid #dfe4e9; padding:28px; box-shadow:0 12px 36px #17202c05; }
.olmi-catalog .olmi-filter-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; padding-bottom:24px; margin-bottom:24px; border-bottom:1px solid #e7eaee; }
.olmi-catalog .olmi-filter-heading > span { display:flex; align-items:center; gap:12px; font-weight:650; font-size:1rem; }
.olmi-catalog .olmi-filter-heading small { color:#6b7480; font-size:.75rem; }
.olmi-section select { appearance:none; -webkit-appearance:none; background:#f8f9fa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23434c58' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E") no-repeat right 12px center; padding-right:44px; cursor:pointer; }
.olmi-section input,.olmi-section select,.olmi-section textarea { background-color:#f8f9fa; border:1px solid #dce1e6; min-height:52px; border-radius:9px; color:#252c35; font-size:.9rem; }
.olmi-section input::placeholder,.olmi-section textarea::placeholder { color:#818a95; opacity:1; }
.olmi-section input:focus,.olmi-section select:focus,.olmi-section textarea:focus { background-color:#fff; border-color:var(--olmi-red); outline:none; box-shadow:0 0 0 4px rgb(223 15 22 / 0.039); }
.olmi-section.olmi-catalog .olmi-filters input:not([type=hidden]),
.olmi-section.olmi-form-section .olmi-p-form input:not([type=hidden]),
.olmi-section.olmi-form-section .olmi-p-form textarea { background-color:#f8f9fa; border:1px solid #dce1e6; min-height:52px; border-radius:9px; color:#252c35; font-size:.9rem; padding:14px; }
.olmi-section.olmi-catalog .olmi-filters input:focus,
.olmi-section.olmi-form-section .olmi-p-form input:focus,
.olmi-section.olmi-form-section .olmi-p-form textarea:focus { background-color:#fff; border-color:var(--olmi-red); outline:none; box-shadow:0 0 0 4px rgb(223 15 22 / 0.039); }
.olmi-section.olmi-form-section .olmi-p-form textarea { min-height:110px; }
.olmi-catalog label > span { font-size:.75rem; font-weight:600; margin-bottom:9px; color:#4e5865; }
.olmi-catalog .olmi-filter-main { grid-template-columns:1.1fr 1.1fr 1fr 1fr auto; gap:16px; }
.olmi-catalog .olmi-filter-main .olmi-button { min-height:52px; }
.olmi-catalog .olmi-filter-more { border-top:1px solid #e7eaee; margin-top:24px; padding-top:0; }
.olmi-catalog .olmi-filter-more summary { list-style:none; display:flex; align-items:center; justify-content:space-between; padding:20px 0; cursor:pointer; font-size:.83rem; font-weight:650; }
.olmi-catalog .olmi-filter-more summary::-webkit-details-marker { display:none; }
.olmi-catalog .olmi-filter-more summary small { display:inline-block; margin-left:12px; font-size:.74rem; font-weight:400; color:#737d88; }
.olmi-catalog .olmi-filter-expand { width:28px; height:28px; position:relative; border:1px solid #dde3e9; border-radius:50%; background:#f5f7f9; }
.olmi-catalog .olmi-filter-expand::before,.olmi-catalog .olmi-filter-expand::after { content:""; position:absolute; width:10px; height:1.5px; background:#343f4d; top:12px; left:8px; transition:transform .25s; }
.olmi-catalog .olmi-filter-expand::after { transform:rotate(90deg); }
.olmi-catalog details[open] .olmi-filter-expand::after { transform:rotate(0); }
.olmi-catalog details[open] summary { color:var(--olmi-red); }
.olmi-catalog .olmi-filter-extra { padding:0 0 20px; gap:16px; }
.olmi-catalog .olmi-filter-bottom { border-top:1px solid #e7eaee; padding-top:18px; margin:0; }
.olmi-catalog .olmi-filter-bottom > a { color:#66717e; font-size:.76rem; }
.olmi-catalog .olmi-filter-bottom label { font-size:.75rem; }
.olmi-catalog .olmi-filter-bottom select { min-height:44px; }
.olmi-catalog .olmi-filter-bottom .olmi-button { min-height:44px; padding:9px 16px; font-size:.76rem; }
.olmi-catalog .olmi-results { padding:10px 0 24px; border-bottom:1px solid #e5e9ed; margin-bottom:28px; }
.olmi-catalog .olmi-results > strong { font-size:.79rem; font-weight:600; color:#535e6b; }

/* O nas i import: fotografie, krótkie bloki, duże światło. */
.olmi-p-about,.olmi-p-order { padding:64px 0 80px; background:#fff; }
.olmi-section .olmi-editorial-hero { display:grid; grid-template-columns:1fr 1.06fr; align-items:center; gap:72px; }
.olmi-section .olmi-editorial-hero h1 { font-size:clamp(3rem,4.7vw,5rem); line-height:1.04; margin:24px 0; }
.olmi-section .olmi-editorial-hero h1 span { color:var(--olmi-red); }
.olmi-section .olmi-editorial-photo { margin:0; background:#f0f3f5; border:1px solid #e0e5ea; border-radius:20px; overflow:hidden; }
.olmi-section .olmi-editorial-photo img { width:100%; height:auto; object-fit:contain; display:block; }
.olmi-section .olmi-editorial-photo figcaption { display:flex; align-items:center; justify-content:space-between; padding:18px 22px; background:white; font-size:.72rem; color:#646e7b; }
.olmi-section .olmi-editorial-photo figcaption svg { width:18px; height:18px; }
.olmi-section .olmi-editorial-intro { display:grid; grid-template-columns:1fr 2fr; gap:60px; border-top:1px solid #e1e6eb; margin-top:76px; padding-top:56px; }
.olmi-section .olmi-editorial-intro > div { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.olmi-section .olmi-editorial-intro h2 { font-size:2.2rem; line-height:1.15; }
.olmi-section .olmi-editorial-intro p:not(.olmi-eyebrow) { color:#626c78; line-height:1.85; font-size:.96rem; }
.olmi-section .olmi-value-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:48px; }
.olmi-section .olmi-value-grid article { border:1px solid #e2e7ec; border-radius:18px; padding:30px; background:#f7f8fa; transition:border-color .25s,transform .25s; }
.olmi-section .olmi-value-grid article:hover { border-color:#bec7d1; transform:translateY(-3px); }
.olmi-section .olmi-value-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:30px; }
.olmi-section .olmi-value-top > span:last-child { font-size:.65rem; letter-spacing:.1em; color:#85909d; }
.olmi-section .olmi-value-grid h3 { font-size:1.3rem; margin:0 0 12px; }
.olmi-section .olmi-value-grid p { color:#687280; font-size:.9rem; line-height:1.85; margin:0; }
.olmi-p-story { background:#f5f6f8; padding:72px 0; }
.olmi-section .olmi-story-grid { display:grid; grid-template-columns:1.05fr 1fr; gap:90px; align-items:center; }
.olmi-p-story h2 { font-size:clamp(2.2rem,3.3vw,3.5rem); margin:20px 0 26px; line-height:1.08; }
.olmi-p-story p:not(.olmi-eyebrow) { color:#697381; line-height:1.9; max-width:48ch; font-size:.95rem; }
.olmi-p-story .olmi-button { margin-top:14px; }
.olmi-p-cta { padding:64px 0; background:white; }
.olmi-section .olmi-cta-box { display:flex; align-items:center; justify-content:space-between; gap:40px; padding:52px; border-radius:24px; background:#1b2027; color:#fff; position:relative; overflow:hidden; }
.olmi-section .olmi-cta-box h2 { color:white; font-size:clamp(2rem,3vw,3rem); line-height:1.12; margin:18px 0 0; }
.olmi-section .olmi-cta-box .olmi-eyebrow { color:var(--olmi-red); }
.olmi-section .olmi-cta-box .olmi-button { flex-shrink:0; }
.olmi-p-order .olmi-value-grid { margin-top:64px; }
.olmi-section .olmi-route-art { border-radius:24px; padding:32px; background:#1a2028; color:#fff; box-shadow:0 20px 45px #1a202811; }
.olmi-route-art .olmi-route-top { display:flex; justify-content:space-between; gap:20px; font-size:.58rem; letter-spacing:.16em; color:#aeb8c5; }
.olmi-route-art > svg { width:100%; height:auto; display:block; margin:24px 0; }
.olmi-route-art .olmi-route-grid { stroke:#ffffff08; }
.olmi-route-art .olmi-route-shadow { stroke:#ffffff08; stroke-width:30; }
.olmi-route-art .olmi-route-path { stroke:var(--olmi-red); stroke-width:2; stroke-dasharray:8 8; animation:olmi-route 30s linear infinite; }
@keyframes olmi-route { to { stroke-dashoffset:-300; } }
.olmi-route-art .olmi-route-bottom { display:flex; justify-content:space-between; align-items:end; gap:20px; }
.olmi-route-art .olmi-route-bottom strong { font-size:1.8rem; line-height:1.15; letter-spacing:-.04em; }
.olmi-route-art .olmi-route-bottom > span { color:#aeb8c5; font-size:.65rem; text-align:right; line-height:1.8; }

/* Kontakt i formularze — dane po lewej, formularz po prawej. */
.olmi-p-contact { padding:54px 0 64px; background:linear-gradient(#f4f6f8,#fff); }
.olmi-p-contact .olmi-contact-heading { margin-bottom:42px; }
.olmi-p-contact .olmi-contact-heading h1 { font-size:clamp(2.7rem,4.3vw,4.8rem); line-height:1.06; margin:22px 0; }
.olmi-p-contact .olmi-contact-heading h1 span { color:var(--olmi-red); }
.olmi-p-contact .olmi-contact-heading > p:last-child { color:#6b7480; font-size:.98rem; line-height:1.8; }
.olmi-p-contact .olmi-p-contact-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:32px; align-items:start; }
.olmi-p-contact .olmi-company-panel { padding:40px; background:#1b2129; color:#fff; border-radius:22px; position:relative; overflow:hidden; }
.olmi-company-panel .olmi-company-brand { display:flex; align-items:baseline; gap:14px; border-bottom:1px solid #ffffff1c; padding-bottom:28px; margin-bottom:28px; }
.olmi-company-panel .olmi-company-brand > span { font-size:2rem; font-style:italic; font-weight:850; letter-spacing:-.06em; }
.olmi-company-panel .olmi-company-brand small { font-size:.58rem; letter-spacing:.24em; color:#aeb8c5; }
.olmi-p-contact .olmi-company-panel h2 { color:white; font-size:1.8rem; line-height:1.2; margin-bottom:32px; }
.olmi-company-panel .olmi-contact-row { display:flex; gap:18px; align-items:flex-start; padding:22px 0; border-top:1px solid #ffffff14; text-decoration:none; }
.olmi-company-panel .olmi-symbol { background:#252d38; border-color:#3b4654; color:#fff; }
.olmi-company-panel .olmi-icon-accent { stroke:var(--olmi-red); }
.olmi-company-panel .olmi-contact-row small { display:block; font-size:.57rem; letter-spacing:.14em; color:#97a5b6; margin-bottom:7px; }
.olmi-company-panel .olmi-contact-row strong { display:block; color:#fff; font-size:1.1rem; font-weight:600; letter-spacing:-.02em; overflow-wrap:anywhere; }
.olmi-company-panel .olmi-contact-row div > span { display:block; color:#b7c1ce; font-size:.79rem; margin-top:5px; line-height:1.8; }
.olmi-company-panel .olmi-button-secondary { color:#fff; border-color:#697789; background:transparent; width:100%; margin-top:18px; }
.olmi-company-panel .olmi-button-secondary:hover { background:#fff; color:#181b20; }
.olmi-company-panel .olmi-company-meta { display:flex; justify-content:space-between; gap:10px; color:#97a5b6; font-size:.61rem; padding-top:28px; margin-top:28px; border-top:1px solid #ffffff1c; }
.olmi-form-section .olmi-p-form { padding:36px; border:1px solid #dfe5eb; border-radius:22px; box-shadow:0 14px 40px #1c283405; }
.olmi-p-form .olmi-form-title { display:flex; align-items:center; gap:16px; }
.olmi-p-form .olmi-form-title h2 { font-size:1.85rem; line-height:1.15; margin:8px 0 0; }
.olmi-p-form .olmi-form-title .olmi-eyebrow { font-size:.56rem; margin:0; }
.olmi-p-form .olmi-form-title .olmi-eyebrow::before { display:none; }
.olmi-p-form .olmi-form-intro { color:#717c88; font-size:.84rem; line-height:1.8; margin:22px 0 28px; padding-bottom:24px; border-bottom:1px solid #e8ecf0; }
.olmi-p-form label { display:block; }
.olmi-p-form label > span { display:block; font-size:.76rem; color:#45515f; font-weight:600; margin-bottom:8px; }
.olmi-p-form label b { color:var(--olmi-red); font-weight:500; }
.olmi-p-form label small { color:#929ba6; font-weight:400; margin-left:5px; }
.olmi-p-form input,.olmi-p-form textarea { width:100%; }
.olmi-p-form textarea { padding:14px; resize:vertical; min-height:110px; }
.olmi-p-form .olmi-form-submit { display:flex; align-items:center; justify-content:space-between; gap:22px; margin-top:4px; }
.olmi-p-form .olmi-form-submit .olmi-small { font-size:.64rem; color:#808a97; line-height:1.8; margin:0; }
.olmi-p-form .olmi-form-submit .olmi-button { font-size:.8rem; flex-shrink:0; min-height:50px; padding:12px 18px; }
.olmi-p-form .olmi-form-result:not(:empty) { border:1px solid #bcd8ca; background:#f0f8f3; border-radius:10px; padding:18px; font-size:.86rem; line-height:1.8; }
.olmi-p-form .olmi-form-result.is-error:not(:empty) { background:#fff5f5; border-color:#efc9cd; }
.olmi-p-form .olmi-car-context { display:flex; align-items:center; gap:10px; padding:14px; margin-bottom:20px; background:#f3f6f8; border-radius:8px; font-size:.8rem; }
.olmi-p-form .olmi-form-divider { border-top:1px solid #e8ecf0; padding-top:22px; margin-bottom:22px; font-size:.72rem; color:#798492; }
.olmi-p-contact .olmi-contact-bottom { display:flex; justify-content:space-between; align-items:center; margin-top:32px; padding:24px 0 0; border-top:1px solid #e0e6ec; font-size:.8rem; color:#74808e; }
.olmi-contact-bottom > span { display:flex; align-items:center; gap:12px; }
.olmi-p-order-form { padding:72px 0; }
.olmi-p-order-form .olmi-form-layout { gap:60px; grid-template-columns:.85fr 1.15fr; }
.olmi-p-order-form .olmi-order-aside h2 { font-size:clamp(2.1rem,3.1vw,3.4rem); line-height:1.12; margin:20px 0; }
.olmi-p-order-form .olmi-order-aside > p:not(.olmi-eyebrow) { color:#717d8b; line-height:1.85; font-size:.95rem; max-width:43ch; margin-bottom:32px; }
.olmi-p-order-form .olmi-order-note { display:flex; gap:14px; color:#75808f; margin-top:26px; font-size:.74rem; line-height:1.8; }
.olmi-p-order-form .olmi-order-note svg { flex-shrink:0; }

/* Dokument: spis po lewej, uporządkowane sekcje po prawej. */
.olmi-p-policy { padding:60px 0 80px; background:#f6f8f9; }
.olmi-p-policy .olmi-page-heading h1 { font-size:clamp(2.4rem,4vw,4rem); }
.olmi-policy-grid { display:grid; grid-template-columns:260px 1fr; gap:40px; align-items:start; }
.olmi-policy-grid nav { position:sticky; top:50px; display:grid; gap:4px; }
.olmi-policy-grid nav a { display:flex; gap:14px; align-items:center; padding:15px 12px; border-bottom:1px solid #dfe5eb; text-decoration:none; font-size:.8rem; }
.olmi-policy-grid nav a span { color:var(--olmi-red); font-size:.62rem; }
.olmi-policy-content { display:grid; gap:20px; }
.olmi-policy-content > section { padding:32px 36px; background:#fff; border:1px solid #e2e7ec; border-radius:16px; }
.olmi-policy-content h2 { font-size:1.45rem; margin:10px 0 20px; }
.olmi-policy-number { color:var(--olmi-red); font-size:.65rem; letter-spacing:.14em; }
.olmi-policy-content p { max-width:75ch; color:#65717f; line-height:1.9; font-size:.9rem; }

@media(max-width:1100px) {
 .olmi-v2-hero .olmi-hero-grid { gap:32px; }
 .olmi-section .olmi-editorial-hero,.olmi-section .olmi-story-grid { gap:40px; }
 .olmi-section .olmi-editorial-intro { grid-template-columns:1fr; gap:24px; }
 .olmi-catalog .olmi-filter-main { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .olmi-catalog .olmi-filter-main .olmi-button { grid-column:1/-1; }
 .olmi-p-form .olmi-form-submit { flex-direction:column; align-items:stretch; }
 .olmi-p-contact .olmi-company-panel,.olmi-form-section .olmi-p-form { padding:28px; }
 .olmi-p-contact .olmi-p-contact-grid { gap:24px; grid-template-columns:.8fr 1.2fr; }
 .olmi-policy-grid { grid-template-columns:210px 1fr; gap:24px; }
}
@media(max-width:820px) {
 .olmi-v2-hero { padding:30px 0 36px; }
 .olmi-v2-hero .olmi-hero-grid { gap:28px; }
 .olmi-v2-hero .olmi-hero-visual { max-width:680px; width:100%; margin-inline:auto; }
 .olmi-v2-hero .olmi-quick-select { margin-top:28px; padding:18px; }
 .olmi-section .olmi-editorial-hero,.olmi-section .olmi-story-grid,.olmi-p-contact .olmi-p-contact-grid,.olmi-p-order-form .olmi-form-layout { grid-template-columns:1fr; }
 .olmi-section .olmi-editorial-hero h1 { font-size:clamp(2.9rem,7.5vw,4.5rem); }
 .olmi-p-about,.olmi-p-order { padding:40px 0 52px; }
 .olmi-section .olmi-value-grid { gap:16px; margin-top:32px; }
 .olmi-section .olmi-value-grid article { padding:22px; }
 .olmi-section .olmi-value-grid h3 { font-size:1.1rem; }
 .olmi-section .olmi-value-grid p { font-size:.82rem; }
 .olmi-section .olmi-editorial-intro { margin-top:40px; padding-top:36px; }
 .olmi-p-story,.olmi-p-order-form { padding:48px 0; }
 .olmi-section .olmi-cta-box { padding:32px; }
 .olmi-p-contact { padding:36px 0 48px; }
 .olmi-p-contact .olmi-company-panel { padding:28px; }
 .olmi-single .olmi-single-details { grid-template-columns:1fr; }
 .olmi-policy-grid { grid-template-columns:1fr; }
 .olmi-policy-grid nav { position:static; grid-template-columns:1fr 1fr; }
}
@media(max-width:540px) {
 .olmi-v2-hero .olmi-hero-copy { padding:0; }
 .olmi-v2-hero .olmi-hero-stamp { padding:16px 18px; }
 .olmi-v2-hero figcaption { padding:18px 70px 18px 18px; }
 .olmi-v2-hero figcaption > span { font-size:.85rem; }
 .olmi-v2-hero figcaption small { font-size:.55rem; }
 .olmi-v2-hero .olmi-hero-circle { width:38px; height:38px; bottom:19px; right:18px; }
 .olmi-v2-hero .olmi-quick-select { padding:16px; border-radius:14px; }
 .olmi-v2-hero .olmi-quick-select a { white-space:normal; font-size:.74rem; }
 .olmi-catalog-home { padding:48px 0; }
 .olmi-catalog .olmi-catalog-heading { padding:0 0 26px; }
 .olmi-catalog .olmi-catalog-heading .olmi-breadcrumb { margin-bottom:28px; }
 .olmi-catalog .olmi-catalog-heading h1 { font-size:2.55rem; }
 .olmi-catalog .olmi-filters { padding:20px; }
 .olmi-catalog .olmi-filter-heading { align-items:start; margin-bottom:20px; padding-bottom:20px; }
 .olmi-catalog .olmi-filter-heading > span { font-size:.82rem; }
 .olmi-catalog .olmi-filter-heading small { display:none; }
 .olmi-catalog .olmi-filter-main,.olmi-catalog .olmi-filter-extra { grid-template-columns:1fr; }
 .olmi-catalog .olmi-filter-more summary small { display:block; margin:5px 0 0; font-size:.65rem; }
 .olmi-catalog .olmi-filter-bottom { gap:12px; }
 .olmi-catalog .olmi-filter-bottom label { width:100%; }
 .olmi-catalog .olmi-filter-bottom > .olmi-button { width:100%; }
 .olmi-section .olmi-editorial-hero h1 { font-size:2.85rem; }
 .olmi-section .olmi-lead { font-size:.98rem; }
 .olmi-section .olmi-value-grid,.olmi-section .olmi-editorial-intro > div { grid-template-columns:1fr; gap:18px; }
 .olmi-section .olmi-value-grid article { padding:26px; }
 .olmi-section .olmi-value-top { margin-bottom:22px; }
 .olmi-section .olmi-value-grid h3 { font-size:1.35rem; }
 .olmi-section .olmi-value-grid p { font-size:.9rem; }
 .olmi-section .olmi-editorial-intro h2 { font-size:2rem; margin-bottom:0; }
 .olmi-section .olmi-editorial-photo figcaption { padding:15px 18px; font-size:.64rem; }
 .olmi-p-cta { padding:36px 0; }
 .olmi-section .olmi-cta-box { flex-direction:column; align-items:flex-start; gap:28px; padding:28px; border-radius:18px; }
 .olmi-section .olmi-cta-box h2 { font-size:1.85rem; }
 .olmi-section .olmi-route-art { padding:24px; }
 .olmi-route-art .olmi-route-top { font-size:.46rem; }
 .olmi-route-art .olmi-route-bottom strong { font-size:1.45rem; }
 .olmi-route-art .olmi-route-bottom > span { font-size:.55rem; }
 .olmi-p-contact .olmi-contact-heading h1 { font-size:2.7rem; }
 .olmi-p-contact .olmi-company-panel,.olmi-form-section .olmi-p-form { padding:24px; border-radius:18px; }
 .olmi-p-form .olmi-form-title h2 { font-size:1.7rem; }
 .olmi-p-form .olmi-form-grid { grid-template-columns:1fr; gap:0; }
 .olmi-p-contact .olmi-contact-bottom { align-items:flex-start; flex-direction:column; gap:18px; }
 .olmi-single .olmi-single-details > section { padding:22px; }
 .olmi-single .olmi-gallery-main { aspect-ratio:4/3; padding:8px; }
 .olmi-policy-grid nav { grid-template-columns:1fr; }
 .olmi-policy-content > section { padding:24px; }
}
@media(prefers-reduced-motion:reduce) {
 .olmi-route-art .olmi-route-path { animation:none; }
 .olmi-section .olmi-value-grid article:hover,.olmi-catalog .olmi-car-card:hover { transform:none; }
}
