/* Společná vizuální vrstva všech pěti stránek půjčovny.
   Data, původní formuláře a události zůstávají beze změny. */
:root {
  --n-bg:#202222; --n-card:#0b0a0b; --n-raised:#161515;
  --n-line:#591c21; --n-text:#f2eeee; --n-muted:#b8beb8;
  --n-green:#f20d21; --n-yellow:#c2bfbf; --n-orange:#f54756; --n-pink:#f53c4d;
  --red:var(--n-green); --red-dark:#d6d3d3; --black:#0b0a0b;
  --ink:var(--n-text); --muted:var(--n-muted); --line:var(--n-line);
  --shell:1440px; /* Roman 13. 10. 2026: obsah musí zůstat tam, kde je ve stylu Weber */  color-scheme:dark;
}
body { background:var(--n-bg); color:var(--n-text); }
::selection { background:var(--n-green); color:#0c0c0c; }
a,button,input,textarea,summary { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid var(--n-yellow); outline-offset:4px; }
button,input,textarea,select { font:inherit; }
input[type=checkbox],input[type=radio] { accent-color:var(--n-green); }
h1,h2,h3 { text-wrap:balance; }
.r-header { background:#0b0a0b; border-color:#302e2e; backdrop-filter:none; }
.r-nav a,.r-header-contact { color:var(--n-text); text-shadow:none; }
.r-nav a.active,.r-nav a:hover { color:var(--n-green); }
.r-nav a::after { background:var(--n-green); }
.r-header-inner .r-logo img { height:auto; object-fit:initial; }
.r-header-inner .r-logo { margin-left:0; }
.r-hero { background-color:#0b0a0b; }
.r-hero-web,.r-hero .r-kicker { color:var(--n-green); }
.r-hero h1 { letter-spacing:-.045em; }
.r-hero-lead { color:#c5cbc5; }
.r-hero-lead .r-hero-catering { color:#c5cbc5; }
.r-hero-points span { color:var(--n-green); border-color:#71242b; background:#171617; }
.r-hero-points li:nth-child(2) span { color:var(--n-yellow); background:#181717; }
.r-hero-points li:nth-child(3) span { color:var(--n-orange); background:#1c1a1b; }
.r-btn { border-radius:14px; letter-spacing:0; }
.r-btn-primary,.r-btn-dark,.r-btn-contact { background:var(--n-green); border-color:var(--n-green); color:#0b0a0b; text-shadow:none; box-shadow:none; }
.r-btn-primary:hover,.r-btn-dark:hover,.r-btn-contact:hover { background:#d2cfcf; color:#0b0a0b; }
.r-btn-ghost { background:#141314; border-color:#802830; color:var(--n-text); }
.r-btn-ghost:hover { background:#242223; border-color:var(--n-green); }
.r-hero-actions .r-btn-primary { background:var(--n-green); border-color:var(--n-green); color:#0e0d0d; }
.r-hero-actions .r-btn:hover { background:#d2cfcf; border-color:#d2cfcf; color:#0e0d0d; }
.r-benefits { background:#100f0f; border-color:var(--n-line); box-shadow:none; }
.r-benefit-grid article { border-color:var(--n-line); }
.r-benefit-grid article>span { color:var(--n-green); }
.r-benefit-grid article:nth-child(2)>span { color:var(--n-yellow); }
.r-benefit-grid article:nth-child(3)>span { color:var(--n-orange); }
.r-benefit-grid article:nth-child(4)>span { color:var(--n-pink); }
.r-benefit-grid strong { color:var(--n-text); }
.r-benefit-grid small { color:var(--n-muted); }
.r-how { padding-block:60px; }
.r-how h2 { font-size:clamp(28px,3vw,42px); letter-spacing:-.035em; }
.r-how h2::after { background:var(--n-green); height:4px; border-radius:4px; margin:18px auto 32px; }
.r-steps { gap:12px; }
.r-steps article { background:var(--n-card); border:1px solid var(--n-line); border-radius:22px 38px 22px 22px; padding:24px 18px; grid-template-columns:36px 1fr; gap:12px; align-items:start; }
.r-steps b { font-size:35px; line-height:1; color:var(--n-green); font-weight:500; grid-row:1/3; }
.r-steps span { border:0; background:none; width:28px; height:28px; color:var(--n-green); }
.r-steps article:nth-child(2) b,.r-steps article:nth-child(2) span { color:var(--n-yellow); }
.r-steps article:nth-child(3) b,.r-steps article:nth-child(3) span { color:var(--n-orange); }
.r-steps article:nth-child(4) b,.r-steps article:nth-child(4) span { color:var(--n-pink); }
.r-steps article>div { grid-column:2; }
.r-steps strong { font-size:13px; line-height:1.5; }
.r-steps p { color:var(--n-muted); }
.r-steps article>div { min-width:0; }
.r-steps strong,.r-steps p { white-space:normal; overflow:visible; text-overflow:clip; }
.r-longterm-banner { padding-block:0 30px; }
.r-lb-odkaz { display:grid; grid-template-columns:1fr auto; align-items:center; gap:24px; padding:36px; border:1px solid #682127; border-radius:28px; background:radial-gradient(ellipse at 100% 100%,#262425 0,transparent 55%),#0b0a0b; color:var(--n-text); text-decoration:none; }
.r-lb-odkaz picture { display:none; }
.r-lb-text { position:static; width:auto; height:auto; padding:0; margin:0; clip:auto; clip-path:none; overflow:visible; white-space:normal; color:#c7cec5; font-size:15px; line-height:1.7; grid-column:1; grid-row:1; }
.r-lb-text #longTitle { display:block; max-width:780px; margin-bottom:14px; color:var(--n-text); font-size:clamp(25px,2.8vw,40px); font-weight:800; letter-spacing:-.035em; line-height:1.15; }
.r-lb-odkaz .r-lb-cudlik { position:static; display:flex; gap:24px; align-items:center; width:auto; height:auto; transform:none; border:0; border-radius:14px; padding:20px 26px; background:var(--n-yellow); color:#0c0b0b; grid-column:2; grid-row:1; opacity:1; box-shadow:none; }
.r-lb-cudlik b,.r-lb-cudlik i { color:inherit; }
.r-neon { background:transparent; }
.r-neon-w { background:var(--n-card); border:1px solid var(--n-line); border-radius:26px; box-shadow:0 18px 28px #0002; }
.r-neon-jen-kauce .r-neon-w { border-color:var(--n-line); }
.r-neon-jen-kauce .r-neon-pruh { background:var(--n-pink); color:#0b0b0b; border:0; border-radius:14px; }
.r-neon-jen-kauce .r-neon-pruh b,.r-neon-jen-kauce .r-neon-pruh small { color:#0b0b0b; }
.r-neon-penezenka svg { stroke:var(--n-pink); }
.r-neon-penezenka circle { fill:var(--n-pink); }
.r-catalog { background:var(--n-bg); padding-block:50px 32px; }
.r-catalog-heading { align-items:flex-start; gap:26px; flex-direction:column; }
.r-catalog h2 { font-size:clamp(32px,3.8vw,54px); letter-spacing:-.045em; }
.r-catalog-heading p { color:var(--n-muted); }
.rental-filter { justify-content:flex-start; gap:8px; }
.rental-filter button { padding:12px 18px; border:1px solid #6d2229; border-radius:30px; background:#141313; color:#e0e5dc; font-size:13px; }
.rental-filter button[data-active=true],.rental-filter button:hover,.rental-filter:hover button[data-active=true]:not(:hover) { background:var(--n-green); border-color:var(--n-green); color:#111010; }
.rental-length-row { background:var(--n-card); border:1px solid var(--n-line); border-radius:22px; padding:22px; margin-bottom:28px; }
.rental-length-label { color:var(--n-muted); }
.rental-length { gap:8px; flex-wrap:wrap; }
.rental-length button { background:#1d1c1c; border:1px solid #672127; border-radius:12px; color:#e4e1e1; }
.rental-length button[data-active=true],.rental-length button:hover { background:var(--n-yellow); border-color:var(--n-yellow); color:#0b0a0a; box-shadow:none; }
.rental-length button small { color:inherit; opacity:.8; }
.rental-long-note { background:#1d1c1c; border-color:#6d2229; color:#dcd9d9; border-radius:16px; }
.rental-long-note a { color:var(--n-yellow); }
.rental-grid { gap:24px; align-items:stretch; }
.rental-card { --card-accent:var(--n-green); position:relative; background:var(--n-card); color:var(--n-text); border:1px solid #6c2229; border-radius:30px 52px 30px 30px; padding:22px 16px 20px; box-shadow:0 14px 28px #0003; overflow:hidden; }
.rental-card:nth-child(4n+2) { --card-accent:var(--n-yellow); }
.rental-card:nth-child(4n+3) { --card-accent:var(--n-orange); }
.rental-card:nth-child(4n+4) { --card-accent:var(--n-pink); }
.rental-card:hover { transform:none; border-color:var(--card-accent); box-shadow:0 18px 30px #0005; }
.rental-card.je-vybrana,.rental-card.je-vybrana:hover { border-color:var(--n-green); box-shadow:0 0 0 2px var(--n-green),0 14px 28px #0004; }
.rental-card .rental-card-heading,.rental-card:hover .rental-card-heading { display:block; min-height:95px; margin:0 8px 16px; width:auto; border:0; background:transparent; overflow:visible; }
.rental-card .rental-card-heading h3 { display:block; min-height:0; padding:0; margin:0 0 10px; background:none; border:0; color:var(--n-text); font-size:clamp(20px,1.8vw,28px); line-height:1.1; letter-spacing:-.04em; text-align:left; }
.rental-card:hover .rental-card-heading h3 { background:none; color:var(--card-accent); }
.rental-card .rental-card-heading h3 { clip-path:none; }
.rental-card .rental-card-type { display:inline-flex; min-height:0; padding:6px 10px; border:1px solid #641f25; border-radius:8px; background:#1d1c1c; color:var(--card-accent); font-size:11px; text-align:left; }
.rental-card .rental-card-image { height:260px; margin:0 8px 16px; border:0; border-radius:20px; background:radial-gradient(ellipse at 50% 70%,#fff,#daddd5 80%); }
.rental-card .rental-card-image img { height:100%; padding:22px; margin:0; object-fit:contain; mix-blend-mode:multiply; }
.rental-card .rental-kapacita { background:#111010; color:var(--n-text); border:1px solid #872a32; border-radius:10px; box-shadow:none; }
.rental-kapacita svg { color:var(--card-accent); }
.rental-card .rental-description { margin:0 8px 16px; min-height:44px; color:#c5ccc1; font-size:14px; line-height:1.55; }
.rental-card .rental-equipment { background:#1a1919; border:1px solid #621f25; border-radius:12px; color:#d8d5d5; font-size:12px; padding:12px; }
.rental-card .rental-mimo-prahu { color:#aeb7aa; background:transparent; font-size:11px; }
.rental-card .rental-mimo-prahu svg { color:var(--n-orange); }
.rental-card .rental-mimo-prahu svg { background:#211f1f; stroke:var(--n-orange); }
.rental-card .rental-price-panel { display:grid; grid-template-columns:1.12fr 1fr 1fr; border:1px solid #302d2e; border-radius:16px; background:#161516; padding:0; min-height:100px; }
.rental-card .rental-price-panel>span { padding:15px 9px; border-color:#312f30; background:none; }
.rental-card .rental-price-panel small,.rental-card .rental-price-panel em { color:#c0c9b9; }
.rental-card .rental-price-panel strong { color:var(--n-yellow); font-size:clamp(16px,1.4vw,23px); letter-spacing:-.04em; }
.rental-card .rental-price-panel>span:first-child { background:var(--n-green); border-color:var(--n-green); }
.rental-card .rental-price-panel>span:first-child strong { color:#0f0e0e; font-size:clamp(22px,2vw,32px); }
.rental-card .rental-price-panel>span:first-child small,.rental-card .rental-price-panel>span:first-child em { color:#1f1e1e; }
.rental-card .rental-price-panel .rental-kauce strong { color:var(--n-orange); }
.rental-card .rental-price-panel>span { clip-path:none; margin-left:0; }
.rental-card .rental-price-panel>span.rental-kauce { padding-left:9px; background:none; }
.rental-card .rental-volby { gap:8px; margin-block:16px; }
.rental-card .rental-volba { border:1px solid #5c1d23; border-radius:14px; background:#161515; color:#dcd9d9; padding:15px 8px; box-shadow:none; }
.rental-card .rental-volba>b { color:var(--n-green); background:none; }
.rental-card .rental-volby li:nth-child(2) .rental-volba>b { color:var(--n-orange); }
.rental-card .rental-volby li:nth-child(3) .rental-volba>b { color:var(--n-yellow); }
.rental-card .rental-volby li:nth-child(4) .rental-volba>b { color:var(--n-pink); }
.rental-card .rental-volba>strong { color:var(--n-text); }
.rental-card .rental-volba>span { color:#bfc8b9; }
.rental-card .rental-volba:hover,.rental-card .rental-volba:has(:checked) { background:#212020; border-color:var(--n-green); box-shadow:inset 0 0 0 1px var(--n-green); color:#f2efef; }
.rental-card .rental-volba:has(:checked)>strong,.rental-card .rental-volba:has(:checked)>span { color:#f2efef; }
.rental-card .rental-tech { border:1px solid #2f2d2d; border-radius:12px; background:#131213; color:#d2cfcf; }
.rental-card .rental-tech summary { color:var(--n-text); padding:14px 12px; font-size:12px; }
.rental-card .rental-tech summary::after,.rental-upozorneni { color:var(--n-green); }
.rental-card .rental-tech dl,.rental-card .rental-instructions-copy { background:#131213; color:#c7d0c0; line-height:1.7; }
.rental-card .rental-tech dt,.rental-card .rental-tech dd { color:#c7d0c0; border-color:#312f2f; }
.rental-card:has(.rental-volba:hover) .rental-instructions,.rental-card:has([data-volba]:checked) .rental-instructions { background:#212020; border-color:#a0333d; box-shadow:none; }
.rental-card:has(.rental-volba:hover) .rental-instructions>summary,.rental-card:has([data-volba]:checked) .rental-instructions>summary,.rental-card:has([data-volba]:checked) .rental-upozorneni { color:#dedbdb; }
.rental-card>.rental-button { background:var(--n-green); color:#0e0d0d; margin-top:auto; border-radius:14px; min-height:54px; font-size:13px; box-shadow:none; }
.rental-card>.rental-button:hover { background:#d2cfcf; color:#0e0d0d; }
.r-potraviny { background:#161515; border-block:1px solid var(--n-line); padding-block:50px; }
.r-section-kicker { color:var(--n-green); }
.r-pot-perex { color:var(--n-muted); }
.r-pot-zalozky button { background:#1f1e1e; color:#d2cfcf; border-color:#641f25; border-radius:30px; }
.r-pot-zalozky button[aria-selected=true],.r-pot-zalozky button:hover { background:var(--n-orange); color:#101010; border-color:var(--n-orange); }
.r-pot-rada li { background:var(--n-card); border-color:#662026; border-radius:20px; }
.r-pot-rada li a { color:var(--n-text); }
.r-pot-rada img { background:#fff; border-radius:12px; }
.r-pot-cena { color:var(--n-orange); }
.r-contact-stage { background:var(--n-bg); }
.r-contact { background:var(--n-card); border:1px solid #5e1e24; border-radius:28px; }
.r-contact-copy h2 em,.r-contact-copy .r-section-kicker { color:var(--n-green); }
.r-contact-details { border-color:#641f25; }
.r-contact-details a>span,.r-contact .r-contact-details a>span { color:var(--n-green); border-color:#6e232a; }
.r-contact-details a:hover { color:var(--n-green); }
.r-contact-details a[data-mapa].is-aktivni>span { background:#212020; box-shadow:0 0 0 1px var(--n-green); }
.r-contact-copy>a.r-contact-telefon { color:var(--n-orange); text-shadow:none; }
.r-contact-copy>a.r-contact-telefon:hover { color:var(--n-yellow); text-shadow:none; }
.kk-karta { border-color:#6d232a; border-radius:24px; background:#100f0f; }
.kk-telo { background:#100f0f; color:var(--n-text); }
.kk-popis,.kk-udaje dt { color:#bdc8b4; }
.kk-udaje dd,.kk-udaje a,.kk-vice { color:#f0eded; }
.kk-tlacitka .kk-navigovat { background:var(--n-green); color:#101010; border-color:var(--n-green); border-radius:12px; }
.kk-ctvrt { color:var(--n-yellow); }
.pg,.pg-spodni-plocha,.site-footer { background:#0b0a0b; color:#bac4b3; border-color:#302e2e; }
.pg-pravni a,.site-footer a { color:#c8c5c5; }
/* Druhá stránka: stejná typografie, tabulky a pravidla. */
.dp-hero { background:radial-gradient(ellipse at 85% 10%,#222021,transparent 55%),#0b0a0b; }
.dp-hero-inner { max-width:var(--shell); }
.dp-hero .r-section-kicker,.dp-sezona .r-section-kicker { color:var(--n-yellow); }
.dp-hero h1 { max-width:1000px; font-size:clamp(35px,5vw,68px); letter-spacing:-.045em; }
.dp-how article { background:var(--n-card); border-color:var(--n-line); border-radius:22px 40px 22px 22px; padding:26px; }
.dp-how article>span { color:var(--n-green); background:#201e1f; border-radius:14px; }
.dp-how article:nth-child(2n)>span { color:var(--n-yellow); background:#1b1a1a; }
.dp-how p,.dp-cenik-heading p,.dp-pravidla-lead,.dp-pravidla-seznam p,.dp-cenik-note { color:var(--n-muted); }
.dp-tabulka-obal { border-radius:20px; }
.dp-tabulka th,.dp-tabulka td { border-color:var(--n-line); }
.dp-tabulka thead th { background:#232122; color:var(--n-yellow); }
.dp-tabulka tbody th,.dp-tabulka tbody td { background:#101010; color:var(--n-text); }
.dp-tabulka tbody td:last-child { background:#232222; }
.dp-tabulka tbody td:last-child strong { color:var(--n-green); }
.dp-sezona { background:#0b0a0b; border-block:1px solid #5a1d22; }
.dp-pravidla-seznam { border-radius:22px; }
.dp-pravidla-seznam>li { background:#0d0d0d; }
.dp-pravidla-seznam>li::before { background:var(--n-yellow); color:#0b0a0a; }
/* Objednávka: zachované formulářové prvky i validační stavy. */
.po-dialog { background:#0f0f0f; color:var(--n-text); border:1px solid #872b33; border-radius:24px; }
.po-dialog { overflow:hidden; }
.po-form { max-height:calc(100dvh - 44px); }
.po-nezavazne { color:var(--n-muted); border-color:var(--n-line); }
.po-dialog::backdrop { background:#060506ba; backdrop-filter:blur(5px); }
.po-hlava { background:#0f0f0f; border-color:#571c21; }
.po-zavrit { background:#292728; color:var(--n-text); border-radius:50%; }
.po-shrnuti,.po-polozka { background:#1b1a1a; color:var(--n-text); border-color:#682127; border-radius:16px; }
.po-popis { color:var(--n-text); }
.po-form input:not([type=checkbox]):not([type=radio]),.po-form textarea,.po-form select { background:#0b0a0b; color:var(--n-text); border:1px solid #802931; border-radius:10px; }
.po-napoveda,.po-radky dt,.po-volba small { color:var(--n-muted); }
.po-volba,.po-zaskrtnuti { background:#141313; color:var(--n-text); border:1px solid #682127; border-radius:12px; }
.po-volba:has(input:checked),.po-zaskrtnuti:has(input:checked) { background:#252424; color:#f3efef; border-color:var(--n-green); box-shadow:none; }
.po-zpet { background:#252323; border-color:#822931; color:var(--n-text); }
.po-odeslat { background:var(--n-green); color:#0e0d0d; }
.po-odeslat:hover { background:#d7d4d4; color:#0e0d0d; }
.po-hlaska { background:#252323; color:var(--n-text); }
.po-hlaska.je-chyba,.po-ico-stav.je-chyba { background:#262525; color:#dcd9d9; }
.po-hlaska.je-hotovo,.po-ico-stav.je-hotovo { background:#252424; color:#cdcaca; }
/* Právní stránky mají klidný povrch pro delší čtení. */
.site-header { background:var(--n-card); border-color:var(--n-line); }
.site-header .home-button { background:#212020; color:var(--n-green); border-color:#74252c; border-radius:12px; }
.legal,.pravo { background:#0f0e0e; color:#dcd9d9; border:1px solid #682127; border-radius:26px; padding:clamp(24px,4vw,60px); margin-block:36px; }
.legal h1,.pravo h1 { color:var(--n-text); font-size:clamp(32px,4vw,52px); letter-spacing:-.04em; }
.legal h2,.pravo h2 { color:var(--n-text); }
.legal a,.pravo a { color:var(--n-green); }
.legal p,.legal li,.pravo p,.pravo li { line-height:1.8; }
.legal .lead,.podminky-perex,.pravo-uvod,.podminky-datum,.legal-date { color:var(--n-muted); }
.legal .podminky-perex,.legal .podminky-datum,.legal .legal-date,.pravo .pravo-uvod { color:var(--n-muted); }
.podminky-obsah,.pravo-formular,.pravo-poznamka { background:#1b1a1a; color:var(--n-text); border-color:#73242b; border-radius:16px; }
.info-tabulka th,.info-tabulka td { background:#171617; color:var(--n-text); border-color:#682127; }
@media(min-width:1101px) { .rental-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:1100px) {
  .r-steps { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .r-lb-odkaz { grid-template-columns:1fr; }
  .r-lb-odkaz .r-lb-cudlik { grid-column:1; grid-row:2; justify-self:start; }
}
@media(max-width:760px) {
  .r-how { padding-block:36px; }
  .r-steps { grid-template-columns:1fr 1fr; }
  .r-steps article { padding:20px 14px; grid-template-columns:28px 1fr; gap:8px; }
  .r-steps article:last-child { grid-column:1/-1; }
  .r-lb-odkaz { padding:24px; border-radius:22px; gap:20px; }
  .rental-length-row { padding:16px; }
  .rental-filter button { padding:10px 13px; }
  .r-catalog { padding-top:30px; }
  .rental-card .rental-card-heading { min-height:0; }
  .rental-card .rental-card-heading h3 { font-size:28px; }
  .rental-card .rental-card-image { height:270px; }
  .rental-card .rental-price-panel>span:first-child strong { font-size:28px; }
  .rental-card .rental-price-panel strong { font-size:21px; }
  .legal,.pravo { width:calc(100% - 30px); padding:24px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation:none!important; transition:none!important; }
}

/* Společný základ rozložení půjčovny; závodní červenočerná paleta. */
:root { --n-bg:#121212; --n-card:#171616; --n-raised:#212020; --n-line:#693035; --n-text:#faf6f6; --n-muted:#cfcccc; --neon:linear-gradient(110deg,#e40c1f 0%,#ed3949 47%,#f3182c 77%,#eb192c 100%); }
body { background:radial-gradient(ellipse at 100% 4%,#63101755,transparent 900px),var(--n-bg); }
.r-header { background:#121212; border-bottom:1px solid #77363c; }
.r-header-inner { gap:28px; }
.r-nav a.active { color:white; }
.r-nav a.active::after { height:3px; background:var(--neon); box-shadow:0 0 14px #f53d4e; }
.r-header-contact { color:#f8818b; }
.r-hero { display:flex; flex-direction:column; min-height:0; margin:0; padding:0; overflow:hidden; background:radial-gradient(ellipse at 90% 15%,#dc0c1e77,transparent 55%),radial-gradient(ellipse at 55% 100%,#dc0c1e99,transparent 55%),#171616; }
.r-hero::before,.r-hero::after { content:none; }
.r-hero-content { display:grid; grid-template-columns:1.15fr 1fr; gap:0 44px; padding-block:64px 58px; align-content:center; }
.r-hero-content>* { grid-column:1; position:relative; z-index:1; }
.r-hero .r-hero-web { color:#f8828c; font-size:15px; letter-spacing:.1em; margin:0 0 22px; line-height:1.4; }
.r-hero h1.r-hero-h1-radek { max-width:650px; white-space:normal; font-size:clamp(42px,5vw,70px); line-height:1.02; text-transform:none; letter-spacing:-.055em; font-weight:900; }
.r-hero-lead { max-width:none; white-space:normal; font-size:16px; line-height:1.65; margin:24px 0; }
.r-hero-lead .r-hero-catering { font-size:inherit; font-weight:400; color:#dbd8d8; }
.r-hero-lead strong { color:#faf6f6; font-weight:600; }
.r-hero-points { display:flex; flex-wrap:wrap; gap:18px; margin:0 0 28px; }
.r-hero-points li { min-width:0; padding:0; margin:0; border:0; gap:10px; }
.r-hero-points span { width:32px; height:32px; border:0; background:transparent!important; border-radius:0; color:var(--n-green); filter:drop-shadow(0 0 7px #f20d2155); }
.r-hero-points strong { font-size:12px; color:#eeeaea; }
.r-hero-actions { display:flex; flex-wrap:wrap; gap:12px; }
.r-hero-actions .r-btn { min-width:0; min-height:50px; width:auto; padding:14px 22px; font-size:12px; border-radius:12px; }
.r-hero-actions .r-btn-primary,.rental-card>.rental-button,.po-odeslat,.r-btn-primary,.r-btn-dark { background:var(--neon); color:white; border:1px solid #f87984; box-shadow:0 4px 22px #f425384d,inset 0 1px 0 #ffffff44; }
.r-hero-actions .r-btn-primary:hover,.rental-card>.rental-button:hover,.po-odeslat:hover { color:white; background:linear-gradient(110deg,#f20d21,#f54050,#f32e40); box-shadow:0 0 25px #f42e4066; }
.r-hero-actions .r-btn-ghost { background:#1d1b1c; border:1px solid #a96e73; color:white; }
.r-hero-content>.r-hero-showcase { grid-column:2; grid-row:1/6; align-self:center; min-width:0; width:100%; aspect-ratio:1; position:relative; display:grid; place-items:center; isolation:isolate; }
.r-hero-orbit { position:absolute; inset:2%; border:1px solid #dcd9d9; border-radius:50%; box-shadow:0 0 30px #f76471,inset 0 0 35px #ee3546,0 0 95px #f20d2177; background:radial-gradient(circle at 50% 40%,#db3b49a0,#c4142436 65%); }
.r-hero-orbit::before { content:""; position:absolute; inset:15% -7%; border:1px solid #cac6c6bb; border-radius:50%; transform:rotate(-32deg); box-shadow:0 0 12px #f2112666; }
.r-hero-orbit::after { content:""; position:absolute; inset:auto 0 -3%; height:15%; border-radius:50%; background:linear-gradient(#ece8e8,#cac6c6 45%,#e13746); box-shadow:0 14px 50px #ea1427; }
.r-hero-product { z-index:1; width:81%; aspect-ratio:1; overflow:hidden; border-radius:48% 48% 18% 18%; background:radial-gradient(ellipse at center,#fff,#ede9e9 75%); box-shadow:0 0 60px #c2bfbf55; }
.r-hero-product img { width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; padding:20px; }
.r-benefits { width:100%; margin:0; border-block:1px solid #7c393f; background:#171617e8; }
.r-benefit-grid { min-height:108px; }
.r-benefit-grid article { padding:24px; border-color:#593336; }
.r-benefit-grid article:first-child { padding-left:0; }
.r-benefit-grid article:first-child>span { margin-left:0; }
.r-benefit-grid article>span { filter:drop-shadow(0 0 10px currentColor); }
.r-benefit-grid strong { font-size:14px; }
.r-benefit-grid small { font-size:12px; }
.r-how { padding-block:44px; }
.r-how h2 { font-size:28px; text-align:left; margin-bottom:22px; }
.r-how h2::after { content:none; }
.r-steps { grid-template-columns:repeat(5,minmax(0,1fr)); }
.r-steps article { border:1px solid #643035; border-radius:14px; background:linear-gradient(140deg,#2b292a66,#1c1a1b); padding:18px 12px; grid-template-columns:28px 1fr; gap:8px; }
.r-steps article:last-child { border:1px solid #643035; }
.r-steps b { font-size:25px; opacity:.9; }
.r-steps strong { font-size:11px; }
.r-steps p { font-size:12px; }
.r-lb-odkaz { background:radial-gradient(ellipse at 90% 0,#f430424d,transparent 55%),linear-gradient(115deg,#232122,#1d1b1c); border-color:#85474d; border-radius:20px; }
.r-lb-text { color:#dad6d6; }
.r-lb-text #longTitle { font-size:clamp(24px,2.7vw,36px); }
.r-lb-odkaz .r-lb-cudlik { background:var(--neon); color:white; box-shadow:0 0 20px #ef203355; }
.r-neon-w { background:linear-gradient(100deg,#201e1f,#1e1d1d); border:1px solid #763238; border-radius:16px; }
.r-neon-jen-kauce .r-neon-w { border-color:#8e343c; }
.r-neon-jen-kauce .r-neon-pruh { background:linear-gradient(110deg,#d90e20,#bc1221); color:white; }
.r-neon-jen-kauce .r-neon-pruh b,.r-neon-jen-kauce .r-neon-pruh small { color:white; }
.r-catalog { background:transparent; padding-top:44px; }
.r-catalog h2 { font-size:clamp(30px,3.8vw,46px); }
.r-catalog-heading { flex-direction:row; align-items:center; flex-wrap:wrap; margin-bottom:22px; }
.rental-filter button { border-radius:9px; padding:10px 14px; border-color:#78383e; background:#1b1a1a; color:#e0dddd; }
.rental-filter button[data-active=true],.rental-filter button:hover,.rental-filter:hover button[data-active=true]:not(:hover) { background:linear-gradient(130deg,#f23647,#f4283b); border-color:#c2bfbf; color:#fff; box-shadow:0 0 13px #ed344566; }
.rental-length-row { border:0; background:none; padding:0; margin-bottom:24px; gap:18px; }
.rental-length-label { font-size:13px; }
.rental-length button { border-radius:8px; padding:10px 16px; background:#1e1d1d; border-color:#743b40; color:#dddada; }
.rental-length button[data-active=true],.rental-length button:hover { background:linear-gradient(120deg,#f43546,#ed1428); color:white; border-color:#c8c5c5; box-shadow:0 0 15px #e8445366; }
.rental-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
.rental-card,.rental-card:nth-child(n) { --card-accent:#f20d21; display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); column-gap:24px; row-gap:10px; padding:20px; border-radius:20px; border:1px solid #a2555c; background:radial-gradient(ellipse at 100% 0,#a9232f54,transparent 45%),linear-gradient(140deg,#1e1d1d,#141313); box-shadow:0 15px 30px #0004,inset 0 1px 0 #d4d1d126; }
.rental-card:hover { border-color:#e3757f; box-shadow:0 0 0 1px #be4a54,0 0 30px #cf223222; }
.rental-card>* { grid-column:2; min-width:0; }
.rental-card .rental-card-heading,.rental-card:hover .rental-card-heading { grid-row:1; display:flex; flex-direction:column-reverse; align-items:flex-start; min-height:0; margin:0; gap:8px; border-radius:0; }
.rental-card .rental-card-heading h3 { margin:0; font-size:clamp(24px,3vw,38px); line-height:1.05; color:#fcf8f8; }
.rental-card:hover .rental-card-heading h3 { color:#fff; }
.rental-card .rental-card-type { padding:4px 9px; font-size:10px; background:#1d1b1c; border-color:#a90917; border-radius:20px; color:#c3c0c0; }
.rental-card .rental-card-image { grid-column:1; grid-row:1/11; margin:0; height:auto; min-height:440px; align-self:stretch; position:relative; border-radius:14px; border:1px solid #f58791; background:radial-gradient(ellipse at 50% 45%,#fff 10%,#eeeaea 64%,#c0bdbd); overflow:hidden; }
.rental-card .rental-card-image img { position:absolute; inset:0; width:100%; height:100%; padding:28px; margin:0; object-fit:contain; background:transparent; mix-blend-mode:multiply; }
.rental-card .rental-kapacita { top:16px; right:16px; padding:8px 12px; background:linear-gradient(110deg,#b00918,#a50917); border:1px solid #f8808b; color:#fff; border-radius:20px; box-shadow:0 0 16px #f20d2177; }
.rental-card .rental-description { margin:0; min-height:0; font-size:14px; line-height:1.45; color:#d8d5d5; }
.rental-card .rental-equipment { margin:0; padding:8px 10px; min-height:0; font-size:12px; white-space:normal; background:#1a1919; border:1px solid #750812; color:#c6c4c4; border-radius:8px; }
.rental-card .rental-mimo-prahu { margin:0; padding:0; color:#c2bfbf; font-size:11px; min-height:0; }
.rental-card .rental-mimo-prahu svg { background:transparent; color:#f65160; stroke:#f65160; }
.rental-card .rental-price-panel { margin:0; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; border:0; border-radius:0; background:none; min-height:78px; overflow:visible; }
.rental-card .rental-price-panel>span,.rental-card .rental-price-panel>span:first-child,.rental-card .rental-price-panel>span.rental-kauce { margin:0; padding:10px 12px; border:1px solid #9d4850; border-radius:10px; clip-path:none; background:linear-gradient(135deg,#2b2929,#1a1819); text-align:left; }
.rental-card .rental-price-panel>span:first-child { background:linear-gradient(125deg,#ac0918,#700b14); border-color:#f44857; box-shadow:0 0 14px #df0d2022; }
.rental-card .rental-price-panel>span.rental-kauce { background:linear-gradient(135deg,#1f1d1e,#171617); border-color:#aa2733; }
.rental-card .rental-price-panel strong,.rental-card .rental-price-panel>span:first-child strong { font-size:clamp(22px,2.2vw,31px); color:#fff; letter-spacing:-.025em; }
.rental-card .rental-price-panel .rental-kauce strong { color:#f98590; }
.rental-card .rental-price-panel small,.rental-card .rental-price-panel em,.rental-card .rental-price-panel>span:first-child small,.rental-card .rental-price-panel>span:first-child em { color:#ebe7e7; font-size:11px; }
.rental-card .rental-details.rental-volby { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:0; padding:0; min-height:0; border:0; }
.rental-card .rental-volba { display:grid; grid-template-columns:35px 1fr; align-content:center; text-align:left; padding:12px 27px 12px 10px; min-height:76px; gap:4px 7px; border:1px solid #982832; border-radius:10px; background:linear-gradient(135deg,#222121,#1c1a1b); }
.rental-card .rental-details.rental-volby .rental-volba>b { position:static; grid-row:1/3; align-self:center; color:#f20d21; filter:drop-shadow(0 0 7px #f20d2155); }
.rental-card .rental-details.rental-volby .rental-volba>strong { margin:0; font-size:18px; line-height:1.1; }
.rental-card .rental-volba>span { color:#d6d2d2; font-size:11px; line-height:1.25; }
.rental-card .rental-volby li:nth-child(2) .rental-volba { background:linear-gradient(135deg,#292728,#1d1c1c); border-color:#a6414a; }
.rental-card .rental-volby li:nth-child(2) .rental-volba>b { color:#f87b86; }
.rental-card .rental-volby li:nth-child(3) .rental-volba { background:linear-gradient(135deg,#201f1f,#1d1c1c); border-color:#87262f; }
.rental-card .rental-volby li:nth-child(3) .rental-volba>b { color:#f54756; }
.rental-card .rental-volby li:nth-child(4) .rental-volba { background:linear-gradient(135deg,#272526,#1d1c1c); border-color:#974149; }
.rental-card .rental-volby li:nth-child(4) .rental-volba>b { color:#f8717e; }
.rental-card .rental-volba:hover,.rental-card .rental-volba:has(:checked) { border-color:#ccc9c9; box-shadow:inset 0 0 0 1px #f65c6a,0 0 15px #f42d3f44; }
.rental-card .rental-volba-znak { top:9px; right:9px; width:14px; height:14px; border:1px solid #c97d84; background:#1b1a1a; border-radius:4px; }
.rental-card .rental-volba input:checked~.rental-volba-znak { background-color:#a30917; border-color:#f98590; }
.rental-card .rental-tech { margin:0; border:1px solid #78353b; background:#1c1b1b; border-radius:8px; min-height:0; }
.rental-card .rental-tech summary { padding:10px 12px; font-size:12px; }
.rental-card:has(.rental-volba:hover) .rental-instructions,.rental-card:has([data-volba]:checked) .rental-instructions { background:#272526; border-color:#b9424d; box-shadow:none; }
.rental-card:has(.rental-volba:hover) .rental-instructions>summary,.rental-card:has([data-volba]:checked) .rental-instructions>summary { background:none; color:#e4e1e1; box-shadow:none; }
.rental-card .rental-instructions-copy,.rental-card .rental-tech dl { background:#1c1b1b; color:#dcd8d8; }
.rental-card>.rental-button { min-height:48px; margin:0; border-radius:10px; text-align:center; }
.rental-card.je-vybrana { border-color:#f53c4d; box-shadow:0 0 0 1px #f53c4d,0 0 25px #f4283b33; }
.r-potraviny { background:#1a1919; border-color:#5f282d; }
.r-pot-rada li { background:#201f1f; border-color:#773c41; border-radius:14px; }
.r-pot-zalozky button[aria-selected=true] { background:var(--neon); border-color:#c2bfbf; color:white; }
.r-contact-stage { background:radial-gradient(ellipse at 80% 20%,#87192355,transparent 65%),var(--n-bg); }
.r-contact { background:radial-gradient(ellipse at 100% 0,#c7202f5e,transparent 60%),#1d1c1c; border-color:#b3565e; border-radius:20px; }
.r-contact-copy>a.r-contact-telefon { color:white; }
.r-contact-details { border-color:#77393f; }
.kk-karta,.kk-telo { background:#1c1b1b; border-color:#72393e; }
.kk-karta { border-radius:16px; }
.kk-ctvrt { color:#c4c1c1; }
.pg,.pg-spodni-plocha,.site-footer { background:#121212; border-color:#683035; }
.dp-hero { background:radial-gradient(ellipse at 90% 10%,#c916267d,transparent 65%),linear-gradient(120deg,#1b1a1a,#151414); }
.dp-how article { border-radius:16px; background:linear-gradient(140deg,#232122,#1c1a1b); }
.dp-how article>span { background:#212020; }
.dp-how article:nth-child(2n)>span { background:#532025; }
.dp-tabulka thead th { background:#2c2a2a; color:#e0dddd; }
.dp-tabulka tbody th,.dp-tabulka tbody td { background:#1c1b1b; }
.dp-tabulka tbody td:last-child { background:#262525; }
.dp-sezona { background:#151414; border-color:#6a353a; }
.dp-pravidla-seznam>li { background:#1c1b1b; }
.po-dialog,.po-hlava { background:#1c1b1b; border-color:#a76369; }
.po-shrnuti,.po-polozka,.po-volba,.po-zaskrtnuti { background:#242223; border-color:#823b41; }
.po-volba:has(input:checked),.po-zaskrtnuti:has(input:checked) { background:#252323; color:#eae6e6; border-color:#db0c1e; }
.po-form input:not([type=checkbox]):not([type=radio]),.po-form textarea,.po-form select { background:#151414; border-color:#96585e; }
.legal,.pravo { background:#1b1a1a; border-color:#783c41; }
.podminky-obsah,.pravo-formular,.pravo-poznamka,.info-tabulka th,.info-tabulka td { background:#232222; border-color:#7a3d42; }
@media(max-width:1100px) {
 .r-header-inner { gap:18px; }
 .r-hero-content { gap:0 22px; }
 .r-hero-actions .r-btn { padding:12px 15px; }
 .r-benefit-grid article { padding:20px 14px; gap:12px; }
 .r-steps { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .rental-card { column-gap:18px; }
 .rental-card .rental-price-panel>span,.rental-card .rental-price-panel>span:first-child,.rental-card .rental-price-panel>span.rental-kauce { padding:10px 8px; }
 .rental-card .rental-price-panel strong,.rental-card .rental-price-panel>span:first-child strong { font-size:23px; }
}
@media(max-width:760px) {
 .r-hero-content { grid-template-columns:1fr; padding-block:30px; }
 .r-hero h1.r-hero-h1-radek { font-size:clamp(38px,10vw,64px); max-width:600px; }
 .r-hero-content>.r-hero-showcase { grid-column:1; grid-row:6; width:min(100%,390px); justify-self:center; margin-top:28px; }
 .r-hero-points { display:flex; gap:16px; }
 .r-hero-points li:last-child { grid-column:auto; }
 .r-benefit-grid { grid-template-columns:1fr 1fr; }
 .r-benefit-grid article,.r-benefit-grid article:first-child { padding:18px 10px; gap:9px; }
 .r-benefit-grid strong { font-size:12px; }
 .r-benefit-grid small { font-size:11px; }
 .r-benefit-grid article>span { font-size:26px; }
 .r-steps { grid-template-columns:1fr 1fr; }
 .r-steps article:last-child { grid-column:1/-1; }
 .rental-card { display:flex; flex-direction:column; padding:14px; gap:12px; border-radius:16px; }
 .rental-card .rental-card-image { position:relative; min-height:0; height:320px; width:100%; align-self:auto; }
 .rental-card .rental-card-heading h3 { font-size:30px; }
 .rental-card .rental-price-panel { width:100%; min-height:80px; }
 .rental-card .rental-card-image img { padding:24px; }
 .rental-card .rental-volba { min-height:82px; }
 .rental-card>.rental-button { width:100%; }
 .rental-card .rental-details.rental-volby { width:100%; }
 .rental-filter { margin-top:0; gap:6px; }
 .rental-filter button { padding:9px 11px; font-size:11px; }
 .rental-length-row { gap:12px; }
 .rental-length { gap:6px; }
 .rental-length button { padding:9px 12px; font-size:11px; }
 .r-catalog-heading { gap:18px; }
}
@media(max-width:380px) {
 .rental-card .rental-price-panel { gap:5px; }
 .rental-card .rental-price-panel strong,.rental-card .rental-price-panel>span:first-child strong { font-size:19px; }
 .rental-card .rental-details.rental-volby .rental-volba>strong { font-size:15px; }
 .rental-card .rental-volba { grid-template-columns:25px 1fr; padding:10px 22px 10px 7px; gap:3px 4px; }
 .rental-card .rental-details.rental-volby .rental-volba>b svg { width:23px; height:23px; }
}

/* Dokončení celého webu podle potvrzené předlohy se světelnými vlnami. */
:root { --n-bg:#121111; --n-card:#161516; --n-line:#8f202a; --n-muted:#d3d0d0; }
.r-header { border-color:#b21725; box-shadow:0 2px 18px #f31f3244; }
.r-hero { background:url('/assets/pujcovna/zavodni-vlny.svg') center/cover no-repeat,radial-gradient(ellipse at 80% 20%,#f54555a6,transparent 55%),linear-gradient(120deg,#191818,#b30919 65%,#980815); border-bottom:1px solid #e6192b; }
.r-hero-content { display:block; padding-block:44px; min-height:440px; position:relative; }
.r-hero-content>*:not(.r-hero-showcase) { max-width:55%; }
.r-hero .r-hero-web { display:table; border:1px solid #de0c1f; border-radius:20px; padding:4px 12px; font-size:12px; letter-spacing:.035em; color:#f8717e; background:#211f1f; box-shadow:inset 0 0 8px #f20d2155,0 0 12px #f20d2155; }
.r-hero h1.r-hero-h1-radek { font-size:clamp(40px,4.8vw,66px); line-height:1.03; margin:16px 0; }
.r-hero-lead { margin:16px 0 22px; line-height:1.5; font-size:15px; }
.r-hero-points { margin-bottom:22px; }
.r-hero-actions { align-items:center; }
.r-hero-actions .r-btn { min-height:44px; height:auto; border-radius:9px; }
.r-hero-actions .r-btn-primary { border-color:#f76d79; box-shadow:0 0 7px #f20d2188,0 0 24px #f42d3f77,inset 0 1px 0 #ffffff99; }
.r-hero-content>.r-hero-showcase { position:absolute; inset:20px 0 20px auto; width:42%; height:auto; aspect-ratio:auto; margin:0; }
.r-hero-orbit { inset:4% 3% 12%; background:radial-gradient(ellipse at 50% 30%,#dbd7d7,#f7707ca6 65%,#f42e4044); border-color:#e0dcdc; box-shadow:0 0 10px #e1dede,0 0 34px #f87b86,inset 0 0 55px #d8d4d488; }
.r-hero-orbit::after { inset:auto -3% -9%; height:14%; background:linear-gradient(180deg,#f7f3f3,#dcd9d9 48%,#f65d6a 68%,#ad1926); box-shadow:0 9px 24px #f31227; }
.r-hero-product { width:77%; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,#ffffff,#f0ecec 70%,#dedbdb); box-shadow:0 0 35px #d8d5d5; }
.r-hero-product img { padding:10px; }
.r-benefits { background:#171616e8; border-color:#901722; }
.r-benefit-grid { min-height:84px; }
.r-benefit-grid article { padding-block:18px; }
.r-benefit-grid article>span { font-size:34px; filter:drop-shadow(0 0 6px currentColor); }
.r-how { padding-block:26px; }
.r-how h2 { font-size:23px; margin-bottom:16px; }
.r-steps { gap:12px; }
.r-steps article { position:relative; grid-template-columns:34px 1fr; padding:15px 12px; min-height:104px; border-radius:10px; border-color:#7d1b24; background:linear-gradient(135deg,#272525,#181717 70%); }
.r-steps b { position:absolute; right:12px; top:12px; font-size:12px; letter-spacing:.1em; }
.r-steps span { grid-column:1; grid-row:1/3; align-self:center; width:30px; height:30px; font-size:30px; filter:drop-shadow(0 0 7px currentColor); }
.r-steps article>div { padding-top:15px; }
.r-steps article:nth-child(2) { border-color:#9c242f; background:linear-gradient(135deg,#282626,#191818); }
.r-steps article:nth-child(3) { border-color:#98454c; background:linear-gradient(135deg,#252324,#191818); }
.r-steps article:nth-child(3) b,.r-steps article:nth-child(3) span { color:#f53f4f; }
.r-steps article:nth-child(4) { border-color:#912b34; }
.r-catalog { padding-block:24px 40px; }
.r-catalog h2 { font-size:clamp(28px,3vw,40px); }
.r-catalog-heading { gap:18px; margin-bottom:18px; }
.r-catalog-heading p { font-size:13px; }
.rental-filter { gap:6px; }
.rental-filter button { font-size:11px; padding:9px 12px; border-radius:7px; }
.rental-length-row { margin-bottom:20px; }
.rental-length button { padding:9px 14px; }
.rental-card,.rental-card:nth-child(n) { padding:14px; column-gap:20px; row-gap:8px; border:1px solid #a7303b; border-radius:14px; background:radial-gradient(ellipse at 100% 0,#d0203080,transparent 50%),linear-gradient(135deg,#2a2829,#131213 70%); box-shadow:0 0 0 1px #891e2877,0 0 18px #ec243622,inset 0 1px 0 #f87e8955; }
.rental-card:hover { border-color:#f76976; box-shadow:0 0 0 1px #e05562,0 0 22px #ec243644; }
.rental-card .rental-card-image { grid-row:1/10; min-height:0; border-radius:10px; border:1px solid #d0cdcd; background:radial-gradient(ellipse at 50% 40%,#fff 15%,#f4f0f0 57%,#c7c4c4); box-shadow:inset 0 0 30px #db455255,0 0 10px #f3132744; }
.rental-card .rental-card-image img { padding:20px; }
.rental-card .rental-card-heading { gap:5px; }
.rental-card .rental-card-heading h3 { font-size:clamp(24px,2.6vw,34px); }
.rental-card .rental-card-type { font-size:9px; padding:3px 8px; }
.rental-card .rental-description { font-size:13px; }
.rental-card .rental-equipment { padding:7px 10px; font-size:11px; border-color:#830712; background:linear-gradient(90deg,#222121,#181717); }
.rental-card .rental-price-panel { min-height:72px; }
.rental-card .rental-price-panel>span { position:relative; }
.rental-card .rental-price-panel>span:first-child { background:linear-gradient(125deg,#c30a1b,#800712 80%); border-color:#e6293a; box-shadow:0 0 12px #ec0c2044,inset 0 1px 0 #c8c5c566; }
.rental-card .rental-price-panel>span:nth-child(2) { border-color:#cc4d58; background:linear-gradient(120deg,#2f2d2d,#1d1c1c); box-shadow:inset 0 0 16px #db394833; }
.rental-card .rental-price-panel>span.rental-kauce { border-color:#af303b; box-shadow:inset 0 0 18px #ba202e33; }
.rental-card .rental-volba { min-height:64px; border-radius:8px; padding-block:9px; box-shadow:inset 0 0 18px #af091815; }
.rental-card .rental-details.rental-volby .rental-volba>b svg { width:31px; height:31px; }
.rental-card .rental-details.rental-volby .rental-volba>strong { font-size:17px; }
.rental-card .rental-volby li:nth-child(2) .rental-volba { box-shadow:inset 0 0 18px #e2324222; }
.rental-card .rental-volby li:nth-child(3) .rental-volba { box-shadow:inset 0 0 18px #f20d2115; }
.rental-card .rental-volby li:nth-child(4) .rental-volba { box-shadow:inset 0 0 18px #dd223322; }
.rental-card .rental-tech summary { padding:8px 10px; }
.rental-card>.rental-button { min-height:42px; border-radius:8px; border-color:#f87a85; box-shadow:0 0 5px #f65a68,0 0 17px #f31c2f44,inset 0 1px 0 #e2dede88; }
.r-longterm-banner { padding-block:0 18px; }
.r-lb-odkaz { position:relative; overflow:hidden; padding:28px; border-radius:14px; border-color:#b1313d; background:url('/assets/pujcovna/zavodni-vlny.svg') center/cover no-repeat,linear-gradient(100deg,#1c1a1b,#2b2929); }
.r-lb-text { font-size:14px; }
.r-lb-text #longTitle { font-size:30px; }
.r-lb-odkaz .r-lb-cudlik { padding:16px 20px; border:1px solid #c2bfbf; border-radius:8px; }
.r-neon-jen-kauce .r-neon-siroky { min-height:84px; padding:14px 18px; gap:20px; border-radius:12px; background:linear-gradient(110deg,#7e0712,#2a2828 36%,#252324 72%); border-color:#bf2634; box-shadow:0 0 18px #d30b1d2b; }
.r-neon-jen-kauce .r-neon-siroky .r-neon-velke-text { font-size:20px; line-height:1.2; color:#fff; max-width:250px; }
.r-neon-jen-kauce .r-neon-penezenka svg { width:32px; height:32px; stroke:#d6d3d3; }
.r-neon-jen-kauce .r-neon-pruh { background:#1b1a1a; border:1px solid #962f38; border-radius:8px; padding:8px 14px; }
.r-neon-jen-kauce .r-neon-pruh small { color:#ccc9c9; }
.r-neon-jen-kauce .r-neon-pruh b { color:#fff; }
.r-neon-pruh i { background:repeating-linear-gradient(90deg,#f43b4c 0 6px,transparent 6px 10px); opacity:1; }
.r-potraviny { margin-top:36px; padding-block:32px; background:linear-gradient(135deg,#181717,#161515); border-color:#74171f; }
.r-pot-rada li { border-color:#912932; box-shadow:0 0 13px #ea102422; background:linear-gradient(145deg,#242222,#161515); }
.r-pot-cena { color:#d4d1d1; }
.r-pot-vse { color:#c0bdbd; }
.r-contact-stage { background:#121111; padding-top:8px; }
.r-contact { position:relative; background:url('/assets/pujcovna/zavodni-vlny.svg') center/cover no-repeat,linear-gradient(100deg,#1b1a1a,#6a121a 67%,#900814); border-color:#e92d3e; border-radius:14px; box-shadow:0 0 24px #ed283a44; }
.r-contact-copy { padding:32px; }
.r-contact-copy h2 { font-size:34px; }
.r-contact-foto { display:none; }
.r-contact-copy::after { content:""; display:block; width:100px; height:80px; margin-top:24px; background:url('/assets/paticka/telefon.svg') center/contain no-repeat; filter:brightness(0) saturate(100%) invert(67%) sepia(59%) saturate(922%) hue-rotate(222deg) drop-shadow(0 0 9px #f53849); opacity:.9; }
.r-contact-copy>a.r-contact-telefon { font-size:clamp(30px,3vw,42px); color:#fff; }
.r-contact-details { background:#12111188; }
.r-contact-details a>span,.r-contact .r-contact-details a>span { border:0; background:none; color:#f31d30; filter:drop-shadow(0 0 6px #f20d21); }
.kk-karta { background:linear-gradient(140deg,#242223,#212020); border-color:#a32b36; box-shadow:0 0 15px #dd152733; }
.kk-telo { background:transparent; }
.kk-tlacitka .kk-navigovat { background:var(--neon); color:#fff; border-color:#f87a85; }
.dp-hero { background:url('/assets/pujcovna/zavodni-vlny.svg') center/cover no-repeat,linear-gradient(120deg,#1a1919,#a3121f 62%,#7b0711); border-bottom:1px solid #bf313e; }
.dp-hero h1 { font-size:clamp(38px,4.7vw,60px); }
.dp-how article { border-radius:12px; border-color:#97242e; background:linear-gradient(125deg,#232122,#1b1a1a); box-shadow:inset 0 0 20px #99081522; }
.dp-how article:nth-child(3n+2) { border-color:#ad3b45; background:linear-gradient(125deg,#292728,#1b1a1a); }
.dp-how article:nth-child(3n) { border-color:#965157; background:linear-gradient(125deg,#212020,#1b1a1a); }
.dp-how article>span { background:none; color:#f42d3f; filter:drop-shadow(0 0 8px #f2102466); }
.dp-how article:nth-child(3n+2)>span { background:none; color:#f8818b; filter:drop-shadow(0 0 8px #f4344566); }
.dp-how article:nth-child(3n)>span { color:#d2cece; filter:drop-shadow(0 0 8px #ee0f2366); }
.dp-tabulka-obal { border:1px solid #c34d58; border-radius:12px; box-shadow:0 0 20px #af2a3633; }
.dp-tabulka thead th { background:linear-gradient(120deg,#5a191f,#722128); }
.dp-tabulka tbody td:last-child { background:#222021; color:#f9848f; }
.dp-sezona { background:url('/assets/pujcovna/zavodni-vlny.svg') center/cover no-repeat,#262525; border-block:1px solid #c43542; }
.dp-pravidla-seznam>li::before { background:linear-gradient(130deg,#ed1528,#f42d3f); color:#fff; box-shadow:0 0 12px #f5405055; }
.po-dialog { border:1px solid #ce656e; box-shadow:0 0 50px #9c111e44,0 28px 80px #0009; }
.po-hlava { background:url('/assets/pujcovna/zavodni-vlny.svg') center/cover no-repeat,linear-gradient(100deg,#212020,#712128); }
.po-shrnuti { border:1px solid #bc424d; background:linear-gradient(120deg,#252324,#272526); }
.po-form input:focus,.po-form textarea:focus,.po-form select:focus { border-color:#f4293b; box-shadow:0 0 0 2px #f4293b33; }
.po-form input[type=checkbox],.po-form input[type=radio] { accent-color:#f4273a; }
.po-odeslat { box-shadow:0 0 20px #df354455; }
.legal,.pravo { border-color:#973a42; background:radial-gradient(ellipse at 100% 0,#79232b66,transparent 550px),#161516; border-radius:14px; box-shadow:0 0 26px #8b252e22; }
.legal h1,.pravo h1 { padding-bottom:24px; border-bottom:1px solid #9a3740; }
.legal h2,.pravo h2 { color:#dedada; }
.podminky-obsah,.pravo-formular { border:1px solid #973d45; background:linear-gradient(120deg,#252324,#252324); }
.pg,.pg-spodni-plocha,.site-footer { border-color:#ad202d; background:#0f0f0f; }
@media(max-width:1000px) {
 .r-hero-content { min-height:415px; }
 .r-hero-content>*:not(.r-hero-showcase) { max-width:54%; }
 .r-hero h1.r-hero-h1-radek { font-size:48px; }
 .r-hero-actions { gap:8px; }
 .r-hero-actions .r-btn { padding-inline:12px; font-size:11px; }
 .r-hero-points { gap:12px; }
 .r-neon-jen-kauce .r-neon-siroky { flex-wrap:wrap; }
 .r-neon-jen-kauce .r-neon-pruh { flex-basis:55%; }
}
@media(max-width:760px) {
 .r-hero-content { min-height:0; padding-block:28px 20px; }
 .r-hero-content>*:not(.r-hero-showcase) { max-width:100%; }
 .r-hero h1.r-hero-h1-radek { font-size:clamp(38px,10vw,56px); max-width:100%; }
 .r-hero-content>.r-hero-showcase { position:relative; inset:auto; width:min(100%,360px); height:340px; margin:20px auto 0; }
 .r-hero-product { width:72%; }
 .r-benefit-grid article { padding-block:15px; }
 .rental-card .rental-card-image { min-height:0; height:300px; }
 .rental-card .rental-price-panel>span:first-child strong,.rental-card .rental-price-panel strong { font-size:23px; }
 .rental-card .rental-volba { min-height:75px; }
 .rental-card>.rental-button { min-height:46px; }
 .r-lb-odkaz { padding:22px; }
 .r-lb-text #longTitle { font-size:25px; }
 .r-neon-jen-kauce .r-neon-siroky { flex-direction:column; align-items:stretch; }
 .r-neon-jen-kauce .r-neon-siroky .r-neon-velke-text { max-width:none; font-size:21px; }
 .r-neon-jen-kauce .r-neon-pruh { flex-basis:auto; gap:6px; padding:10px; min-height:56px; height:auto; }
 .r-neon-jen-kauce .r-neon-pruh b { font-size:13px; }
 .r-neon-jen-kauce .r-neon-pruh small { font-size:9px; }
 .r-neon-weber { max-width:85px; height:auto; }
 .r-contact-copy { padding:24px; }
 .r-contact-copy::after { width:70px; height:60px; }
 .dp-hero { padding-block:38px; }
 .dp-how-grid { gap:14px; }
}
@media(max-width:380px) {
 .rental-card .rental-price-panel>span:first-child strong,.rental-card .rental-price-panel strong { font-size:19px; }
 .rental-card .rental-details.rental-volby .rental-volba>strong { font-size:15px; }
}
/* Originální transparentní produkt stojí přímo na světelném pódiu. */
.r-hero-product { width:100%; height:100%; aspect-ratio:auto; border-radius:0; background:none; box-shadow:none; overflow:visible; }
.r-hero-product img { width:100%; height:100%; padding:0; mix-blend-mode:normal; object-fit:contain; filter:drop-shadow(0 15px 16px #22202166); }
@media(max-width:760px) { .r-hero-product { width:100%; } }
/* Kontakty: samostatné sloupce pro text a telefon, bez absolutního překrytí. */
.r-contact-copy { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:12px 30px; }
.r-contact-copy>.r-section-kicker { grid-column:1; grid-row:1; margin:0; }
.r-contact-copy>h2 { grid-column:1; grid-row:2; margin:0; }
.r-contact-copy>p:not(.r-section-kicker) { grid-column:1; grid-row:3; max-width:620px; margin:0; color:#e2dede; }
.r-contact-copy>a.r-contact-telefon { position:static; transform:none; grid-column:2; grid-row:2; margin:0; white-space:nowrap; }
.r-contact-copy::after { grid-column:2; grid-row:3; width:60px; height:60px; margin:0; justify-self:end; }
.r-contact-details.ma-vlnku { background:#151414; }
.kk-karta .kk-popis { color:#d8d5d5; }
.kk-karta .kk-udaje dd a,.kk-karta a.kk-vice { color:#e4e1e1; }
.kk-karta .kk-udaje dd a:hover,.kk-karta a.kk-vice:hover { color:#fff; }
.kk-karta .kk-udaje dt { color:#c7c4c4; }
.kk-karta .kk-hlava p.kk-ctvrt { color:#d1cece; }
@media(max-width:760px) {
 .r-contact-copy { grid-template-columns:1fr; gap:12px; }
 .r-contact-copy>a.r-contact-telefon { grid-column:1; grid-row:4; white-space:normal; }
 .r-contact-copy::after { display:none; }
}
/* Pevně vymezený prostor grilu: originální fotografie se celá vejde do banneru. */
.r-hero-content>.r-hero-showcase { top:20px; bottom:auto; height:calc(100% - 40px); min-height:0; align-self:auto; }
.r-hero-product { position:absolute; inset:0; display:block; min-width:0; min-height:0; }
@media(max-width:760px) { .r-hero-content>.r-hero-showcase { top:auto; height:340px; } }

/* Ferrari F1: červený lak, grafit, jemný karbon. Původní fotografie a obsah. */
:root {
 --n-bg:#0c0c0e; --n-card:#121214; --n-raised:#1a1a1d; --n-line:#38383b;
 --n-text:#f8f8f8; --n-muted:#c4c4c8; --n-green:#ff3447;
 --n-yellow:#f5d130; --n-orange:#f5d130; --n-pink:#ff3447;
 --red:#ed142b; --red-dark:#b7091d; --black:#0b0b0d;
 --neon:linear-gradient(125deg,#ff2439,#db001c);
 --race-line:#603038; --race-carbon:repeating-linear-gradient(135deg,#ffffff03 0 1px,transparent 1px 5px);
}
body { background:var(--race-carbon),#0c0c0e; }
.r-header { background:linear-gradient(110deg,#111113,#09090b 75%,#36070e); border-bottom:1px solid #79202a; }
.r-header-inner { min-height:84px; }
.r-nav a.active::after { background:#f52037; box-shadow:0 0 12px #f5203755; }
.r-hero { background:url('/assets/pujcovna/zavodni-vlny.svg') center/cover no-repeat,radial-gradient(ellipse at 78% 65%,#500d1888,transparent 60%),#0a0a0c; border-color:#61202a; }
.r-hero .r-hero-web { color:#f5f5f6; border:0; border-left:3px solid #ed142b; border-radius:0; background:none; box-shadow:none; padding:3px 0 3px 12px; }
.r-hero h1.r-hero-h1-radek { font-weight:900; letter-spacing:-.045em; }
.r-hero h1 em { font-style:normal; color:#ff2439; }
.r-hero-orbit { inset:70% 2% 7%; transform:perspective(400px) rotateX(52deg); border:1px solid #ff3148; background:radial-gradient(ellipse,#850f2855,#151517 65%); box-shadow:0 0 25px #e5143644,inset 0 0 18px #ed142b55; }
.r-hero-orbit::before { content:none; }
.r-hero-orbit::after { inset:0 0 -14%; height:100%; z-index:-1; background:linear-gradient(#2e2226,#09090a); border-bottom:1px solid #981629; box-shadow:0 12px 30px #0008; }
.r-hero-product img { filter:drop-shadow(0 15px 15px #0008); }
.r-hero-points span,.r-hero-points li:nth-child(n) span { color:#ff3447; filter:none; }
.r-hero-actions .r-btn-primary,.r-btn-primary,.r-btn-dark,.r-btn-contact,.po-odeslat,.r-lb-odkaz .r-lb-cudlik { background:var(--neon); color:#fff; border-color:#fa3046; box-shadow:inset 0 1px 0 #ffffff22,0 8px 20px #dc0a231c; border-radius:7px; }
.r-hero-actions .r-btn-primary:hover,.r-btn-primary:hover,.r-btn-dark:hover,.r-btn-contact:hover,.po-odeslat:hover { background:#c90e25; border-color:#ff4c61; color:#fff; box-shadow:0 0 20px #d7102733; }
.r-hero-actions .r-btn-ghost { background:#17171a; border-color:#63636b; color:#fff; }
.r-benefits { background:#111113; border-color:#323237; }
.r-benefit-grid article>span,.r-benefit-grid article:nth-child(n)>span { color:#ff3447; filter:none; }
.r-steps article,.r-steps article:nth-child(n),.dp-how article,.dp-how article:nth-child(n) { background:var(--race-carbon),linear-gradient(135deg,#202023,#111113); border-color:#423034; border-top:2px solid #d52035; box-shadow:none; }
.r-steps article b,.r-steps article span,.r-steps article:nth-child(n) b,.r-steps article:nth-child(n) span,.dp-how article:nth-child(n)>span { color:#ff3447; filter:none; }
.r-catalog { background:url('/assets/pujcovna/zavodni-vlny.svg') center top/1600px 640px no-repeat; }
.rental-filter button,.rental-length button { background:#161618; color:#e0e0e3; border-color:#3c3c42; }
.rental-filter button.is-active,.rental-length button.is-active { background:#df142c; color:#fff; border-color:#ff3447; box-shadow:none; }
.rental-length-row { background:#121214; border-color:#3c3033; }
.rental-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; align-items:stretch; }
.rental-card,.rental-card:nth-child(n) {
 --card-accent:#ff3447; display:flex; flex-direction:column; grid-template-columns:none;
 gap:12px; padding:18px; min-width:0; border-radius:12px;
 border:1px solid #74202b; background:linear-gradient(155deg,#19191c,#101012 65%);
 box-shadow:0 12px 30px #0005,inset 0 1px 0 #ffffff0a;
}
.rental-card::before { content:""; position:absolute; top:0; right:22px; width:68px; height:4px; background:#ed142b; transform:skewX(35deg); }
.rental-card:nth-child(n):hover { border-color:#ed142b; box-shadow:0 12px 35px #0008,0 0 18px #ed142b18; }
.rental-card>* { grid-column:auto; grid-row:auto; }
.rental-card .rental-card-heading,.rental-card:hover .rental-card-heading { display:flex; flex-direction:column-reverse; align-items:flex-start; justify-content:flex-end; gap:8px; min-height:81px; flex:0 0 auto; margin:0; }
.rental-card .rental-card-heading h3 { font-size:clamp(23px,2vw,28px); line-height:1.15; letter-spacing:-.025em; color:#fff; }
.rental-card .rental-card-type { background:none; border:0; border-left:2px solid #f5d130; border-radius:0; padding:0 0 0 8px; color:#cacacd; font-size:10px; letter-spacing:.08em; }
.rental-card .rental-card-image { grid-column:auto; grid-row:auto; height:250px; flex:0 0 250px; min-height:0; width:100%; margin:0; border-radius:8px; border:1px solid #44444a; background:radial-gradient(ellipse at 50% 35%,#fafafa,#ceced0 90%); box-shadow:inset 0 0 25px #00000012; }
.rental-card .rental-card-image img { padding:15px; object-fit:contain; }
.rental-card .rental-kapacita { top:9px; right:9px; background:#19191dec; border:1px solid #66666d; box-shadow:none; color:#fff; padding:6px 9px; font-size:10px; }
.rental-card .rental-description { min-height:57px; font-size:13px; line-height:1.45; color:#c9c9cd; }
.rental-card .rental-equipment { display:flex; align-items:center; min-height:57px; padding:9px 10px; background:#202022; border:1px solid #414146; color:#e2e2e4; font-size:11px; line-height:1.5; }
.rental-card .rental-mimo-prahu { display:flex; align-items:center; min-height:40px; color:#bfbfc4; font-size:10px; line-height:1.45; }
.rental-card .rental-mimo-prahu svg { color:#ff3447; stroke:#ff3447; }
.rental-card .rental-price-panel { flex:0 0 auto; min-height:78px; gap:0; padding:14px 0; border-block:1px solid #46464a; border-radius:0; }
.rental-card .rental-price-panel>span,.rental-card .rental-price-panel>span:first-child,.rental-card .rental-price-panel>span:nth-child(2),.rental-card .rental-price-panel>span.rental-kauce { background:none; border:0; border-right:1px solid #414146; border-radius:0; padding:0 7px; box-shadow:none; text-align:center; }
.rental-card .rental-price-panel>span:last-child { border:0; }
.rental-card .rental-price-panel strong,.rental-card .rental-price-panel>span:first-child strong,.rental-card .rental-price-panel .rental-kauce strong { color:#f7f7f8; font-size:clamp(19px,1.65vw,23px); white-space:nowrap; letter-spacing:-.045em; }
.rental-card .rental-price-panel>span:first-child strong { color:#ff3447; }
.rental-card .rental-price-panel small,.rental-card .rental-price-panel>span:first-child small,.rental-card .rental-price-panel em,.rental-card .rental-price-panel>span:first-child em { color:#ccc; font-size:10px; }
.rental-card .rental-details.rental-volby { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
.rental-card .rental-volba,.rental-card .rental-volby li:nth-child(n) .rental-volba { grid-template-columns:23px minmax(0,1fr); padding:10px 22px 10px 8px; min-height:76px; gap:4px 5px; border:1px solid #3c3c42; background:#18181b; box-shadow:none; }
.rental-card .rental-details.rental-volby .rental-volba>b,.rental-card .rental-volby li:nth-child(n) .rental-volba>b { color:#ff3447; filter:none; }
.rental-card .rental-details.rental-volby .rental-volba>b svg { width:23px; height:23px; }
.rental-card .rental-details.rental-volby .rental-volba>strong { font-size:15px; }
.rental-card .rental-volba>span { color:#c4c4c9; font-size:10px; }
.rental-card .rental-volba-znak { right:7px; width:12px; height:12px; background:#111; border-color:#8c8c93; }
.rental-card .rental-volba input:checked~.rental-volba-znak { background:#e71931; border-color:#ff6173; }
.rental-card .rental-volby li:nth-child(n) .rental-volba:has(:checked) { border-color:#ff3447; background:#321219; box-shadow:inset 0 0 0 1px #e52439; }
.rental-card .rental-tech,.rental-card .rental-tech dl,.rental-card .rental-instructions-copy { border-color:#3a3a40; background:#161618; color:#dedee1; }
.rental-card .rental-instructions { margin-top:auto; }
.rental-card .rental-tech summary { padding:11px 9px; font-size:11px; }
.rental-card .rental-upozorneni { font-size:9px; }
.rental-card>.rental-button { background:var(--neon); color:#fff; width:100%; min-height:48px; border:1px solid #f92e44; border-radius:7px; box-shadow:inset 0 1px 0 #ffffff22; margin:0; }
.rental-card>.rental-button:hover { background:#c90e25; box-shadow:0 0 18px #e0142b33; }
.rental-card.je-vybrana,.rental-card.je-vybrana:hover { border-color:#ff3447; box-shadow:0 0 0 2px #ff3447; }
.r-lb-odkaz,.r-contact,.dp-hero,.dp-sezona { background:url('/assets/pujcovna/zavodni-vlny.svg') center/cover no-repeat,linear-gradient(120deg,#121214,#230d12); border-color:#64232e; box-shadow:none; }
.r-neon-jen-kauce .r-neon-siroky { background:linear-gradient(110deg,#481019,#1a1013 55%,#111113); border-color:#79303a; box-shadow:none; }
.r-neon-jen-kauce .r-neon-pruh { background:#111113; border-color:#5f343b; }
.r-neon-jen-kauce .r-neon-penezenka svg { stroke:#ff3447; }
.r-neon-pruh i { background:repeating-linear-gradient(90deg,#e21c34 0 6px,transparent 6px 10px); }
.r-potraviny,.r-contact-stage { background:#101012; border-color:#3b3034; }
.r-pot-rada li,.kk-karta { background:linear-gradient(140deg,#1d1d20,#101012); border-color:#40373b; box-shadow:none; }
.r-pot-cena { color:#ff3447; }
.r-pot-vse,.kk-karta .kk-udaje dd a,.kk-karta a.kk-vice,.kk-karta .kk-hlava p.kk-ctvrt { color:#f3f3f5; }
.r-contact-copy>p:not(.r-section-kicker),.kk-karta .kk-popis,.kk-karta .kk-udaje dt { color:#c7c7cc; }
.r-contact-copy::after { filter:brightness(0) saturate(100%) invert(25%) sepia(97%) saturate(2760%) hue-rotate(337deg); }
.r-contact-details.ma-vlnku { background:#111113; }
.r-contact-details a>span,.r-contact .r-contact-details a>span { color:#ff3447; filter:none; }
.dp-tabulka-obal { border-color:#58343b; box-shadow:none; }
.dp-tabulka thead th { background:#301219; color:#fff; }
.dp-tabulka tbody td:last-child { background:#211317; color:#fff; }
.dp-tabulka tbody td:last-child strong { color:#ff4a5d; }
.dp-pravidla-seznam>li::before { background:#e31b32; box-shadow:none; }
.po-dialog,.legal,.pravo { background:#141416; border-color:#60323a; box-shadow:0 20px 60px #0005; }
.po-hlava { background:var(--race-carbon),linear-gradient(115deg,#201719,#43101a); }
.po-shrnuti,.podminky-obsah,.pravo-formular { border-color:#51373c; background:#20191b; }
.po-form input:focus,.po-form textarea:focus,.po-form select:focus { border-color:#ff3447; box-shadow:0 0 0 2px #ff344733; }
.po-form input[type=checkbox],.po-form input[type=radio] { accent-color:#e81931; }
.legal h2,.pravo h2 { color:#fff; }
.pg,.pg-spodni-plocha,.site-footer { background:var(--race-carbon),#09090b; border-color:#59232d; }
@media(max-width:1100px) { .rental-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) {
 .rental-grid { grid-template-columns:minmax(0,1fr); }
 .rental-card,.rental-card:nth-child(n) { padding:16px; }
 .rental-card .rental-card-heading,.rental-card:hover .rental-card-heading { min-height:65px; }
 .rental-card .rental-card-image { height:270px; flex-basis:270px; }
 .rental-card .rental-description,.rental-card .rental-equipment,.rental-card .rental-mimo-prahu { min-height:0; }
 .rental-card .rental-price-panel strong,.rental-card .rental-price-panel>span:first-child strong,.rental-card .rental-price-panel .rental-kauce strong { font-size:22px; }
 .r-hero-content>.r-hero-showcase { height:320px; }
}
@media(max-width:380px) {
 .rental-card .rental-price-panel strong,.rental-card .rental-price-panel>span:first-child strong,.rental-card .rental-price-panel .rental-kauce strong { font-size:19px; }
}
/* Čitelnost odkazů a kompaktní karta se všemi původními informacemi. */
.rental-card:has(.rental-volba:hover > [data-volba], [data-volba]:checked) .rental-instructions { background:#2b141a; border-color:#ff3447; box-shadow:0 0 0 1px #a71e31,0 0 12px #e31b3222; }
.rental-card:has(.rental-volba:hover > [data-volba], [data-volba]:checked) .rental-instructions>summary,
.rental-card:has(.rental-volba:hover > [data-volba], [data-volba]:checked) .rental-instructions>summary::after,
.rental-card:has(.rental-volba:hover > [data-volba], [data-volba]:checked) .rental-upozorneni { color:#ffbec6; }
.legal a,.pravo a { color:#ff8997; text-decoration-color:#e82b42; text-underline-offset:3px; }
.podminky-obsah { border-color:#654047; }
.r-hero .r-hero-web { border:0; padding:0; }
.r-header .r-header-contact { color:#f4f4f5; }
.rental-card,.rental-card:nth-child(n) { padding:14px; gap:10px; }
.rental-card .rental-card-heading,.rental-card:hover .rental-card-heading { min-height:64px; }
.rental-card .rental-card-image { height:220px; flex-basis:220px; }
.rental-card .rental-description { min-height:38px; }
.rental-card .rental-equipment { min-height:40px; }
.rental-card .rental-mimo-prahu { min-height:34px; }
.rental-card .rental-volba,.rental-card .rental-volby li:nth-child(n) .rental-volba { min-height:72px; }
.rental-card .rental-tech summary { padding-block:9px; }
.rental-card>.rental-button { min-height:46px; }
@media(max-width:760px) {
 .rental-card .rental-card-image { height:270px; flex-basis:270px; }
 .rental-card .rental-description,.rental-card .rental-equipment,.rental-card .rental-mimo-prahu { min-height:0; }
}

/* Ferrari Style: geometrie, originální loga a jednotná závodní signatura. */
.race-signature { position:relative; background:#101013; border-bottom:1px solid #38383e; }
.race-signature::after { content:""; position:absolute; bottom:-1px; left:0; width:32%; height:2px; background:linear-gradient(90deg,#f41c35,#f41c35 75%,transparent); }
.race-signature-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:78px; }
.race-signature-title { margin:0; color:#e6e6e9; font-size:clamp(18px,2vw,27px); font-weight:900; font-style:italic; line-height:1; letter-spacing:.12em; }
.race-signature-title span { color:#ff3047; }
.race-signature-logos { display:flex; align-items:center; gap:24px; flex-shrink:0; }
.race-signature img { display:block; object-fit:contain; }
.race-signature .race-logo-f1 { width:94px; height:auto; }
.race-signature .race-logo-ferrari { width:36px; height:auto; }
.race-logo-divider { width:1px; height:32px; background:#4a4a50; transform:rotate(18deg); }
.r-hero,.dp-hero { background:url('/assets/pujcovna/ferrari-geometrie.svg') center/cover no-repeat,radial-gradient(ellipse at 80% 85%,#480d1880,transparent 55%),#0b0b0e; }
.r-hero-orbit { border-color:#e12037; box-shadow:0 0 14px #e514362b,inset 0 0 18px #ed142b22; }
.r-hero h1 em { color:#ff263e; }
.r-hero-actions .r-btn,.r-btn-primary,.r-btn-dark,.r-btn-contact { border-radius:3px; }
.r-catalog { background:url('/assets/pujcovna/ferrari-geometrie.svg') right top/1800px 700px no-repeat; }
.rental-card,.rental-card:nth-child(n) { border-radius:3px 18px 3px 3px; border-color:#484046; border-top:2px solid #f0253e; background:linear-gradient(145deg,#222227,#131316 35%,#101013); box-shadow:0 15px 30px #0006; }
.rental-card::before { top:0; right:22px; width:52px; height:5px; background:#f2253e; box-shadow:10px 0 0 #101013,18px 0 0 #b9b9c3; transform:skewX(-35deg); }
.rental-card .rental-card-heading { padding-right:12px; }
.rental-card .rental-card-type { border-left-color:#f4d033; }
.rental-card .rental-card-image { border-radius:2px 12px 2px 2px; background:linear-gradient(135deg,#f8f8fa 0 65%,#e6e6e9 65% 78%,#b6b6bf 78% 79%,#dedee3 79%); border:1px solid #b6b6bf; }
.rental-card .rental-kapacita { border-radius:2px 7px 2px 2px; }
.rental-card .rental-equipment { border-left:2px solid #f0253e; border-radius:2px; }
.rental-card .rental-volba,.rental-card .rental-volby li:nth-child(n) .rental-volba { border-radius:3px; }
.rental-card>.rental-button { border-radius:3px 10px 3px 3px; background:linear-gradient(120deg,#f5213b 0%,#e00623 76%,#c90721 76%); }
.rental-card>.rental-button:hover { background:linear-gradient(120deg,#ff344c 0%,#df0623 76%,#b6061e 76%); }
.r-lb-odkaz,.r-contact,.dp-sezona { background:url('/assets/pujcovna/ferrari-geometrie.svg') center/cover no-repeat,#121215; }
.r-steps article,.r-steps article:nth-child(n),.dp-how article,.dp-how article:nth-child(n) { border-radius:3px 14px 3px 3px; }
.po-hlava { background:url('/assets/pujcovna/ferrari-geometrie.svg') center/cover no-repeat,#171318; }
.legal,.pravo { border-top:2px solid #ed2039; border-radius:3px 18px 3px 3px; }
@media(max-width:760px) {
 .race-signature-inner { min-height:68px; gap:12px; }
 .race-signature-title { font-size:17px; letter-spacing:.06em; }
 .race-signature-logos { gap:12px; }
 .race-signature .race-logo-f1 { width:62px; }
 .race-signature .race-logo-ferrari { width:29px; }
 .race-logo-divider { height:25px; }
 .r-hero { background-position:62% center; }
}
@media(prefers-reduced-motion:reduce) { .race-signature * { animation:none; } }
/* Italská trikolóra a zelené označení vybraných služeb. */
.race-signature::after { width:100%; height:3px; background:linear-gradient(90deg,#009b59 0 33.333%,#f5f5f3 33.333% 66.666%,#ed2039 66.666%); }
.rental-card .rental-volba input:checked~.rental-volba-znak { background:#079f62; border-color:#59e4a7; }
.rental-card .rental-volby li:nth-child(n) .rental-volba:has(:checked) { border-color:#38cb8f; background:#0c2b20; box-shadow:inset 0 0 0 1px #159e64; }
.rental-card .rental-volby li:nth-child(n) .rental-volba:has(:checked)>b,
.rental-card .rental-volby li:nth-child(n) .rental-volba:has(:checked)>strong { color:#77edb5; }
.rental-card:has(.rental-volba:hover > [data-volba], [data-volba]:checked) .rental-instructions { background:#102c22; border-color:#38cb8f; box-shadow:0 0 0 1px #158458,0 0 12px #18a96722; }
.rental-card:has(.rental-volba:hover > [data-volba], [data-volba]:checked) .rental-instructions>summary,
.rental-card:has(.rental-volba:hover > [data-volba], [data-volba]:checked) .rental-instructions>summary::after,
.rental-card:has(.rental-volba:hover > [data-volba], [data-volba]:checked) .rental-upozorneni { color:#a3f1ca; }
.rental-card.je-vybrana,.rental-card.je-vybrana:hover { border-color:#38cb8f; box-shadow:0 0 0 2px #38cb8f; }
.po-form input[type=checkbox],.po-form input[type=radio] { accent-color:#079f62; }
/* Výběr je zelený také ve filtrech; zaškrtnutí zůstává dobře viditelné. */
.rental-filter button[data-active=true],.rental-filter:hover button[data-active=true]:not(:hover),.rental-length button[data-active=true] { background:#087b4c; color:#fff; border-color:#38cb8f; }
.rental-card .rental-volba input:checked~.rental-volba-znak { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12l5 5 9-10' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-position:center; background-size:10px; background-repeat:no-repeat; }
/* Ceník dlouhodobého pronájmu ve stejném závodním stylu. */
.r-neon-vlozeny .r-neon-cenik {
 --w:#121215; --zelena:#69e5ab;
 margin-top:0; padding:28px 24px 24px; overflow:hidden;
 border:1px solid #494047; border-radius:3px 18px 3px 3px;
 background:url('/assets/pujcovna/ferrari-geometrie.svg') right top/820px 318px no-repeat,linear-gradient(145deg,#1c1c21,#101013 65%);
 box-shadow:0 18px 40px #0005;
}
.r-neon-vlozeny .r-neon-cenik::before {
 content:""; position:absolute; top:0; left:0; width:100%; height:3px; border-radius:0;
 background:linear-gradient(90deg,#009b59 0 33.333%,#f5f5f3 33.333% 66.666%,#ed2039 66.666%);
}
.r-neon-vlozeny .r-neon-cenik::after { content:none; }
.r-neon-cenik .r-neon-stitek { margin:0 0 18px; gap:12px; font-size:clamp(19px,1.8vw,25px); font-weight:800; letter-spacing:-.02em; }
.r-neon-cenik .r-neon-stitek .r-neon-tecka { width:5px; height:23px; border-radius:0; background:#ff2941; box-shadow:none; transform:skewX(-12deg); }
.r-neon-cenik .r-neon-tab { border-spacing:0 8px; min-width:850px; font-variant-numeric:tabular-nums; }
.r-neon-cenik .r-neon-tab caption { color:#c1c1c8; font-size:13px; line-height:1.55; margin-bottom:14px; }
.r-neon-cenik .r-neon-tab thead th { padding:0 7px 7px; }
.r-neon-cenik .r-neon-hl { display:block; min-width:0; padding:10px 7px; background:#252529; border:1px solid #4b4147; border-top:2px solid #ef233c; border-radius:2px 10px 2px 2px; color:#f9f9fa; box-shadow:none; font-size:12px; letter-spacing:.045em; white-space:nowrap; }
.r-neon-cenik .r-neon-tab thead th:last-child .r-neon-hl { background:#0e3023; border-color:#24855c; border-top-color:#4ed79b; color:#99efc5; }
.r-neon-cenik .r-neon-tab tbody th,.r-neon-cenik .r-neon-tab tbody td { background:#18181c; padding:15px 10px; border-block:1px solid #333338; }
.r-neon-cenik .r-neon-tab tbody tr:nth-child(even)>* { background:#1d1d21; }
.r-neon-cenik .r-neon-tab tbody th { color:#fff; font-size:17px; border-left:3px solid #ed2039; }
.r-neon-cenik .r-neon-tab tbody td { font-size:17px; color:#f3f3f6; }
.r-neon-cenik .r-neon-tab tbody tr>*:first-child { border-radius:3px 0 0 3px; }
.r-neon-cenik .r-neon-tab tbody tr>*:last-child { border-radius:0 8px 8px 0; background:#13271f; border-color:#294637; }
.r-neon-cenik .r-neon-tab tbody td:last-child b { color:#79e6b1; }
.r-neon-cenik .r-neon-tab small,.r-neon-cenik .r-neon-tab thead th small { color:#b0b0b9; font-size:11px; line-height:1.45; margin-top:5px; }
.r-neon-cenik .r-neon-legenda { border-top:1px solid #464047; padding-top:18px; margin-top:6px; gap:14px 26px; font-size:13px; color:#c6c6ce; }
.r-neon-cenik .r-neon-legenda .r-neon-tecka { width:6px; height:12px; border-radius:1px; background:#ed2840; box-shadow:none; transform:skewX(-15deg); top:.32em; }
.r-neon-cenik .r-neon-legenda .r-neon-tecka-zelena { background:#43ce91; }
.r-neon-cenik .r-neon-legenda .r-neon-tecka-zluta { background:#f0f0f3; }
.r-neon-cenik .r-neon-tab-obal { scrollbar-color:#bd2338 #19191d; }
@media(max-width:760px) {
 .r-neon-vlozeny .r-neon-cenik { padding:22px 14px 18px; }
 .r-neon-cenik .r-neon-stitek { font-size:19px; align-items:flex-start; }
 .r-neon-cenik .r-neon-tab-obal { margin-right:-4px; }
}
