:root {
  --fondo-arena: #FFFAF0; /* Otra opción #FFF5EE */
  --azul-principal: #80BBBF;
  --azul-letra: #00353F;
  --azul-letra-claro: #004A59;
  --azul-letra-menos-claro: #004350;
  --azul-boton: #005F73;
  --azul-mouse-en-letra: #005F73; 
  --azul-mouse-en-boton: #0A9396;
  --blanco-transparente-al-45: #FFFFFF99;
  --blanco-transparente-al-30: #FFFFFFBB;
  --blanco-transparente-al-20: #FFFFFFCC;
  --blanco-transparente-al-15: #FFFFFFDD;
  --ancho-maximo-contenido: 1140px;
  --azul-secundario: #76B4E0;
  --verde-secundario: #80B3A4;
}

@font-face {
    font-family: 'SeanSlab';
    src: url('/fonts/seanslab-bold.woff2') format('woff2');
    font-style: normal;
    font-display: swap;
}


@font-face {
    font-family: 'Amiri';
    src: url('/fonts/amiri-bold.woff') format('woff');
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'Ubuntu';
    src: url('/fonts/ubuntu-bold.woff2') format('woff2');
    font-style: normal;
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'Ubuntu';
    src: url('/fonts/ubuntu.woff2') format('woff2');
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: 'Carlito';
    src: url('/fonts/carlito-bold.woff2') format('woff2');
    font-style: normal;
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'Carlito';
    src: url('/fonts/carlito.woff2') format('woff2');
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

body {
    background-color: var(--fondo-arena); 
    margin: 0px;
    padding: 0px;
}

html {
    scroll-behavior: smooth; /* Para que los menús vayan suavemente al contenido. */
}

h1 {
    font-size: 3rem;
    font-family: Amiri, serif;
    color: var(--azul-boton);
    text-align: center;
    margin-bottom: -1rem;
}

h1:focus,
h1:focus-visible {
    outline: none;
}


a {
    transition: color 0.5s ease, color 0.5s ease;
    color: var(--azul-boton);
}

a:hover {
    color: var(--azul-principal);
}


h2 {
    font-size: 3rem;
    font-family: Amiri, serif;
    color: var(--azul-letra);
    line-height: 1;
}

p, li {
    font-family: Carlito, Calibri, sans-serif;
    font-size: 1.5rem;
}

.menu-sanduche {
    display: none;
}

.contenido {
    margin-top: 70px;
}

.anchoprincipal {
    max-width: var(--ancho-maximo-contenido);  
    margin: 0px auto; /* Centra horizontalmente. */
}

.menu {
    display: flex;
    background-color: var(--azul-principal);
    height: 95px;
    align-items: center;
    padding-top: 7px;
    padding-bottom: 7px;
    width: 100%;
    box-sizing: border-box;
    position: fixed;
    z-index: 3;
    top: 0px;
}

.menu-interno {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between; /* Esto separa izquierda y derecha. */
}

.menu-items {
    display: flex;
    gap: 3rem; /* Espacio entre cada enlace. */
}

.item-menu {
    font-family: Ubuntu, sans-serif;
    color: white;
    text-decoration: none; /* Sin subrayado. */
    font-size: 1.4rem;
    transition: color 0.3s ease;
}

.item-menu:hover {
    color: var(--azul-mouse-en-letra);
    transition: color 0.5s ease, color 0.5s ease;
}

.logo {
    height: 65px;
}

.item-menu.agenda {
    background-color: var(--azul-boton);
    color: white;
    padding: 1.3rem 1.5rem;
    border-radius: 1rem;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.item-menu.agenda:hover {
    background-color: var(--azul-mouse-en-boton);
}

.video-fondo {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100vh;
    object-fit: cover;
    z-index: -1;
    pointer-events: none; /* Para evitar que el video intercepte clics. */
    background-color: black; /* Previene destellos blancos antes de cargar. */
}

.video-fondo img,
.imagen-fondo {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tarjeta-presentacion {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: center; /* Centra horizontalmente */
    align-items: flex-start; /* Alinea arriba */
    padding-top: 70px; /* Margen superior */
    box-sizing: border-box;
    z-index: 1;
    padding-bottom: max(9rem, calc(100vh - 700px));
}

.tarjeta {
    background-color: rgba(48, 54, 54, 0.35);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
    border-radius: 15px;
    padding: 2rem;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 60vh; 
    width: 80%;
}

.tarjeta h1 { /* Ashley Rios */
    margin-top: 0rem;
    font-size: 3.5rem;
    margin-bottom: -2rem;
    font-family: Amiri, serif;
    color: var(--azul-letra-menos-claro);
    outline: none; /* Para que no seleccione el título con un rectángulo azul al cargar la página. */
}

.tarjeta h2 { /* Psicóloga Clínica */
    font-size: 2.3rem;
    margin-bottom: 0rem;
    font-family:  Amiri, serif;
    color: var(--azul-letra-menos-claro);
}

.tarjeta h3 { /* Acompañandote hacia el equilibrio. */
    font-size: 1.7rem;
    margin-bottom: 0.3rem;
    font-family: Carlito, Calibri, sans-serif;
    color: var(--blanco-transparente-al-30);
    font-weight: bold;
}

.tarjeta p, .tarjeta a { /* Teléfono y tipo de atención. */
    font-size: 1.7rem;
    margin-bottom: 0px;
    color: var(--blanco-transparente-al-30);
    font-weight: bold;
}



.tarjeta p {
    font-family: Carlito, Calibri, sans-serif;
}

.tarjeta a {
    font-family: Ubuntu, Carlito, Calibri, sans-serif;
    font-size: 1.5rem;
    transition: color 0.5s ease, color 0.5s ease;
}

.tarjeta a .logo-whatsapp {
    transition: color 0.5s ease, color 0.5s ease;
}

.tarjeta a:hover, .tarjeta a:hover .logo-whatsapp {
    color: var(--azul-letra-menos-claro);
}

.logo-whatsapp {
    vertical-align: middle;
    height: 1.8rem;
    margin-right: 0.3rem;
    position: relative; 
    top: -0.07rem;
    color: var(--blanco-transparente-al-30); /* l fill usará este color gracias a currentColor */
}

.seccion-colorida {
    background-color: var(--verde-secundario);
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 auto;
    border-radius: 1rem;
    height: 500px;
    margin-left: 5rem;
    margin-bottom: 5rem;
}

.colorida-azul {
    background-color: var(--azul-secundario);
    margin-left: 0rem;
    margin-right: 5rem;
    flex-direction: row-reverse;
}

.como-te-ayudo .foto {
    margin-right: -82px;
}


.seccion-colorida .foto {
    max-width: 350px;
    border-radius: 1rem;
    box-shadow: 0.5rem 0.5rem 10px rgba(0, 0, 0, 0.2);
    position: relative; 
    z-index: 1;
}

.sobre-mi .video-ashley {
    max-width: 360px;
    border-radius: 1rem;
    box-shadow: 0.5rem 0.5rem 10px rgba(0, 0, 0, 0.2);
    margin-left: -5rem; 
    position: relative; 
    z-index: 1;
}

.seccion-colorida {
    box-shadow: -0.5rem 0.5rem 10px rgba(0, 0, 0, 0.2);
}

.psicoterapia .foto {
    max-width: 478px;
    margin-left: -80px;
}

.perros .foto {
    margin-right: -80px;
}

.enfoque .foto {
    max-width: 350px;
    margin-left: -80px;
}

.seccion-colorida .texto a {
    color: white;
    transition: color 0.5s ease, color 0.5s ease;
}

.seccion-colorida .texto a:hover {
    color: var(--azul-letra-claro);
}

.seccion-colorida .texto {
    flex: 1;
    color: white;
    line-height: 1.6;
    margin-right: 3rem;
    margin-left: 2rem;
}

.colorida-azul .texto {
    margin-left: 3rem;
}

.seccion-colorida ul {
    margin-top: -1rem;
}

.seccion-colorida .texto h2 {
    margin-bottom: 0rem;
}

.pie {
    text-align: center;
}

.whatsapp-float {
  position: fixed;
  width: 50px;
  height: 50px;
  bottom: 15px;
  right: 15px;
  background-color: #25d366;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3);
  z-index: 1000;
}

.whatsapp-icon {
  width: 35px;
  height: 35px;
}


.pag h1 {
    line-height: 1.1;
    margin-bottom: 1rem;
}

.pag {
    margin-top: 140px;
    margin-bottom: 100px;
    max-width: 600px;
    margin-right: auto;
    margin-left: auto;
}

.como-te-ayudo .foto {
    max-width: 550px;
}


/* Pie de página */

.footer-barriga {
    position: relative;
    margin-top: 80px;                 /* espacio con la sección anterior */
    background-color: var(--azul-principal);        /* color de fondo del footer */
    color: #fff;
    overflow: visible;                /* dejamos que la imagen se salga hacia arriba */
}

/* La barriga hecha con la imagen */
.footer-barriga::before {
    content: "";
    position: absolute;
    left: 0%;
    top: 0px;                      /* AJUSTA este valor si quieres la curva más arriba/abajo */
    transform: translateY(0%);
    width: 100%;                      /* un poco más ancha que la pantalla */
    height: 150px;                    /* altura real de la imagen */
    background-image: url("/img/barriga-escritorio-transparente.png"); /* <-- ruta a tu imagen */
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100% 100%;       /* estira la imagen al ancho */
    pointer-events: none;             /* para que no bloquee clics */
    z-index: 1;
}

/* Contenido del footer por encima de la imagen */
.footer-container {
    position: relative;
    z-index: 2;
    max-width: 960px;
    margin: 0 auto;
    padding: 150px 20px 60px;         /* top grande para que el texto quede dentro de la barriga */
}

.footer-columns {
    display: flex;
    justify-content: center;
    gap: 80px;
}

.footer-column h2 {
    margin-bottom: 16px;
    font-weight: 700;
}

.footer-column p,
.footer-column li {
    margin: 4px 0;
}

.footer-column ul {
    list-style: none;
    padding: 0;
    margin: 0;
}


/* redes sociales */
.footer-social {
    margin-top: 40px;
    display: flex;
    justify-content: center;
    gap: 32px;
    font-size: 24px;
}



footer h2 {
    font-size: 2rem;
}

footer a {
    color: white;
    text-decoration: none;
}

footer a:hover {
    color: var(--azul-letra-claro);
}

footer p, footer li {
    font-size: 1.3rem;
}


.footer-column ul li {
    margin-bottom: 0.6rem;  /* separa cada <li> hacia abajo */
}


a .logo-tiktok, a .logo-instagram {
        transition: color 0.5s ease, color 0.5s ease;
}

.logo-tiktok, .logo-instagram {
    vertical-align: middle;
    height: 3rem;
    margin-right: 0rem;
    position: relative; 
    top: 0rem;
    color: var(--blanco-transparente-al-30); /* l fill usará este color gracias a currentColor */
}


a:hover .logo-tiktok, a:hover .logo-instagram {
    color: var(--azul-letra-claro);
}


#ancla-conoceme, #ancla-servicios, #ancla-como-te-ayudo {
    scroll-margin-top: 150px; 
}