/* ========================= */
/* FUENTES */
/* ========================= */

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=Special+Elite&display=swap');

/* ========================= */
/* BODY */
/* ========================= */

body{

    margin:0;

    padding:40px 20px;

    min-height:100vh;

    background:
    linear-gradient(
    rgba(60,40,20,.45),
    rgba(40,20,10,.55)),
    url("img/Steam Punk.png");

    background-size:cover;

    background-position:center;

    background-attachment:fixed;

    font-family:'Special Elite', cursive;

    color:#4a2d16;

    overflow-x:hidden;
}

/* ========================= */
/* MEMO PRINCIPAL */
/* ========================= */

.memo{

    max-width:900px;

    margin:auto;

    background:
    linear-gradient(
    rgba(245,232,190,.72),
    rgba(214,188,140,.68));

    backdrop-filter:blur(2px);

    border:6px solid #8b5a2b;

    padding:50px;

    position:relative;

    overflow:hidden;

    transform:rotate(-1deg);

    box-shadow:
    0 0 40px rgba(0,0,0,.55),
    inset 0 0 50px rgba(120,80,40,.25);

    clip-path: polygon(
    0% 3%,
    2% 0%,
    98% 1%,
    100% 5%,
    99% 96%,
    96% 100%,
    4% 99%,
    0% 95%
    );
}

/* ========================= */
/* TEXTURA PAPEL */
/* ========================= */

.memo::before{

    content:"";

    position:absolute;

    inset:0;

    background:

    repeating-linear-gradient(
    transparent,
    transparent 2px,
    rgba(120,80,40,.03) 3px
    ),

    radial-gradient(
    circle at top left,
    rgba(120,70,30,.18),
    transparent 30%
    ),

    radial-gradient(
    circle at bottom right,
    rgba(80,40,10,.15),
    transparent 25%
    );

    opacity:.8;

    pointer-events:none;
}

/* ========================= */
/* DESGASTE */
/* ========================= */

.memo::after{

    content:"";

    position:absolute;

    inset:0;

    background:

    radial-gradient(circle at top left,
    rgba(80,40,10,.25),
    transparent 18%),

    radial-gradient(circle at top right,
    rgba(80,40,10,.2),
    transparent 15%),

    radial-gradient(circle at bottom left,
    rgba(80,40,10,.2),
    transparent 18%),

    radial-gradient(circle at bottom right,
    rgba(80,40,10,.25),
    transparent 20%);

    mix-blend-mode:multiply;

    pointer-events:none;
}

/* ========================= */
/* CLAVO */
/* ========================= */

.clavo{

    width:22px;

    height:22px;

    background:#8b8b8b;

    border-radius:50%;

    position:absolute;

    top:12px;

    left:50%;

    transform:translateX(-50%);

    box-shadow:
    inset -2px -2px 5px rgba(0,0,0,.4),
    0 2px 5px rgba(0,0,0,.5);

    z-index:5;
}

/* ========================= */
/* TITULO */
/* ========================= */

.titulo{

    text-align:center;

    font-size:3rem;

    margin-bottom:10px;

    color:#5a2d0c;

    text-shadow:
    2px 2px 0px rgba(0,0,0,.15);

    font-family:'Cinzel', serif;

    letter-spacing:2px;
}

.subtitulo{

    text-align:center;

    margin-bottom:40px;

    font-size:1.1rem;

    color:#6b4226;
}

/* ========================= */
/* SECCIONES */
/* ========================= */

.section{

    margin-bottom:35px;
}

.section h2{

    font-size:1.5rem;

    margin-bottom:18px;

    padding-bottom:10px;

    border-bottom:3px dashed #8b5a2b;

    color:#5c3312;

    font-family:'Cinzel', serif;
}

/* ========================= */
/* BLOQUES INFO */
/* ========================= */

.info{

    background:
    rgba(255,248,220,.35);

    border:2px solid rgba(120,70,30,.35);

    padding:20px;

    line-height:1.8;

    border-radius:5px;

    box-shadow:
    inset 0 0 10px rgba(0,0,0,.08);
}

/* ========================= */
/* LISTA */
/* ========================= */

.lista{

    list-style:none;

    padding:0;
}

.lista li{

    margin-bottom:12px;

    padding-left:15px;

    position:relative;
}

.lista li::before{

    content:"✦";

    position:absolute;

    left:0;

    color:#7a3e12;
}

/* ========================= */
/* FIRMA */
/* ========================= */

.firma{

    text-align:right;

    margin-top:50px;

    font-size:1.2rem;

    color:#5a3417;

    font-family:'Cinzel', serif;
}

/* ========================= */
/* BOTON CERRAR */
/* ========================= */

.btn-cerrar{

    position:fixed;

    right:20px;

    bottom:20px;

    background:
    linear-gradient(
    to bottom,
    #e8d2a8,
    #c9a46b);

    border:4px solid #6e4421;

    color:#4a2d16;

    text-decoration:none;

    padding:14px 24px;

    font-size:1rem;

    font-family:'Cinzel', serif;

    font-weight:bold;

    border-radius:10px;

    box-shadow:
    0 0 15px rgba(0,0,0,.35);

    transition:.3s;

    z-index:999;
}

.btn-cerrar:hover{

    transform:scale(1.08);

    background:
    linear-gradient(
    to bottom,
    #f5dfb4,
    #d4ae73);

    box-shadow:
    0 0 20px rgba(90,50,20,.5);
}

/* ========================= */
/* RESPONSIVE */
/* ========================= */

@media(max-width:768px){

    body{

        padding:20px 10px;
    }

    .memo{

        padding:30px 20px;
    }

    .titulo{

        font-size:2rem;
    }

    .subtitulo{

        font-size:.95rem;
    }

    .section h2{

        font-size:1.2rem;
    }

    .btn-cerrar{

        padding:12px 18px;

        font-size:.9rem;
    }

}