
:root{--br-blue:#0b3f91;--br-blue2:#0752b4;--br-navy:#07152d;--br-ink:#101828;--br-muted:#5f6b7a;--br-line:#dce4ef;--br-bg:#f6f8fb;--br-white:#fff;--br-shadow:0 18px 50px rgba(7,21,45,.12);--br-radius:18px;--br-max:1220px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}.brp{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--br-ink);background:#fff}.brp a{text-decoration:none}.brp img{max-width:100%;display:block}.brp-shell{max-width:var(--br-max);margin:0 auto;padding:0 24px}
.brp-header{position:sticky;top:0;z-index:999;background:rgba(255,255,255,.96);backdrop-filter:blur(15px);border-bottom:1px solid rgba(220,228,239,.9)}.brp-header-inner{max-width:var(--br-max);margin:auto;padding:13px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brp-brand img{width:310px;height:auto;max-height:64px;object-fit:contain;object-position:left center}.brp-nav{display:flex;align-items:center;gap:25px}.brp-nav a{color:var(--br-ink);font-weight:650;font-size:15px;padding:12px 0;position:relative}.brp-nav a:hover,.brp-nav a.is-active{color:var(--br-blue)}.brp-nav a.is-active:after{content:"";position:absolute;left:0;right:0;bottom:3px;height:2px;background:var(--br-blue);border-radius:2px}.brp-menu-btn{display:none;border:1px solid var(--br-line);background:#fff;border-radius:10px;padding:10px 12px;font-weight:800;color:var(--br-navy)}
.brp-kicker{color:var(--br-blue);letter-spacing:.14em;text-transform:uppercase;font-weight:850;font-size:12px}.brp-hero{position:relative;min-height:640px;overflow:hidden;background:#0a1630}.brp-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.brp-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,16,38,.94) 0%,rgba(4,16,38,.78) 31%,rgba(4,16,38,.30) 57%,rgba(4,16,38,.03) 80%)}.brp-hero-inner{position:relative;z-index:2;min-height:640px;display:flex;align-items:center}.brp-hero-copy{width:min(620px,58%);color:#fff;padding:66px 0}.brp-hero-copy .brp-kicker{color:#bad4ff}.brp-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(48px,5.2vw,78px);line-height:.98;letter-spacing:-.03em;margin:16px 0 22px}.brp-hero p{font-size:20px;line-height:1.58;color:#e9eef7;max-width:610px;margin:0 0 30px}.brp-actions{display:flex;flex-wrap:wrap;gap:14px}.brp-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 22px;border-radius:12px;font-weight:800;border:1px solid transparent;transition:.2s ease;cursor:pointer}.brp-btn-primary{background:linear-gradient(135deg,var(--br-blue2),var(--br-blue));color:#fff;box-shadow:0 12px 30px rgba(11,63,145,.28)}.brp-btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(11,63,145,.34)}.brp-btn-white{background:#fff;color:var(--br-blue);border-color:#fff}.brp-btn-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.65)}
.brp-section{padding:78px 0}.brp-section-soft{background:var(--br-bg)}.brp-title-wrap{text-align:center;max-width:840px;margin:0 auto 38px}.brp-title-wrap h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(36px,4vw,56px);line-height:1.08;margin:10px 0 0;color:var(--br-navy)}.brp-title-wrap p{font-size:18px;line-height:1.6;color:var(--br-muted)}
.brp-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.brp-card{display:block;background:#fff;border:1px solid var(--br-line);border-radius:var(--br-radius);padding:28px;color:var(--br-ink);box-shadow:0 8px 28px rgba(7,21,45,.06);transition:.2s ease;min-height:225px}.brp-card:hover{transform:translateY(-5px);box-shadow:var(--br-shadow);border-color:#b8c9df}.brp-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#edf4ff;color:var(--br-blue);font-size:28px;margin-bottom:20px}.brp-card h3{font-size:21px;margin:0 0 10px;color:var(--br-navy)}.brp-card p{font-size:15.5px;line-height:1.55;color:var(--br-muted);margin:0}.brp-card .brp-more{display:inline-block;margin-top:18px;color:var(--br-blue);font-weight:800}
.brp-gallery{display:grid;grid-template-columns:1.1fr 1.1fr .8fr 1fr 1fr;gap:12px}.brp-gallery a{overflow:hidden;border-radius:14px;background:#e8edf5;min-height:240px}.brp-gallery img{width:100%;height:100%;object-fit:cover;transition:.3s ease}.brp-gallery a:hover img{transform:scale(1.04)}
.brp-cta{background:linear-gradient(135deg,#062c70,#0754bd);color:#fff;position:relative;overflow:hidden}.brp-cta:after{content:"BR";position:absolute;right:-20px;bottom:-65px;font-size:260px;font-weight:900;color:rgba(255,255,255,.06);line-height:1}.brp-cta-inner{position:relative;z-index:2;padding:56px 0;display:grid;grid-template-columns:1.25fr .75fr;gap:42px;align-items:center}.brp-cta h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,4vw,54px);line-height:1.05;margin:0 0 14px}.brp-cta p{font-size:18px;line-height:1.55;color:#e5efff;margin:0}.brp-contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.brp-contact-item{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.22);border-radius:14px;padding:18px;color:#fff}.brp-contact-item strong{display:block;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#bad4ff;margin-bottom:5px}.brp-contact-item a{color:#fff;font-weight:800}
.brp-footer{background:#08111f;color:#dfe7f2}.brp-footer-inner{max-width:var(--br-max);margin:auto;padding:26px 24px;display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:28px;align-items:start}.brp-footer strong{color:#fff}.brp-footer a{color:#dfe7f2}.brp-footer small{color:#9fb0c6}
.brp-page-hero{background:linear-gradient(135deg,#f7f9fc,#eaf1fb);padding:72px 0}.brp-page-hero-grid{display:grid;grid-template-columns:1fr .95fr;gap:48px;align-items:center}.brp-page-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(48px,5vw,72px);line-height:1;margin:12px 0 20px;color:var(--br-navy)}.brp-page-hero p{font-size:19px;line-height:1.6;color:var(--br-muted)}.brp-page-hero-img{border-radius:20px;overflow:hidden;box-shadow:var(--br-shadow)}.brp-page-hero-img img{width:100%;height:430px;object-fit:cover}
.brp-filter{background:#fff;border:1px solid var(--br-line);border-radius:16px;padding:18px;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:14px;box-shadow:0 12px 30px rgba(7,21,45,.08);margin-top:-34px;position:relative;z-index:3}.brp-filter label{font-size:13px;font-weight:800;color:var(--br-navy);display:block;margin-bottom:7px}.brp-filter select,.brp-filter input{width:100%;height:46px;border:1px solid var(--br-line);border-radius:10px;padding:0 12px;background:#fff;color:var(--br-ink)}
.brp-stock-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.brp-truck-card{background:#fff;border:1px solid var(--br-line);border-radius:16px;overflow:hidden;box-shadow:0 10px 28px rgba(7,21,45,.07)}.brp-truck-card-img{display:block;height:250px;background:#edf1f7}.brp-truck-card-img img{width:100%;height:100%;object-fit:cover}.brp-truck-card-body{padding:22px}.brp-truck-card h3{font-family:Georgia,"Times New Roman",serif;font-size:25px;line-height:1.15;margin:0 0 15px;color:var(--br-navy)}.brp-price{color:var(--br-blue);font-size:20px;font-weight:900;margin-bottom:12px}.brp-specs{display:grid;grid-template-columns:1fr 1fr;gap:9px 14px;margin:16px 0}.brp-spec{font-size:14px;color:var(--br-muted)}.brp-spec strong{color:var(--br-ink);display:block}.brp-truck-actions{display:flex;gap:10px}.brp-truck-actions .brp-btn{flex:1;padding:0 12px;min-height:46px}.brp-empty{padding:42px;border:1px dashed #aebed3;border-radius:16px;text-align:center;background:#fbfcfe}
.brp-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.brp-type-card{background:#fff;border:1px solid var(--br-line);border-radius:16px;padding:24px;min-height:180px}.brp-type-card h3{margin:12px 0 8px;color:var(--br-navy)}.brp-process{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.brp-step{position:relative;padding:24px;background:#fff;border-radius:16px;border:1px solid var(--br-line)}.brp-step-num{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--br-blue);color:#fff;font-weight:900;margin-bottom:14px}.brp-service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.brp-service{padding:24px;border-radius:16px;border:1px solid var(--br-line);background:#fff}
.brp-contact-page{display:grid;grid-template-columns:1fr 1fr;gap:28px}.brp-form{background:#fff;border:1px solid var(--br-line);border-radius:18px;padding:26px;box-shadow:0 10px 30px rgba(7,21,45,.06)}.brp-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.brp-form label{font-size:13px;font-weight:800;color:var(--br-navy);display:block;margin-bottom:6px}.brp-form input,.brp-form textarea{width:100%;border:1px solid var(--br-line);border-radius:10px;padding:12px;font:inherit}.brp-form textarea{min-height:130px;resize:vertical}.brp-form-field{margin-bottom:14px}.brp-alert{padding:14px 16px;border-radius:10px;margin-bottom:18px}.brp-alert-ok{background:#eaf8ef;color:#166534}.brp-alert-error{background:#fff1f2;color:#9f1239}
.brp-single{padding:56px 0}.brp-single-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:36px}.brp-single-gallery-main{height:560px;border-radius:18px;overflow:hidden;background:#edf1f7}.brp-single-gallery-main img{width:100%;height:100%;object-fit:cover}.brp-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}.brp-thumbs img{height:110px;width:100%;object-fit:cover;border-radius:10px}.brp-single-info{position:sticky;top:100px;align-self:start;border:1px solid var(--br-line);border-radius:18px;padding:26px;box-shadow:var(--br-shadow)}.brp-single-info h1{font-family:Georgia,"Times New Roman",serif;color:var(--br-navy);font-size:40px;line-height:1.08;margin:0 0 16px}.brp-single-specs{margin:20px 0;border-top:1px solid var(--br-line)}.brp-single-spec{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--br-line)}
.brp-floating-wa{position:fixed;right:20px;bottom:20px;z-index:1000;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;font-size:26px;box-shadow:0 12px 26px rgba(0,0,0,.25)}
@media(max-width:1050px){.brp-nav{gap:16px}.brp-nav a{font-size:14px}.brp-cards{grid-template-columns:repeat(2,1fr)}.brp-gallery{grid-template-columns:repeat(3,1fr)}.brp-stock-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.brp-brand img{width:250px}.brp-menu-btn{display:block}.brp-nav{display:none;position:absolute;top:80px;left:16px;right:16px;background:#fff;border:1px solid var(--br-line);border-radius:16px;box-shadow:var(--br-shadow);padding:16px;flex-direction:column;align-items:stretch;gap:0}.brp-nav.is-open{display:flex}.brp-nav a{padding:12px}.brp-hero,.brp-hero-inner{min-height:590px}.brp-hero:after{background:linear-gradient(90deg,rgba(4,16,38,.94),rgba(4,16,38,.72) 65%,rgba(4,16,38,.35))}.brp-hero-copy{width:100%;max-width:620px}.brp-cta-inner,.brp-page-hero-grid,.brp-contact-page,.brp-single-grid{grid-template-columns:1fr}.brp-filter{grid-template-columns:1fr 1fr}.brp-type-grid,.brp-process{grid-template-columns:repeat(2,1fr)}.brp-single-info{position:static}}
@media(max-width:620px){.brp-header-inner{padding:10px 16px}.brp-brand img{width:210px;max-height:50px}.brp-shell{padding:0 18px}.brp-hero,.brp-hero-inner{min-height:620px}.brp-hero-copy{padding:48px 0}.brp-hero h1{font-size:48px}.brp-hero p{font-size:17px}.brp-actions,.brp-truck-actions{flex-direction:column}.brp-btn{width:100%}.brp-section{padding:58px 0}.brp-cards,.brp-gallery,.brp-stock-grid,.brp-type-grid,.brp-process,.brp-service-list,.brp-contact-grid,.brp-footer-inner,.brp-form-row{grid-template-columns:1fr}.brp-gallery a{height:240px}.brp-cta-inner{padding:44px 0}.brp-filter{grid-template-columns:1fr;margin-top:20px}.brp-page-hero{padding:48px 0}.brp-page-hero-img img{height:300px}.brp-single-gallery-main{height:360px}.brp-thumbs{grid-template-columns:repeat(2,1fr)}}

/* ==========================================================
   BR WEB PREMIUM DEFINITIVA 2.0
   Ajustes consolidados: contraste, portátil, galería y móvil
   ========================================================== */

.brp .brp-hero h1,
.brp .brp-hero-copy h1 {
    color: #ffffff !important;
    text-shadow: 0 3px 18px rgba(0,0,0,.45);
}

.brp .brp-hero-copy p {
    color: #f4f7fb !important;
    text-shadow: 0 2px 12px rgba(0,0,0,.28);
}

.brp .brp-hero-copy .brp-kicker,
.brp .brp-cta .brp-kicker {
    color: #d6e5ff !important;
}

.brp .brp-cta h2,
.brp .brp-cta p {
    color: #ffffff !important;
}

.brp .brp-hero .brp-btn-primary {
    background: #0752b4 !important;
    color: #ffffff !important;
}

.brp .brp-hero .brp-btn-white {
    background: #ffffff !important;
    color: #0b3f91 !important;
}

.brp .brp-hero:after {
    background: linear-gradient(
        90deg,
        rgba(4,16,38,.96) 0%,
        rgba(4,16,38,.86) 30%,
        rgba(4,16,38,.42) 56%,
        rgba(4,16,38,.06) 82%
    ) !important;
}

.brp-thumb-button {
    border: 0;
    padding: 0;
    background: none;
    cursor: pointer;
    border-radius: 10px;
}

.brp-thumb {
    transition: opacity .18s ease, outline-color .18s ease;
    opacity: .78;
}

.brp-thumb:hover,
.brp-thumb:focus,
.brp-thumb.is-active {
    opacity: 1;
    outline: 3px solid #0b3f91;
    outline-offset: 2px;
}

.brp-single-gallery-main img {
    transition: opacity .18s ease;
}

@media (min-width: 900px) and (max-height: 850px) {
    .brp .brp-hero,
    .brp .brp-hero-inner {
        min-height: 520px !important;
    }

    .brp .brp-hero-copy {
        padding-top: 38px !important;
        padding-bottom: 38px !important;
    }

    .brp .brp-hero h1,
    .brp .brp-hero-copy h1 {
        font-size: clamp(48px, 4.3vw, 64px) !important;
        line-height: .98 !important;
        margin-top: 12px !important;
        margin-bottom: 16px !important;
    }

    .brp .brp-hero-copy p {
        font-size: 17px !important;
        line-height: 1.5 !important;
        margin-bottom: 20px !important;
    }

    .brp .brp-hero .brp-btn {
        min-height: 46px !important;
        padding-left: 18px !important;
        padding-right: 18px !important;
    }
}

@media (min-width: 900px) and (max-height: 720px) {
    .brp .brp-hero,
    .brp .brp-hero-inner {
        min-height: 465px !important;
    }

    .brp .brp-hero h1,
    .brp .brp-hero-copy h1 {
        font-size: 54px !important;
    }

    .brp .brp-hero-copy p {
        font-size: 16px !important;
    }
}

@media (max-width: 620px) {
    .brp .brp-hero h1,
    .brp .brp-hero-copy h1 {
        font-size: 44px !important;
        line-height: 1.02 !important;
    }

    .brp .brp-page-hero {
        padding: 38px 0 28px !important;
    }

    .brp .brp-page-hero-grid {
        gap: 26px !important;
    }

    .brp .brp-page-hero h1 {
        font-size: 50px !important;
        line-height: .98 !important;
        margin: 12px 0 20px !important;
    }

    .brp .brp-page-hero p {
        font-size: 18px !important;
        line-height: 1.55 !important;
        margin-bottom: 0 !important;
    }

    .brp .brp-page-hero-img img {
        height: 245px !important;
    }

    .brp .brp-section.brp-section-soft {
        padding-top: 30px !important;
        padding-bottom: 46px !important;
    }

    .brp .brp-filter {
        margin-top: 0 !important;
        padding: 20px !important;
        gap: 16px !important;
        border-radius: 18px !important;
    }

    .brp .brp-filter select,
    .brp .brp-filter input {
        height: 54px !important;
        font-size: 17px !important;
    }

    .brp .brp-filter .brp-btn {
        min-height: 54px !important;
    }

    .brp .brp-stock-grid {
        gap: 20px !important;
    }

    .brp .brp-truck-card-body {
        padding: 20px !important;
    }

    .brp .brp-truck-card h3 {
        font-size: 28px !important;
        line-height: 1.08 !important;
        margin-bottom: 14px !important;
    }

    .brp .brp-specs {
        gap: 14px 18px !important;
    }

    .brp .brp-spec {
        font-size: 16px !important;
    }

    .brp .brp-truck-actions {
        gap: 10px !important;
    }

    .brp .brp-single {
        padding: 30px 0 44px !important;
    }

    .brp .brp-single-gallery-main {
        height: 350px !important;
    }

    .brp .brp-single-info {
        padding: 22px !important;
    }

    .brp .brp-single-info h1 {
        font-size: 35px !important;
        line-height: 1.04 !important;
    }

    .brp .brp-floating-wa {
        width: 52px !important;
        height: 52px !important;
        right: 14px !important;
        bottom: calc(86px + env(safe-area-inset-bottom)) !important;
        font-size: 23px !important;
    }

    .brp .brp-footer-inner {
        padding-bottom: calc(34px + env(safe-area-inset-bottom)) !important;
    }

    .brp .brp-cta {
        padding: 42px 22px !important;
        overflow: hidden !important;
    }

    .brp .brp-cta-grid,
    .brp .brp-cta-inner {
        display: block !important;
        width: 100% !important;
    }

    .brp .brp-cta h2 {
        font-size: 42px !important;
        line-height: 1.02 !important;
        letter-spacing: -.02em !important;
        margin: 0 0 18px !important;
        max-width: 100% !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    .brp .brp-cta p {
        font-size: 19px !important;
        line-height: 1.45 !important;
        margin: 0 0 24px !important;
        max-width: 100% !important;
    }

    .brp .brp-cta .brp-btn {
        width: 100% !important;
        min-height: 56px !important;
        padding: 14px 18px !important;
        font-size: 18px !important;
        text-align: center !important;
    }
}

@media (max-width: 380px) {
    .brp .brp-cta h2 {
        font-size: 36px !important;
    }
}

/* ==========================================================
   BR WEB PREMIUM DEFINITIVA 2.1
   Ficha de camión móvil: orden, lectura y botones
   ========================================================== */

.brp-single-description {
    margin-top: 28px;
    color: var(--br-ink);
    font-size: 16px;
    line-height: 1.72;
}

.brp-single-description p {
    margin: 0 0 16px;
}

@media (max-width: 620px) {
    /* Orden lógico en móvil:
       foto -> miniaturas -> título y ficha -> descripción */
    .brp .brp-single-grid {
        display: flex !important;
        flex-direction: column !important;
        gap: 18px !important;
    }

    .brp .brp-single-media {
        display: contents !important;
    }

    .brp .brp-single-gallery-main {
        order: 1;
        height: 320px !important;
    }

    .brp .brp-thumbs {
        order: 2;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 8px !important;
        margin-top: 0 !important;
    }

    .brp .brp-thumbs img {
        height: 76px !important;
    }

    .brp .brp-single-info {
        order: 3;
        padding: 20px !important;
        border-radius: 16px !important;
    }

    .brp .brp-single-description {
        order: 4;
        margin-top: 2px !important;
        padding: 0 4px 4px !important;
        font-size: 17px !important;
        line-height: 1.62 !important;
        font-weight: 400 !important;
    }

    .brp .brp-single-description p {
        margin: 0 !important;
    }

    .brp .brp-single-info .brp-kicker {
        font-size: 11px !important;
        line-height: 1.45 !important;
        letter-spacing: .12em !important;
        margin-bottom: 10px !important;
    }

    .brp .brp-single-info h1 {
        font-size: 31px !important;
        line-height: 1.03 !important;
        letter-spacing: -.02em !important;
        margin-bottom: 16px !important;
    }

    .brp .brp-single-info .brp-price {
        font-size: 29px !important;
        line-height: 1.1 !important;
        margin-bottom: 18px !important;
    }

    .brp .brp-single-specs {
        margin: 16px 0 20px !important;
    }

    .brp .brp-single-spec {
        display: grid !important;
        grid-template-columns: minmax(105px, .8fr) minmax(0, 1.2fr) !important;
        align-items: start !important;
        gap: 12px !important;
        padding: 13px 0 !important;
        font-size: 16px !important;
        line-height: 1.45 !important;
    }

    .brp .brp-single-spec strong {
        font-size: 15px !important;
        line-height: 1.35 !important;
    }

    .brp .brp-single-spec span {
        text-align: right !important;
        min-width: 0 !important;
        overflow-wrap: anywhere !important;
    }

    .brp .brp-single-spec-configuracion,
    .brp .brp-single-spec-equipamiento {
        grid-template-columns: 1fr !important;
        gap: 7px !important;
    }

    .brp .brp-single-spec-configuracion span,
    .brp .brp-single-spec-equipamiento span {
        text-align: left !important;
        line-height: 1.58 !important;
    }

    .brp .brp-single-info .brp-actions {
        gap: 10px !important;
    }

    .brp .brp-single-info .brp-btn {
        min-height: 54px !important;
        font-size: 17px !important;
    }

    /* En la ficha ya existen botones de contacto.
       Se oculta el flotante para que no tape datos ni acciones. */
    body.single-br_camion .brp-floating-wa {
        display: none !important;
    }
}

/* ==========================================================
   BR WEB PREMIUM DEFINITIVA 2.2
   Título móvil más compacto y descripción comercial
   ========================================================== */

@media (max-width: 620px) {
    .brp .brp-single-info h1 {
        font-size: 28px !important;
        line-height: 1.02 !important;
        letter-spacing: -.018em !important;
        margin-bottom: 15px !important;
    }

    .brp .brp-single-description {
        font-size: 17px !important;
        line-height: 1.58 !important;
        font-weight: 400 !important;
        padding-top: 2px !important;
        padding-bottom: 14px !important;
    }
}

@media (max-width: 380px) {
    .brp .brp-single-info h1 {
        font-size: 26px !important;
    }
}

/* ==========================================================
   BR WEB PREMIUM DEFINITIVA 2.4
   Formulario de consulta por email en fichas de camiones
   ========================================================== */

.brp-truck-form-section {
    padding: 20px 0 76px;
    scroll-margin-top: 96px;
}

.brp-truck-form-layout {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 34px;
    align-items: start;
    padding: 34px;
    border: 1px solid var(--br-line);
    border-radius: 20px;
    background: linear-gradient(135deg, #f7f9fc, #edf3fb);
}

.brp-truck-form-copy h2 {
    margin: 10px 0 14px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(32px, 3.2vw, 46px);
    line-height: 1.06;
    color: var(--br-navy);
}

.brp-truck-form-copy p {
    margin: 0;
    color: var(--br-muted);
    font-size: 17px;
    line-height: 1.6;
}

.brp-truck-form-vehicle {
    margin-top: 22px;
    padding: 16px;
    border-left: 4px solid var(--br-blue);
    background: #fff;
    border-radius: 0 12px 12px 0;
}

.brp-truck-form-vehicle strong,
.brp-truck-form-vehicle span {
    display: block;
}

.brp-truck-form-vehicle strong {
    color: var(--br-navy);
    line-height: 1.35;
}

.brp-truck-form-vehicle span {
    margin-top: 4px;
    color: var(--br-muted);
    font-size: 13px;
}

.brp-truck-form {
    box-shadow: 0 14px 38px rgba(7,21,45,.08);
}

.brp-form-privacy {
    margin: -2px 0 18px;
    color: var(--br-muted);
    font-size: 13px;
    line-height: 1.45;
}

/* El WhatsApp flotante sigue disponible como canal independiente. */
@media (max-width: 620px) {
    body.single-br_camion .brp-floating-wa {
        display: flex !important;
        width: 50px !important;
        height: 50px !important;
        right: 14px !important;
        bottom: calc(92px + env(safe-area-inset-bottom)) !important;
        font-size: 22px !important;
        z-index: 9998 !important;
        opacity: .96 !important;
        box-shadow: 0 10px 28px rgba(0,0,0,.20) !important;
    }

    .brp .brp-truck-form-section {
        padding: 4px 0 52px !important;
        scroll-margin-top: 76px;
    }

    .brp .brp-truck-form-layout {
        grid-template-columns: 1fr !important;
        gap: 22px !important;
        padding: 22px !important;
        border-radius: 16px !important;
    }

    .brp .brp-truck-form-copy h2 {
        font-size: 34px !important;
    }

    .brp .brp-truck-form {
        padding: 20px !important;
    }
}

/* ==========================================================
   BR WEB PREMIUM DEFINITIVA 2.6
   Cabecera limpia de Camiones en stock
   ========================================================== */

.brp .brp-stock-page-hero {
    padding: 58px 0 50px;
}

.brp .brp-stock-hero-copy {
    max-width: 820px;
}

.brp .brp-stock-hero-copy p {
    max-width: 760px;
    margin-bottom: 0;
}

@media (max-width: 620px) {
    .brp .brp-stock-page-hero {
        padding: 38px 0 32px !important;
    }

    .brp .brp-stock-hero-copy h1 {
        font-size: 43px !important;
        line-height: 1.02 !important;
        margin-bottom: 15px !important;
    }

    .brp .brp-stock-hero-copy p {
        font-size: 17px !important;
        line-height: 1.55 !important;
    }
}

/* ==========================================================
   BR WEB PREMIUM DEFINITIVA 2.7
   Catálogo profesional de camiones
   ========================================================== */

.brp .brp-filter-professional {
    margin-bottom: 22px;
}

.brp .brp-filter-submit {
    align-self: end;
}

.brp .brp-stock-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin: 4px 0 28px;
}

.brp .brp-stock-count {
    color: var(--br-muted);
    font-size: 15px;
}

.brp .brp-stock-count strong {
    color: var(--br-navy);
    font-size: 20px;
    margin-right: 5px;
}

.brp .brp-stock-toolbar-actions {
    display: flex;
    align-items: center;
    gap: 18px;
}

.brp .brp-clear-filters {
    color: var(--br-blue);
    font-size: 14px;
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.brp .brp-sort-form {
    display: flex;
    align-items: center;
    gap: 9px;
}

.brp .brp-sort-form label {
    color: var(--br-muted);
    font-size: 13px;
    font-weight: 800;
}

.brp .brp-sort-form select {
    min-width: 190px;
    height: 42px;
    padding: 0 36px 0 12px;
    border: 1px solid var(--br-line);
    border-radius: 10px;
    background: #fff;
    color: var(--br-ink);
    font-weight: 700;
}

.brp .brp-truck-card-professional {
    display: flex;
    flex-direction: column;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.brp .brp-truck-card-professional:hover {
    transform: translateY(-4px);
    border-color: #b9cae1;
    box-shadow: 0 18px 44px rgba(7,21,45,.12);
}

.brp .brp-truck-card-professional .brp-truck-card-img {
    position: relative;
    overflow: hidden;
}

.brp .brp-truck-card-professional .brp-truck-card-img img {
    transition: transform .35s ease;
}

.brp .brp-truck-card-professional:hover .brp-truck-card-img img {
    transform: scale(1.025);
}

.brp .brp-card-badges {
    position: absolute;
    top: 14px;
    left: 14px;
    right: 14px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 8px;
    pointer-events: none;
}

.brp .brp-card-status,
.brp .brp-card-year {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 5px 10px;
    border-radius: 999px;
    background: rgba(255,255,255,.94);
    box-shadow: 0 5px 16px rgba(7,21,45,.14);
    color: var(--br-navy);
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
}

.brp .brp-card-status.is-available::before {
    content: "";
    width: 7px;
    height: 7px;
    margin-right: 7px;
    border-radius: 50%;
    background: #19a55a;
}

.brp .brp-card-status.is-reserved::before {
    content: "";
    width: 7px;
    height: 7px;
    margin-right: 7px;
    border-radius: 50%;
    background: #e7a519;
}

.brp .brp-card-status.is-sold {
    color: #fff;
    background: rgba(13,26,48,.9);
}

.brp .brp-truck-card-professional .brp-truck-card-body {
    display: flex;
    flex: 1;
    flex-direction: column;
}

.brp .brp-truck-type {
    margin-bottom: 9px;
    color: var(--br-blue);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.brp .brp-truck-card-professional h3 a {
    color: inherit;
    text-decoration: none;
}

.brp .brp-truck-card-professional .brp-specs {
    padding: 14px 0;
    border-top: 1px solid var(--br-line);
    border-bottom: 1px solid var(--br-line);
}

.brp .brp-truck-card-professional .brp-spec span {
    display: block;
    margin-top: 2px;
}

.brp .brp-truck-card-professional .brp-truck-actions {
    margin-top: auto;
    padding-top: 4px;
}

.brp .brp-btn-outline {
    border: 1px solid var(--br-blue);
    background: #fff;
    color: var(--br-blue);
}

.brp .brp-btn-outline:hover,
.brp .brp-btn-outline:focus {
    background: #eef5ff;
    color: var(--br-blue);
}

.brp .brp-pagination {
    margin-top: 34px;
}

.brp .brp-pagination .page-numbers {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.brp .brp-pagination a,
.brp .brp-pagination span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 42px;
    padding: 8px 13px;
    border: 1px solid var(--br-line);
    border-radius: 10px;
    background: #fff;
    color: var(--br-navy);
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
}

.brp .brp-pagination .current {
    border-color: var(--br-blue);
    background: var(--br-blue);
    color: #fff;
}

.brp .brp-stock-empty {
    margin-top: 8px;
}

.brp .brp-empty-actions {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 20px;
}

.brp .brp-stock-trust {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 1px;
    margin-top: 54px;
    overflow: hidden;
    border: 1px solid var(--br-line);
    border-radius: 18px;
    background: var(--br-line);
    box-shadow: 0 12px 34px rgba(7,21,45,.06);
}

.brp .brp-stock-trust-item {
    min-height: 150px;
    padding: 25px 22px;
    background: #fff;
}

.brp .brp-stock-trust-item strong {
    display: block;
    margin-bottom: 8px;
    color: var(--br-navy);
    font-size: 17px;
}

.brp .brp-stock-trust-item span {
    color: var(--br-muted);
    font-size: 14px;
    line-height: 1.55;
}

@media (max-width: 900px) {
    .brp .brp-stock-trust {
        grid-template-columns: repeat(2,1fr);
    }
}

@media (max-width: 620px) {
    .brp .brp-stock-toolbar {
        align-items: stretch;
        flex-direction: column;
        gap: 14px;
        margin-bottom: 22px;
    }

    .brp .brp-stock-toolbar-actions {
        align-items: stretch;
        flex-direction: column-reverse;
        gap: 12px;
    }

    .brp .brp-sort-form {
        align-items: stretch;
        flex-direction: column;
        gap: 6px;
    }

    .brp .brp-sort-form select {
        width: 100%;
        min-width: 0;
        height: 50px;
        font-size: 16px;
    }

    .brp .brp-clear-filters {
        align-self: flex-start;
        font-size: 15px;
    }

    .brp .brp-truck-card-professional .brp-truck-card-img {
        height: 270px !important;
    }

    .brp .brp-card-badges {
        top: 12px;
        left: 12px;
        right: 12px;
    }

    .brp .brp-truck-type {
        font-size: 11px;
    }

    .brp .brp-truck-card-professional h3 {
        font-size: 27px !important;
    }

    .brp .brp-empty-actions {
        flex-direction: column;
    }

    .brp .brp-stock-trust {
        grid-template-columns: 1fr;
        margin-top: 38px;
    }

    .brp .brp-stock-trust-item {
        min-height: auto;
        padding: 21px 20px;
    }
}

/* ==========================================================
   BR WEB PREMIUM DEFINITIVA 2.9
   Ruta de navegación y SEO técnico de fichas
   ========================================================== */

.brp .brp-breadcrumbs {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 24px;
    color: var(--br-muted);
    font-size: 13px;
    line-height: 1.45;
}

.brp .brp-breadcrumbs a {
    color: var(--br-blue);
    font-weight: 800;
    text-decoration: none;
}

.brp .brp-breadcrumbs a:hover,
.brp .brp-breadcrumbs a:focus {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.brp .brp-breadcrumbs span[aria-current="page"] {
    max-width: 62ch;
    overflow: hidden;
    color: var(--br-muted);
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 620px) {
    .brp .brp-breadcrumbs {
        gap: 6px;
        margin-bottom: 17px;
        font-size: 12px;
    }

    .brp .brp-breadcrumbs span[aria-current="page"] {
        max-width: 100%;
        white-space: normal;
    }
}

/* ==========================================================
   BR WEB PREMIUM DEFINITIVA 3.0
   Representaciones oficiales y nuevas áreas de negocio
   ========================================================== */

.brp .brp-section-intro {
    max-width: 860px;
    margin: 12px 0 0;
    color: var(--br-muted);
    font-size: 17px;
    line-height: 1.65;
}

.brp .brp-brand-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 26px;
}

.brp .brp-brand-grid-single {
    grid-template-columns: 1.15fr .85fr;
}

.brp .brp-brand-grid-double {
    grid-template-columns: repeat(2, 1fr);
}

.brp .brp-brand-card {
    padding: 26px 24px;
    border: 1px solid var(--br-line);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(7,21,45,.06);
}

.brp .brp-brand-card h3 {
    margin: 0 0 12px;
    color: var(--br-navy);
    font-size: 24px;
    line-height: 1.15;
}

.brp .brp-brand-card p {
    margin: 0;
    color: var(--br-muted);
    font-size: 16px;
    line-height: 1.65;
}

.brp .brp-brand-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 58px;
    margin-bottom: 18px;
    padding: 10px 18px;
    border-radius: 14px;
    background: #f4f7fb;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.brp .brp-brand-mark span {
    display: block;
    line-height: 1;
}

.brp .brp-brand-fassi {
    background: #ef2335;
    color: #fff;
}

.brp .brp-brand-dhollandia {
    background: #d71920;
    color: #fff;
}

.brp .brp-brand-galucho {
    background: #0f2441;
    color: #fff;
}

.brp .brp-highlight-note {
    margin-top: 24px;
    padding: 18px 22px;
    border-left: 4px solid var(--br-blue);
    border-radius: 14px;
    background: #fff;
    color: var(--br-ink);
    font-size: 17px;
    line-height: 1.6;
    box-shadow: 0 10px 24px rgba(7,21,45,.05);
}

@media (max-width: 980px) {
    .brp .brp-brand-grid,
    .brp .brp-brand-grid-single,
    .brp .brp-brand-grid-double {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 620px) {
    .brp .brp-section-intro {
        font-size: 16px;
    }

    .brp .brp-brand-grid {
        gap: 16px;
        margin-top: 20px;
    }

    .brp .brp-brand-card {
        padding: 22px 18px;
        border-radius: 18px;
    }

    .brp .brp-brand-card h3 {
        font-size: 22px;
    }

    .brp .brp-brand-mark {
        min-height: 52px;
        padding: 10px 15px;
        margin-bottom: 16px;
    }

    .brp .brp-highlight-note {
        margin-top: 18px;
        padding: 16px 18px;
        font-size: 16px;
    }
}

/* ==========================================================
   BR WEB PREMIUM DEFINITIVA 3.1
   Página de Carrocerías reforzada
   ========================================================== */

.brp .brp-bodywork-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 28px;
}

.brp .brp-bodywork-card {
    padding: 24px 22px;
    border: 1px solid var(--br-line);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(7,21,45,.06);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.brp .brp-bodywork-card:hover {
    transform: translateY(-4px);
    border-color: #b9cae1;
    box-shadow: 0 18px 40px rgba(7,21,45,.12);
}

.brp .brp-bodywork-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin-bottom: 16px;
    border-radius: 50%;
    background: #0b3f91;
    color: #fff;
    font-weight: 900;
}

.brp .brp-bodywork-card h3 {
    margin: 0 0 12px;
    color: var(--br-navy);
    font-size: 24px;
    line-height: 1.15;
}

.brp .brp-bodywork-card p {
    margin: 0 0 12px;
    color: var(--br-ink);
    font-size: 16px;
    line-height: 1.62;
}

.brp .brp-bodywork-card span {
    display: block;
    color: var(--br-muted);
    font-size: 14px;
    line-height: 1.55;
}

.brp .brp-bodywork-band {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    overflow: hidden;
    border: 1px solid var(--br-line);
    border-radius: 18px;
    background: var(--br-line);
    box-shadow: 0 12px 34px rgba(7,21,45,.06);
}

.brp .brp-bodywork-band-item {
    min-height: 170px;
    padding: 24px 22px;
    background: #fff;
}

.brp .brp-bodywork-band-item h3 {
    margin: 0 0 10px;
    color: var(--br-navy);
    font-size: 20px;
    line-height: 1.2;
}

.brp .brp-bodywork-band-item p {
    margin: 0;
    color: var(--br-muted);
    font-size: 15px;
    line-height: 1.6;
}

@media (max-width: 980px) {
    .brp .brp-bodywork-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .brp .brp-bodywork-band {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 620px) {
    .brp .brp-bodywork-grid,
    .brp .brp-bodywork-band {
        grid-template-columns: 1fr;
    }

    .brp .brp-bodywork-grid {
        gap: 16px;
        margin-top: 22px;
    }

    .brp .brp-bodywork-card {
        padding: 20px 18px;
        border-radius: 18px;
    }

    .brp .brp-bodywork-card h3 {
        font-size: 22px;
    }

    .brp .brp-bodywork-band-item {
        min-height: auto;
        padding: 20px 18px;
    }
}

/* ==========================================================
   BR WEB PREMIUM DEFINITIVA 3.2
   Reorganización Fassi, Dhollandia y Carrocerías
   ========================================================== */

.brp .brp-brand-grid-fassi {
    grid-template-columns: repeat(2, 1fr);
}

@media (max-width: 980px) {
    .brp .brp-brand-grid-fassi {
        grid-template-columns: 1fr;
    }
}

/* ==========================================================
   BR WEB PREMIUM DEFINITIVA 3.6
   Idiomas, legal, privacidad y cookies
   ========================================================== */

.brp .brp-language-switcher {
    display: inline-flex;
    align-items: center;
    margin-left: 4px;
}

.brp .brp-language-select {
    height: 38px;
    min-width: 68px;
    padding: 0 28px 0 11px;
    border: 1px solid var(--br-line);
    border-radius: 10px;
    background: #fff;
    color: var(--br-navy);
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
}

.brp .brp-footer-legal {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px 22px;
    max-width: 1240px;
    margin: 28px auto 0;
    padding: 22px 20px 0;
    border-top: 1px solid rgba(255,255,255,.14);
}

.brp .brp-footer-legal a,
.brp .brp-footer-legal button {
    padding: 0;
    border: 0;
    background: transparent;
    color: #b9c5d8;
    font: inherit;
    font-size: 13px;
    text-decoration: none;
    cursor: pointer;
}

.brp .brp-footer-legal a:hover,
.brp .brp-footer-legal button:hover,
.brp .brp-footer-legal a:focus,
.brp .brp-footer-legal button:focus {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.brp .brp-privacy-check {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 16px 0 8px;
    color: var(--br-ink);
    font-size: 14px;
    line-height: 1.5;
}

.brp .brp-privacy-check input {
    width: 18px;
    height: 18px;
    margin-top: 2px;
    flex: 0 0 auto;
}

.brp .brp-privacy-check a {
    color: var(--br-blue);
    font-weight: 800;
}

.brp .brp-legal-hero {
    padding-bottom: 46px;
}

.brp .brp-legal-content {
    max-width: 920px;
    margin: 0 auto;
    color: var(--br-ink);
    font-size: 16px;
    line-height: 1.72;
}

.brp .brp-legal-content h2 {
    margin: 38px 0 12px;
    color: var(--br-navy);
    font-family: Georgia, serif;
    font-size: 29px;
    line-height: 1.2;
}

.brp .brp-legal-content h2:first-of-type {
    margin-top: 20px;
}

.brp .brp-legal-content p,
.brp .brp-legal-content ul {
    margin: 0 0 17px;
}

.brp .brp-legal-content li {
    margin-bottom: 7px;
}

.brp .brp-legal-content a {
    color: var(--br-blue);
    font-weight: 700;
}

.brp .brp-cookie-table-wrap {
    overflow-x: auto;
    margin: 20px 0;
    border: 1px solid var(--br-line);
    border-radius: 14px;
}

.brp .brp-cookie-table {
    width: 100%;
    min-width: 720px;
    border-collapse: collapse;
    background: #fff;
}

.brp .brp-cookie-table th,
.brp .brp-cookie-table td {
    padding: 14px;
    border-bottom: 1px solid var(--br-line);
    text-align: left;
    vertical-align: top;
}

.brp .brp-cookie-table th {
    background: #f1f5fa;
    color: var(--br-navy);
    font-size: 14px;
}

.brp .brp-cookie-banner {
    position: fixed;
    z-index: 10050;
    right: 20px;
    bottom: 20px;
    left: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    max-width: 1180px;
    margin: 0 auto;
    padding: 20px;
    border: 1px solid #c7d4e7;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 22px 70px rgba(7,21,45,.24);
}

.brp .brp-cookie-banner[hidden],
.brp .brp-cookie-modal[hidden] {
    display: none !important;
}

.brp .brp-cookie-banner-copy {
    max-width: 690px;
}

.brp .brp-cookie-banner-copy strong {
    display: block;
    margin-bottom: 5px;
    color: var(--br-navy);
    font-size: 18px;
}

.brp .brp-cookie-banner-copy p {
    margin: 0 0 6px;
    color: var(--br-muted);
    font-size: 14px;
    line-height: 1.5;
}

.brp .brp-cookie-banner-copy a {
    color: var(--br-blue);
    font-size: 13px;
    font-weight: 800;
}

.brp .brp-cookie-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(112px, 1fr));
    gap: 9px;
}

.brp .brp-cookie-btn {
    min-height: 46px;
    padding: 10px 14px;
    border: 2px solid var(--br-blue);
    border-radius: 11px;
    background: #fff;
    color: var(--br-blue);
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
}

.brp .brp-cookie-btn:hover,
.brp .brp-cookie-btn:focus {
    background: #eaf2ff;
}

.brp .brp-cookie-modal {
    position: fixed;
    z-index: 10060;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 20px;
    background: rgba(4,15,32,.68);
}

.brp .brp-cookie-dialog {
    position: relative;
    width: min(100%, 650px);
    max-height: calc(100vh - 40px);
    overflow-y: auto;
    padding: 28px;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 28px 90px rgba(0,0,0,.32);
}

.brp .brp-cookie-dialog h2 {
    margin: 0 42px 20px 0;
    color: var(--br-navy);
    font-family: Georgia, serif;
    font-size: 31px;
}

.brp .brp-cookie-close {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 38px;
    height: 38px;
    border: 1px solid var(--br-line);
    border-radius: 50%;
    background: #fff;
    color: var(--br-navy);
    font-size: 25px;
    line-height: 1;
    cursor: pointer;
}

.brp .brp-cookie-category {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 18px 0;
    border-top: 1px solid var(--br-line);
}

.brp .brp-cookie-category strong {
    color: var(--br-navy);
    font-size: 17px;
}

.brp .brp-cookie-category p {
    margin: 5px 0 0;
    color: var(--br-muted);
    font-size: 14px;
    line-height: 1.5;
}

.brp .brp-cookie-always {
    flex: 0 0 auto;
    color: var(--br-blue);
    font-size: 13px;
    font-weight: 900;
}

.brp .brp-cookie-toggle {
    position: relative;
    flex: 0 0 auto;
    width: 52px;
    height: 30px;
}

.brp .brp-cookie-toggle input {
    position: absolute;
    opacity: 0;
}

.brp .brp-cookie-toggle span[aria-hidden="true"] {
    position: absolute;
    inset: 0;
    border-radius: 999px;
    background: #b7c1d0;
    cursor: pointer;
    transition: .2s ease;
}

.brp .brp-cookie-toggle span[aria-hidden="true"]::after {
    content: "";
    position: absolute;
    top: 4px;
    left: 4px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 2px 7px rgba(0,0,0,.25);
    transition: .2s ease;
}

.brp .brp-cookie-toggle input:checked + span {
    background: var(--br-blue);
}

.brp .brp-cookie-toggle input:checked + span::after {
    transform: translateX(22px);
}

.brp .brp-cookie-legal {
    margin: 17px 0;
    color: var(--br-muted);
    font-size: 13px;
    line-height: 1.55;
}

.brp .brp-cookie-legal a {
    color: var(--br-blue);
    font-weight: 800;
}

.brp-google-translate,
.goog-te-banner-frame,
.goog-te-gadget {
    display: none !important;
}

body {
    top: 0 !important;
}

.skiptranslate iframe {
    display: none !important;
}

@media (max-width: 850px) {
    .brp .brp-cookie-banner {
        align-items: stretch;
        flex-direction: column;
    }

    .brp .brp-cookie-actions {
        width: 100%;
    }
}

@media (max-width: 620px) {
    .brp .brp-nav .brp-language-switcher {
        width: 100%;
        margin: 4px 0 0;
    }

    .brp .brp-language-select {
        width: 100%;
        height: 48px;
        font-size: 15px;
    }

    .brp .brp-footer-legal {
        align-items: center;
        flex-direction: column;
        gap: 13px;
    }

    .brp .brp-cookie-banner {
        right: 10px;
        bottom: 10px;
        left: 10px;
        padding: 17px;
        border-radius: 16px;
    }

    .brp .brp-cookie-actions {
        grid-template-columns: 1fr;
    }

    .brp .brp-cookie-btn {
        width: 100%;
    }

    .brp .brp-cookie-dialog {
        padding: 24px 18px;
    }

    .brp .brp-cookie-dialog h2 {
        font-size: 27px;
    }

    .brp .brp-cookie-category {
        align-items: flex-start;
    }

    .brp .brp-legal-content {
        font-size: 15px;
    }

    .brp .brp-legal-content h2 {
        font-size: 25px;
    }
}
