/* =========================================================
   CONTACT HERO — REBUILD COMPLETO
   La altura del hero incluye el espacio ocupado por el nav.
   ========================================================= */

:root {
    /*
     * Ajusta únicamente estas variables cuando cambie
     * la altura o posición del nav global.
     */
    --rma-contact-nav-height: 70px;
    --rma-contact-nav-top: 12px;
    --rma-contact-nav-gap: 28px;

    --rma-contact-hero-max-width: 1440px;
    --rma-contact-hero-side-space: clamp(22px, 4vw, 54px);
}


/* =========================================================
   NORMALIZACIÓN
   ========================================================= */

.rma-contact-hero,
.rma-contact-hero *,
.rma-contact-hero *::before,
.rma-contact-hero *::after {
    box-sizing: border-box;
}

.rma-contact-hero img,
.rma-contact-hero svg {
    display: block;
    max-width: 100%;
}


/* =========================================================
   HERO PRINCIPAL
   ========================================================= */

.rma-contact-hero {
    position: relative;
    isolation: isolate;

    width: 100%;

    /*
     * No se utiliza height fija.
     * Si el contenido necesita más espacio, el hero crece.
     */
    min-height: clamp(640px, 78svh, 720px);

    padding-top:
        calc(
            var(--rma-contact-nav-top)
            + var(--rma-contact-nav-height)
            + var(--rma-contact-nav-gap)
        );

    padding-right: 0;
    padding-bottom: clamp(22px, 3vw, 34px);
    padding-left: 0;

    overflow: hidden;

    color: var(--rma-cream, #F4F0E7);
    background: var(--rma-emerald-dark, #123C34);
}


/* =========================================================
   FONDO
   ========================================================= */

.rma-contact-hero__background {
    position: absolute;
    inset: 0;
    z-index: -5;

    pointer-events: none;

    background:
        radial-gradient(
            circle at 86% 12%,
            rgba(185, 154, 88, 0.18),
            transparent 27%
        ),
        radial-gradient(
            circle at 5% 92%,
            rgba(168, 185, 165, 0.1),
            transparent 30%
        ),
        linear-gradient(
            128deg,
            #194F43 0%,
            var(--rma-emerald-dark, #123C34) 50%,
            #082B23 100%
        );
}

.rma-contact-hero::before {
    content: "";

    position: absolute;
    inset: 0;
    z-index: -4;

    pointer-events: none;

    opacity: 0.075;

    background-image:
        linear-gradient(
            rgba(244, 240, 231, 0.08) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(244, 240, 231, 0.08) 1px,
            transparent 1px
        );

    background-size: 78px 78px;
}

.rma-contact-hero::after {
    content: "";

    position: absolute;
    z-index: -3;

    top: -320px;
    right: -180px;

    width: 760px;
    height: 760px;

    pointer-events: none;

    border: 1px solid rgba(185, 154, 88, 0.16);
    border-radius: 50%;

    box-shadow:
        0 0 0 105px rgba(185, 154, 88, 0.025);
}


/* =========================================================
   CONTENEDOR PRINCIPAL
   ========================================================= */

.rma-contact-hero__container {
    position: relative;
    z-index: 1;

    display: grid;

    grid-template-columns:
        minmax(0, 1.18fr)
        minmax(350px, 0.62fr);

    grid-template-areas:
        "content summary"
        "strip strip";

    align-items: center;
    align-content: center;

    column-gap: clamp(36px, 5vw, 76px);
    row-gap: clamp(22px, 3vw, 34px);

    width:
        min(
            calc(
                100%
                - var(--rma-contact-hero-side-space) * 2
            ),
            var(--rma-contact-hero-max-width)
        );

    min-width: 0;

    margin-inline: auto;
}


/* =========================================================
   CONTENIDO IZQUIERDO
   ========================================================= */

.rma-contact-hero__content {
    grid-area: content;

    position: relative;
    z-index: 2;

    width: 100%;
    max-width: 820px;
    min-width: 0;
}


/* =========================================================
   EYEBROW
   ========================================================= */

.rma-contact-hero__eyebrow {
    display: inline-flex;

    align-items: center;
    gap: 11px;

    max-width: 100%;

    margin-bottom: 13px;

    color: var(--rma-gold, #B99A58);

    font-family: var(--font-body, "Manrope", sans-serif);
    font-size: 0.61rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    line-height: 1.2;
    text-transform: uppercase;
}

.rma-contact-hero__eyebrow > span {
    display: grid;

    width: 32px;
    height: 32px;

    flex: 0 0 32px;
    place-items: center;

    color: var(--rma-charcoal, #1D2422);

    border-radius: 50%;
    background: var(--rma-gold, #B99A58);

    font-family: var(--font-heading, "Cormorant Garamond", serif);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0;
}

.rma-contact-hero__eyebrow i {
    width: 34px;
    height: 1px;

    flex: 0 0 34px;

    background: rgba(185, 154, 88, 0.7);
}

.rma-contact-hero__eyebrow strong {
    min-width: 0;
}


/* =========================================================
   CREDENCIALES
   ========================================================= */

.rma-contact-hero__credentials {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;

    width: 100%;
    min-width: 0;

    margin-bottom: 15px;
}

.rma-contact-hero__credentials span {
    display: inline-flex;

    min-height: 27px;

    align-items: center;
    justify-content: center;

    padding: 6px 10px;

    color: rgba(244, 240, 231, 0.7);

    border: 1px solid rgba(244, 240, 231, 0.13);
    border-radius: 999px;

    background: rgba(255, 255, 255, 0.03);

    font-family: var(--font-body, "Manrope", sans-serif);
    font-size: 0.45rem;
    font-weight: 800;
    letter-spacing: 0.055em;
    line-height: 1;
    text-transform: uppercase;
}


/* =========================================================
   TÍTULO
   ========================================================= */

.rma-contact-hero h1 {
    width: 100%;
    max-width: 810px;

    margin: 0 0 17px;

    overflow-wrap: break-word;

    color: #FFFFFF;

    font-family: var(--font-heading, "Cormorant Garamond", serif);
    font-size: clamp(3.4rem, 4.85vw, 5.25rem);
    font-weight: 600;
    line-height: 0.89;
    letter-spacing: -0.052em;

    text-wrap: balance;
}

.rma-contact-hero h1 em {
    display: block;

    color: var(--rma-gold, #B99A58);

    font-weight: 500;
}


/* =========================================================
   DESCRIPCIÓN
   ========================================================= */

.rma-contact-hero__description {
    width: 100%;
    max-width: 690px;

    margin: 0 0 22px;

    overflow-wrap: break-word;

    color: rgba(244, 240, 231, 0.62);

    font-family: var(--font-body, "Manrope", sans-serif);
    font-size: clamp(0.8rem, 0.92vw, 0.92rem);
    line-height: 1.68;
}


/* =========================================================
   BOTONES
   ========================================================= */

.rma-contact-hero__actions {
    display: flex;
    flex-wrap: wrap;

    align-items: center;
    gap: 9px;

    width: 100%;
}

.rma-contact-hero__button {
    display: inline-flex;

    min-height: 48px;

    align-items: center;
    justify-content: center;
    gap: 8px;

    padding: 11px 18px;

    border-radius: 999px;

    font-family: var(--font-body, "Manrope", sans-serif);
    font-size: 0.55rem;
    font-weight: 800;
    letter-spacing: 0.065em;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;

    transition:
        color 250ms ease,
        border-color 250ms ease,
        background-color 250ms ease,
        transform 250ms ease;
}

.rma-contact-hero__button svg {
    width: 17px;
    height: 17px;

    flex: 0 0 17px;

    transition: transform 250ms ease;
}

.rma-contact-hero__button--primary {
    color: var(--rma-charcoal, #1D2422);

    border: 1px solid var(--rma-gold, #B99A58);
    background: var(--rma-gold, #B99A58);
}

.rma-contact-hero__button--primary:hover {
    border-color: var(--rma-cream, #F4F0E7);
    background: var(--rma-cream, #F4F0E7);

    transform: translateY(-2px);
}

.rma-contact-hero__button--primary:hover svg {
    transform: translateY(3px);
}

.rma-contact-hero__button--secondary {
    color: var(--rma-cream, #F4F0E7);

    border: 1px solid rgba(244, 240, 231, 0.17);
    background: rgba(255, 255, 255, 0.025);
}

.rma-contact-hero__button--secondary:hover {
    border-color: rgba(185, 154, 88, 0.47);
    background: rgba(185, 154, 88, 0.08);

    transform: translateY(-2px);
}

.rma-contact-hero__phone-icon {
    display: grid;

    width: 23px;
    height: 23px;

    flex: 0 0 23px;
    place-items: center;

    color: var(--rma-gold, #B99A58);
}


/* =========================================================
   PANEL DERECHO
   ========================================================= */

.rma-contact-hero__summary {
    grid-area: summary;

    position: relative;
    z-index: 2;

    width: 100%;
    max-width: 440px;
    min-width: 0;

    justify-self: end;

    padding: clamp(20px, 2.5vw, 29px);

    border: 1px solid rgba(244, 240, 231, 0.12);
    border-radius: 30px;

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.085),
            rgba(255, 255, 255, 0.025)
        );

    box-shadow:
        0 25px 64px rgba(2, 17, 13, 0.25);

    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
}


/* =========================================================
   CABECERA DEL PANEL
   ========================================================= */

.rma-contact-hero__summary-top {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr);

    align-items: center;
    gap: 13px;

    min-width: 0;

    margin-bottom: 17px;
}

.rma-contact-hero__summary-mark {
    display: grid;

    width: 59px;
    height: 59px;

    flex: 0 0 59px;
    place-items: center;

    color: var(--rma-gold, #B99A58);

    border: 1px solid rgba(185, 154, 88, 0.32);
    border-radius: 50%;

    background: rgba(18, 60, 52, 0.72);

    font-family: var(--font-heading, "Cormorant Garamond", serif);
    font-size: 0.96rem;
    font-weight: 700;
}

.rma-contact-hero__summary-top > div {
    display: grid;
    gap: 3px;

    min-width: 0;
}

.rma-contact-hero__summary-top small {
    color: var(--rma-gold, #B99A58);

    font-family: var(--font-body, "Manrope", sans-serif);
    font-size: 0.45rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    line-height: 1.35;
    text-transform: uppercase;
}

.rma-contact-hero__summary-top strong {
    min-width: 0;

    overflow-wrap: break-word;

    color: var(--rma-cream, #F4F0E7);

    font-family: var(--font-heading, "Cormorant Garamond", serif);
    font-size: clamp(1.3rem, 1.8vw, 1.65rem);
    line-height: 1;
}


/* =========================================================
   OPCIONES DEL PANEL
   ========================================================= */

.rma-contact-hero__summary-options {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 7px;

    width: 100%;
    min-width: 0;

    margin-bottom: 16px;
}

.rma-contact-hero__summary-options article {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr);

    align-items: center;
    gap: 9px;

    min-width: 0;
    min-height: 68px;

    padding: 10px;

    border: 1px solid rgba(244, 240, 231, 0.08);
    border-radius: 18px;

    background: rgba(255, 255, 255, 0.025);
}

.rma-contact-hero__summary-options article > span {
    display: grid;

    width: 31px;
    height: 31px;

    flex: 0 0 31px;
    place-items: center;

    color: var(--rma-charcoal, #1D2422);

    border-radius: 50%;
    background: var(--rma-gold, #B99A58);

    font-family: var(--font-heading, "Cormorant Garamond", serif);
    font-size: 0.62rem;
    font-weight: 700;
}

.rma-contact-hero__summary-options article > div {
    display: grid;
    gap: 2px;

    min-width: 0;
}

.rma-contact-hero__summary-options strong {
    min-width: 0;

    overflow-wrap: break-word;

    color: var(--rma-cream, #F4F0E7);

    font-family: var(--font-heading, "Cormorant Garamond", serif);
    font-size: 1rem;
    line-height: 1;
}

.rma-contact-hero__summary-options small {
    min-width: 0;

    overflow-wrap: break-word;

    color: rgba(244, 240, 231, 0.4);

    font-family: var(--font-body, "Manrope", sans-serif);
    font-size: 0.42rem;
    font-weight: 700;
    line-height: 1.35;
}


/* =========================================================
   PIE DEL PANEL
   ========================================================= */

.rma-contact-hero__summary-footer {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr);

    align-items: center;
    gap: 10px;

    min-width: 0;

    padding-top: 15px;

    border-top: 1px solid rgba(244, 240, 231, 0.09);
}

.rma-contact-hero__location-icon {
    display: grid;

    width: 39px;
    height: 39px;

    flex: 0 0 39px;
    place-items: center;

    color: var(--rma-gold, #B99A58);

    border: 1px solid rgba(185, 154, 88, 0.26);
    border-radius: 50%;
}

.rma-contact-hero__location-icon svg {
    width: 19px;
    height: 19px;
}

.rma-contact-hero__summary-footer > div {
    display: grid;
    gap: 2px;

    min-width: 0;
}

.rma-contact-hero__summary-footer strong {
    min-width: 0;

    overflow-wrap: break-word;

    color: var(--rma-cream, #F4F0E7);

    font-family: var(--font-heading, "Cormorant Garamond", serif);
    font-size: 1.02rem;
    line-height: 1.1;
}

.rma-contact-hero__summary-footer small {
    min-width: 0;

    overflow-wrap: break-word;

    color: rgba(244, 240, 231, 0.42);

    font-family: var(--font-body, "Manrope", sans-serif);
    font-size: 0.45rem;
    font-weight: 700;
    line-height: 1.4;
}


/* =========================================================
   FRANJA INFERIOR DE CONTACTO
   Nunca está posicionada de forma absoluta.
   ========================================================= */

.rma-contact-hero__contact-strip {
    grid-area: strip;

    display: grid;

    grid-template-columns:
        minmax(0, 0.9fr)
        minmax(0, 1.25fr)
        minmax(0, 1fr);

    gap: 7px;

    width: 100%;
    min-width: 0;

    margin: 0;
}

.rma-contact-hero__contact-strip article {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr);

    align-items: center;
    gap: 10px;

    min-width: 0;
    min-height: 62px;

    padding: 10px 14px;

    border: 1px solid rgba(244, 240, 231, 0.08);
    border-radius: 18px;

    background: rgba(255, 255, 255, 0.026);
}

.rma-contact-hero__strip-icon {
    display: grid;

    width: 36px;
    height: 36px;

    flex: 0 0 36px;
    place-items: center;

    color: var(--rma-gold, #B99A58);

    border: 1px solid rgba(185, 154, 88, 0.22);
    border-radius: 50%;
}

.rma-contact-hero__strip-icon svg {
    width: 17px;
    height: 17px;
}

.rma-contact-hero__contact-strip article > div {
    display: grid;
    gap: 3px;

    min-width: 0;
}

.rma-contact-hero__contact-strip small {
    min-width: 0;

    color: rgba(244, 240, 231, 0.4);

    font-family: var(--font-body, "Manrope", sans-serif);
    font-size: 0.42rem;
    font-weight: 800;
    letter-spacing: 0.045em;
    line-height: 1.3;
    text-transform: uppercase;
}

.rma-contact-hero__contact-strip a,
.rma-contact-hero__contact-strip strong {
    display: block;

    min-width: 0;

    overflow-wrap: anywhere;
    word-break: normal;

    color: var(--rma-cream, #F4F0E7);

    font-family: var(--font-heading, "Cormorant Garamond", serif);
    font-size: clamp(0.9rem, 1.2vw, 1.1rem);
    line-height: 1.15;
    text-decoration: none;
}











































/* =========================================================
   SIMPLE CONTACT FORM
   ========================================================= */

.rma-simple-contact,
.rma-simple-contact *,
.rma-simple-contact *::before,
.rma-simple-contact *::after {
    box-sizing: border-box;
}

.rma-simple-contact svg {
    display: block;
    max-width: 100%;
}


/* =========================================================
   SECTION
   ========================================================= */

.rma-simple-contact {
    position: relative;
    isolation: isolate;

    width: 100%;

    padding:
        clamp(80px, 8vw, 128px)
        0;

    overflow: hidden;

    color:
        var(--rma-charcoal, #1D2422);

    background:
        linear-gradient(
            145deg,
            #FCFBF7 0%,
            var(--rma-cream, #F4F0E7) 67%,
            #E9EDE8 100%
        );

    scroll-margin-top:
        calc(
            var(--rma-header-height, 90px)
            + 20px
        );
}


/* =========================================================
   BACKGROUND
   ========================================================= */

.rma-simple-contact__background {
    position: absolute;
    inset: 0;
    z-index: -3;

    pointer-events: none;

    background:
        radial-gradient(
            circle at 93% 8%,
            rgba(185, 154, 88, 0.13),
            transparent 27%
        ),
        radial-gradient(
            circle at 4% 90%,
            rgba(40, 103, 90, 0.08),
            transparent 30%
        );
}


/* =========================================================
   CONTAINER
   ========================================================= */

.rma-simple-contact__container {
    position: relative;
    z-index: 1;

    display: grid;

    grid-template-columns:
        minmax(330px, 0.38fr)
        minmax(0, 0.62fr);

    align-items: start;

    gap:
        clamp(24px, 4vw, 58px);

    width:
        min(
            calc(100% - 48px),
            1440px
        );

    margin-inline: auto;
}


/* =========================================================
   LEFT PANEL
   ========================================================= */

.rma-simple-contact__info {
    position: sticky;

    top:
        calc(
            var(--rma-header-height, 90px)
            + 20px
        );

    min-width: 0;

    padding:
        clamp(30px, 4vw, 48px);

    overflow: hidden;

    color:
        var(--rma-cream, #F4F0E7);

    border-radius:
        clamp(30px, 4vw, 44px);

    background:
        linear-gradient(
            145deg,
            #194F43 0%,
            var(--rma-emerald-dark, #123C34) 58%,
            #0B3028 100%
        );

    box-shadow:
        0 30px 80px
        rgba(18, 60, 52, 0.16);
}


/* =========================================================
   EYEBROW
   ========================================================= */

.rma-simple-contact__eyebrow {
    display: inline-flex;

    align-items: center;
    gap: 10px;

    margin-bottom: 18px;

    color:
        var(--rma-gold, #B99A58);

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.56rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.rma-simple-contact__eyebrow > span {
    display: grid;

    width: 35px;
    height: 35px;

    place-items: center;

    color:
        var(--rma-charcoal, #1D2422);

    border-radius: 50%;

    background:
        var(--rma-gold, #B99A58);

    font-family:
        var(--font-heading, "Cormorant Garamond", serif);

    font-size: 0.78rem;
}

.rma-simple-contact__eyebrow i {
    width: 30px;
    height: 1px;

    background:
        rgba(185, 154, 88, 0.6);
}


/* =========================================================
   LEFT TITLE
   ========================================================= */

.rma-simple-contact__info > h2 {
    margin:
        0 0 17px;

    color: #FFFFFF;

    font-family:
        var(--font-heading, "Cormorant Garamond", serif);

    font-size:
        clamp(3rem, 4.2vw, 4.5rem);

    font-weight: 600;
    line-height: 0.9;
    letter-spacing: -0.048em;
}

.rma-simple-contact__info > h2 em {
    color:
        var(--rma-gold, #B99A58);

    font-weight: 500;
}

.rma-simple-contact__intro {
    margin:
        0 0 28px;

    color:
        rgba(244, 240, 231, 0.58);

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.75rem;
    line-height: 1.7;
}


/* =========================================================
   DIRECT CONTACT
   ========================================================= */

.rma-simple-contact__direct {
    display: grid;

    gap: 7px;

    margin-bottom: 28px;
}

.rma-simple-contact__direct > a {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr);

    align-items: center;
    gap: 10px;

    min-width: 0;

    padding: 12px 13px;

    color:
        var(--rma-cream, #F4F0E7);

    border:
        1px solid
        rgba(244, 240, 231, 0.08);

    border-radius: 17px;

    background:
        rgba(255, 255, 255, 0.03);

    text-decoration: none;

    transition:
        border-color 180ms ease,
        background-color 180ms ease;
}

.rma-simple-contact__direct > a:hover {
    border-color:
        rgba(185, 154, 88, 0.34);

    background:
        rgba(185, 154, 88, 0.06);
}

.rma-simple-contact__direct > a > span {
    display: grid;

    width: 39px;
    height: 39px;

    place-items: center;

    color:
        var(--rma-gold, #B99A58);

    border:
        1px solid
        rgba(185, 154, 88, 0.23);

    border-radius: 50%;
}

.rma-simple-contact__direct svg {
    width: 18px;
    height: 18px;
}

.rma-simple-contact__direct small {
    display: block;

    margin-bottom: 2px;

    color:
        rgba(244, 240, 231, 0.4);

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.36rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.rma-simple-contact__direct strong {
    display: block;

    overflow-wrap: anywhere;

    color:
        var(--rma-cream, #F4F0E7);

    font-family:
        var(--font-heading, "Cormorant Garamond", serif);

    font-size: 0.95rem;
}


/* =========================================================
   PROCESS
   ========================================================= */

.rma-simple-contact__process {
    display: grid;

    gap: 7px;

    margin-bottom: 27px;
}

.rma-simple-contact__process article {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr);

    align-items: start;
    gap: 11px;

    padding: 13px;

    border:
        1px solid
        rgba(244, 240, 231, 0.07);

    border-radius: 17px;

    background:
        rgba(255, 255, 255, 0.025);
}

.rma-simple-contact__process article > span {
    display: grid;

    width: 36px;
    height: 36px;

    place-items: center;

    color:
        var(--rma-charcoal, #1D2422);

    border-radius: 50%;

    background:
        var(--rma-gold, #B99A58);

    font-family:
        var(--font-heading, "Cormorant Garamond", serif);

    font-size: 0.66rem;
}

.rma-simple-contact__process strong {
    display: block;

    margin-bottom: 3px;

    color:
        var(--rma-cream, #F4F0E7);

    font-family:
        var(--font-heading, "Cormorant Garamond", serif);

    font-size: 0.94rem;
}

.rma-simple-contact__process p {
    margin: 0;

    color:
        rgba(244, 240, 231, 0.4);

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.47rem;
    line-height: 1.5;
}


/* =========================================================
   LICENSE
   ========================================================= */

.rma-simple-contact__license {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr);

    align-items: start;
    gap: 9px;

    padding-top: 20px;

    border-top:
        1px solid
        rgba(244, 240, 231, 0.08);
}

.rma-simple-contact__license > span {
    display: grid;

    width: 37px;
    height: 37px;

    place-items: center;

    color:
        var(--rma-gold, #B99A58);

    border:
        1px solid
        rgba(185, 154, 88, 0.23);

    border-radius: 50%;
}

.rma-simple-contact__license svg {
    width: 17px;
    height: 17px;
}

.rma-simple-contact__license p {
    margin: 0;

    color:
        rgba(244, 240, 231, 0.42);

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.49rem;
    line-height: 1.55;
}


/* =========================================================
   FORM WRAPPER
   ========================================================= */

.rma-simple-contact__form-wrapper {
    min-width: 0;

    padding:
        clamp(26px, 4vw, 48px);

    border:
        1px solid
        rgba(18, 60, 52, 0.09);

    border-radius:
        clamp(30px, 4vw, 44px);

    background:
        rgba(255, 255, 255, 0.82);

    box-shadow:
        0 28px 80px
        rgba(18, 60, 52, 0.09);
}


/* =========================================================
   FORM HEADER
   ========================================================= */

.rma-simple-contact__form-header {
    margin-bottom: 29px;
}

.rma-simple-contact__form-header > span {
    display: block;

    margin-bottom: 6px;

    color:
        var(--rma-gold, #B99A58);

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.48rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.rma-simple-contact__form-header h2 {
    margin:
        0 0 8px;

    color:
        var(--rma-charcoal, #1D2422);

    font-family:
        var(--font-heading, "Cormorant Garamond", serif);

    font-size:
        clamp(2.35rem, 3.6vw, 3.8rem);

    font-weight: 600;
    line-height: 0.93;
    letter-spacing: -0.04em;
}

.rma-simple-contact__form-header p {
    max-width: 650px;

    margin: 0;

    color: #737D78;

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.66rem;
    line-height: 1.6;
}


/* =========================================================
   HONEYPOT
   ========================================================= */

.rma-simple-contact__honeypot {
    position: absolute;

    left: -10000px;

    width: 1px;
    height: 1px;

    overflow: hidden;
}


/* =========================================================
   FIELDSET
   ========================================================= */

.rma-simple-contact__group {
    min-width: 0;

    margin:
        0 0 29px;

    padding:
        0 0 29px;

    border: 0;
    border-bottom:
        1px solid
        rgba(18, 60, 52, 0.08);
}

.rma-simple-contact__group legend {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr);

    align-items: center;
    gap: 10px;

    width: 100%;

    margin-bottom: 22px;
    padding: 0;
}

.rma-simple-contact__group legend > span {
    display: grid;

    width: 38px;
    height: 38px;

    place-items: center;

    color:
        var(--rma-charcoal, #1D2422);

    border-radius: 50%;

    background:
        var(--rma-gold, #B99A58);

    font-family:
        var(--font-heading, "Cormorant Garamond", serif);

    font-size: 0.7rem;
}

.rma-simple-contact__group legend small {
    display: block;

    margin-bottom: 2px;

    color:
        var(--rma-gold, #B99A58);

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.36rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.rma-simple-contact__group legend strong {
    color:
        var(--rma-charcoal, #1D2422);

    font-family:
        var(--font-heading, "Cormorant Garamond", serif);

    font-size:
        clamp(1.18rem, 1.8vw, 1.55rem);
}


/* =========================================================
   GRID
   ========================================================= */

.rma-simple-contact__grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 15px;

    margin-bottom: 18px;
}


/* =========================================================
   FIELDS
   ========================================================= */

.rma-simple-contact__field {
    display: grid;

    min-width: 0;

    gap: 7px;

    margin-bottom: 17px;
}

.rma-simple-contact__field--full {
    grid-column:
        1 / -1;
}

.rma-simple-contact__field label,
.rma-simple-contact__choice-title {
    color:
        var(--rma-charcoal, #1D2422);

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.55rem;
    font-weight: 800;
}

.rma-simple-contact__field label b,
.rma-simple-contact__choice-title b {
    color:
        var(--rma-gold, #B99A58);
}

.rma-simple-contact__field label small {
    margin-left: 5px;

    color: #919995;

    font-size: 0.45rem;
}


/* =========================================================
   INPUTS
   ========================================================= */

.rma-simple-contact input,
.rma-simple-contact select,
.rma-simple-contact textarea {
    width: 100%;
    min-width: 0;

    color:
        var(--rma-charcoal, #1D2422);

    border:
        1px solid
        rgba(18, 60, 52, 0.13);

    border-radius: 15px;

    outline: none;

    background:
        rgba(255, 255, 255, 0.9);

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.7rem;
    font-weight: 600;

    transition:
        border-color 180ms ease,
        box-shadow 180ms ease;
}

.rma-simple-contact input,
.rma-simple-contact select {
    min-height: 53px;

    padding:
        12px 14px;
}

.rma-simple-contact textarea {
    min-height: 145px;

    padding:
        14px 15px;

    line-height: 1.6;

    resize: vertical;
}

.rma-simple-contact input:focus,
.rma-simple-contact select:focus,
.rma-simple-contact textarea:focus {
    border-color:
        rgba(40, 103, 90, 0.64);

    box-shadow:
        0 0 0 4px
        rgba(40, 103, 90, 0.075);
}

.rma-simple-contact input::placeholder,
.rma-simple-contact textarea::placeholder {
    color: #9AA19D;
}


/* =========================================================
   RADIO OPTIONS
   ========================================================= */

.rma-simple-contact__choice-group {
    margin-top: 17px;
}

.rma-simple-contact__choice-title {
    display: block;

    margin-bottom: 8px;
}

.rma-simple-contact__choices {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 7px;
}

.rma-simple-contact__choices label {
    position: relative;
}

.rma-simple-contact__choices input {
    position: absolute;

    width: 1px;
    height: 1px;

    opacity: 0;
}

.rma-simple-contact__choices label > span {
    display: flex;

    min-height: 48px;

    align-items: center;
    justify-content: center;

    padding:
        9px 10px;

    cursor: pointer;

    color: #68726D;

    border:
        1px solid
        rgba(18, 60, 52, 0.11);

    border-radius: 13px;

    background:
        rgba(168, 185, 165, 0.09);

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.51rem;
    font-weight: 800;
    text-align: center;
}

.rma-simple-contact__choices
input:checked
+ span {
    color:
        var(--rma-cream, #F4F0E7);

    border-color:
        var(--rma-emerald-dark, #123C34);

    background:
        var(--rma-emerald-dark, #123C34);
}


/* =========================================================
   CONSENT
   ========================================================= */

.rma-simple-contact__consent {
    position: relative;

    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr);

    align-items: start;
    gap: 10px;

    margin-top: 20px;

    cursor: pointer;
}

.rma-simple-contact__consent > input {
    position: absolute;

    width: 1px;
    height: 1px;

    opacity: 0;
}

.rma-simple-contact__checkbox {
    display: grid;

    width: 22px;
    height: 22px;

    place-items: center;

    color: transparent;

    border:
        1px solid
        rgba(18, 60, 52, 0.22);

    border-radius: 6px;

    background: #FFFFFF;
}

.rma-simple-contact__checkbox svg {
    width: 15px;
    height: 15px;
}

.rma-simple-contact__consent
input:checked
+ .rma-simple-contact__checkbox {
    color:
        var(--rma-charcoal, #1D2422);

    border-color:
        var(--rma-gold, #B99A58);

    background:
        var(--rma-gold, #B99A58);
}

.rma-simple-contact__consent
> span:last-child {
    color: #5F6964;

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.58rem;
    font-weight: 700;
    line-height: 1.55;
}

.rma-simple-contact__legal {
    margin:
        9px 0 0 32px;

    color: #8C9490;

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.47rem;
    line-height: 1.5;
}


/* =========================================================
   SUBMIT AREA
   ========================================================= */

.rma-simple-contact__submit-area {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;
}

.rma-simple-contact__security {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr);

    align-items: center;
    gap: 8px;

    max-width: 330px;
}

.rma-simple-contact__security > span {
    display: grid;

    width: 35px;
    height: 35px;

    place-items: center;

    color:
        var(--rma-emerald-dark, #123C34);

    border-radius: 50%;

    background:
        rgba(168, 185, 165, 0.15);
}

.rma-simple-contact__security svg {
    width: 16px;
    height: 16px;
}

.rma-simple-contact__security p {
    margin: 0;

    color: #89918D;

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.46rem;
    line-height: 1.5;
}


/* =========================================================
   SUBMIT BUTTON
   ========================================================= */

.rma-simple-contact__submit {
    display: inline-flex;

    min-height: 52px;

    align-items: center;
    justify-content: center;

    gap: 8px;

    padding:
        12px 20px;

    cursor: pointer;

    color:
        var(--rma-cream, #F4F0E7);

    border:
        1px solid
        var(--rma-emerald-dark, #123C34);

    border-radius: 999px;

    background:
        var(--rma-emerald-dark, #123C34);

    font-family:
        var(--font-body, "Manrope", sans-serif);

    font-size: 0.52rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;

    transition:
        color 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        transform 180ms ease;
}

.rma-simple-contact__submit svg {
    width: 18px;
    height: 18px;
}

.rma-simple-contact__submit:hover {
    color:
        var(--rma-charcoal, #1D2422);

    border-color:
        var(--rma-gold, #B99A58);

    background:
        var(--rma-gold, #B99A58);

    transform:
        translateY(-2px);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

    .rma-simple-contact__container {
        grid-template-columns: 1fr;

        width:
            min(
                calc(100% - 40px),
                800px
            );
    }

    .rma-simple-contact__info {
        position: relative;
        top: auto;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 680px) {

    .rma-simple-contact {
        padding:
            70px 0;
    }

    .rma-simple-contact__container {
        width:
            calc(100% - 32px);
    }

    .rma-simple-contact__info,
    .rma-simple-contact__form-wrapper {
        padding:
            24px 18px;

        border-radius: 28px;
    }

    .rma-simple-contact__grid,
    .rma-simple-contact__choices {
        grid-template-columns: 1fr;
    }

    .rma-simple-contact__field--full {
        grid-column: auto;
    }

    .rma-simple-contact__submit-area {
        display: grid;

        grid-template-columns: 1fr;
    }

    .rma-simple-contact__security {
        max-width: none;
    }

    .rma-simple-contact__submit {
        width: 100%;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

    .rma-simple-contact__container {
        width:
            calc(100% - 28px);
    }

    .rma-simple-contact__info > h2 {
        font-size:
            clamp(2.6rem, 12vw, 3.4rem);
    }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .rma-simple-contact__submit,
    .rma-simple-contact__direct > a {
        transition: none;
    }

}







































/* =========================================================
   CONTACT PAGE — GLOBAL READABILITY OVERRIDE
   AGREGAR AL FINAL ABSOLUTO DE contact.css

   Corrige:
   - Contact Hero
   - Credentials
   - Summary Panel
   - Contact Strip
   - Contact Information Panel
   - Process Cards
   - License Notice
   - Form Header
   - Fieldsets
   - Labels
   - Inputs / Selects / Textarea
   - Radio Choices
   - Consent
   - Legal Text
   - Security Notice
   - Submit Button

   No modifica:
   - H1 / H2 principales
   - layout
   - grids
   - backgrounds
   - imágenes
   - honeypot
   - comportamiento del formulario
   ========================================================= */


/* =========================================================
   READABILITY TOKENS
   ========================================================= */

.rma-contact-hero,
.rma-simple-contact {

    --rma-contact-body:
        clamp(1rem, 1.05vw, 1.075rem);

    --rma-contact-body-compact:
        clamp(0.94rem, 0.98vw, 1rem);

    --rma-contact-secondary:
        clamp(0.88rem, 0.92vw, 0.94rem);

    --rma-contact-label:
        clamp(0.78rem, 0.82vw, 0.84rem);

    --rma-contact-button:
        clamp(0.8rem, 0.84vw, 0.86rem);

    --rma-contact-micro:
        clamp(0.74rem, 0.78vw, 0.8rem);

}


/* =========================================================
   01. CONTACT HERO
   ========================================================= */


/* Eyebrow */

.rma-contact-hero__eyebrow {
    font-size:
        var(--rma-contact-label) !important;

    line-height: 1.3 !important;
}


/* Credentials */

.rma-contact-hero__credentials span {
    min-height: 32px;

    padding:
        7px 11px;

    font-size:
        var(--rma-contact-micro) !important;

    line-height: 1.25 !important;
}


/* Main hero description */

.rma-contact-hero__description {
    max-width: 720px;

    font-size:
        var(--rma-contact-body) !important;

    line-height: 1.72 !important;
}


/* Hero buttons */

.rma-contact-hero__button {
    font-size:
        var(--rma-contact-button) !important;

    line-height: 1.3 !important;
}


/* =========================================================
   HERO — SUMMARY PANEL
   ========================================================= */


/* Small section label */

.rma-contact-hero__summary-top small {
    font-size:
        var(--rma-contact-label) !important;

    line-height: 1.35 !important;
}


/* Summary option supporting text */

.rma-contact-hero__summary-options small {
    font-size:
        var(--rma-contact-secondary) !important;

    line-height: 1.45 !important;
}


/* Summary option titles */

.rma-contact-hero__summary-options strong {
    font-size: 1.05rem !important;

    line-height: 1.15 !important;
}


/* Location / license information */

.rma-contact-hero__summary-footer small {
    font-size:
        var(--rma-contact-secondary) !important;

    line-height: 1.5 !important;
}


/* =========================================================
   HERO — CONTACT STRIP
   ========================================================= */


/* Call / Email / Service Area labels */

.rma-contact-hero__contact-strip small {
    font-size:
        var(--rma-contact-label) !important;

    line-height: 1.35 !important;
}


/* Contact values */

.rma-contact-hero__contact-strip a,
.rma-contact-hero__contact-strip strong {
    font-size:
        clamp(1rem, 1.25vw, 1.12rem) !important;

    line-height: 1.25 !important;
}


/* =========================================================
   02. SIMPLE CONTACT SECTION
   ========================================================= */


/* Section eyebrow */

.rma-simple-contact__eyebrow {
    font-size:
        var(--rma-contact-label) !important;

    line-height: 1.3 !important;
}


/* Left panel introduction */

.rma-simple-contact__intro {
    font-size:
        var(--rma-contact-body) !important;

    line-height: 1.72 !important;
}


/* =========================================================
   DIRECT CONTACT
   ========================================================= */


/* Call / Email labels */

.rma-simple-contact__direct small {
    font-size:
        var(--rma-contact-label) !important;

    line-height: 1.35 !important;
}


/* Phone / email values */

.rma-simple-contact__direct strong {
    font-size: 1.05rem !important;

    line-height: 1.25 !important;
}


/* =========================================================
   CONTACT PROCESS
   ========================================================= */


/* Process card title */

.rma-simple-contact__process strong {
    font-size: 1.05rem !important;

    line-height: 1.2 !important;
}


/* Process descriptions */

.rma-simple-contact__process p {
    font-size:
        var(--rma-contact-secondary) !important;

    line-height: 1.58 !important;
}


/* =========================================================
   LICENSE NOTICE
   ========================================================= */

.rma-simple-contact__license p {
    font-size:
        var(--rma-contact-secondary) !important;

    line-height: 1.62 !important;
}


/* =========================================================
   03. FORM HEADER
   ========================================================= */


/* Form section label */

.rma-simple-contact__form-header > span {
    font-size:
        var(--rma-contact-label) !important;

    line-height: 1.3 !important;
}


/* Form introduction */

.rma-simple-contact__form-header p {
    font-size:
        var(--rma-contact-body) !important;

    line-height: 1.68 !important;
}


/* =========================================================
   IMPORTANT
   Honeypot remains hidden.
   NO readability changes here.
   ========================================================= */

.rma-simple-contact__honeypot {
    position: absolute !important;
    left: -10000px !important;

    width: 1px !important;
    height: 1px !important;

    overflow: hidden !important;
}


/* =========================================================
   04. FIELDSET HEADINGS
   ========================================================= */


/* Section number */

.rma-simple-contact__group legend > span {
    font-size:
        var(--rma-contact-secondary) !important;
}


/* Small section category */

.rma-simple-contact__group legend small {
    font-size:
        var(--rma-contact-label) !important;

    line-height: 1.3 !important;
}


/* Main fieldset title */

.rma-simple-contact__group legend strong {
    font-size:
        clamp(1.3rem, 1.8vw, 1.6rem) !important;

    line-height: 1.1 !important;
}


/* =========================================================
   05. FORM LABELS
   ========================================================= */

.rma-simple-contact__field label,
.rma-simple-contact__choice-title {

    font-size:
        var(--rma-contact-secondary) !important;

    line-height: 1.4 !important;

}


/* Optional / helper label text */

.rma-simple-contact__field label small {
    font-size:
        var(--rma-contact-micro) !important;

    line-height: 1.35 !important;
}


/* =========================================================
   06. INPUTS / SELECT / TEXTAREA

   1rem is particularly important on mobile:
   improves reading and helps avoid automatic browser zoom
   on form controls.
   ========================================================= */

.rma-simple-contact input,
.rma-simple-contact select,
.rma-simple-contact textarea {

    font-size: 1rem !important;

    line-height: 1.45 !important;

}


/* Inputs and select */

.rma-simple-contact input,
.rma-simple-contact select {

    min-height: 55px;

    padding:
        13px 15px;

}


/* Textarea */

.rma-simple-contact textarea {

    min-height: 150px;

    padding:
        14px 15px;

    line-height: 1.6 !important;

}


/* Placeholder */

.rma-simple-contact input::placeholder,
.rma-simple-contact textarea::placeholder {

    font-size: 0.94rem;

}


/* =========================================================
   07. RADIO / CHOICE OPTIONS
   ========================================================= */

.rma-simple-contact__choices label > span {

    min-height: 50px;

    padding:
        10px 12px;

    font-size:
        var(--rma-contact-secondary) !important;

    line-height: 1.4 !important;

}


/* =========================================================
   08. CONSENT
   ========================================================= */


/* Main consent text */

.rma-simple-contact__consent
> span:last-child {

    font-size:
        var(--rma-contact-secondary) !important;

    line-height: 1.58 !important;

}


/* Supporting legal text */

.rma-simple-contact__legal {

    font-size:
        var(--rma-contact-micro) !important;

    line-height: 1.55 !important;

}


/* =========================================================
   09. SECURITY MESSAGE
   ========================================================= */

.rma-simple-contact__security p {

    font-size:
        var(--rma-contact-micro) !important;

    line-height: 1.55 !important;

}


/* =========================================================
   10. SUBMIT BUTTON
   ========================================================= */

.rma-simple-contact__submit {

    min-height: 54px;

    padding:
        13px 21px;

    font-size:
        var(--rma-contact-button) !important;

    line-height: 1.3 !important;

}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

    /*
     * Left panel is no longer sticky at this breakpoint
     * in the original CSS.
     * Text remains at normal reading size.
     */

    .rma-simple-contact__intro {
        font-size: 1rem !important;
    }

}


/* =========================================================
   MOBILE READABILITY
   ========================================================= */

@media (max-width: 680px) {

    /* -----------------------------------------------------
       MAIN BODY TEXT
       ----------------------------------------------------- */

    .rma-contact-hero__description,
    .rma-simple-contact__intro,
    .rma-simple-contact__form-header p {

        font-size: 1rem !important;

        line-height: 1.7 !important;

    }


    /* -----------------------------------------------------
       SECONDARY TEXT
       ----------------------------------------------------- */

    .rma-contact-hero__summary-options small,
    .rma-contact-hero__summary-footer small,

    .rma-simple-contact__process p,
    .rma-simple-contact__license p,

    .rma-simple-contact__field label,
    .rma-simple-contact__choice-title,

    .rma-simple-contact__choices label > span,

    .rma-simple-contact__consent
    > span:last-child {

        font-size: 0.9rem !important;

        line-height: 1.55 !important;

    }


    /* -----------------------------------------------------
       LABELS / EYEBROWS / MICROTEXT
       ----------------------------------------------------- */

    .rma-contact-hero__eyebrow,
    .rma-contact-hero__credentials span,
    .rma-contact-hero__summary-top small,
    .rma-contact-hero__contact-strip small,

    .rma-simple-contact__eyebrow,
    .rma-simple-contact__direct small,
    .rma-simple-contact__form-header > span,
    .rma-simple-contact__group legend small,
    .rma-simple-contact__field label small,
    .rma-simple-contact__legal,
    .rma-simple-contact__security p {

        font-size: 0.76rem !important;

        line-height: 1.4 !important;

    }


    /* -----------------------------------------------------
       BUTTONS
       ----------------------------------------------------- */

    .rma-contact-hero__button,
    .rma-simple-contact__submit {

        font-size: 0.82rem !important;

        line-height: 1.3 !important;

    }


    /* -----------------------------------------------------
       FORM CONTROLS
       Keep at 16px on phones.
       ----------------------------------------------------- */

    .rma-simple-contact input,
    .rma-simple-contact select,
    .rma-simple-contact textarea {

        font-size: 1rem !important;

    }


    .rma-simple-contact input::placeholder,
    .rma-simple-contact textarea::placeholder {

        font-size: 0.94rem !important;

    }

}


/* =========================================================
   SMALL MOBILE — 320px TO 480px
   ========================================================= */

@media (max-width: 480px) {

    /*
     * Original CSS reduces hero eyebrow to 0.50rem.
     * Override it again because this block comes last.
     */

    .rma-contact-hero__eyebrow {
        font-size: 0.76rem !important;

        letter-spacing: 0.1em;
    }


    /*
     * Credentials remain readable.
     */

    .rma-contact-hero__credentials span {
        font-size: 0.72rem !important;
    }


    /*
     * Hero body never below 16px.
     */

    .rma-contact-hero__description {
        font-size: 1rem !important;

        line-height: 1.68 !important;
    }


    /*
     * Summary supporting copy.
     */

    .rma-contact-hero__summary-options small,
    .rma-contact-hero__summary-footer small {

        font-size: 0.88rem !important;

    }


    /*
     * Contact strip labels.
     */

    .rma-contact-hero__contact-strip small {
        font-size: 0.74rem !important;
    }


    /*
     * Phone / email values.
     */

    .rma-contact-hero__contact-strip a,
    .rma-contact-hero__contact-strip strong {

        font-size: 1rem !important;

    }


    /*
     * Labels inside the form.
     */

    .rma-simple-contact__field label,
    .rma-simple-contact__choice-title {

        font-size: 0.9rem !important;

    }


    /*
     * Radio options.
     */

    .rma-simple-contact__choices label > span {

        min-height: 52px;

        font-size: 0.9rem !important;

    }


    /*
     * Consent.
     */

    .rma-simple-contact__consent
    > span:last-child {

        font-size: 0.9rem !important;

    }


    /*
     * Legal/security text should still be smaller,
     * but not illegible.
     */

    .rma-simple-contact__legal,
    .rma-simple-contact__security p {

        font-size: 0.78rem !important;

        line-height: 1.55 !important;

    }


    /*
     * Form controls remain 16px.
     */

    .rma-simple-contact input,
    .rma-simple-contact select,
    .rma-simple-contact textarea {

        font-size: 1rem !important;

    }


    /*
     * Submit button.
     */

    .rma-simple-contact__submit {

        min-height: 55px;

        font-size: 0.82rem !important;

    }

}













































/* =========================================================
   ESCRITORIO MEDIANO
   ========================================================= */

@media (max-width: 1240px) {
    :root {
        --rma-contact-nav-height: 70px;
        --rma-contact-nav-top: 12px;
        --rma-contact-nav-gap: 25px;
    }

    .rma-contact-hero {
        min-height: 650px;
    }

    .rma-contact-hero__container {
        grid-template-columns:
            minmax(0, 1.1fr)
            minmax(330px, 0.58fr);

        column-gap: 38px;
    }

    .rma-contact-hero h1 {
        font-size: clamp(3.2rem, 5vw, 4.65rem);
    }

    .rma-contact-hero__summary {
        max-width: 400px;
    }
}


/* =========================================================
   LAPTOP Y TABLET HORIZONTAL
   ========================================================= */

@media (max-width: 1024px) {
     .rma-consultation__container {
        grid-template-columns:
            minmax(300px, 0.37fr)
            minmax(0, 0.63fr);

        gap: 25px;
    }

    .rma-consultation__information,
    .rma-consultation__form-panel {
        padding:
            31px;
    }

    .rma-consultation__choice-grid {
        grid-template-columns: 1fr;
    }
    :root {
        --rma-contact-nav-height: 68px;
        --rma-contact-nav-top: 10px;
        --rma-contact-nav-gap: 24px;
    }

    .rma-contact-hero {
        min-height: 680px;
    }

    .rma-contact-hero__container {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(295px, 0.52fr);

        column-gap: 28px;
    }

    .rma-contact-hero h1 {
        font-size: clamp(3rem, 5.7vw, 4.2rem);
    }

    .rma-contact-hero__summary {
        padding: 21px;
    }

    .rma-contact-hero__summary-options {
        grid-template-columns: 1fr;
    }

    .rma-contact-hero__contact-strip {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .rma-contact-hero__contact-strip article:last-child {
        grid-column: 1 / -1;
    }
}


/* =========================================================
   TABLET VERTICAL
   ========================================================= */

@media (max-width: 820px) {
     .rma-consultation__container {
        grid-template-columns: 1fr;
    }

    .rma-consultation__information {
        position: relative;
        top: auto;

        order: 2;
    }

    .rma-consultation__form-panel {
        order: 1;
    }

    .rma-consultation__choice-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

    .rma-consultation__benefits {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

    .rma-consultation__benefits article {
        grid-template-columns: 1fr;
    }
    :root {
        --rma-contact-nav-height: 66px;
        --rma-contact-nav-top: 10px;
        --rma-contact-nav-gap: 24px;
    }

    .rma-contact-hero {
        min-height: 0;

        padding-bottom: 28px;
    }

    .rma-contact-hero__container {
        grid-template-columns: minmax(0, 1fr);

        grid-template-areas:
            "content"
            "summary"
            "strip";

        align-items: stretch;

        row-gap: 22px;
    }

    .rma-contact-hero__content {
        max-width: 720px;
    }

    .rma-contact-hero__summary {
        width: 100%;
        max-width: none;

        justify-self: stretch;
    }

    .rma-contact-hero__summary-options {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .rma-contact-hero__contact-strip {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .rma-contact-hero__contact-strip article:last-child {
        grid-column: 1 / -1;
    }
}


/* =========================================================
   MÓVIL
   ========================================================= */

@media (max-width: 680px) {
        .rma-consultation {
        padding:
            70px 0;

        scroll-margin-top:
            calc(
                var(--rma-header-height-mobile, 74px)
                + 16px
            );
    }

    .rma-consultation__form-panel,
    .rma-consultation__information {
        padding:
            25px 19px;

        border-radius: 28px;
    }

    .rma-consultation__form-header {
        display: grid;
        gap: 13px;
    }

    .rma-consultation__estimated-time {
        justify-self: start;
    }

    .rma-consultation__progress-labels small {
        display: none;
    }

    .rma-consultation__field-grid,
    .rma-consultation__service-grid {
        grid-template-columns: 1fr;
    }

    .rma-consultation__field--full,
    .rma-consultation__service-option--full {
        grid-column: auto;
    }

    .rma-consultation__choice-grid {
        grid-template-columns: 1fr;
    }

    .rma-consultation__step-footer {
        display: grid;

        grid-template-columns: 1fr;
    }

    .rma-consultation__step-footer > p {
        max-width: none;
    }

    .rma-consultation__next,
    .rma-consultation__submit,
    .rma-consultation__back {
        width: 100%;
    }

    .rma-consultation__back {
        order: 2;
    }

    .rma-consultation__submit {
        order: 1;
    }

    .rma-consultation__benefits {
        grid-template-columns: 1fr;
    }

    .rma-consultation__benefits article {
        grid-template-columns:
            auto minmax(0, 1fr);
    }
    :root {
        --rma-contact-nav-height: 64px;
        --rma-contact-nav-top: 8px;
        --rma-contact-nav-gap: 22px;
    }

    .rma-contact-hero {
        min-height: 0;

        padding-top:
            calc(
                var(--rma-contact-nav-top)
                + var(--rma-contact-nav-height)
                + var(--rma-contact-nav-gap)
            );

        padding-bottom: 23px;
    }

    .rma-contact-hero__container {
        width:
            calc(
                100%
                - clamp(30px, 8vw, 44px)
            );

        row-gap: 19px;
    }

    .rma-contact-hero__eyebrow {
        gap: 9px;

        margin-bottom: 11px;

        font-size: 0.54rem;
    }

    .rma-contact-hero__eyebrow i {
        width: 25px;

        flex-basis: 25px;
    }

    .rma-contact-hero__credentials {
        margin-bottom: 13px;
    }

    .rma-contact-hero h1 {
        margin-bottom: 15px;

        font-size: clamp(2.75rem, 11.7vw, 4rem);
        line-height: 0.91;
    }

    .rma-contact-hero__description {
        margin-bottom: 19px;

        font-size: 0.78rem;
        line-height: 1.6;
    }

    .rma-contact-hero__summary {
        padding: 22px;

        border-radius: 26px;
    }

    .rma-contact-hero__contact-strip {
        grid-template-columns: 1fr;
    }

    .rma-contact-hero__contact-strip article:last-child {
        grid-column: auto;
    }
}


/* =========================================================
   MÓVIL PEQUEÑO
   ========================================================= */

@media (max-width: 480px) {
    .rma-consultation__progress-labels strong {
        font-size: 0.88rem;
    }

    .rma-consultation__progress-labels > div > span {
        width: 31px;
        height: 31px;
    }

    .rma-consultation__information-header h2 {
        font-size:
            clamp(2.35rem, 11vw, 3.25rem);
    }

    .rma-consultation__service-option label {
        min-height: 76px;
    }
    :root {
        --rma-contact-nav-height: 62px;
        --rma-contact-nav-top: 8px;
        --rma-contact-nav-gap: 20px;
    }

    .rma-contact-hero__container {
        width: calc(100% - 30px);
    }

    .rma-contact-hero__eyebrow {
        font-size: 0.5rem;
        letter-spacing: 0.11em;
    }

    .rma-contact-hero__eyebrow > span {
        width: 29px;
        height: 29px;

        flex-basis: 29px;
    }

    .rma-contact-hero__eyebrow i {
        width: 20px;

        flex-basis: 20px;
    }

    .rma-contact-hero__credentials span:nth-child(2),
    .rma-contact-hero__credentials span:nth-child(3) {
        display: none;
    }

    .rma-contact-hero h1 {
        font-size: clamp(2.45rem, 12.2vw, 3.3rem);
    }

    .rma-contact-hero__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .rma-contact-hero__button {
        width: 100%;
    }

    .rma-contact-hero__summary-options {
        grid-template-columns: 1fr;
    }

    .rma-contact-hero__summary-top {
        align-items: start;
    }

    .rma-contact-hero__contact-strip article {
        min-height: 60px;
    }
}


/* =========================================================
   PANTALLAS DE POCA ALTURA
   El hero crece verticalmente en lugar de superponer piezas.
   ========================================================= */

@media (max-height: 700px) and (min-width: 821px) {
    .rma-contact-hero {
        min-height: 650px;
    }

    .rma-contact-hero__container {
        row-gap: 18px;
    }

    .rma-contact-hero__credentials {
        margin-bottom: 11px;
    }

    .rma-contact-hero h1 {
        margin-bottom: 13px;

        font-size: clamp(3rem, 4.5vw, 4.35rem);
    }

    .rma-contact-hero__description {
        margin-bottom: 16px;

        line-height: 1.55;
    }

    .rma-contact-hero__summary {
        padding: 20px;
    }

    .rma-contact-hero__summary-top {
        margin-bottom: 13px;
    }

    .rma-contact-hero__summary-options {
        margin-bottom: 13px;
    }

    .rma-contact-hero__contact-strip article {
        min-height: 58px;
    }
}


/* =========================================================
   INTERACCIÓN TÁCTIL
   ========================================================= */

@media (hover: none) {
      .rma-consultation__service-option label:hover,
    .rma-consultation__next:hover,
    .rma-consultation__submit:hover,
    .rma-consultation__back:hover {
        transform: none;
    }
    .rma-contact-hero__button:hover {
        transform: none;
    }

    .rma-contact-hero__button:hover svg {
        transform: none;
    }
}


/* =========================================================
   MOVIMIENTO REDUCIDO
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
      .rma-consultation__progress-track span,
    .rma-consultation__progress-labels > div,
    .rma-consultation__choice label,
    .rma-consultation__service-option label,
    .rma-consultation__next,
    .rma-consultation__submit,
    .rma-consultation__back,
    .rma-consultation__next svg,
    .rma-consultation__submit svg,
    .rma-consultation__back svg {
        transition: none;
        transform: none;
    }
    .rma-contact-hero__button,
    .rma-contact-hero__button svg {
        transition: none;
        transform: none;
    }
}