/* Self-hosted Google Fonts: Outfit and Bebas Neue, SIL OFL 1.1. */
/* Canvas measurements put Arial within 2% of Outfit's body/headline widths.
   This local fallback avoids system-ui's extra line wraps during a cold load. */
@font-face {
  font-family: 'Outfit Fallback';
  src: local('Arial');
  size-adjust: 98%;
  font-weight: 400;
}
@font-face {
  font-family: 'Outfit Fallback';
  src: local('Arial Bold');
  size-adjust: 98%;
  font-weight: 700;
}
/* latin-ext */
@font-face {
  font-family: 'Bebas Neue';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/bebas-neue-latin-ext.16c95ce4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Bebas Neue';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/bebas-neue-latin.a7c90c89.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url(/assets/fonts/outfit-latin-ext.0f53d1c0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url(/assets/fonts/outfit-latin.6c18d579.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Royal Rent — shared base stylesheet.
   SOURCE OF TRUTH. Extracted from index.html's inline <style> on
   2026-08-25 so the homepage and the generated pages load one file
   instead of two copies that could drift. Edit here, then run
   `node build.js` to emit the hashed, cache-busted output. */
/* ═════════════════════════════════════════════════════════════
       Brand tokens
       Derived from brandbook-notes.md (Task 1.1).
       The brandbook (Royal Rent Brandbook v1, page 7) lists exactly
       three official colours: green #1D362D, gold #DCBE7F, black
       #110B11. The other palette entries below are derived helpers
       used for hover/surface variation — they are NOT in the brandbook
       and should be reviewed if the brandbook is ever expanded.
       ═════════════════════════════════════════════════════════════ */
            :root {
                /* Brandbook palette */
                --green: #1d362d; /* primary  · 75% usage */
                --gold: #dcbe7f; /* secondary · 20% usage */
                --black: #110b11; /* peripheral · 5% usage */

                /* Derived helpers (not in brandbook) */
                --green-light: #2a4d40; /* elevated green surface */
                --gold-dark: #c4a660; /* gold hover */
                --cream: #f2f0ea; /* neutral off-white (retuned from prototype #f5f0e8) */

                /* Utility */
                --wa-green: #25d366; /* WhatsApp brand green — fixed */
                --gray: #666;

                /* Typography
         Brandbook primary typeface is Nexa Bold (commercial, Fontfabric).
         Outfit from Google Fonts is the closest free geometric-sans
         substitute — used for display headlines and body copy.
         Bebas Neue is the brandbook's secondary typeface; restricted
         to labels, eyebrows, and stat values (it is uppercase-only). */
                --font-display: "Outfit", "Outfit Fallback", Arial, sans-serif;
                --font-label: "Bebas Neue", sans-serif;
                --font-body: "Outfit", "Outfit Fallback", Arial, sans-serif;

                /* Shape */
                --radius-card: 10px;
                --radius-pill: 50px;

                /* Rhythm */
                --section-py-desktop: 128px;
                --section-py-mobile: 72px;
                --section-px: 8%;
            }

            /* ─── Reset ─────────────────────────────────────────────────── */
            *,
            *::before,
            *::after {
                margin: 0;
                padding: 0;
                box-sizing: border-box;
            }
            html {
                scroll-behavior: smooth;
            }
            body {
                font-family: var(--font-body);
                font-size: 16px;
                font-weight: 400;
                line-height: 1.6;
                color: var(--black);
                background: var(--cream);
                -webkit-font-smoothing: antialiased;
                overflow-x: hidden;
            }
            img {
                display: block;
                max-width: 100%;
                height: auto;
            }
            a {
                color: inherit;
                text-decoration: none;
            }
            button {
                font: inherit;
                cursor: pointer;
                border: none;
                background: none;
                color: inherit;
            }
            .bebas {
                font-family: var(--font-label);
                letter-spacing: 0.02em;
            }

            /* ─── Section defaults ──────────────────────────────────────── */
            section {
                padding: var(--section-py-desktop) var(--section-px);
            }
            .section-tag {
                display: inline-block;
                font-family: var(--font-label);
                font-size: 13px;
                letter-spacing: 3px;
                font-weight: 400;
                color: var(--gold);
                text-transform: uppercase;
                margin-bottom: 16px;
            }
            .section-title {
                font-family: var(--font-display);
                font-weight: 800;
                font-size: clamp(36px, 5vw, 64px);
                line-height: 1.05;
                letter-spacing: -0.01em;
                margin-bottom: 16px;
            }
            .section-desc {
                max-width: 640px;
                font-size: 16px;
                color: rgba(17, 11, 17, 0.7);
                margin-bottom: 40px;
            }

            /* ─── Later tasks fill in component styles ─────────────────── */

            /* ─── Fleet section ─────────────────────────────────────────── */
            .fleet-section {
                background: var(--cream);
            }
            .fleet-tabs {
                display: flex;
                flex-wrap: wrap;
                gap: 10px;
                margin: 12px 0 40px;
            }
            .fleet-tab {
                padding: 10px 22px;
                border-radius: var(--radius-pill);
                font-size: 13px;
                font-weight: 600;
                letter-spacing: 0.5px;
                background: transparent;
                color: rgba(17, 11, 17, 0.6);
                border: 1px solid rgba(17, 11, 17, 0.12);
                transition: all 0.2s ease;
            }
            .fleet-tab:hover {
                color: var(--black);
                border-color: rgba(17, 11, 17, 0.3);
            }
            .fleet-tab.active {
                background: var(--green);
                color: var(--cream);
                border-color: var(--green);
            }

            .fleet-grid {
                display: grid;
                gap: 28px;
                grid-template-columns: repeat(3, 1fr);
            }

            .fleet-card {
                background: white;
                border-radius: var(--radius-card);
                overflow: hidden;
                box-shadow: 0 2px 12px rgba(17, 11, 17, 0.06);
                transition:
                    transform 0.25s ease,
                    box-shadow 0.25s ease;
                display: flex;
                flex-direction: column;
            }
            .fleet-card:hover {
                transform: translateY(-4px);
                box-shadow: 0 12px 28px rgba(17, 11, 17, 0.12);
            }
            .fleet-card .card-image {
                aspect-ratio: 16 / 10;
                background: var(--green);
                position: relative;
                overflow: hidden;
            }
            .fleet-card .card-image img {
                width: 100%;
                height: 100%;
                object-fit: cover;
            }
            .fleet-card .card-actions {
                display: flex;
                flex-wrap: wrap;
                align-items: center;
                gap: 14px;
            }
            .fleet-card .card-details {
                font-size: 13px;
                font-weight: 600;
                color: var(--green);
                text-decoration: none;
                border-bottom: 1px solid rgba(29, 54, 45, 0.3);
            }
            .fleet-card .card-details:hover {
                color: var(--gold-dark);
                border-bottom-color: var(--gold-dark);
            }
            a.card-name {
                text-decoration: none;
                color: inherit;
            }
            a.card-name:hover {
                color: var(--gold-dark);
            }
            .fleet-card .card-badge {
                position: absolute;
                top: 12px;
                right: 12px;
                padding: 5px 12px;
                border-radius: var(--radius-pill);
                font-size: 10px;
                font-weight: 700;
                letter-spacing: 1.5px;
                text-transform: uppercase;
            }
            .card-badge.badge-premium {
                background: var(--gold);
                color: var(--black);
            }
            .card-badge.badge-minivan {
                background: var(--green-light);
                color: var(--cream);
            }
            .card-badge.badge-van {
                background: rgba(255, 255, 255, 0.92);
                color: var(--green);
            }
            .card-badge.badge-budget {
                background: var(--cream);
                color: var(--black);
                border: 1px solid var(--gold-dark);
            }
            .card-badge.badge-trailer {
                background: var(--green-light);
                color: var(--gold);
            }

            .fleet-card .card-body {
                padding: 22px 22px 24px;
                display: flex;
                flex-direction: column;
                gap: 10px;
                flex: 1;
            }
            .fleet-card .card-name-row {
                display: flex;
                align-items: baseline;
                justify-content: space-between;
                gap: 12px;
            }
            .fleet-card .card-name {
                font-family: var(--font-display);
                font-weight: 800;
                font-size: 22px;
                letter-spacing: -0.005em;
                color: var(--black);
            }
            .fleet-card .card-price-from {
                flex-shrink: 0;
                display: flex;
                flex-direction: column;
                align-items: flex-end;
                gap: 2px;
                white-space: nowrap;
            }
            .fleet-card .card-price-from .price-from-row {
                display: inline-flex;
                align-items: baseline;
                gap: 6px;
            }
            .fleet-card .card-price-from .price-from-label {
                font-family: var(--font-label);
                font-size: 11px;
                letter-spacing: 0.15em;
                text-transform: uppercase;
                color: rgba(17, 11, 17, 0.55);
            }
            .fleet-card .card-price-from .price-from-value {
                font-family: var(--font-display);
                font-weight: 700;
                font-size: 18px;
                color: var(--green);
            }
            .fleet-card .card-price-from .price-from-value-eur {
                font-family: var(--font-display);
                font-weight: 500;
                font-size: 13px;
                color: rgba(29, 54, 45, 0.6);
            }
            .fleet-card .card-price-from .price-from-note {
                font-size: 9px;
                line-height: 1.2;
                color: rgba(17, 11, 17, 0.45);
                font-style: italic;
                letter-spacing: 0.02em;
                max-width: 140px;
                text-align: right;
                white-space: normal;
            }
            .fleet-card .card-meta {
                display: flex;
                gap: 10px 14px;
                flex-wrap: wrap;
                font-size: 12px;
                color: var(--gray);
            }
            .fleet-card .card-meta span {
                display: inline-flex;
                align-items: center;
                gap: 4px;
            }
            .fleet-card .card-tiers {
                display: grid;
                grid-template-columns: repeat(4, 1fr);
                gap: 4px;
                padding: 10px 8px;
                background: rgba(220, 190, 127, 0.1);
                border-radius: 8px;
                border: 1px solid rgba(220, 190, 127, 0.25);
                margin-top: 4px;
            }
            .fleet-card .card-tiers .tier {
                display: flex;
                flex-direction: column;
                align-items: center;
                justify-content: center;
                gap: 3px;
                text-align: center;
                padding: 4px 0;
                border-right: 1px solid rgba(220, 190, 127, 0.18);
            }
            .fleet-card .card-tiers .tier:last-child {
                border-right: none;
            }
            .fleet-card .card-tiers .tier-days {
                font-family: var(--font-label);
                font-size: 9px;
                letter-spacing: 0.8px;
                color: rgba(17, 11, 17, 0.55);
                text-transform: uppercase;
            }
            .fleet-card .card-tiers .tier-price {
                font-family: var(--font-display);
                font-weight: 700;
                font-size: 16px;
                color: var(--green);
                line-height: 1;
            }
            .fleet-card .card-tiers .tier-price::after {
                content: " lei";
                font-size: 9px;
                font-weight: 500;
                color: rgba(17, 11, 17, 0.5);
                letter-spacing: 0;
            }
            .fleet-card .tiers-note {
                font-size: 10px;
                color: rgba(17, 11, 17, 0.5);
                text-align: center;
                letter-spacing: 0.3px;
                font-style: italic;
                margin-top: 4px;
            }
            .fleet-card .card-foot {
                margin-top: auto;
                padding-top: 16px;
                display: flex;
                justify-content: space-between;
                align-items: flex-end;
                gap: 16px;
                border-top: 1px solid rgba(17, 11, 17, 0.08);
            }
            .fleet-card .card-description {
                flex: 1;
                font-size: 12px;
                line-height: 1.55;
                color: rgba(17, 11, 17, 0.65);
                margin: 0;
            }
            .fleet-card .card-cta {
                flex-shrink: 0;
                padding: 8px 18px;
                border-radius: var(--radius-pill);
                background: var(--gold);
                color: var(--black);
                font-size: 12px;
                font-weight: 700;
                letter-spacing: 1px;
                text-transform: uppercase;
                transition: background 0.2s ease;
            }
            .fleet-card .card-cta:hover {
                background: var(--gold-dark);
            }

            /* ─── Navigation ────────────────────────────────────────────── */
            .nav {
                position: fixed;
                top: 0;
                left: 0;
                right: 0;
                z-index: 100;
                display: flex;
                align-items: center;
                justify-content: space-between;
                padding: 16px 48px;
                background: rgba(17, 11, 17, 0.92);
                backdrop-filter: blur(14px);
                -webkit-backdrop-filter: blur(14px);
                border-bottom: 1px solid rgba(220, 190, 127, 0.15);
                color: var(--cream);
            }
            .nav-logo {
                display: flex;
                align-items: center;
                gap: 12px;
                color: var(--cream);
            }
            .nav-logo-mark {
                width: 48px;
                height: 48px;
                display: flex;
                align-items: center;
                justify-content: center;
                flex-shrink: 0;
            }
            .nav-logo-mark img {
                width: 100%;
                height: 100%;
                object-fit: contain;
            }
            .nav-logo-text {
                line-height: 1.15;
            }
            .nav-logo-name {
                font-family: var(--font-display);
                font-weight: 500;
                font-size: 20px;
                letter-spacing: 0.25em;
                display: block;
            }
            .nav-logo-sub {
                font-family: var(--font-display);
                font-weight: 400;
                font-size: 11px;
                letter-spacing: 0.3em;
                color: var(--gold);
                display: block;
            }

            .nav-links {
                display: flex;
                gap: 4px;
            }
            .nav-links a {
                padding: 8px 16px;
                border-radius: var(--radius-pill);
                font-size: 13px;
                font-weight: 500;
                letter-spacing: 0.5px;
                color: var(--cream);
                opacity: 0.85;
                transition:
                    background 0.2s ease,
                    opacity 0.2s ease;
            }
            .nav-links a:hover {
                background: rgba(220, 190, 127, 0.12);
                opacity: 1;
                color: var(--gold);
            }

            .nav-right {
                display: flex;
                align-items: center;
                gap: 14px;
            }

            .nav-cta {
                padding: 10px 20px;
                border-radius: var(--radius-pill);
                /* Two words, one line — the button wrapped at tablet widths. */
                white-space: nowrap;
                background: var(--gold);
                color: var(--black) !important;
                font-size: 12px;
                font-weight: 700;
                letter-spacing: 1.5px;
                text-transform: uppercase;
                transition: background 0.2s ease;
            }
            .nav-cta:hover {
                background: var(--gold-dark);
            }

            .lang-toggle {
                display: flex;
                flex-shrink: 0;
                gap: 2px;
                border: 1px solid rgba(220, 190, 127, 0.3);
                border-radius: 6px;
                overflow: hidden;
            }
            .lang-btn {
                padding: 5px 10px;
                font-size: 11px;
                font-weight: 700;
                letter-spacing: 1px;
                color: var(--gold);
                background: transparent;
            }
            .lang-btn.active {
                background: var(--gold);
                color: var(--black);
            }

            .nav-burger {
                display: none;
                flex-direction: column;
                gap: 4px;
            }
            .nav-burger span {
                width: 22px;
                height: 2px;
                background: var(--cream);
                border-radius: 1px;
            }

            /* Push content below fixed nav */
            body {
                padding-top: 72px;
            }

            /* ─── Hero ──────────────────────────────────────────────────── */
            .hero {
                background: radial-gradient(
                    ellipse at 70% 30%,
                    var(--green-light) 0%,
                    var(--green) 70%
                );
                color: var(--cream);
                padding: 160px 8% 80px;
                min-height: 100vh;
                display: flex;
                flex-direction: column;
                justify-content: space-between;
            }
            .hero-inner {
                display: grid;
                grid-template-columns: 1.2fr 1fr;
                gap: 60px;
                align-items: center;
                flex: 1;
            }
            .hero-copy {
                max-width: 680px;
            }

            .hero-eyebrow {
                display: inline-block;
                font-family: var(--font-label);
                font-size: 14px;
                letter-spacing: 3px;
                font-weight: 400;
                color: var(--gold);
                margin-bottom: 20px;
            }

            .hero-title {
                font-family: var(--font-display);
                font-weight: 900;
                font-size: clamp(56px, 9vw, 128px);
                line-height: 0.95;
                letter-spacing: -0.02em;
                margin-bottom: 24px;
            }
            .hero-title-top {
                display: block;
                color: var(--cream);
            }
            .hero-title-accent {
                display: block;
                color: var(--gold);
                font-style: italic;
            }

            .hero-desc {
                font-size: 17px;
                color: rgba(245, 240, 232, 0.72);
                max-width: 560px;
                margin-bottom: 36px;
            }
            .hero-ctas {
                display: flex;
                gap: 14px;
                flex-wrap: wrap;
            }
            .cta-primary {
                padding: 16px 34px;
                border-radius: var(--radius-pill);
                background: var(--gold);
                color: var(--black);
                font-size: 13px;
                font-weight: 700;
                letter-spacing: 1.5px;
                text-transform: uppercase;
                transition:
                    background 0.2s ease,
                    transform 0.2s ease;
            }
            .cta-primary:hover {
                background: var(--gold-dark);
                transform: translateY(-2px);
            }
            .cta-secondary {
                padding: 16px 34px;
                border-radius: var(--radius-pill);
                background: transparent;
                color: var(--cream);
                border: 1px solid rgba(220, 190, 127, 0.5);
                font-size: 13px;
                font-weight: 700;
                letter-spacing: 1.5px;
                text-transform: uppercase;
                transition: all 0.2s ease;
            }
            .cta-secondary:hover {
                border-color: var(--gold);
                color: var(--gold);
            }

            .hero-feature-card {
                background: rgba(220, 190, 127, 0.06);
                border: 1px solid rgba(220, 190, 127, 0.3);
                border-radius: 18px;
                padding: 16px;
                overflow: hidden;
            }
            .hero-feature-card img {
                width: 100%;
                height: auto;
                border-radius: 10px;
            }

            .hero-stats {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                gap: 40px;
                margin-top: 60px;
                padding-top: 40px;
                border-top: 1px solid rgba(220, 190, 127, 0.2);
            }
            .stat {
                display: flex;
                flex-direction: column;
                gap: 6px;
                align-items: flex-start;
            }
            .stat-icon {
                width: 40px;
                height: 40px;
                border-radius: 10px;
                background: rgba(220, 190, 127, 0.12);
                border: 1px solid rgba(220, 190, 127, 0.25);
                color: var(--gold);
                display: inline-flex;
                align-items: center;
                justify-content: center;
                margin-bottom: 6px;
            }
            .stat-value {
                font-size: 56px;
                color: var(--gold);
                line-height: 1;
            }
            .stat-label {
                font-size: 11px;
                letter-spacing: 2px;
                text-transform: uppercase;
                color: rgba(245, 240, 232, 0.55);
            }
            .stat-sublabel {
                font-size: 10px;
                letter-spacing: 1px;
                color: rgba(245, 240, 232, 0.4);
                margin-top: 2px;
            }

            /* ─── Transparency band (Transparență Totală) ──────────────── */
            .transparency-section {
                background: var(--black);
                color: var(--cream);
                padding: 80px 8%;
                text-align: center;
            }
            .transparency-header {
                margin-bottom: 48px;
            }
            .transparency-header .section-tag {
                color: var(--gold);
                margin-bottom: 12px;
            }
            .transparency-title {
                font-family: var(--font-display);
                font-weight: 900;
                font-size: clamp(36px, 5vw, 64px);
                line-height: 1;
                letter-spacing: -0.01em;
                color: var(--cream);
            }
            .transparency-grid {
                display: grid;
                grid-template-columns: repeat(2, 1fr);
                gap: 48px;
                max-width: 760px;
                margin: 0 auto;
            }
            .transparency-stat {
                display: flex;
                flex-direction: column;
                align-items: center;
                gap: 10px;
                padding-top: 32px;
                border-top: 1px solid rgba(220, 190, 127, 0.3);
            }
            .transparency-value {
                font-family: var(--font-display);
                font-weight: 900;
                font-size: clamp(64px, 7vw, 96px);
                line-height: 1;
                color: var(--gold);
            }
            .transparency-label {
                font-family: var(--font-label);
                font-size: 13px;
                letter-spacing: 2.5px;
                text-transform: uppercase;
                color: rgba(245, 240, 232, 0.72);
            }

            /* ─── Services ──────────────────────────────────────────────── */
            .services-section {
                background: var(--green);
                color: var(--cream);
            }
            .section-tag.light,
            .section-title.light,
            .section-desc.light {
                color: var(--gold);
            }
            .section-title.light {
                color: var(--cream);
            }
            .section-desc.light {
                color: rgba(245, 240, 232, 0.65);
            }

            .services-grid {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                gap: 20px;
                margin-top: 48px;
            }
            .service-tile {
                background: rgba(220, 190, 127, 0.04);
                border: 1px solid rgba(220, 190, 127, 0.15);
                border-radius: 14px;
                padding: 32px 26px;
                transition: all 0.25s ease;
            }
            .service-tile:hover {
                background: rgba(220, 190, 127, 0.08);
                border-color: rgba(220, 190, 127, 0.35);
                transform: translateY(-3px);
            }
            .service-icon {
                width: 56px;
                height: 56px;
                border-radius: 12px;
                background: rgba(220, 190, 127, 0.12);
                color: var(--gold);
                display: flex;
                align-items: center;
                justify-content: center;
                margin-bottom: 20px;
            }
            .service-title {
                font-size: 18px;
                font-weight: 700;
                margin-bottom: 10px;
                color: var(--cream);
            }
            .service-desc {
                font-size: 13px;
                line-height: 1.6;
                color: rgba(245, 240, 232, 0.65);
            }

            /* ─── About ─────────────────────────────────────────────────── */
            .about-section {
                display: grid;
                grid-template-columns: 1.2fr 1fr;
                gap: 80px;
                align-items: center;
                background: var(--cream);
            }
            .about-points {
                list-style: none;
                padding: 0;
                margin: 24px 0 0;
                display: flex;
                flex-direction: column;
                gap: 12px;
            }
            .about-points li {
                position: relative;
                padding-left: 28px;
                font-size: 14px;
                color: rgba(17, 11, 17, 0.72);
            }
            .about-points li::before {
                content: "";
                position: absolute;
                left: 0;
                top: 0.5em;
                width: 16px;
                height: 2px;
                background: var(--gold);
            }
            .about-image img {
                width: 100%;
                height: auto;
                border-radius: 14px;
                box-shadow: 0 20px 40px rgba(17, 11, 17, 0.12);
            }

            /* ─── Contact ───────────────────────────────────────────────── */
            .contact-section {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: 60px;
                align-items: center;
                background: var(--green);
                color: var(--cream);
            }
            .contact-row {
                display: flex;
                align-items: center;
                gap: 16px;
                padding: 14px 0;
                color: var(--cream);
                border-bottom: 1px solid rgba(220, 190, 127, 0.15);
            }
            .contact-row:last-of-type {
                border-bottom: none;
            }
            .contact-icon {
                width: 44px;
                height: 44px;
                border-radius: 10px;
                background: rgba(220, 190, 127, 0.12);
                color: var(--gold);
                display: inline-flex;
                align-items: center;
                justify-content: center;
                flex-shrink: 0;
            }
            .contact-label {
                display: block;
                font-size: 11px;
                letter-spacing: 2px;
                text-transform: uppercase;
                color: var(--gold);
                margin-bottom: 2px;
            }
            .contact-value {
                display: block;
                font-size: 16px;
                color: var(--cream);
            }

            .contact-cta-card {
                background: rgba(37, 211, 102, 0.08);
                border: 1px solid rgba(37, 211, 102, 0.4);
                border-radius: 18px;
                padding: 40px;
                text-align: center;
            }
            .contact-cta-icon {
                margin-bottom: 20px;
            }
            .contact-cta-title {
                font-family: var(--font-display);
                font-weight: 800;
                font-size: 32px;
                letter-spacing: -0.01em;
                margin-bottom: 14px;
                color: var(--cream);
            }
            .contact-cta-desc {
                font-size: 14px;
                color: rgba(245, 240, 232, 0.7);
                margin-bottom: 28px;
                max-width: 360px;
                margin-left: auto;
                margin-right: auto;
            }
            .contact-cta-btn {
                display: inline-block;
                padding: 16px 34px;
                border-radius: var(--radius-pill);
                background: var(--wa-green);
                color: var(--black);
                font-size: 13px;
                font-weight: 700;
                letter-spacing: 1.5px;
                text-transform: uppercase;
                transition:
                    background 0.2s ease,
                    transform 0.2s ease;
            }
            .contact-cta-btn:hover {
                background: #1fb755;
                transform: translateY(-2px);
            }

            /* ─── Contact map (embedded Google Maps + business-profile link) ── */
            .contact-map {
                grid-column: 1 / -1;
                display: flex;
                flex-direction: column;
                align-items: center;
                gap: 18px;
                margin-top: 24px;
            }
            .contact-map-frame {
                width: 100%;
                border-radius: 14px;
                overflow: hidden;
                border: 1px solid rgba(220, 190, 127, 0.25);
                box-shadow: 0 12px 32px rgba(17, 11, 17, 0.3);
                background: #fff;
            }
            .contact-map-frame iframe {
                width: 100%;
                height: 360px;
                border: 0;
                display: block;
            }
            .contact-map-link {
                display: inline-flex;
                align-items: center;
                gap: 8px;
                padding: 12px 28px;
                border-radius: var(--radius-pill);
                background: rgba(220, 190, 127, 0.14);
                border: 1px solid rgba(220, 190, 127, 0.4);
                color: var(--gold) !important;
                font-size: 12px;
                font-weight: 700;
                letter-spacing: 1.5px;
                text-transform: uppercase;
                transition:
                    background 0.2s ease,
                    transform 0.2s ease;
            }
            .contact-map-link:hover {
                background: rgba(220, 190, 127, 0.22);
                transform: translateY(-2px);
            }

            /* ─── Footer ────────────────────────────────────────────────── */
            .footer {
                background: var(--black);
                color: rgba(245, 240, 232, 0.7);
                padding: 72px 8% 36px;
            }
            .footer-grid {
                display: grid;
                grid-template-columns: 1.4fr 1fr 1fr 1.1fr 1fr;
                gap: 40px;
            }
            .footer-brand .nav-logo-name {
                color: var(--cream);
                display: block;
                margin-bottom: 2px;
            }
            .footer-brand .nav-logo-sub {
                color: var(--gold);
                display: block;
                margin-bottom: 16px;
            }
            .footer-brand p {
                font-size: 13px;
                max-width: 340px;
                line-height: 1.7;
            }
            .footer-col {
                display: flex;
                flex-direction: column;
                gap: 10px;
            }
            .footer-col-title {
                font-family: var(--font-label);
                font-size: 12px;
                letter-spacing: 2px;
                color: var(--gold);
                text-transform: uppercase;
                margin-bottom: 6px;
            }
            .footer-col a,
            .footer-col span {
                font-size: 13px;
                color: rgba(245, 240, 232, 0.62);
                transition: color 0.2s ease;
            }
            .footer-col a:hover {
                color: var(--gold);
            }
            .footer-bottom {
                border-top: 1px solid rgba(220, 190, 127, 0.15);
                margin-top: 48px;
                padding-top: 24px;
                display: flex;
                justify-content: space-between;
                align-items: center;
                font-size: 12px;
            }

            /* ─── Responsive breakpoints ───────────────────────────────── */
            @media (max-width: 1024px) {
                .hero-inner {
                    grid-template-columns: 1fr;
                    gap: 40px;
                }
                .hero-feature {
                    order: -1;
                    max-width: 480px;
                }
                .fleet-grid {
                    grid-template-columns: repeat(2, 1fr);
                }
                .services-grid {
                    grid-template-columns: repeat(2, 1fr);
                }
                .about-section {
                    grid-template-columns: 1fr;
                    gap: 40px;
                }
                .contact-section {
                    grid-template-columns: 1fr;
                    gap: 40px;
                }
                .contact-map-frame iframe {
                    height: 280px;
                }
                .footer-grid {
                    grid-template-columns: 1fr 1fr;
                }
            }

            /* ─── Cookie consent bar ────────────────────────────────────
               Injected by the consent script on every page. Sits above the
               content rather than blocking it, so a visitor can still read
               and navigate before choosing. */
            .cookie-bar {
                position: fixed;
                left: 16px;
                right: 16px;
                bottom: 16px;
                z-index: 200;
                display: flex;
                flex-wrap: wrap;
                align-items: center;
                justify-content: space-between;
                gap: 16px;
                max-width: 900px;
                margin: 0 auto;
                padding: 18px 22px;
                border-radius: 14px;
                background: rgba(17, 11, 17, 0.97);
                border: 1px solid rgba(220, 190, 127, 0.28);
                box-shadow: 0 18px 40px rgba(17, 11, 17, 0.32);
                backdrop-filter: blur(10px);
                -webkit-backdrop-filter: blur(10px);
            }
            .cookie-bar p {
                margin: 0;
                flex: 1 1 340px;
                font-size: 14px;
                line-height: 1.6;
                color: rgba(242, 240, 234, 0.86);
            }
            .cookie-more {
                color: var(--gold);
                text-decoration: underline;
                white-space: nowrap;
            }
            .cookie-actions {
                display: flex;
                gap: 10px;
                flex-shrink: 0;
            }
            .cookie-btn {
                font-family: var(--font-body);
                font-size: 13px;
                font-weight: 700;
                letter-spacing: 0.6px;
                padding: 10px 22px;
                border-radius: var(--radius-pill);
                cursor: pointer;
                transition: background 0.2s ease, color 0.2s ease;
            }
            .cookie-accept {
                background: var(--gold);
                color: var(--black);
            }
            .cookie-accept:hover {
                background: var(--gold-dark);
            }
            .cookie-reject {
                background: transparent;
                color: rgba(242, 240, 234, 0.82);
                border: 1px solid rgba(220, 190, 127, 0.4);
            }
            .cookie-reject:hover {
                color: var(--gold);
                border-color: var(--gold);
            }
            @media (max-width: 560px) {
                .cookie-bar {
                    left: 10px;
                    right: 10px;
                    bottom: 10px;
                    padding: 16px 18px;
                }
                .cookie-actions {
                    width: 100%;
                }
                .cookie-btn {
                    flex: 1;
                }
            }

            /* Seven nav items need ~1070px before gutters. Between 1151px
               and 1400px they only fit with tightened gutters; below 1151px
               the burger takes over. */
            @media (max-width: 1400px) and (min-width: 1151px) {
                .nav {
                    padding: 16px 24px;
                }
                .nav-links a {
                    padding: 8px 10px;
                }
                .nav-cta {
                    padding: 10px 14px;
                    letter-spacing: 1px;
                }
            }

            @media (max-width: 1150px) {
                .nav {
                    padding: 14px 6%;
                }
                .nav-links {
                    display: none;
                }
                .nav-burger {
                    display: flex;
                }
                .nav-cta {
                    padding: 8px 14px;
                    font-size: 11px;
                }

                /* Mobile menu overlay — populated by nav-burger toggle */
                .nav.open .nav-links {
                    display: flex;
                    position: fixed;
                    top: 72px;
                    left: 0;
                    right: 0;
                    flex-direction: column;
                    gap: 0;
                    background: rgba(17, 11, 17, 0.96);
                    padding: 20px 6%;
                    border-bottom: 1px solid rgba(220, 190, 127, 0.2);
                }
                .nav.open .nav-links a {
                    padding: 14px 0;
                    border-radius: 0;
                    border-bottom: 1px solid rgba(220, 190, 127, 0.08);
                }
            }

            @media (max-width: 768px) {
                section {
                    padding: var(--section-py-mobile) 6%;
                }
                .hero {
                    padding: 120px 6% 60px;
                }
                .hero-stats {
                    grid-template-columns: 1fr;
                    gap: 20px;
                }
            }

            @media (max-width: 600px) {
                .fleet-grid {
                    grid-template-columns: 1fr;
                }
                .services-grid {
                    grid-template-columns: 1fr;
                }
                .transparency-grid {
                    grid-template-columns: 1fr;
                    gap: 32px;
                }
                .footer-grid {
                    grid-template-columns: 1fr;
                    gap: 32px;
                }
                /* Hide nav booking CTA on narrow screens — burger + hero CTAs cover it,
         and it was crowding the lang-toggle out. */
                .nav-cta {
                    display: none;
                }
                /* Stack name above price on narrow cards so name doesn't squeeze to 3 lines */
                .fleet-card .card-name-row {
                    flex-direction: column;
                    align-items: flex-start;
                    gap: 4px;
                }
                .fleet-card .card-price-from {
                    align-items: flex-start;
                }
                .fleet-card .card-tiers .tier-price {
                    font-size: 15px;
                }
            }

/* Crawlable language links retain the existing selector appearance. */
.lang-btn { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
[hidden] { display: none !important; }
a:focus-visible, button:focus-visible, summary:focus-visible, [tabindex]:focus-visible {
    outline: 3px solid var(--gold-dark); outline-offset: 4px;
}
.service-links { background: var(--cream); }
.service-links .section-title { color: var(--green); }
.service-link-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.service-link-grid a { color: var(--green); border-bottom: 1px solid var(--gold-dark); padding: 18px 0; font-weight: 600; }
.text-link + .text-link { margin-left: 20px; }
.about-copy .text-link { display: inline-block; margin-top: 20px; color: var(--green); text-decoration: underline; }
.table-scroll { max-width: 100%; }
.price-table caption { text-align: left; padding: 12px 0; color: var(--green); }
@media (max-width: 600px) {
    .service-link-grid { grid-template-columns: 1fr; }
    .text-link + .text-link { margin-left: 0; }
    .vehicle-hero > *, .hub-head, .section, .cond-item { min-width: 0; }
    body.subpage h1 { overflow-wrap: anywhere; font-size: clamp(32px, 8.8vw, 48px); }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation: none !important; transition: none !important; }
}
/* Accessible text variants on light surfaces; the brand backgrounds stay unchanged. */
:root { --gold-text: #80652e; }
.fleet-section .section-tag, .about-section .section-tag,
body.subpage .section:not(.conditions):not(.cta-band) .section-tag,
body.subpage .vehicle-intro .section-tag { color: var(--gold-text); }
#fleetGrid .fleet-card .price-from-label, #fleetGrid .fleet-card .price-from-value-eur,
#fleetGrid .fleet-card .tier-days, #fleetGrid .fleet-card .tiers-note { color: var(--gray); }
.fleet-card .card-image picture { display: block; width: 100%; height: 100%; }
.minimum-period { display: block; font-size: 12px; line-height: 1.5; font-weight: 400; }
