/* =========================================================
   VARIABLES
========================================================= */

:root{

    --first-color:#ff0032;
    --first-color-alt:#d40029;

    --title-color:hsl(207, 12%, 15%);
    --text-color:hsl(207, 12%, 45%);
    --text-color-light:hsl(207, 8%, 65%);
    --text-color-lighten:hsl(207, 8%, 92%);

    --body-color:hsl(207, 100%, 99%);
    --container-color:#fff;

    --dark-color:#111318;
    --dark-color-2:#191c22;

    --green-color:#21b26b;
    --orange-color:#ff8b3d;

    --shadow:
        0 20px 40px -16px
        rgba(9,40,163,.10);

    --shadow-premium:
        0 30px 80px -30px
        rgba(23,28,40,.20);

    --shadow-red:
        0 18px 40px -16px
        rgba(255,0,50,.50);

    --radius-xl:32px;
    --radius-lg:24px;
    --radius-md:18px;
    --radius-sm:14px;

}


/* =========================================================
   RESET
========================================================= */

*{

    box-sizing:border-box;
    margin:0;
    padding:0;

}


html{

    scroll-behavior:smooth;

}


body{

    min-height:100%;

}


.rs-body{

    font-family:"Satoshi",sans-serif;

    background:
        linear-gradient(
            180deg,
            #fff 0%,
            var(--body-color) 35%,
            #f7f9fc 100%
        );

    color:var(--text-color);

    padding-bottom:50px;

    overflow-x:hidden;

}


button,
input,
textarea{

    font-family:inherit;

}


button{

    -webkit-tap-highlight-color:transparent;

}


/* =========================================================
   FONDO
========================================================= */

.rs-bg-decoration{

    position:fixed;

    width:500px;
    height:500px;

    border-radius:50%;

    filter:blur(100px);

    opacity:.09;

    pointer-events:none;

    z-index:-1;

}


.rs-bg-decoration-1{

    background:var(--first-color);

    top:-200px;
    right:-200px;

}


.rs-bg-decoration-2{

    background:#5966ff;

    left:-300px;
    top:900px;

}


/* =========================================================
   CONTENEDOR
========================================================= */

.rs-page{

    width:min(1180px,100%);

    margin:0 auto;

    padding:
        0
        20px;

}


/* =========================================================
   HEADER
========================================================= */

.rs-header{

    padding:
        22px 0
        70px;

}


.rs-header-top{

    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:16px;

    margin-bottom:60px;

}


.rs-back-btn{

    width:46px;
    height:46px;

    display:flex;

    align-items:center;
    justify-content:center;

    background:rgba(255,255,255,.85);

    border:
        1px solid
        rgba(0,0,0,.06);

    border-radius:50%;

    color:var(--title-color);

    font-size:21px;

    text-decoration:none;

    box-shadow:
        0 10px 30px
        rgba(20,30,45,.08);

    transition:
        transform .25s ease,
        background .25s ease;

}


.rs-back-btn:hover{

    transform:translateX(-3px);

    background:#fff;

}


.rs-brand{

    display:flex;

    align-items:center;

    gap:10px;

    color:var(--title-color);

    font-size:20px;
    font-weight:900;

}


.rs-brand-logo{

    width:38px;
    height:38px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:12px;

    background:
        linear-gradient(
            135deg,
            var(--first-color),
            #ff526f
        );

    color:#fff;

    font-size:20px;

    box-shadow:
        0 10px 24px
        rgba(255,0,50,.28);

}


.rs-secure-badge{

    display:flex;

    align-items:center;

    gap:7px;

    padding:
        9px 14px;

    border-radius:999px;

    background:
        rgba(33,178,107,.10);

    color:var(--green-color);

    font-size:12px;
    font-weight:800;

}


.rs-secure-badge i{

    font-size:16px;

}


/* =========================================================
   HERO
========================================================= */

.rs-hero-grid{

    display:grid;

    grid-template-columns:
        minmax(0,1.1fr)
        minmax(360px,.9fr);

    align-items:center;

    gap:60px;

}


.rs-eyebrow{

    display:inline-flex;

    align-items:center;

    gap:9px;

    padding:
        8px 14px;

    border:
        1px solid
        rgba(255,0,50,.12);

    background:
        rgba(255,0,50,.05);

    border-radius:999px;

    color:var(--first-color);

    font-size:11px;
    font-weight:900;

    text-transform:uppercase;

    letter-spacing:.07em;

    margin-bottom:20px;

}


.rs-live-dot{

    width:8px;
    height:8px;

    border-radius:50%;

    background:var(--first-color);

    box-shadow:
        0 0 0 5px
        rgba(255,0,50,.10);

}


.rs-hero-content h1{

    max-width:650px;

    color:var(--title-color);

    font-size:clamp(
        44px,
        7vw,
        76px
    );

    line-height:.98;

    letter-spacing:-.055em;

    font-weight:900;

}


.rs-hero-content h1 span{

    color:var(--first-color);

    position:relative;

}


.rs-hero-description{

    max-width:600px;

    margin-top:25px;

    font-size:17px;

    line-height:1.7;

    color:var(--text-color);

}


/* =========================================================
   HERO FEATURES
========================================================= */

.rs-hero-features{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

    margin-top:32px;

}


.rs-hero-feature{

    flex:
        1 1 160px;

    min-width:150px;

    display:flex;

    align-items:center;

    gap:10px;

    padding:12px;

    background:
        rgba(255,255,255,.82);

    border:
        1px solid
        rgba(15,20,30,.06);

    border-radius:16px;

    box-shadow:
        0 14px 30px
        rgba(20,30,45,.05);

}


.rs-feature-icon{

    width:38px;
    height:38px;

    flex-shrink:0;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:12px;

    background:
        rgba(255,0,50,.08);

    color:var(--first-color);

    font-size:18px;

}


.rs-hero-feature strong{

    display:block;

    color:var(--title-color);

    font-size:12px;
    font-weight:900;

}


.rs-hero-feature span{

    display:block;

    margin-top:2px;

    color:var(--text-color-light);

    font-size:10px;

}


/* =========================================================
   SOCIAL PROOF
========================================================= */

.rs-social-proof{

    display:flex;

    align-items:center;

    gap:14px;

    margin-top:30px;

}


.rs-user-stack{

    display:flex;

}


.rs-user{

    width:38px;
    height:38px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    border:3px solid #fff;

    margin-left:-8px;

    color:#fff;

    font-size:16px;

}


.rs-user:first-child{

    margin-left:0;

}


.rs-user-1{

    background:#ff5b75;

}


.rs-user-2{

    background:#6b7cff;

}


.rs-user-3{

    background:#23b878;

}


.rs-social-proof strong{

    display:block;

    color:var(--title-color);

    font-size:12px;
    font-weight:900;

}


.rs-social-proof span{

    display:block;

    margin-top:3px;

    color:var(--text-color-light);

    font-size:11px;

}


/* =========================================================
   HERO VISUAL
========================================================= */

.rs-hero-visual{

    position:relative;

    min-height:440px;

    display:flex;

    align-items:center;
    justify-content:center;

}


.rs-visual-card-main{

    position:relative;

    width:min(100%,400px);

    padding:30px;

    border-radius:var(--radius-xl);

    background:
        linear-gradient(
            145deg,
            var(--dark-color),
            var(--dark-color-2)
        );

    color:#fff;

    box-shadow:
        0 35px 90px
        rgba(15,18,25,.25);

    overflow:hidden;

}


.rs-visual-card-main::before{

    content:"";

    position:absolute;

    width:230px;
    height:230px;

    top:-100px;
    right:-80px;

    border-radius:50%;

    background:
        rgba(255,0,50,.25);

    filter:blur(20px);

}


.rs-visual-card-head{

    position:relative;

    display:flex;

    align-items:center;

    gap:13px;

}


.rs-visual-card-icon{

    width:52px;
    height:52px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:16px;

    background:
        linear-gradient(
            135deg,
            var(--first-color),
            #ff526f
        );

    font-size:24px;

}


.rs-visual-card-head span{

    display:block;

    color:rgba(255,255,255,.55);

    font-size:11px;

    margin-bottom:4px;

}


.rs-visual-card-head strong{

    display:block;

    font-size:17px;

}


.rs-visual-progress{

    position:relative;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:8px;

    margin-top:42px;

}


.rs-progress-row{

    text-align:center;

    flex:1;

}


.rs-progress-icon{

    width:44px;
    height:44px;

    display:flex;

    align-items:center;
    justify-content:center;

    margin:
        0 auto
        9px;

    border-radius:50%;

    background:
        rgba(255,255,255,.08);

    color:
        rgba(255,255,255,.55);

    font-size:18px;

}


.rs-progress-icon.active{

    background:var(--first-color);

    color:#fff;

    box-shadow:
        0 10px 25px
        rgba(255,0,50,.40);

}


.rs-progress-row span{

    color:
        rgba(255,255,255,.62);

    font-size:10px;
    font-weight:700;

}


.rs-progress-line{

    height:1px;

    flex:1;

    background:
        rgba(255,255,255,.15);

    margin-bottom:25px;

}


.rs-progress-line.active{

    background:
        linear-gradient(
            90deg,
            var(--first-color),
            rgba(255,255,255,.25)
        );

}


.rs-visual-message{

    position:relative;

    display:flex;

    align-items:flex-start;

    gap:10px;

    margin-top:35px;

    padding:14px;

    border-radius:16px;

    background:
        rgba(255,255,255,.07);

    color:
        rgba(255,255,255,.72);

    font-size:12px;

    line-height:1.5;

}


.rs-visual-message i{

    color:#ffbb43;

    font-size:18px;

}


/* =========================================================
   FLOATING CARDS
========================================================= */

.rs-floating-card{

    position:absolute;

    display:flex;

    align-items:center;

    gap:10px;

    padding:13px 16px;

    border-radius:18px;

    background:
        rgba(255,255,255,.96);

    box-shadow:
        0 20px 45px
        rgba(10,15,25,.18);

    backdrop-filter:blur(12px);

}


.rs-floating-card-left{

    left:-35px;
    bottom:65px;

}


.rs-floating-card-right{

    right:-25px;
    top:75px;

}


.rs-floating-card > i{

    color:var(--orange-color);

    font-size:23px;

}


.rs-floating-card strong{

    display:block;

    color:var(--title-color);

    font-size:11px;
    font-weight:900;

}


.rs-floating-card span{

    display:block;

    margin-top:2px;

    color:var(--text-color-light);

    font-size:9px;

}


.rs-floating-card-check{

    width:32px;
    height:32px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:
        rgba(33,178,107,.12);

    color:var(--green-color);

}


/* =========================================================
   SECCIONES GENERALES
========================================================= */

.rs-search-section,
.rs-how-section,
.rs-promotions-section,
.rs-results-section{

    margin-top:75px;

}


.rs-section-intro,
.rs-section-heading,
.rs-results-heading{

    display:flex;

    align-items:end;
    justify-content:space-between;

    gap:30px;

    margin-bottom:26px;

}


.rs-section-tag{

    display:inline-flex;

    align-items:center;

    gap:7px;

    color:var(--first-color);

    font-size:10px;
    font-weight:900;

    letter-spacing:.07em;

    text-transform:uppercase;

    margin-bottom:10px;

}


.rs-section-tag i{

    font-size:16px;

}


.rs-section-intro h2,
.rs-section-heading h2,
.rs-results-heading h2{

    color:var(--title-color);

    font-size:clamp(
        27px,
        4vw,
        42px
    );

    line-height:1.1;

    letter-spacing:-.035em;

    font-weight:900;

}


.rs-section-intro p,
.rs-section-heading p,
.rs-results-heading p{

    max-width:600px;

    margin-top:10px;

    color:var(--text-color-light);

    font-size:14px;

    line-height:1.6;

}


/* =========================================================
   BUSCADOR
========================================================= */

.rs-buscador-card{

    max-width:100%;

    margin:0 auto;

    padding:28px;

    background:
        rgba(255,255,255,.94);

    border:
        1px solid
        rgba(20,25,35,.06);

    border-radius:var(--radius-xl);

    box-shadow:var(--shadow-premium);

    backdrop-filter:blur(20px);

}


.rs-search-card-head{

    display:flex;

    align-items:center;

    gap:13px;

    margin-bottom:25px;

}


.rs-search-card-icon{

    width:48px;
    height:48px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:15px;

    background:
        rgba(255,0,50,.08);

    color:var(--first-color);

    font-size:23px;

}


.rs-search-card-head strong{

    display:block;

    color:var(--title-color);

    font-size:16px;
    font-weight:900;

}


.rs-search-card-head span{

    display:block;

    margin-top:3px;

    color:var(--text-color-light);

    font-size:12px;

}


.rs-buscador-grid{

    display:grid;

    grid-template-columns:
        1fr
        1fr
        1fr;

    gap:14px;

    margin-bottom:16px;

}


.rs-field{

    display:block;

}


.rs-field > span{

    display:flex;

    align-items:center;

    gap:7px;

    font-size:10px;
    font-weight:900;

    text-transform:uppercase;

    letter-spacing:.05em;

    color:var(--text-color-light);

    margin-bottom:8px;

}


.rs-field > span i{

    color:var(--first-color);

    font-size:15px;

}


.rs-field input,
.rs-field textarea{

    width:100%;

    border:
        1.5px solid
        var(--text-color-lighten);

    outline:none;

    border-radius:14px;

    padding:
        14px 15px;

    font-family:inherit;

    font-size:14px;

    background:
        #fbfcfe;

    color:var(--title-color);

    transition:
        border-color .2s ease,
        box-shadow .2s ease,
        background .2s ease;

}


.rs-field input:focus,
.rs-field textarea:focus{

    background:#fff;

    border-color:
        rgba(255,0,50,.60);

    box-shadow:
        0 0 0 4px
        rgba(255,0,50,.07);

}


.rs-field textarea{

    min-height:95px;

    resize:vertical;

}


.rs-cantidad-selector{

    height:48px;

    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:12px;

    background:#fbfcfe;

    border:
        1.5px solid
        var(--text-color-lighten);

    border-radius:14px;

    padding:
        7px 8px;

}


.rs-cantidad-selector button{

    width:34px;
    height:34px;

    flex-shrink:0;

    display:flex;

    align-items:center;
    justify-content:center;

    border:none;

    border-radius:11px;

    background:
        rgba(255,0,50,.08);

    color:var(--first-color);

    cursor:pointer;

    font-size:18px;

    transition:
        transform .2s ease,
        background .2s ease;

}


.rs-cantidad-selector button:hover{

    transform:scale(1.06);

    background:var(--first-color);

    color:#fff;

}


.rs-personas-value{

    display:flex;

    align-items:baseline;

    gap:5px;

}


.rs-personas-value strong{

    color:var(--title-color);

    font-size:18px;

}


.rs-personas-value small{

    color:var(--text-color-light);

    font-size:10px;

}


.rs-btn-primario{

    min-height:54px;

    display:inline-flex;

    align-items:center;
    justify-content:center;

    gap:10px;

    border:none;

    background:
        linear-gradient(
            135deg,
            var(--first-color),
            #ff3559
        );

    color:#fff;

    font-family:inherit;

    font-weight:900;

    font-size:14px;

    padding:
        14px 20px;

    border-radius:16px;

    cursor:pointer;

    box-shadow:var(--shadow-red);

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        filter .2s ease;

}


.rs-btn-primario:hover{

    transform:
        translateY(-2px);

    filter:brightness(1.02);

    box-shadow:
        0 24px 50px -18px
        rgba(255,0,50,.60);

}


.rs-btn-primario:active{

    transform:translateY(0);

}


.rs-btn-primario.full{

    width:100%;

}


.rs-btn-primario:disabled{

    opacity:.55;

    pointer-events:none;

}


.rs-search-btn{

    min-height:60px;

    justify-content:center;

}


.rs-btn-arrow{

    transition:
        transform .2s ease;

}


.rs-btn-primario:hover .rs-btn-arrow{

    transform:translateX(4px);

}


.rs-search-footer{

    display:flex;

    align-items:center;

    gap:8px;

    margin-top:14px;

    color:var(--text-color-light);

    font-size:11px;

    line-height:1.4;

}


.rs-search-footer i{

    color:var(--first-color);

    font-size:16px;

}


/* =========================================================
   PASOS
========================================================= */

.rs-steps-grid{

    display:grid;

    grid-template-columns:
        repeat(3,1fr);

    gap:18px;

}


.rs-step-card{

    position:relative;

    padding:28px;

    background:
        rgba(255,255,255,.80);

    border:
        1px solid
        rgba(20,25,35,.06);

    border-radius:24px;

    overflow:hidden;

    transition:
        transform .25s ease,
        box-shadow .25s ease;

}


.rs-step-card:hover{

    transform:translateY(-5px);

    box-shadow:var(--shadow);

}


.rs-step-number{

    position:absolute;

    top:15px;
    right:18px;

    color:
        rgba(20,25,35,.06);

    font-size:50px;
    font-weight:900;

    line-height:1;

}


.rs-step-icon{

    width:54px;
    height:54px;

    position:relative;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:17px;

    background:
        rgba(255,0,50,.08);

    color:var(--first-color);

    font-size:25px;

}


.rs-step-card h3{

    position:relative;

    margin-top:20px;

    color:var(--title-color);

    font-size:19px;
    font-weight:900;

}


.rs-step-card p{

    position:relative;

    margin-top:8px;

    color:var(--text-color-light);

    font-size:13px;

    line-height:1.6;

}


/* =========================================================
   PROMOCIONES
========================================================= */

.rs-promo-banner{

    position:relative;

    display:grid;

    grid-template-columns:
        1.15fr
        .85fr;

    min-height:430px;

    border-radius:34px;

    overflow:hidden;

    background:
        linear-gradient(
            135deg,
            #17191f 0%,
            #242833 55%,
            #1a1d25 100%
        );

    color:#fff;

    box-shadow:
        0 30px 80px
        rgba(20,25,35,.18);

}


.rs-promo-content{

    position:relative;

    z-index:2;

    padding:
        50px
        clamp(28px,5vw,70px);

}


.rs-promo-icon{

    width:56px;
    height:56px;

    display:flex;

    align-items:center;
    justify-content:center;

    margin-bottom:18px;

    border-radius:17px;

    background:
        linear-gradient(
            135deg,
            var(--first-color),
            #ff5773
        );

    font-size:27px;

    box-shadow:
        0 15px 35px
        rgba(255,0,50,.35);

}


.rs-promo-label{

    display:inline-block;

    color:#ff8498;

    font-size:10px;
    font-weight:900;

    letter-spacing:.10em;

}


.rs-promo-content h2{

    max-width:620px;

    margin-top:10px;

    font-size:clamp(
        32px,
        5vw,
        55px
    );

    line-height:1.02;

    letter-spacing:-.045em;

    font-weight:900;

}


.rs-promo-content h2 span{

    color:#ff4668;

}


.rs-promo-content > p{

    max-width:570px;

    margin-top:20px;

    color:
        rgba(255,255,255,.65);

    font-size:14px;

    line-height:1.7;

}


.rs-promo-benefits{

    display:flex;

    flex-wrap:wrap;

    gap:10px 20px;

    margin-top:24px;

}


.rs-promo-benefits div{

    display:flex;

    align-items:center;

    gap:7px;

    color:
        rgba(255,255,255,.78);

    font-size:11px;

}


.rs-promo-benefits i{

    width:18px;
    height:18px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:
        rgba(255,255,255,.10);

    color:#ff5875;

}


.rs-promo-btn{

    display:inline-flex;

    align-items:center;
    justify-content:center;

    gap:8px;

    margin-top:28px;

    padding:
        13px 20px;

    border:none;

    border-radius:999px;

    background:#fff;

    color:var(--title-color);

    font-size:13px;
    font-weight:900;

    cursor:pointer;

    transition:
        transform .2s ease;

}


.rs-promo-btn:hover{

    transform:translateY(-2px);

}


/* =========================================================
   DECORACIÓN PROMO
========================================================= */

.rs-promo-decoration{

    position:relative;

    overflow:hidden;

}


.rs-promo-orb{

    position:absolute;

    border-radius:50%;

    filter:blur(1px);

}


.rs-promo-orb-1{

    width:380px;
    height:380px;

    top:-120px;
    right:-100px;

    background:
        rgba(255,0,50,.18);

}


.rs-promo-orb-2{

    width:220px;
    height:220px;

    bottom:-70px;
    left:20px;

    background:
        rgba(255,255,255,.06);

}


.rs-promo-ticket{

    position:absolute;

    width:260px;

    top:50%;
    left:50%;

    transform:
        translate(-50%,-50%)
        rotate(-7deg);

    padding:25px;

    border-radius:24px;

    background:
        linear-gradient(
            145deg,
            #fff,
            #f5f6fa
        );

    color:var(--title-color);

    box-shadow:
        0 35px 70px
        rgba(0,0,0,.30);

}


.rs-ticket-top{

    display:flex;

    align-items:center;
    justify-content:space-between;

    padding-bottom:16px;

    border-bottom:
        1px dashed
        #d9dde5;

    color:var(--first-color);

    font-size:11px;
    font-weight:900;

}


.rs-ticket-top i{

    font-size:23px;

}


.rs-promo-ticket > strong{

    display:block;

    margin-top:25px;

    color:var(--first-color);

    font-size:28px;
    font-weight:900;

    letter-spacing:-.04em;

}


.rs-promo-ticket > p{

    margin-top:8px;

    color:var(--text-color-light);

    font-size:12px;

    line-height:1.5;

}


.rs-ticket-bottom{

    display:flex;

    align-items:center;
    justify-content:space-between;

    margin-top:25px;

    padding-top:15px;

    border-top:
        1px dashed
        #d9dde5;

    color:var(--title-color);

    font-size:11px;
    font-weight:900;

}


/* =========================================================
   CONTENEDOR PROMOCIONES DINÁMICAS
========================================================= */

.rs-promociones-lista{

    display:grid;

    grid-template-columns:
        repeat(auto-fill,minmax(240px,1fr));

    gap:16px;

    margin-top:22px;

}


/* =========================================================
   RESULTADOS
========================================================= */

.rs-results-heading{

    align-items:center;

}


.rs-results-count{

    display:flex;

    align-items:center;

    gap:8px;

    padding:
        11px 15px;

    border-radius:999px;

    background:#fff;

    box-shadow:
        0 10px 25px
        rgba(20,30,45,.06);

    color:var(--text-color-light);

    font-size:11px;
    font-weight:800;

    white-space:nowrap;

}


.rs-results-count i{

    color:var(--first-color);

    font-size:16px;

}


.rs-resultados{

    display:grid;

    grid-template-columns:
        repeat(
            auto-fill,
            minmax(320px,1fr)
        );

    gap:16px;

}


/* =========================================================
   RESULTADO DINÁMICO
   Compatible con tus tarjetas actuales
========================================================= */

/* =========================================================
   RESULTADOS - TARJETAS
========================================================= */

.rs-resultado-card {

width: 100%;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 18px;
    padding: 18px;
    margin-bottom: 16px;
    background: #ffffff;
    border: 1px solid #eeeeF2;
    border-radius: 24px;
    box-shadow: 0 8px 30px rgba(25, 25, 35, .06);
    overflow: hidden;
    transition: transform .2s ease, box-shadow .2s ease;
}


.rs-resultado-card:hover {

    transform: translateY(-2px);

    box-shadow:
        0 14px 35px rgba(25, 25, 35, .09);
}


/* =========================================================
   IMAGEN
========================================================= */

.rs-resultado-img {

    width: 110px;

    height: 110px;

    min-width: 110px;

    flex: 0 0 110px;

    border-radius: 20px;

    object-fit: cover;

    display: block;

    background: #f7f7f9;
}


.rs-resultado-img-inicial {

    display: flex;

    align-items: center;
    justify-content: center;

    background:
        linear-gradient(
            145deg,
            #ff003c,
            #ff174f
        );

    color: #ffffff;

    font-size: 42px;

    font-weight: 900;
}


/* =========================================================
   INFORMACIÓN
========================================================= */

.rs-resultado-info {

    flex: 1 1 auto;

    min-width: 0;

    display: flex;

    flex-direction: column;

    justify-content: center;

    gap: 6px;
}


.rs-resultado-nombre {

    color: #202126;

    font-size: 18px;

    font-weight: 900;

    line-height: 1.15;

    overflow: hidden;

    text-overflow: ellipsis;

    white-space: nowrap;
}


.rs-resultado-sucursal {

    color: #858993;

    font-size: 13px;

    font-weight: 500;

    line-height: 1.45;

    overflow-wrap: anywhere;
}


/* =========================================================
   DEPÓSITO
========================================================= */

.rs-resultado-deposito {

    width: fit-content;

    display: inline-flex;

    align-items: center;

    gap: 5px;

    margin-top: 5px;

    padding: 8px 11px;

    border-radius: 12px;

    background: #fff1f4;

    color: #f20d3e;

    font-size: 12px;

    font-weight: 800;
}


.rs-resultado-deposito i {

    font-size: 16px;
}


/* =========================================================
   ACCIONES
========================================================= */

.rs-resultado-acciones {

    flex: 0 0 auto;

    width: 270px;

    display: flex;

    flex-direction: column;

    gap: 8px;
}


/* =========================================================
   BOTÓN MAPA
========================================================= */

.rs-btn-mapa {

    width: 100%;

    min-height: 45px;

    padding: 0 15px;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 7px;

    border: 1px solid #ffd1dc;

    border-radius: 14px;

    background: #ffffff;

    color: #ed1743;

    font-family: "Satoshi", sans-serif;

    font-size: 13px;

    font-weight: 800;

    white-space: nowrap;

    cursor: pointer;

    transition:
        .2s ease;
}


.rs-btn-mapa i {

    flex: 0 0 auto;

    font-size: 19px;
}


.rs-btn-mapa:hover {

    background: #fff5f7;

    border-color: #ffafc0;

    transform: translateY(-1px);

    box-shadow:
        0 7px 18px rgba(237, 23, 67, .10);
}


/* =========================================================
   BOTÓN RESERVAR
========================================================= */

.rs-resultado-btn {

    width: 100%;

    min-height: 45px;

    padding: 0 15px;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 7px;

    border: 0;

    border-radius: 14px;

    background: #ff003d;

    color: #ffffff;

    font-family: "Satoshi", sans-serif;

    font-size: 13px;

    font-weight: 900;

    white-space: nowrap;

    cursor: pointer;

    box-shadow:
        0 8px 20px rgba(255, 0, 61, .16);

    transition:
        .2s ease;
}


.rs-resultado-btn:hover {

    background: #e90037;

    transform: translateY(-1px);

    box-shadow:
        0 11px 24px rgba(255, 0, 61, .22);
}


.rs-resultado-btn i {

    font-size: 17px;
}
/* =========================================================
   PLACEHOLDER RESULTADOS
========================================================= */

.rs-resultados-placeholder{

    grid-column:1/-1;

    max-width:560px;

    margin:10px auto 0;

    padding:
        55px 30px;

    text-align:center;

    background:
        rgba(255,255,255,.70);

    border:
        1px dashed
        #dce1e8;

    border-radius:30px;

}


.rs-placeholder-icon{

    width:72px;
    height:72px;

    display:flex;

    align-items:center;
    justify-content:center;

    margin:
        0 auto
        18px;

    border-radius:23px;

    background:
        rgba(255,0,50,.07);

    color:var(--first-color);

    font-size:32px;

}


.rs-resultados-placeholder h3{

    color:var(--title-color);

    font-size:21px;
    font-weight:900;

}


.rs-resultados-placeholder p{

    max-width:400px;

    margin:
        10px auto
        0;

    color:var(--text-color-light);

    font-size:13px;

    line-height:1.6;

}


.rs-placeholder-btn{

    display:inline-flex;

    align-items:center;

    gap:7px;

    margin-top:22px;

    padding:
        11px 17px;

    border:none;

    border-radius:999px;

    background:
        rgba(255,0,50,.08);

    color:var(--first-color);

    font-size:12px;
    font-weight:900;

    cursor:pointer;

}


/* =========================================================
   EMPTY
========================================================= */

.rs-empty{

    grid-column:1/-1;

    text-align:center;

    padding:50px 20px;

    color:var(--text-color-light);

    font-size:13px;

}


/* =========================================================
   CTA FINAL
========================================================= */

.rs-final-cta{

    margin-top:75px;

}


.rs-final-cta-content{

    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:30px;

    padding:
        35px
        40px;

    border-radius:28px;

    background:
        linear-gradient(
            135deg,
            var(--first-color),
            #ff4d68
        );

    color:#fff;

    box-shadow:
        0 25px 60px
        rgba(255,0,50,.22);

}


.rs-final-cta-icon{

    width:58px;
    height:58px;

    flex-shrink:0;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:18px;

    background:
        rgba(255,255,255,.15);

    font-size:26px;

}


.rs-final-cta-content > div:nth-child(2){

    flex:1;

}


.rs-final-cta-content span{

    font-size:9px;
    font-weight:900;

    letter-spacing:.10em;

    opacity:.75;

}


.rs-final-cta-content h2{

    margin-top:5px;

    font-size:clamp(
        22px,
        3vw,
        34px
    );

    line-height:1.1;

    letter-spacing:-.03em;

}


.rs-final-cta-content p{

    max-width:620px;

    margin-top:8px;

    color:
        rgba(255,255,255,.80);

    font-size:12px;

    line-height:1.5;

}


.rs-final-cta-btn{

    display:flex;

    align-items:center;

    gap:9px;

    padding:
        14px 20px;

    border:none;

    border-radius:999px;

    background:#fff;

    color:var(--title-color);

    font-size:12px;
    font-weight:900;

    cursor:pointer;

    white-space:nowrap;

}


/* =========================================================
   OVERLAY
========================================================= */

.rs-overlay{

    position:fixed;

    inset:0;

    display:none;

    align-items:flex-end;
    justify-content:center;

    padding:0;

    background:
        rgba(10,13,18,.65);

    backdrop-filter:blur(8px);

    z-index:100;

}


.rs-overlay.is-open{

    display:flex;

}


.rs-sheet{

    position:relative;

    width:100%;
    max-width:520px;

    max-height:94vh;

    background:#fff;

    border-radius:
        30px 30px
        0 0;

    box-shadow:
        0 -20px 70px
        rgba(0,0,0,.15);

    animation:
        rsSlideUp .3s
        cubic-bezier(.2,.8,.2,1);

    overflow:hidden;

}


.rs-sheet-grabber{

    display:block;

    width:46px;
    height:5px;

    margin:
        10px auto
        0;

    border-radius:999px;

    background:
        #e6e8ed;

}


@keyframes rsSlideUp{

    from{

        transform:
            translateY(45px);

        opacity:0;

    }

    to{

        transform:
            translateY(0);

        opacity:1;

    }

}


.rs-sheet-close{

    position:absolute;

    top:16px;
    right:16px;

    z-index:5;

    width:40px;
    height:40px;

    display:flex;

    align-items:center;
    justify-content:center;

    border:none;

    border-radius:50%;

    background:#f3f5f8;

    color:var(--title-color);

    font-size:19px;

    cursor:pointer;

}


.rs-sheet-body{

    padding:
        28px
        24px
        30px;

    overflow-y:auto;

    max-height:calc(94vh - 15px);

}


.rs-sheet-title{

    display:flex;

    align-items:center;

    gap:13px;

    padding-right:45px;

}


.rs-sheet-title-icon{

    width:48px;
    height:48px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:15px;

    background:
        rgba(255,0,50,.08);

    color:var(--first-color);

    font-size:22px;

}


.rs-sheet-title span{

    display:block;

    color:var(--first-color);

    font-size:10px;
    font-weight:900;

    text-transform:uppercase;

    letter-spacing:.07em;

}


.rs-sheet-body h2{

    color:var(--title-color);

    font-size:23px;
    font-weight:900;

    margin-top:3px;

}


.rs-reservation-summary{

    margin-top:18px;

    padding:14px;

    border-radius:15px;

    background:
        #f8f9fb;

}


.rs-help-text{

    color:var(--text-color-light);

    font-size:12px;

    line-height:1.6;

}


.rs-help-text.is-error{

    margin-top:7px;

    color:#e0334d;

}


.rs-form-divider{

    position:relative;

    display:flex;

    align-items:center;

    margin:
        24px 0
        18px;

}


.rs-form-divider::before{

    content:"";

    width:100%;
    height:1px;

    background:
        var(--text-color-lighten);

}


.rs-form-divider span{

    position:absolute;

    left:12px;

    padding:
        0 7px;

    background:#fff;

    color:var(--text-color-light);

    font-size:9px;
    font-weight:900;

    text-transform:uppercase;

    letter-spacing:.07em;

}


/* =========================================================
   DEPÓSITO
========================================================= */

.rs-deposito-aviso{

    display:flex;

    align-items:flex-start;

    gap:11px;

    margin-bottom:16px;

    padding:15px;

    border:
        1px solid
        #ffe1a1;

    border-radius:16px;

    background:
        linear-gradient(
            135deg,
            #fff9e9,
            #fff5db
        );

}


.rs-deposito-icon{

    width:35px;
    height:35px;

    flex-shrink:0;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:11px;

    background:
        rgba(255,184,45,.15);

    color:#d39414;

    font-size:18px;

}


.rs-deposito-aviso strong{

    display:block;

    color:#805e14;

    font-size:12px;
    font-weight:900;

}


.rs-deposito-aviso span{

    display:block;

    margin-top:4px;

    color:#987b35;

    font-size:11px;

    line-height:1.5;

}


.rs-deposito-aviso b{

    color:#805e14;

}


.rs-stripe-card{

    padding:15px;

    border:
        1.5px solid
        var(--text-color-lighten);

    border-radius:14px;

    background:#fbfcfe;

}


.rs-confirm-btn{

    margin-top:18px;

}


.rs-secure-payment{

    display:flex;

    align-items:center;
    justify-content:center;

    gap:7px;

    margin-top:12px;

    color:var(--text-color-light);

    font-size:10px;

}


.rs-secure-payment i{

    color:var(--green-color);

}


/* =========================================================
   ÉXITO
========================================================= */

.rs-sheet-centrado{

    position:relative;

    padding:
        50px
        28px
        32px;

    text-align:center;

    border-radius:30px;

    overflow:hidden;

}


.rs-exito-icon{

    position:relative;

    width:85px;
    height:85px;

    display:flex;

    align-items:center;
    justify-content:center;

    margin:
        0 auto
        18px;

    border-radius:50%;

    background:
        rgba(33,178,107,.12);

    color:var(--green-color);

    font-size:50px;

}


.rs-success-label{

    color:var(--green-color);

    font-size:10px;
    font-weight:900;

    letter-spacing:.10em;

}


.rs-sheet-centrado h2{

    margin-top:8px;

    color:var(--title-color);

    font-size:27px;
    font-weight:900;

}


.rs-success-description{

    max-width:360px;

    margin:
        10px auto
        0;

    color:var(--text-color-light);

    font-size:12px;

    line-height:1.6;

}


.rs-folio-card{

    margin:
        22px auto;

    padding:
        16px;

    border:
        1px dashed
        #d7dce4;

    border-radius:18px;

    background:#f9fafc;

}


.rs-folio-card span{

    display:block;

    color:var(--text-color-light);

    font-size:9px;
    font-weight:900;

    letter-spacing:.08em;

}


.rs-folio-card strong{

    display:block;

    margin-top:7px;

    color:var(--title-color);

    font-size:20px;

    letter-spacing:.06em;

}


/* =========================================================
   LOADING
========================================================= */

.rs-loading{

    position:fixed;

    inset:0;

    display:none;

    align-items:center;
    justify-content:center;

    background:
        rgba(255,255,255,.82);

    backdrop-filter:blur(10px);

    z-index:200;

}


.rs-loading.is-visible{

    display:flex;

}


.rs-loading-card{

    min-width:230px;

    padding:
        30px 25px;

    text-align:center;

    background:#fff;

    border-radius:24px;

    box-shadow:
        0 30px 80px
        rgba(20,30,45,.18);

}


.rs-loading-logo{

    width:54px;
    height:54px;

    display:flex;

    align-items:center;
    justify-content:center;

    margin:
        0 auto
        14px;

    border-radius:17px;

    background:
        rgba(255,0,50,.08);

    color:var(--first-color);

    font-size:25px;

}


.rs-loading-card strong{

    display:block;

    color:var(--title-color);

    font-size:15px;
    font-weight:900;

}


.rs-loading-card > span{

    display:block;

    margin-top:4px;

    color:var(--text-color-light);

    font-size:11px;

}


.rs-loading-dots{

    display:flex;

    justify-content:center;

    gap:8px;

    margin-top:18px;

}


.rs-loading-dots span{

    width:9px;
    height:9px;

    border-radius:50%;

    background:var(--first-color);

    animation:
        rsBounce
        1s infinite
        ease-in-out;

}


.rs-loading-dots span:nth-child(2){

    animation-delay:.15s;

}


.rs-loading-dots span:nth-child(3){

    animation-delay:.3s;

}


@keyframes rsBounce{

    0%,
    80%,
    100%{

        transform:scale(.6);

        opacity:.4;

    }

    40%{

        transform:scale(1);

        opacity:1;

    }

}


/* =========================================================
   DESKTOP OVERLAY
========================================================= */

@media (min-width:720px){

    .rs-overlay{

        align-items:center;

        padding:24px;

    }


    .rs-sheet{

        border-radius:28px;

    }


    .rs-sheet-grabber{

        display:none;

    }


    .rs-sheet-body{

        max-height:90vh;

    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width:950px){

    .rs-header-top{

        margin-bottom:45px;

    }


    .rs-hero-grid{

        grid-template-columns:1fr;

        gap:40px;

    }


    .rs-hero-content{

        max-width:760px;

    }


    .rs-hero-visual{

        min-height:400px;

    }


    .rs-promo-banner{

        grid-template-columns:1fr;

    }


    .rs-promo-decoration{

        min-height:340px;

    }


    .rs-steps-grid{

        grid-template-columns:
            repeat(3,1fr);

    }

}


/* =========================================================
   MÓVIL
========================================================= */

@media (max-width:650px){

    .rs-page{

        padding:
            0 14px;

    }


    .rs-header{

        padding-bottom:50px;

    }


    .rs-header-top{

        margin-bottom:38px;

    }


    .rs-brand span{

        display:none;

    }


    .rs-secure-badge{

        padding:
            8px 11px;

        font-size:10px;

    }


    .rs-secure-badge span{

        display:none;

    }


    .rs-hero-content h1{

        font-size:47px;

    }


    .rs-hero-description{

        font-size:15px;

    }


    .rs-hero-features{

        flex-direction:column;

    }


    .rs-hero-feature{

        flex:1;

        width:100%;

    }


    .rs-social-proof{

        align-items:flex-start;

    }


    .rs-hero-visual{

        min-height:380px;

        margin-top:5px;

    }


    .rs-visual-card-main{

        width:calc(100% - 15px);

        padding:23px;

    }


    .rs-floating-card-left{

        left:0;

        bottom:20px;

    }


    .rs-floating-card-right{

        right:0;

        top:35px;

    }


    .rs-floating-card{

        padding:
            10px 12px;

    }


    .rs-buscador-card{

        padding:20px;

        border-radius:24px;

    }


    .rs-buscador-grid{

        grid-template-columns:1fr;

    }


    .rs-section-intro,
    .rs-section-heading,
    .rs-results-heading{

        display:block;

    }


    .rs-section-intro h2,
    .rs-section-heading h2,
    .rs-results-heading h2{

        font-size:30px;

    }


    .rs-steps-grid{

        grid-template-columns:1fr;

    }


    .rs-step-card{

        padding:23px;

    }


    .rs-promo-content{

        padding:
            35px 25px;

    }


    .rs-promo-content h2{

        font-size:38px;

    }


    .rs-promo-decoration{

        min-height:300px;

    }


    .rs-promo-ticket{

        width:225px;

    }


    .rs-results-count{

        display:inline-flex;

        margin-top:18px;

        white-space:normal;

    }


    .rs-resultados{

        grid-template-columns:1fr;

    }


    .rs-resultado-card{

        padding:14px;

    }


    .rs-resultado-btn{

        padding:
            9px 11px;

        font-size:10px;

    }


    .rs-final-cta-content{

        flex-direction:column;

        align-items:flex-start;

        padding:28px;

    }


    .rs-final-cta-btn{

        width:100%;

        justify-content:center;

    }


    .rs-sheet-body{

        padding:
            24px 18px
            26px;

    }

}


/* =========================================================
   MÓVILES PEQUEÑOS
========================================================= */

@media (max-width:380px){

    .rs-hero-content h1{

        font-size:41px;

    }


    .rs-floating-card-right{

        display:none;

    }


    .rs-secure-badge{

        display:none;

    }


    .rs-resultado-img{

        width:58px;
        height:58px;

    }

}/* =========================================================
   AGREGAR a reservas.css -- botón + modal de tipo de tienda
========================================================= */

.rs-tipo-tienda-btn{
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1.5px solid var(--text-color-lighten);
    border-radius: 12px;
    padding: 12px 14px;
    background: var(--body-color);
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    color: var(--title-color);
    cursor: pointer;
}
.rs-tipo-tienda-btn i:first-child{ color: var(--first-color); font-size: 17px; }
.rs-tipo-tienda-btn span{ flex: 1; text-align: left; }
.rs-tipo-tienda-btn i:last-child{ color: var(--text-color-light); }

.rs-tipos-tienda-grid{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    margin-top: 14px;
}
.rs-tipo-tienda-chip{
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    border: 1.5px solid var(--text-color-lighten);
    border-radius: 14px;
    background: var(--container-color);
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    color: var(--title-color);
    cursor: pointer;
    text-align: left;
}
.rs-tipo-tienda-chip i{ color: var(--text-color-light); font-size: 18px; flex-shrink: 0; }
.rs-tipo-tienda-chip.activo{
    border-color: var(--first-color);
    background: rgba(255,0,50,.06);
    color: var(--first-color);
}
.rs-tipo-tienda-chip.activo i{ color: var(--first-color); }



.rs-btn-ubicacion{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1.5px dashed var(--text-color-lighten);
    border-radius: 12px;
    padding: 12px 14px;
    background: var(--body-color);
    font-family: inherit;
    font-size: 13.5px;
    font-weight: 800;
    color: var(--text-color);
    cursor: pointer;
    margin-bottom: 14px;
}
.rs-btn-ubicacion i{ font-size: 16px; }
.rs-btn-ubicacion.rs-ubicacion-activa{
    border-style: solid;
    border-color: #2ecc71;
    background: #effcf3;
    color: #1a9850;
}
 





.rs-resultado-img-inicial{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    font-weight: 900;
    color: #fff;
    background: linear-gradient(135deg, var(--first-color), var(--first-color-alt));
}
 


.rs-ocasion-btn{
    padding: 8px 14px;
    border: 1.5px solid var(--pm-borde, #ece7ee);
    border-radius: 999px;
    background: #fff;
    font-size: 12.5px;
    font-weight: 700;
    cursor: pointer;
}
.rs-ocasion-btn.activo{
    border-color: #ff0032;
    background: rgba(255,0,50,.06);
    color: #ff0032;
}/* =========================================================
   BOTÓN SECUNDARIO - COMPARTIR INVITACIÓN
========================================================= */

.rs-btn-secundario {
    flex: 1;

    min-height: 50px;
    padding: 0 18px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    border: 1px solid #ececef;
    border-radius: 15px;

    background: #ffffff;

    color: #24252a;

    font-family: "Satoshi", sans-serif;
    font-size: 13.5px;
    font-weight: 800;

    cursor: pointer;

    box-shadow:
        0 5px 18px rgba(20, 20, 30, .05);

    transition:
        transform .22s cubic-bezier(.4,0,.2,1),
        box-shadow .22s cubic-bezier(.4,0,.2,1),
        border-color .22s cubic-bezier(.4,0,.2,1),
        background .22s cubic-bezier(.4,0,.2,1),
        color .22s cubic-bezier(.4,0,.2,1);
}


/* ICONO */

.rs-btn-secundario i {
    font-size: 19px;

    color: #ff1744;

    transition:
        transform .22s ease;
}


/* HOVER */

.rs-btn-secundario:hover {

    background: #fff5f7;

    border-color: #ffd4dc;

    color: #e90032;

    transform: translateY(-2px);

    box-shadow:
        0 10px 25px rgba(255, 23, 68, .10);
}


.rs-btn-secundario:hover i {

    transform: translateX(2px);
}


/* ACTIVE */

.rs-btn-secundario:active {

    transform: translateY(0);

    box-shadow:
        0 4px 12px rgba(20, 20, 30, .06);
}


/* FOCUS */

.rs-btn-secundario:focus-visible {

    outline: none;

    border-color: #ff1744;

    box-shadow:
        0 0 0 4px rgba(255, 23, 68, .10);
}


/* DISABLED */

.rs-btn-secundario:disabled {

    opacity: .55;

    cursor: not-allowed;

    transform: none;

    box-shadow: none;
}
.rs-resultado-sucursal {

    display: flex;

    flex-direction: column;

    gap: 3px;

    color: #858993;

    font-size: 13px;

    line-height: 1.4;
}


.rs-direccion {

    display: flex;

    align-items: flex-start;

    gap: 5px;
}


.rs-direccion i {

    flex: 0 0 auto;

    margin-top: 2px;

    color: #ff1744;

    font-size: 15px;
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .rs-btn-secundario {

        width: 100%;

        min-height: 52px;

        font-size: 14px;

        border-radius: 16px;
    }

    .rs-btn-secundario i {

        font-size: 20px;
    }

}.rs-btn-mapa {

    width: 100%;

    min-height: 46px;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    padding: 0 16px;

    border: 1px solid #ffd5de;

    border-radius: 14px;

    background: #fff;

    color: #f20d3e;

    font-family: "Satoshi", sans-serif;

    font-size: 13px;

    font-weight: 800;

    cursor: pointer;

    transition:
        .2s ease;
}


.rs-btn-mapa i {

    font-size: 19px;

}


.rs-btn-mapa:hover {

    background: #fff5f7;

    border-color: #ffb6c5;

    transform: translateY(-2px);

    box-shadow:
        0 8px 20px rgba(242, 13, 62, .10);

}


.rs-btn-mapa:active {

    transform: translateY(0);

}

.rs-resultado-acciones {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
        flex-direction: row;
}

.rs-resultado-acciones button {
    flex: 1;
}

.rs-btn-mapa {
    min-height: 44px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 7px;

    padding: 0 14px;

    border: 1px solid #ffd5de;
    border-radius: 13px;

    background: #fff;

    color: #f20d3e;

    font-family: "Satoshi", sans-serif;

    font-size: 13px;
    font-weight: 800;

    cursor: pointer;

    transition: .2s ease;
}

.rs-btn-mapa i {
    font-size: 18px;
}

.rs-btn-mapa:hover {
    background: #fff5f7;
    border-color: #ffb8c7;

    transform: translateY(-1px);

    box-shadow:
        0 6px 16px rgba(242, 13, 62, .10);
}

.rs-resultado-btn {
    min-height: 44px;
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 600px) {

    .rs-resultado-acciones {
        width: 100%;
    }

    .rs-resultado-acciones button {
        min-width: 0;
    }

}
/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 700px) {

    .rs-resultado-card {

        width: 100%;

        display: flex;

        flex-direction: column;

        align-items: stretch;

        gap: 14px;

        padding: 16px;

        border-radius: 22px;

        margin-bottom: 14px;
    }


    /* ---------------------------------------------
       IMAGEN
    --------------------------------------------- */

    .rs-resultado-img {

        width: 100%;

        height: 170px;

        min-width: 0;

        flex: none;

        border-radius: 18px;

        object-fit: cover;
    }


    .rs-resultado-img-inicial {

        font-size: 48px;
    }


    /* ---------------------------------------------
       INFORMACIÓN
    --------------------------------------------- */

    .rs-resultado-info {

        width: 100%;

        min-width: 0;

        display: flex;

        flex-direction: column;

        gap: 6px;
    }


    .rs-resultado-nombre {

        width: 100%;

        font-size: 19px;

        line-height: 1.2;

        white-space: normal;

        overflow: visible;

        text-overflow: unset;
    }


    .rs-resultado-sucursal {

        width: 100%;

        font-size: 13px;

        line-height: 1.5;

        white-space: normal;

        overflow-wrap: anywhere;
    }


    .rs-resultado-deposito {

        margin-top: 5px;
    }


    /* ---------------------------------------------
       BOTONES
    --------------------------------------------- */

    .rs-resultado-acciones {

        width: 100%;

        flex: none;

        display: flex;

        flex-direction: column;

        gap: 9px;

        margin-top: 2px;
    }


    .rs-resultado-acciones button {

        width: 100%;

        min-width: 0;

        flex: none;

        min-height: 50px;
    }


    .rs-btn-mapa {

        width: 100%;

        min-height: 50px;

        font-size: 14px;
    }


    .rs-resultado-btn {

        width: 100%;

        min-height: 50px;

        font-size: 14px;
    }

}