/* =========================
   RESET Y BASE (CRÍTICO)
========================= */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html, body {
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    font-family: 'Itim', cursive;
}

/* =========================
   FONDO GENERAL
========================= */

body {
    background-color: #ffeef8;
    background-image:
        radial-gradient(#c89069 3px, transparent 2px),
        radial-gradient(#c89069 3px, transparent 2px);
    background-size: 30px 30px;
    background-position: 0 0, 15px 15px;
}

/* =========================
   PAGE
========================= */

#page {
    width: 100%;
    display: flex;
    justify-content: center;
}

/* =========================
   Cuadro Principal
========================= */

#main-container {
    position: relative; /* ANCLA DE LAS DECOS */
    width: calc(100% - 40px);
    max-width: 800px;

    margin: 40px auto;
    padding: 20px;

    background-color: white;
    border: 5px solid #a67c5f;
    border-radius: 25px;
    box-shadow: 6px 6px 0 #a67c5f;

    overflow: visible; /* Pa que los stickers queden encima */
}

/* =========================
   Decoraciones (Metidas dentro del div de main-container)
========================= */

#decorations {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 2;
}

.stickeroso {
    position: absolute;
    top: -35px;
    left: -55px;

    width: clamp(80px, 18vw, 120px);
    transform: rotate(-25deg);
}

.stickerlazo {
    position: absolute;
    bottom: -60px;
    right: -55px;

    width: clamp(80px, 18vw, 130px);
    transform: rotate(23deg);
}

/* =========================
   Navbar pro
========================= */

h1, h2 {
    text-align: center;
}

nav {
    background: #fff0f5;
    padding: 10px;
    border-radius: 15px;
    text-align: center;
    margin-bottom: 20px;
}

nav a {
    text-decoration: none;
    color: #ff5c8a;
    font-weight: bold;
    margin: 0 10px;
}

nav a:hover {
    color: #ffacc5;
    text-shadow: 2px 2px #fff;
}

/* =========================
   Contenido pro
========================= */

.content-box {
    margin-bottom: 30px;
    border-bottom: 2px dashed #ffd1dc;
    padding-bottom: 20px;
}

.center {
    text-align: center;
}

/* =========================
   Foto de perfil de chiwawita
========================= */

img {
    max-width: 100%;
    height: auto;
}

.profile-pic {
    width: 200px;
    aspect-ratio: 1 / 1;
    object-fit: cover;

    border-radius: 50%;
    border: 5px solid #ffc1d6;

    max-width: 60vw;
    margin-bottom: 15px;
}

.profile-center {
    display: flex;
    flex-direction: column;
    align-items: center;   /* 🔑 centra imagen */
    justify-content: center;
    gap: 15px;
    text-align: center;
}
/* =========================
   Vista Movil
========================= */

@media (max-width: 600px) {

    .stickeroso {
        top: -15px;
        left: -15px;
        width: 100px;
    }

    .stickerlazo {
        bottom: -25px;
        right: -15px;
        width: 100px;
    }
}

/* =========================
   Vista monitores verticales
========================= */

@media (max-aspect-ratio: 3/4) {

    .stickeroso {
        top: -20px;
        left: -20px;
    }

    .stickerlazo {
        bottom: -30px;
        right: -20px;
    }
}

/* =========================
   Pag sobre-mi.html
========================= */

.about {
    display: flex;
    flex-direction: column;
    gap: 25px;
    align-items: center;
    text-align: center;
}

.about-text {
    max-width: 600px;
}

.about-text p {
    margin-bottom: 15px;
    line-height: 1.6;
}

/* Desktop */
@media (min-width: 900px) {
    .about {
        flex-direction: row;
        align-items: center;
        text-align: left;
    }
}
