     /* --- Fonts--- */
        @font-face {
            font-family: 'Special Elite';
            src: url(fonts/specialelite-regular-webfont.woff) format('woff');
        }
        

        /* --- boxing and basics --- */
        * {
            box-sizing: border-box;
        }

        img {
            max-width: 100%;
            height: auto;
            display: block;
        }

        html,
        body {
            margin: 0;
            padding: 0;
            font-size: 16px;
            min-height: 100vh;
        }

        /* --- background --- */
        body {
            background: linear-gradient(180deg, #f3dcc4 10%, #f6f1e8 40%, #f6f1e8 75%);
            font-family: "Courier Prime", monospace;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 60px 0;
            image-rendering: pixelated;
        }

        /* --- main frames--- */
        .frame {
            position: relative;
            width: 1000px;
            margin: 0 auto;
            background: #f6f1e8;
            border: 8px solid;
            border-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><defs><pattern id="p" patternUnits="userSpaceOnUse" width="8" height="8"><circle cx="2" cy="2" r="1" fill="%23d8cfc2"/><circle cx="6" cy="2" r="1" fill="%23d8cfc2"/><circle cx="2" cy="6" r="1" fill="%23d8cfc2"/><circle cx="6" cy="6" r="1" fill="%23d8cfc2"/></pattern></defs><rect width="16" height="16" fill="%23efe7da" stroke="%23d8cfc2" stroke-width="1"/><rect x="1" y="1" width="14" height="14" fill="none" stroke="%23e3d9cc" stroke-width="1"/></svg>') 8;
            box-shadow: inset 0 0 0 1px #d8cfc2, 0 0 0 16px rgba(239, 231, 218, 0.5);
            padding: 30px;
        }

        /* --- table structure--- */
        table.geocities {
            width: 100%;
            border-collapse: collapse;
            background: transparent;
        }

        /* --- left column --- */
        .leftcol {
            width: 300px;
            vertical-align: top;
            position: relative;
            padding-right: 25px;
            border-right: 1px solid #e3d9cc;
            overflow: hidden;
        }

        .left-art {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            filter: grayscale(35%) contrast(95%) brightness(98%);
        }

        /* --- middle colum --- */
        .midcol {
            width: 500px;
            vertical-align: top;
            padding: 0 25px; /* antes era 25 */
        }

        .content-box {
            margin-bottom: 25px;
            padding-bottom: 20px;
            border-bottom: 1px solid #e6ded2;
        }

        .content-inner {
            font-size: 13px;
            line-height: 1.6;
            color: #3e3832;
        }

        .content-inner h1 {
            font-family: 'Special Elite', cursive;
            font-size: 17px;
            text-align: center;
            margin: 0 0 12px 0;
            border-bottom: 1px solid #d8cfc2;
            padding-bottom: 6px;
            letter-spacing: 1px;
        }

        .sig {
            text-align: right;
            margin-top: 10px;
        }

        .phone {
            position: absolute;
            width: 200px;
            left: -60px;
            top: -50px;
            filter: drop-shadow(0 0 2px rgba(36, 29, 29, 0.8));
        }

        .aboutimg {
            position: absolute;
            width: 200px;
            left: 590px;
            top: 350px;
            filter: drop-shadow(0 0 2px rgba(36, 29, 29, 0.8));
        }


        /* --- right column --- */
        .rightcol {
            width: 180px;
            vertical-align: top;
            padding-left: 25px;
            border-left: 1px solid #e3d9cc;
            font-family: 'Special Elite', monospace;
            font-size: 11px;
            line-height: 1.0;
            letter-spacing: 0.5px;
            color: #7a6f61;
        }

        .rightcol a {
            font-size: 13px;
            font-weight: bold;
            color: #5a4d3f;
        }

        .nav-box {
            margin-bottom: 20px;
        }

        .nav-box small {
            font-style: italic;
            font-size: 10px;
            opacity: 0.7;
            display: block;
            margin-bottom: 6px;
        }

        .nav-link {
            display: block;
            margin: 5px 0;
            font-weight: 400;
            letter-spacing: 0.5px;
            color: #7a6f61;
        }

        .nav-link::before {
            content: "– ";
            opacity: 0.6;
        }


        /* updates img */
            .updatesimg {
            position: absolute;
            width: 200px;
            right: -70px;
            top: 444px;
            filter: drop-shadow(0 0 2px rgba(36, 29, 29, 0.8));
        }
        /* --- update right col box--- */
        .update-box {
            border: 20px solid transparent;
            border-image-source: url("https://snails.town/images/graphics/red-lace.png");
            border-image-slice: 200;
            border-image-repeat: round;
            border-image-outset: 0px;
        }

        .update-box h2 {
            font-family: 'Special Elite', cursive;
            font-size: 13px;
            margin: 8px 0 8px 0;
            text-align: center;
        }

        .update-box ul {
            font-family: "Courier Prime", monospace;
            font-size: 10px;
            line-height: 1.4;
            padding-left: 14px;
            margin: 0;
        }

        /* --- links and selection colors --- */
        a {
            color: #6d5f4d;
            text-decoration: none;
        }

        a:hover {
            opacity: 0.6;
        }

        ::selection {
            color: #ed7c68;
            background-color: #ffdfc4;
        }

        /* --- dark mode settings --- */
html[data-dark] body {
  background: linear-gradient(180deg,
    #1c1b1a 10%,
    #121212 40%,
    #0b0b0b 75%);
}

html[data-dark] .frame {
  background:#111;
  border-color:#444;
  box-shadow:0 0 0 8px #1c1c1c;
}

html[data-dark] .leftcol,
html[data-dark] .rightcol {
  border-color:#333;
}

html[data-dark] .content-box {
  border-color:#333;
}

html[data-dark] .content-inner {
  color:#d6d1c8;
}

html[data-dark] .nav-link,
html[data-dark] .rightcol {
  color:#b8ad9c;
}

html[data-dark] a {
  color:#d6c6a1;
}

html[data-dark] #feed-reader .feed-entry {
  background-image:url("images/blogbg-dark.jpg");
}

html[data-dark] .sitemap-section{
background:url("images/darkmode/sitemaptable3.jpg");
border-color:#555;
}

html[data-dark] .sitemap,
html[data-dark] .sitemap-title{
color:#d6d1c8;
}

html[data-dark] .sitemap a{
color:#d6c6a1;
}

html[data-dark] .sitemap ul::before,
html[data-dark] .sitemap li::before{
background:#555;
}


        /* --- responsive stuff --- */
        @media (max-width:900px) {
        .frame { width: 95%; padding: 20px; }
        table.geocities, tbody, tr { display: block; width: 100%; }
        .leftcol, .midcol, .rightcol {
        display: block; width: 100%; border: none; padding: 0; margin-bottom: 25px;
        }
        .left-art { height: auto; object-fit: contain; position: relative; }
        }

        /* Misc */
        .dark-toggle {
        text-align: center;
        margin-bottom: 6px;
        }

        .dark-toggle button {
        font-family: "Courier Prime", monospace;
        font-size: 11px;
        padding: 2px 6px;
        background: #fff;
        border: 1px solid #000;
        color: #000;
        cursor: pointer;
        }

        .meta { font-size: 10px; margin-top: 15px; opacity: 0.8; }

        /* --- the cool scrollbarn --- */
    ::-webkit-scrollbar {
         width: 16px;
         height: 16px;
         }
         ::-webkit-scrollbar-track {
         background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAIAAAD91JpzAAAAFElEQVQIW2M4fPz0////GYAYyAIASnoKpV3w4kgAAAAASUVORK5CYII=");
         image-rendering: pixelated;
         -webkit-filter: grayscale(100%);
         -moz-filter: grayscale(100%);
         -ms-filter: grayscale(100%);
         -o-filter: grayscale(100%);
         filter: grayscale(100%);
         }
         ::-webkit-scrollbar-track:active {
         background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAIAAAD91JpzAAAAFElEQVQIW2M4fPz0////GYAYyAIASnoKpV3w4kgAAAAASUVORK5CYII=");
         -webkit-filter: grayscale(100%);
         -moz-filter: grayscale(100%);
         -ms-filter: grayscale(100%);
         -o-filter: grayscale(100%);
         filter: grayscale(100%);
         }
         ::-webkit-scrollbar-thumb {
         border-top: 1px solid #cccccc;
         border-left: 1px solid #cccccc;
         border-right: 1px solid black;
         border-bottom: 1px solid black;
         box-shadow: inset 1px 1px 0 0 white, inset -1px -1px 0 0 #868a8e;
         width: 16px;
         height: 16px;
         background-color: #cccccc;
         z-index: 1;
         }
         ::-webkit-scrollbar-corner {
         background-color: #cccccc;
         }
         ::-webkit-resizer {
         width: 16px;
         height: 16px;
         background-color: #cccccc;
         background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAN0lEQVR4Ae3MgQUAMBRDwU5fFF05lb/CARTBw2Ulof0DxPtcwp3hNuEYnjbcEW4TjuFpwx3h9gMWGgZ2Y/PT2gAAAABJRU5ErkJggg==");
         background-position: bottom right;
         background-repeat: no-repeat;
         image-rendering: pixelated;
         }
         ::-webkit-scrollbar-button,
         .scroll::-webkit-scrollbar-button {
         border-top: 1px solid #cccccc;
         border-left: 1px solid #cccccc;
         border-right: 1px solid black;
         border-bottom: 1px solid black;
         box-shadow: inset 1px 1px 0 0 white, inset -1px -1px 0 0 #868a8e;
         display: block;
         width: 16px;
         height: 16px;
         background-color: #cccccc;
         image-rendering: pixelated;
         background-repeat: no-repeat;
         background-position: center center;
         }
         ::-webkit-scrollbar-button:active,
         .scroll::-webkit-scrollbar-button:active {
         background-position: 2px 2px;
         }
         ::-webkit-scrollbar-button:horizontal:decrement,
         .scroll::-webkit-scrollbar-button:horizontal:decrement {
         background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAQAAAD8fJRsAAAAHklEQVQY02NgoBT8xyX8H5fwf1zCpOjAYwceV1EEAAO2D/HsQ4vsAAAAAElFTkSuQmCC");
         }
         ::-webkit-scrollbar-button:horizontal:increment,
         .scroll::-webkit-scrollbar-button:horizontal:increment {
         background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAQAAAD8fJRsAAAAHUlEQVQY02NgIB/8xy3xH7fEf9wS/0nUQZqrKAYAK44P8ZRmzLQAAAAASUVORK5CYII=");
         }
         ::-webkit-scrollbar-button:vertical:decrement,
         .scroll::-webkit-scrollbar-button:vertical:decrement {
         background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAAGklEQVR4AWMYxuA/SYphmETFhDX9x4mHGQAAcL4P8dQiMq8AAAAASUVORK5CYII=");
         }
         ::-webkit-scrollbar-button:vertical:increment,
         .scroll::-webkit-scrollbar-button:vertical:increment {
         background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAQAAAD8fJRsAAAAF0lEQVQY02NgoBf4jwJxSOHQhcNAOgMAWWAP8Rv2U3UAAAAASUVORK5CYII=");
         }
         ::-webkit-scrollbar-button:horizontal:increment:start,
         .scroll::-webkit-scrollbar-button:horizontal:increment:start {
         display: none;
         }
         ::-webkit-scrollbar-button:horizontal:decrement:end,
         .scroll::-webkit-scrollbar-button:horizontal:decrement:end {
         display: none;
         }
         ::-webkit-scrollbar-button:vertical:increment:start,
         .scroll::-webkit-scrollbar-button:vertical:increment:start {
         display: none;
         }
         ::-webkit-scrollbar-button:vertical:decrement:end,
         .scroll::-webkit-scrollbar-button:vertical:decrement:end {
         display: none;
         }
         ::-webkit-scrollbar-button:active,
         .scroll::-webkit-scrollbar-button:active {
         border-top: 1px solid #868a8e;
         border-left: 1px solid #868a8e;
         border-bottom: 1px solid #868a8e;
         border-right: 1px solid #868a8e;
         box-shadow: none;
         }  
        
        /* about hanging image */
    .hanging-img {
      position: absolute;
      left: 65%;
      top: 40%;
      transform: translateX(-100%) translateY(6px);
      width: 155px;
      image-rendering: pixelated;
      transform-origin: top center;
      pointer-events: auto;
    }

    /* all my love images */
    .love img {
    display: inline-block;
    width: 200px;
    height: 272px;
    border: 2px solid #443515;
    image-rendering: pixelated;
}

.love-item {
  position: relative;
  display: inline-block;
}

.love-item img {
  width: 150px;
  height: 204px;
  border: 2px solid #443515;
  image-rendering: pixelated;
}

.love-caption {
  position: absolute;
  bottom: 10%;
  right: 10%;
  transform: translateX(-50%);
  
  background: #f6f1e8;
  color: #3e3832;
  font-size: 10px;
  font-family: "Courier Prime", monospace;
  padding: 4px 6px;
  border: 1px solid #d8cfc2;
  white-space: nowrap;
  
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

.love-item:hover .love-caption {
  opacity: 1;
}

/*  page scroll for all pages  */
.pagescroll {
  padding-right:5px;
  gap:1px;
  overflow:scroll;
  overflow-x:hidden;
  height:30em;
}

/*
.content-inner {
    text-align: center;
}*/

.content-inner a img {
    display: inline-block;
    vertical-align: middle;
    margin: 2px;
}

/* specific graphics squares  */
         .squares {
  display: flex;
  gap: 5px; 
  }

/* microblog feed */

#feed-reader {
  width:100%;
  max-width:500px;
  margin:20px auto;
  font-family:"Courier Prime", monospace;
  color:#361111;
}

#feed-reader .feed-entry {
  background-image:url("images/blogbg.jpg");
  margin-bottom:10px;
  border:1px solid #d2c7b9;
  padding:8px;
}

#feed-reader .entry-header {
  font-size:12px;
  font-family:'Special Elite', cursive;
  margin-bottom:4px;
}

#feed-reader .entry-content {
  font-size:11px;
  line-height:1.5;
}

/* more microblog feed */
         #feed-reader {
         width: 100%;
         max-width: 500px;
         margin: 20px auto;
         padding: 0;
         font-family: "Segoe UI", Arial, sans-serif;
         color: #361111;
         }

         #feed-reader .feed-entry {
         background-image: url("images/blogbg.jpg");
         margin-bottom: 9px;
         border-top: 3.5px double #000;
         border-left: 3.5px double #000;
         border-right: 3.5px double rgb(85, 61, 17);
         border-bottom: 3.5px double rgb(85, 61, 17);
         }
         #feed-reader .entry-header {
         font-size: 12px;
         font-family: 'Special Elite', cursive;
         color: #251d17;
         font-weight: 600;
         padding-bottom: 2px;
         }

         #feed-reader .entry-content {
         font-size: 11px;
         font-family: "Courier Prime",  monospace;
         line-height: 1.5;
         color: #241d16;
         }

         .dark-toggle {
         text-align: center;
         margin-bottom: 6px;
         }

         .dark-toggle button {
         font-family: "Courier Prime", monospace;
         font-size: 11px;
         padding: 2px 6px;
         background: #fff;
         border: 1px solid #000;
         color: #000;
         cursor: pointer;
         }
         
         html[data-dark] body {
         background: linear-gradient(180deg,
         #1c1b1a 10%,
         #121212 40%,
         #0b0b0b 75%);
         color: #eaeaea;
         }

         html[data-dark] table.geocities,
         html[data-dark] .leftcol,
         html[data-dark] .midcol,
         html[data-dark] .content-box {
         background: #111;
         border-color: #555;
         }

         html[data-dark] a {
         color: #d6c6a1;
         }
         html[data-dark] #feed-reader .feed-entry {
         background-image: url("images/blogbg-dark.jpg");
         }

         /* sitemap */
            .sitemap{
font-family:"Courier Prime", monospace;
font-size:13px;
color:#3e3832;
}

/* cada bloque */
.sitemap-section{
margin-bottom:20px;
padding:10px 12px;
background:url("images/sitemaptable2.jpg");
background-size:cover;
border:px solid #e3d9cc;
}

/* título */
.sitemap-title{
font-family:'Special Elite', cursive;
font-size:13px;
margin-bottom:8px;
border-bottom:1px solid #d8cfc2;
padding-bottom:4px;
letter-spacing:1px;
color:#3e3832;
}

/* lista */
.sitemap ul{
list-style:none;
margin:0;
padding-left:16px;
position:relative;
}

/* línea vertical */
.sitemap ul::before{
content:"";
position:absolute;
top:0;
left:5px;
width:1px;
height:100%;
background:#d8cfc2;
}

/* items */
.sitemap li{
position:relative;
margin:6px 0;
padding-left:14px;
}

/* línea horizontal */
.sitemap li::before{
content:"";
position:absolute;
top:9px;
left:5px;
width:10px;
height:2px;
background:#d8cfc2;
}

.sitemap a{
color:#5a4d3f;
text-decoration:none;
font-size:13px;
}

.sitemap a:hover{
opacity:.6;
}

/* watching media log images */

.media{
position:relative;
overflow:hidden;
width:110px;
}

.media img{
width:110px;
border:2px solid #000;
display:block;
transition:transform .25s ease;
image-rendering:pixelated;
}

.media-caption{
position:absolute;
bottom:0;
left:0;
width:100%;

background:rgba(0,0,0,.75);
color:#fff;

font-size:10px;
font-family:"Courier Prime", monospace;

padding:4px 3px;
text-align:center;

opacity:0;
transform:translateY(6px);
transition:opacity .2s ease, transform .2s ease;
}

.medias{
display:grid;
grid-template-columns:repeat(auto-fill,110px);
gap:12px;
justify-content:center;
margin-top:10px;
}



.media:hover .media-caption{
opacity:1;
transform:translateY(0);

}

    /* music log images */
.albums {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
}

.album-cover {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 120px;
}

/* imagen */
.album-cover img {
  width: 100px;
  height: 100px;
  border: 2px solid #443515;
  image-rendering: pixelated;
  cursor: pointer; 
}

/* audio abajo */
.album-cover audio {
  margin-top: 5px;
  width: 100px;
  height: 30px;
  border: 2px ridge #000;
}

.album-cover img.playing {
  outline: 2px solid #90846d;
}