/* ==========================================================================
   Markad Publicidad Estudio — Sistema tipográfico
   ========================================================================== */


/* --------------------------------------------------------------------------
   Documento y cuerpo
   -------------------------------------------------------------------------- */

html {
    font-family: var(--mk-font-body);
    font-size: 100%;
    font-weight: 400;
    line-height: 1.5;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body,
button,
input,
select,
textarea {
    font-family: var(--mk-font-body);
}

body {
    color: var(--mk-text-primary);
    font-size: 1.04375rem;
    font-weight: 400;
    line-height: 1.65;
}


/* --------------------------------------------------------------------------
   Títulos globales
   -------------------------------------------------------------------------- */

h1,
h2,
h3,
h4,
h5,
h6,
.mk-heading {
    margin-top: 0;
    color: inherit;
    font-family: var(--mk-font-heading);
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.025em;
    text-wrap: balance;
}

h1 {
    font-size: clamp(
        2.75rem,
        5.5vw,
        5.75rem
    );
}

h2 {
    font-size: clamp(
        2.25rem,
        4vw,
        4.25rem
    );
}

h3 {
    font-size: clamp(
        1.6rem,
        2.4vw,
        2.5rem
    );
}

h4 {
    font-size: clamp(
        1.3rem,
        1.8vw,
        1.75rem
    );
}

h5 {
    font-size: 1.2rem;
}

h6 {
    font-size: 1rem;
}


/* --------------------------------------------------------------------------
   Título principal tipo hero
   -------------------------------------------------------------------------- */

.mk-display {
    margin: 0;
    font-family: var(--mk-font-heading);
    font-size: clamp(
        3rem,
        6vw,
        6.5rem
    );
    font-weight: 300;
    line-height: 0.98;
    letter-spacing: -0.045em;
    text-wrap: balance;
}

.mk-display strong,
.mk-display b {
    font-weight: 900;
}


/* --------------------------------------------------------------------------
   Título en dos niveles
   -------------------------------------------------------------------------- */

.mk-title-split {
    display: block;
    font-weight: 300;
}

.mk-title-split strong {
    display: block;
    font-weight: 900;
}


/* --------------------------------------------------------------------------
   Textos generales
   -------------------------------------------------------------------------- */

p {
    margin-top: 0;
    margin-bottom: 1.5rem;
}

p:last-child {
    margin-bottom: 0;
}

.mk-lead {
    max-width: 720px;
    font-size: clamp(
        1.1rem,
        1.6vw,
        1.35rem
    );
    font-weight: 400;
    line-height: 1.7;
}

.mk-text-small {
    font-size: 0.875rem;
    line-height: 1.6;
}

.mk-text-muted {
    color: var(--mk-text-muted);
}


/* --------------------------------------------------------------------------
   Etiqueta superior
   -------------------------------------------------------------------------- */

.mk-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
    color: var(--mk-magenta-500);
    font-family: var(--mk-font-body);
    font-size: 0.75rem;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 0.24em;
    text-transform: uppercase;
}

.mk-eyebrow::before {
    width: 32px;
    height: 2px;
    background: currentColor;
    content: '';
}


/* --------------------------------------------------------------------------
   Texto con degradado
   -------------------------------------------------------------------------- */

.mk-gradient-text {
    color: var(--mk-magenta-500);
}

@supports (
    -webkit-background-clip: text
) {

    .mk-gradient-text {
        background: var(--mk-gradient-brand);
        background-clip: text;
        color: transparent;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

}


/* --------------------------------------------------------------------------
   Enlaces
   -------------------------------------------------------------------------- */

a {
    color: inherit;
    text-decoration: none;
}

a:not([class]) {
    color: var(--mk-magenta-700);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
    transition:
        color var(--mk-transition-fast);
}

a:not([class]):hover {
    color: var(--mk-indigo-700);
}


/* --------------------------------------------------------------------------
   Elementos de formulario
   -------------------------------------------------------------------------- */

button,
input,
select,
textarea {
    font-size: 1rem;
    line-height: 1.4;
}

button {
    font-weight: 700;
}


/* --------------------------------------------------------------------------
   Selección de texto
   -------------------------------------------------------------------------- */

::selection {
    background: var(--mk-magenta-600);
    color: var(--mk-white);
}


/* --------------------------------------------------------------------------
   Versión móvil
   -------------------------------------------------------------------------- */

@media (max-width: 767px) {

    body {
        font-size: 0.975rem;
    }

    h1 {
        font-size: clamp(
            2.5rem,
            12vw,
            4rem
        );
    }

    h2 {
        font-size: clamp(
            2rem,
            9vw,
            3rem
        );
    }

    .mk-display {
        font-size: clamp(
            2.75rem,
            13vw,
            4.5rem
        );
        line-height: 1;
    }

    .mk-lead {
        font-size: 1.05rem;
        line-height: 1.65;
    }

    .mk-eyebrow {
        font-size: 0.7rem;
        letter-spacing: 0.18em;
    }

}
