:root{--primary-bg:#0a0705;--accent-gold:#d4af37;--accent-gold-hover:#f0c243;--text-color:#f4ede4;--font-title:'Cinzel',serif;--font-body:'Montserrat',sans-serif;--font-script:"Great Vibes",cursive,serif;--layout-title-scale:1;--layout-cup-top:35%;--layout-cal-top:30%;--layout-secret-bottom:15vh;--panel-bg:rgba(20,16,11,0.7);--card-bg:rgba(30,24,18,0.5);--card-border:rgba(212,175,55,0.15);--shadow-color:rgba(0,0,0,0.6)}*{margin:0;padding:0;box-sizing:border-box}.skip-link{position:absolute;top:-100px;left:50%;transform:translateX(-50%);background:var(--accent-gold);color:var(--primary-bg);padding:12px 24px;border-radius:0 0 8px 8px;font-family:var(--font-body);font-weight:600;text-decoration:none;z-index:10000;transition:top 0.3s ease}.skip-link:focus{top:0;outline:3px solid var(--accent-gold-hover);outline-offset:2px}body{background-color:var(--primary-bg);color:var(--text-color);font-family:var(--font-body);font-weight:300;line-height:1.6;width:100vw;height:100vh;overflow:hidden;position:relative;-webkit-font-smoothing:antialiased}.site-bg{position:fixed;top:0;left:0;width:100vw;height:100vh;background-image:url('assets/images/writer_desk_bg.png');background-position:center;background-repeat:no-repeat;background-size:cover;z-index:-2;transition:background-image 0.8s ease}.site-bg-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:radial-gradient(circle,rgba(10,7,5,0.4) 0%,rgba(5,3,2,0.94) 100%);z-index:-1;pointer-events:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:rgba(10,7,5,0.5)}::-webkit-scrollbar-thumb{background:var(--accent-gold);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--accent-gold-hover)}.app-container{display:flex;flex-direction:column;height:100vh;overflow:hidden;justify-content:space-between;position:relative}.main-header{height:75px;background:rgba(10,7,5,0.6);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-bottom:1px solid var(--card-border);display:flex;align-items:center;justify-content:space-between;padding:0 3rem;z-index:100;transition:all 0.3s ease}.header-logo{display:flex;align-items:center;gap:0.5rem;cursor:pointer}.logo-icon{font-size:1.5rem}.logo-text{font-family:var(--font-script);font-size:2.1rem;font-weight:400;letter-spacing:0.5px;color:var(--accent-gold);text-transform:none}.nav-menu{display:flex;gap:2rem}.nav-link{font-family:var(--font-script);color:var(--text-color);text-decoration:none;font-size:1.5rem;letter-spacing:0.5px;font-weight:400;transition:all 0.3s ease;position:relative;padding:0.5rem 0;text-transform:none}.nav-link::after{content:'';position:absolute;bottom:0;left:50%;width:0;height:1px;background:var(--accent-gold);transition:all 0.3s ease;transform:translateX(-50%)}.nav-link:hover{color:var(--accent-gold)}.nav-link:hover::after,.nav-link.active::after{width:100%}.nav-link.active{color:var(--accent-gold)}.header-controls{display:flex;align-items:center;gap:1.5rem}.music-toggle-btn{background:rgba(212,175,55,0.1);border:1px solid var(--accent-gold);color:var(--accent-gold);padding:0.5rem 1.2rem;border-radius:4px;cursor:pointer;font-family:var(--font-title);font-size:0.8rem;font-weight:600;letter-spacing:1px;display:flex;align-items:center;gap:0.6rem;transition:all 0.3s ease}.music-toggle-btn:hover{background:var(--accent-gold);color:var(--primary-bg);box-shadow:0 0 10px rgba(212,175,55,0.4)}.music-toggle-btn.playing{animation:pulse-gold 2s infinite}.music-icon{font-size:0.9rem}.hamburger-btn{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:5px}.hamburger-btn .bar{width:25px;height:2px;background-color:var(--text-color);transition:all 0.3s ease}.page-container{flex-grow:1;position:relative;overflow:hidden}.page-panel{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;pointer-events:none;transform:scale(0.97);transition:opacity 0.7s cubic-bezier(0.25,1,0.5,1),transform 0.7s cubic-bezier(0.25,1,0.5,1);padding:2rem 4rem;display:flex;flex-direction:column;justify-content:flex-start;overflow:hidden;z-index:1}.page-panel.active{opacity:1;pointer-events:auto;transform:scale(1);z-index:10}.panel-scroll-content{width:100%;max-height:100%;overflow-y:auto;padding-right:1.5rem}.divider-gold{height:1px;background:linear-gradient(90deg,transparent 0%,var(--accent-gold) 50%,transparent 100%);width:60%;margin:1.5rem auto}.divider-gold-left{height:1px;background:linear-gradient(90deg,var(--accent-gold) 0%,transparent 100%);width:100px;margin:1rem 0}.btn-gold-outline{background:transparent;border:1px solid var(--accent-gold);color:var(--accent-gold);padding:0.8rem 2rem;font-family:var(--font-title);font-size:0.9rem;letter-spacing:2px;cursor:pointer;display:inline-flex;align-items:center;gap:0.8rem;border-radius:4px;transition:all 0.3s ease;text-transform:uppercase}.btn-gold-outline:hover{background:var(--accent-gold);color:var(--primary-bg);box-shadow:0 0 15px rgba(212,175,55,0.4);transform:translateY(-2px)}.btn-buy{background:transparent;border:1px solid var(--accent-gold);color:var(--accent-gold);padding:0.6rem 1.5rem;font-family:var(--font-title);font-size:0.75rem;letter-spacing:2px;cursor:pointer;display:inline-flex;align-items:center;gap:0.6rem;border-radius:4px;transition:all 0.3s ease;text-transform:uppercase;margin-top:1rem}.btn-buy:hover{background:var(--accent-gold);color:var(--primary-bg);transform:translateY(-2px);box-shadow:0 0 15px rgba(212,175,55,0.3)}.btn-buy-disabled{opacity:0.35;cursor:not-allowed;border-color:rgba(244,237,228,0.3);color:rgba(244,237,228,0.3)}.btn-buy-disabled:hover{background:transparent;color:rgba(244,237,228,0.3);border-color:rgba(244,237,228,0.3);transform:none;box-shadow:none}.buy-modal-card{background:rgba(18,14,10,0.97);backdrop-filter:blur(16px);border:1px solid var(--card-border);border-radius:8px;max-width:440px;width:90%;padding:2rem;position:relative;animation:fadeIn 0.3s ease;max-height:80vh;overflow-y:auto}.buy-modal-header{text-align:center;margin-bottom:1.5rem}.buy-modal-icon{color:var(--accent-gold);margin-bottom:0.5rem;display:inline-block}.buy-modal-header h3{font-family:var(--font-script);font-size:2rem;font-weight:400;color:var(--accent-gold)}.buy-modal-subtitle{font-family:var(--font-body);font-size:0.9rem;color:rgba(244,237,228,0.7);text-align:center;margin-bottom:1.5rem}.buy-links-list{display:flex;flex-direction:column;gap:0.8rem}.buy-link-item{display:flex;align-items:center;justify-content:space-between;background:rgba(30,24,18,0.5);border:1px solid var(--card-border);border-radius:4px;padding:1rem 1.2rem;text-decoration:none;transition:all 0.3s ease}.buy-link-item:hover{border-color:var(--accent-gold);background:rgba(30,24,18,0.8);transform:translateX(4px)}.buy-link-store{font-family:var(--font-title);font-size:0.85rem;color:var(--text-color);font-weight:600;letter-spacing:1px}.buy-link-arrow{color:var(--accent-gold);transition:transform 0.3s ease}.buy-link-item:hover .buy-link-arrow{transform:translateX(4px)}.buy-modal-footer{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--card-border)}.buy-modal-footer .btn-gold-outline{padding:0.6rem 2rem;font-size:0.8rem}.btn-gold-fill{background:var(--accent-gold);border:1px solid var(--accent-gold);color:var(--primary-bg);padding:0.8rem 2rem;font-family:var(--font-title);font-size:0.9rem;letter-spacing:2px;cursor:pointer;display:inline-flex;align-items:center;gap:0.8rem;border-radius:4px;transition:all 0.3s ease;font-weight:600;text-transform:uppercase}.btn-gold-fill:hover{background:var(--accent-gold-hover);border-color:var(--accent-gold-hover);box-shadow:0 0 15px rgba(212,175,55,0.5);transform:translateY(-2px)}.section-label{font-family:var(--font-title);font-size:0.85rem;color:var(--accent-gold);letter-spacing:3px;font-weight:600;text-transform:uppercase}.section-title{font-family:var(--font-script);font-size:4rem;font-weight:400;color:var(--accent-gold);margin-top:0.2rem;margin-bottom:1rem;letter-spacing:0.5px;line-height:1.1}.section-subtitle{font-family:var(--font-title);font-size:1.1rem;color:var(--accent-gold);letter-spacing:2px;margin-bottom:2rem}.section-header-center{text-align:center;max-width:700px;margin:0 auto 3.5rem auto}.section-desc{font-size:1rem;color:rgba(244,237,228,0.7)}#page-inicio{justify-content:space-between;padding-bottom:1.5rem;overflow-y:auto;overflow-x:hidden}.inicio-hero{text-align:center;margin:auto 0;z-index:10}.hero-category{font-family:var(--font-title);color:var(--accent-gold);letter-spacing:5px;font-size:1.1rem;display:block;margin-bottom:0.5rem;font-weight:600}.hero-title{font-family:var(--font-script);font-size:calc(clamp(3rem,7vw,6rem) * var(--layout-title-scale));font-weight:400;line-height:1;letter-spacing:0;color:var(--accent-gold);text-shadow:0 4px 15px rgba(0,0,0,0.8);margin-bottom:0.5rem}.hero-subtitle{font-family:var(--font-script);font-size:clamp(1rem,2vw,1.5rem);font-weight:400;color:rgba(244,237,228,0.9);letter-spacing:0.5px;font-style:normal}.hero-quote-main{font-family:var(--font-script);font-size:clamp(1rem,2vw,1.4rem);font-style:normal;margin-bottom:clamp(1rem,2vh,2.5rem);color:rgba(244,237,228,0.85)}.float-widget{background:var(--panel-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--card-border);padding:1.5rem;border-radius:4px;box-shadow:0 10px 30px var(--shadow-color);z-index:20;transition:all 0.4s ease}.float-widget:hover{border-color:var(--accent-gold);transform:translateY(-5px)}.float-left{position:absolute;left:4rem;top:var(--layout-cup-top);max-width:250px}.float-left::before{content:'';display:block;width:24px;height:24px;margin-bottom:0.5rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23d4af37' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 8h1a4 4 0 1 1 0 8h-1'/%3E%3Cpath d='M3 8h14v9a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4Z'/%3E%3Cline x1='6' y1='2' x2='6' y2='4'/%3E%3Cline x1='10' y1='2' x2='10' y2='4'/%3E%3Cline x1='14' y1='2' x2='14' y2='4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain}#cup-quote{font-family:var(--font-script);font-size:1.15rem;font-style:normal;color:rgba(244,237,228,0.8)}.float-right{position:absolute;right:4rem;top:var(--layout-cal-top);max-width:280px}.widget-header{font-family:var(--font-title);color:var(--accent-gold);font-size:0.95rem;letter-spacing:2px;border-bottom:1px solid rgba(212,175,55,0.2);padding-bottom:0.5rem;margin-bottom:0.8rem;font-weight:600;text-align:center}#calendar-quote{font-family:var(--font-script);font-size:1.15rem;font-style:normal;color:rgba(244,237,228,0.85);margin-bottom:0.5rem}.signature{font-family:var(--font-script);font-size:1.3rem;color:var(--accent-gold);display:block;text-align:right;font-style:normal}.inicio-bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;width:100%;max-width:1200px;margin:0 auto;z-index:20;flex-shrink:0}.bottom-nav-item{background:rgba(15,11,8,0.65);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--card-border);padding:clamp(0.6rem,1vh,1.2rem);border-radius:4px;cursor:pointer;transition:all 0.3s ease;position:relative;overflow:hidden}.bottom-nav-item:hover{background:rgba(30,24,18,0.8);border-color:var(--accent-gold);transform:translateY(-5px);box-shadow:0 8px 20px rgba(0,0,0,0.5)}.bottom-nav-item:focus{outline:3px solid var(--accent-gold);outline-offset:2px;background:rgba(30,24,18,0.8);border-color:var(--accent-gold)}.nav-item-icon{font-size:1.5rem;display:flex;align-items:center;margin-bottom:0.8rem;color:var(--accent-gold)}.nav-item-icon svg{width:28px;height:28px;stroke:var(--accent-gold);transition:all 0.3s ease}.bottom-nav-item:hover .nav-item-icon svg{stroke:var(--accent-gold-hover);transform:scale(1.1)}.bottom-nav-item h3{font-family:var(--font-title);font-size:0.9rem;color:var(--accent-gold);margin-bottom:0.5rem;letter-spacing:2px;font-weight:600;text-transform:uppercase}.bottom-nav-item p{font-size:0.8rem;color:rgba(244,237,228,0.6);line-height:1.4;margin-bottom:0.8rem}.nav-item-arrow{color:var(--accent-gold);font-weight:bold;font-size:1.1rem;transition:transform 0.3s ease;display:inline-block}.bottom-nav-item:hover .nav-item-arrow{transform:translateX(5px)}.sobre-mi-layout{display:grid;grid-template-columns:1.2fr 0.8fr;gap:4rem;align-items:flex-start;padding:2rem 0;max-width:1200px;margin:0 auto}.sobre-mi-text{display:flex;flex-direction:column}.bio-quote-container{border-left:2px solid var(--accent-gold);padding-left:1.5rem;margin:1.5rem 0 2.5rem 0}.bio-quote{font-family:var(--font-script);font-size:1.7rem;font-style:normal;color:var(--accent-gold);line-height:1.3}.bio-description p{font-size:0.95rem;margin-bottom:1.5rem;color:rgba(244,237,228,0.8);text-align:justify}.bio-purpose-box{background:var(--card-bg);border:1px solid var(--card-border);padding:1.5rem;margin:2rem 0;border-radius:4px}.bio-purpose-box h4,.bio-essence-list h4{font-family:var(--font-title);color:var(--accent-gold);margin-bottom:0.8rem;font-size:1rem;letter-spacing:1px}.bio-purpose-box p{font-size:0.95rem;font-style:italic;color:rgba(244,237,228,0.9)}.bio-essence-list ul{list-style:none}.bio-essence-list li{margin-bottom:0.6rem;font-size:0.9rem;color:rgba(244,237,228,0.8);display:flex;align-items:center;gap:0.8rem}.bio-essence-list li::before{content:'';display:inline-block;width:16px;height:16px;min-width:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23d4af37' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.24 12.24a6 6 0 0 0-8.49-8.49L5 10.5V19h8.5z'/%3E%3Cline x1='16' y1='8' x2='2' y2='22'/%3E%3Cline x1='17.5' y1='15' x2='9' y2='15'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain}.sobre-mi-media{display:flex;flex-direction:column;gap:2rem;align-items:center}.frame-portrait{border:1px solid var(--card-border);padding:0.8rem;background:rgba(15,11,8,0.8);border-radius:4px;box-shadow:0 15px 35px var(--shadow-color);max-width:380px;width:100%}.frame-portrait img{width:100%;height:auto;border-radius:2px;filter:grayscale(40%) contrast(110%);transition:filter 0.5s ease;display:block}.frame-portrait:hover img{filter:grayscale(0%) contrast(100%)}.values-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;width:100%;max-width:380px}.value-card{background:var(--card-bg);border:1px solid var(--card-border);padding:1rem;border-radius:4px;transition:all 0.3s ease}.value-card:hover{border-color:var(--accent-gold);background:rgba(30,24,18,0.7)}.value-card h5{font-family:var(--font-title);color:var(--accent-gold);font-size:0.8rem;letter-spacing:1px;margin-bottom:0.3rem;font-weight:600}.value-card p{font-size:0.75rem;color:rgba(244,237,228,0.75);line-height:1.4}.obras-grid{display:flex;flex-direction:column;gap:3rem;max-width:950px;margin:0 auto;padding-bottom:3rem}.book-card{display:grid;grid-template-columns:240px 1fr;background:rgba(15,11,8,0.7);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--card-border);border-radius:4px;overflow:hidden;box-shadow:0 15px 35px var(--shadow-color);transition:all 0.4s ease}.book-card:hover{border-color:var(--accent-gold);transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,0.7)}.book-cover-container{padding:1.5rem;display:flex;align-items:center;justify-content:center;background:rgba(10,7,5,0.5);border-right:1px solid rgba(212,175,55,0.08)}.book-cover{width:100%;max-width:180px;height:260px;object-fit:cover;box-shadow:5px 8px 15px rgba(0,0,0,0.6);transition:transform 0.4s ease;border-radius:2px}.book-card:hover .book-cover{transform:scale(1.05) rotate(1deg)}.book-info{padding:2.5rem;display:flex;flex-direction:column;justify-content:center}.book-tag{font-family:var(--font-title);font-size:0.75rem;color:var(--accent-gold);letter-spacing:2px;text-transform:uppercase;margin-bottom:0.5rem;font-weight:600}.book-title{font-family:var(--font-script);font-size:2.5rem;font-weight:400;margin-bottom:0.3rem;color:var(--accent-gold)}.book-subtitle{font-family:var(--font-script);font-size:1.25rem;font-style:normal;color:rgba(244,237,228,0.6);margin-bottom:1.5rem;letter-spacing:0}.book-desc{font-size:0.88rem;color:rgba(244,237,228,0.75);margin-bottom:2rem;text-align:justify;line-height:1.6}.certamenes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;max-width:1200px;margin:0 auto;padding-bottom:3rem}.certamen-card{background:rgba(15,11,8,0.7);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--card-border);border-radius:4px;overflow:hidden;box-shadow:0 10px 25px var(--shadow-color);transition:all 0.4s ease;cursor:pointer;display:flex;flex-direction:column}.certamen-card:hover{border-color:var(--accent-gold);transform:translateY(-5px);box-shadow:0 15px 35px rgba(0,0,0,0.6)}.certamen-img-container{position:relative;width:100%;height:380px;overflow:hidden;background-color:rgba(10,7,5,0.8)}.certamen-img-container img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease}.certamen-card:hover .certamen-img-container img{transform:scale(1.05)}.certamen-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to top,rgba(10,7,5,0.95) 15%,rgba(10,7,5,0.4) 60%,transparent 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:1.5rem;opacity:0.9;transition:all 0.3s ease}.certamen-badge{font-family:var(--font-title);font-size:0.7rem;color:var(--primary-bg);background:var(--accent-gold);padding:0.2rem 0.6rem;border-radius:2px;align-self:flex-start;margin-bottom:0.5rem;font-weight:600;letter-spacing:1px}.certamen-card-title{font-family:var(--font-script);font-size:1.7rem;font-weight:400;color:var(--text-color);margin-bottom:0.2rem;line-height:1.2}.certamen-name{font-family:var(--font-script);font-size:1.1rem;font-style:normal;color:rgba(244,237,228,0.7);margin-bottom:0.5rem}.certamen-click-info{font-size:0.75rem;color:var(--accent-gold);letter-spacing:1px;display:flex;align-items:center;gap:0.3rem;margin-top:0.5rem;opacity:0;transform:translateY(5px);transition:all 0.3s ease}.certamen-card:hover .certamen-click-info{opacity:1;transform:translateY(0)}.reflections-carousel-wrapper{position:relative;max-width:1000px;margin:0 auto;display:flex;align-items:center;gap:1rem}.reflections-container{display:flex;overflow-x:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;gap:2rem;padding-bottom:1rem;width:100%}.carousel-btn{background:transparent;border:1px solid var(--accent-gold);color:var(--accent-gold);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);flex-shrink:0;z-index:2}.carousel-btn:hover{background:var(--accent-gold);color:var(--bg-dark)}.carousel-dots{display:flex;justify-content:center;gap:0.5rem;margin-top:1rem;margin-bottom:3rem}.dot{width:8px;height:8px;border-radius:50%;background:rgba(212,175,55,0.3);cursor:pointer;transition:var(--transition)}.dot.active{background:var(--accent-gold);transform:scale(1.2)}.reflection-item{flex:0 0 100%;scroll-snap-align:center;background:rgba(15,11,8,0.75);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--card-border);border-radius:4px;padding:3rem;box-shadow:0 15px 35px var(--shadow-color);margin-bottom:1rem}.reflection-date{font-family:var(--font-title);font-size:0.8rem;color:var(--accent-gold);letter-spacing:2px;font-weight:600}.reflection-title{font-family:var(--font-script);font-size:3rem;font-weight:400;margin-top:0.2rem;margin-bottom:0.5rem;color:var(--accent-gold)}.reflection-subtitle{font-family:var(--font-script);font-size:1.2rem;font-style:normal;color:rgba(244,237,228,0.5);margin-bottom:2rem;display:block}.reflection-layout{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center}.reflection-media{border:1px solid rgba(212,175,55,0.1);padding:0.5rem;background:rgba(10,7,5,0.6);border-radius:2px}.reflection-media img{width:100%;height:auto;display:block;border-radius:1px}.reflection-body{display:flex;flex-direction:column}.reflection-blockquote{font-family:var(--font-script);font-size:1.5rem;font-style:normal;color:var(--accent-gold);border-left:2px solid var(--accent-gold);padding-left:1.2rem;margin-bottom:1.5rem;line-height:1.3}.reflection-content{font-size:0.9rem;color:rgba(244,237,228,0.75);text-align:justify;line-height:1.7}.galeria-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto;padding-bottom:3rem}.galeria-item{position:relative;height:340px;border:1px solid var(--card-border);border-radius:4px;overflow:hidden;cursor:pointer;box-shadow:0 10px 20px var(--shadow-color);background-color:rgba(10,7,5,0.8)}.galeria-item img{width:100%;height:100%;object-fit:cover;filter:grayscale(100%) contrast(110%);transition:all 0.6s cubic-bezier(0.25,0.8,0.25,1)}.galeria-item:hover img{filter:grayscale(0%) contrast(100%);transform:scale(1.05)}.galeria-hover-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(10,7,5,0.75);opacity:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;text-align:center;transition:all 0.3s ease}.galeria-item:hover .galeria-hover-overlay{opacity:1}.galeria-zoom-icon{font-size:1.5rem;color:var(--accent-gold);margin-bottom:0.5rem;transform:scale(0.8);transition:transform 0.3s ease 0.1s}.galeria-item:hover .galeria-zoom-icon{transform:scale(1)}.galeria-caption{font-family:var(--font-title);font-size:0.85rem;color:var(--text-color);letter-spacing:1px}.contacto-layout{display:grid;grid-template-columns:0.85fr 1.15fr;gap:4rem;max-width:1100px;margin:auto auto;align-items:center;padding:2rem 0}.contacto-info{display:flex;flex-direction:column;position:relative}.contacto-info p{font-size:0.95rem;color:rgba(244,237,228,0.75);margin-bottom:2rem}.contacto-social-links{display:grid;grid-template-columns:1fr 1fr;gap:0.8rem;max-width:300px}.social-btn{background:rgba(212,175,55,0.05);border:1px solid var(--card-border);color:var(--text-color);padding:0.75rem 1rem;text-decoration:none;font-family:var(--font-title);font-size:0.75rem;letter-spacing:1.5px;text-align:center;border-radius:4px;transition:all 0.3s ease;text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:0.5rem}.social-btn:hover{background:var(--accent-gold);color:var(--primary-bg);border-color:var(--accent-gold);box-shadow:0 5px 15px rgba(212,175,55,0.25);transform:translateY(-2px)}.social-btn:hover svg{stroke:var(--primary-bg)}.postcard-stamp{width:90px;height:105px;border:2px dashed var(--accent-gold);margin-top:4rem;display:flex;align-items:center;justify-content:center;opacity:0.7}.stamp-content{font-size:2.5rem;color:var(--accent-gold);transform:rotate(-10deg)}.contacto-form-container{background:rgba(15,11,8,0.7);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--card-border);border-radius:4px;padding:3rem;box-shadow:0 15px 35px var(--shadow-color)}.postcard-form .form-row{margin-bottom:2rem}.postcard-form .form-group{display:flex;flex-direction:column;gap:0.5rem}.postcard-form label{font-family:var(--font-script);font-style:normal;font-size:1.4rem;color:var(--accent-gold)}.postcard-form input[type="text"],.postcard-form input[type="email"],.postcard-form textarea{background:transparent;border:none;border-bottom:1px solid rgba(212,175,55,0.3);color:var(--text-color);font-family:var(--font-body);font-size:0.95rem;padding:0.5rem 0;width:100%;transition:all 0.3s ease;border-radius:0}.postcard-form input:focus,.postcard-form textarea:focus{outline:none;border-bottom-color:var(--accent-gold)}.postcard-form textarea{resize:none;line-height:1.6}.form-error{display:none;color:#e74c3c;font-family:var(--font-body);font-size:0.8rem;margin-top:0.3rem}.form-group.error .form-error{display:block}.form-group.error input,.form-group.error textarea{border-bottom-color:#e74c3c}.form-group.success input,.form-group.success textarea{border-bottom-color:#27ae60}.form-counter{display:block;text-align:right;font-family:var(--font-body);font-size:0.75rem;color:rgba(244,237,228,0.5);margin-top:0.3rem}.form-counter.warning{color:#f39c12}.form-counter.limit{color:#e74c3c}.main-footer{height:55px;background:rgba(10,7,5,0.7);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--card-border);display:flex;align-items:center;justify-content:center;z-index:100}.main-footer p{font-family:var(--font-script);font-style:normal;font-size:1.2rem;color:rgba(244,237,228,0.6);letter-spacing:0}.secret-corner-btn{position:fixed;right:0;bottom:var(--layout-secret-bottom);background:rgba(15,11,8,0.65);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(212,175,55,0.3);border-right:none;color:var(--accent-gold);padding:0.8rem 0.7rem 0.5rem 0.7rem;border-radius:8px 0 0 8px;cursor:pointer;z-index:99;display:flex;flex-direction:column;align-items:center;gap:0.3rem;font-family:var(--font-title);font-size:0.55rem;font-weight:400;letter-spacing:1px;line-height:1.2;text-align:center;box-shadow:-3px 3px 10px rgba(0,0,0,0.5);transition:all 0.3s ease}.secret-corner-btn:hover{background:rgba(15,11,8,0.9);color:var(--accent-gold);transform:translateX(-5px);box-shadow:-3px 3px 15px rgba(212,175,55,0.2);border-color:var(--accent-gold)}.secret-icon{margin-bottom:0.1rem}.secret-icon svg{width:14px;height:14px}.secret-ornament{font-size:0.5rem;color:rgba(212,175,55,0.6);margin-top:0.1rem}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(5,3,2,0.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 0.4s ease}.modal-overlay.active{opacity:1;pointer-events:auto}.modal-close{position:absolute;top:2rem;right:3rem;background:none;border:none;color:var(--text-color);font-size:3rem;cursor:pointer;transition:color 0.3s ease;line-height:1;z-index:1001}.modal-close:hover{color:var(--accent-gold)}.lightbox-content{position:relative;max-width:90%;max-height:85%;display:flex;flex-direction:column;align-items:center;transform:scale(0.9);transition:transform 0.4s ease}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(10,7,5,0.7);border:1px solid var(--card-border);color:var(--accent-gold);width:44px;height:44px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all 0.3s ease}.lightbox-nav:hover{background:rgba(10,7,5,0.9);border-color:var(--accent-gold);transform:translateY(-50%) scale(1.1)}.lightbox-prev{left:-60px}.lightbox-next{right:-60px}@media (max-width:768px){.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-nav{width:36px;height:36px}}.modal-overlay.active .lightbox-content{transform:scale(1)}.lightbox-content img{max-width:100%;max-height:75vh;object-fit:contain;border:1px solid var(--card-border);box-shadow:0 10px 40px rgba(0,0,0,0.8);border-radius:4px}.lightbox-caption{font-family:var(--font-script);color:var(--accent-gold);font-size:1.5rem;margin-top:1.5rem;letter-spacing:0;text-align:center}#secret-modal{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;overflow:hidden;align-items:flex-start;justify-content:flex-start}#secret-modal.active{background:transparent}.secret-modal-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-image:url('assets/images/secret_corner_bg.png');background-size:cover;background-position:center top;background-repeat:no-repeat;z-index:0;transition:opacity 1s ease;filter:brightness(0.88) saturate(1.1)}#secret-modal.active .secret-modal-bg{opacity:1}.secret-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient( to bottom,rgba(5,3,2,0.55) 0%,rgba(5,3,2,0.2) 30%,rgba(5,3,2,0.2) 70%,rgba(5,3,2,0.6) 100% );z-index:1}.secret-modal-overlay::before{content:'';position:absolute;top:20%;left:50%;transform:translateX(-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(212,175,55,0.08) 0%,transparent 70%);border-radius:50%;animation:secret-glow 4s ease-in-out infinite alternate}@keyframes secret-glow{0%{opacity:0.5;transform:translateX(-50%) scale(1)}100%{opacity:1;transform:translateX(-50%) scale(1.15)}}.secret-content-wrapper{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100%;height:100%;padding:3rem 2rem 3rem;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(212,175,55,0.4) transparent}.modal-card{background:rgba(10,7,5,0.65);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(212,175,55,0.4);border-radius:8px;width:90%;max-width:680px;margin:auto;box-shadow:0 0 60px rgba(212,175,55,0.1),0 30px 80px rgba(0,0,0,0.7),inset 0 1px 0 rgba(212,175,55,0.2);overflow:visible;transform:translateY(40px) scale(0.96);opacity:0;transition:transform 0.7s cubic-bezier(0.25,1,0.5,1),opacity 0.7s ease;position:relative;flex-shrink:0}.modal-overlay.active .modal-card{transform:translateY(0) scale(1);opacity:1}.modal-card::before{content:'âœ¦ âœ¦ âœ¦';position:absolute;top:-1.2rem;left:50%;transform:translateX(-50%);background:rgba(10,7,5,0.95);color:var(--accent-gold);font-size:0.85rem;letter-spacing:0.8rem;padding:0 1rem;white-space:nowrap}.modal-card .modal-close{top:1rem;right:1.5rem;font-size:2rem;color:rgba(212,175,55,0.6)}.modal-card .modal-close:hover{color:var(--accent-gold)}.modal-card-header{padding:2.5rem 3rem 1.5rem 3rem;display:flex;flex-direction:column;align-items:center;gap:0.6rem;border-bottom:1px solid rgba(212,175,55,0.15);text-align:center}.modal-card-icon{display:flex;align-items:center;justify-content:center;color:var(--accent-gold);animation:float 4s ease-in-out infinite}.modal-card-icon svg{stroke:var(--accent-gold)}.modal-card-header h3{font-family:var(--font-script);font-size:2.4rem;color:var(--accent-gold);font-weight:400;letter-spacing:0;text-shadow:0 0 20px rgba(212,175,55,0.4)}.modal-card-body{padding:2.5rem 3rem;line-height:2;color:rgba(244,237,228,0.9);text-align:center}.secret-text-title{font-family:var(--font-title);font-size:1rem;color:var(--accent-gold);letter-spacing:3px;text-transform:uppercase;margin-bottom:2rem;display:block}.secret-text-body{font-family:var(--font-body);font-size:0.92rem;font-weight:300;line-height:2;color:rgba(244,237,228,0.88);text-align:center}.secret-text-body p{margin-bottom:0.9rem}.secret-text-body p:last-child{margin-bottom:0}.secret-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,55,0.5),transparent);width:60%;margin:1.8rem auto}.secret-signature{font-family:var(--font-script);font-size:2rem;color:var(--accent-gold);font-weight:400;display:block;margin-top:1rem;text-shadow:0 0 15px rgba(212,175,55,0.3);animation:float 5s ease-in-out infinite}.modal-card-footer{padding:1.2rem 3rem 2rem 3rem;display:flex;justify-content:center;border-top:1px solid rgba(212,175,55,0.08)}.audio-permission-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(5,3,2,0.96);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:1;transition:opacity 0.5s ease}.audio-overlay-card{background:rgba(15,11,8,0.95);border:1px solid var(--accent-gold);border-radius:4px;width:90%;max-width:480px;padding:3rem;text-align:center;box-shadow:0 20px 50px rgba(0,0,0,0.9)}.card-icon{font-size:3rem;display:block;margin-bottom:1.5rem;animation:float 3s ease-in-out infinite}.audio-overlay-card h2{font-family:var(--font-script);color:var(--accent-gold);font-size:2.2rem;margin-bottom:1rem;letter-spacing:0}.audio-overlay-card p{font-size:0.9rem;color:rgba(244,237,228,0.7);line-height:1.6;margin-bottom:2rem}.overlay-buttons{display:flex;gap:1rem;justify-content:center}@keyframes pulse-gold{0%{box-shadow:0 0 0 0 rgba(212,175,55,0.4)}70%{box-shadow:0 0 0 10px rgba(212,175,55,0)}100%{box-shadow:0 0 0 0 rgba(212,175,55,0)}}@keyframes float{0%{transform:translateY(0px)}50%{transform:translateY(-8px)}100%{transform:translateY(0px)}}@media (max-width:1024px){.page-panel{padding:2rem}.float-left,.float-right{display:none}.sobre-mi-layout{grid-template-columns:1fr;gap:3rem}.sobre-mi-media{order:-1}.contacto-layout{grid-template-columns:1fr;gap:3rem}.postcard-stamp{display:none}.inicio-bottom-nav{grid-template-columns:repeat(3,1fr);gap:1rem}}@media (max-width:768px){body{overflow-y:auto;height:auto}.app-container{height:auto;min-height:100vh;overflow:visible}.main-header{flex-direction:column;height:auto;padding:1.5rem;gap:1.5rem}.nav-menu{flex-wrap:wrap;justify-content:center;gap:1rem}.page-container{height:auto;min-height:80vh;overflow:visible}.page-panel{position:relative;opacity:1;pointer-events:auto;transform:none;display:none;height:auto;min-height:80vh;padding:2rem 1.5rem}.page-panel.active{display:flex}.panel-scroll-content{overflow-y:visible;max-height:none;padding-right:0}.hero-title{font-size:4rem}.hero-subtitle{font-size:1.5rem}.hero-quote-main{font-size:1.5rem}.section-title{font-size:2.8rem}.inicio-bottom-nav{grid-template-columns:1fr;margin-top:2rem}.book-card{grid-template-columns:1fr}.book-cover-container{border-right:none;border-bottom:1px solid rgba(212,175,55,0.1);padding:2rem}.book-info{padding:1.5rem}.reflection-layout{grid-template-columns:1fr}.reflection-item{padding:1.5rem}.main-footer{height:auto;padding:1.5rem;text-align:center}.secret-corner-btn{bottom:2rem;right:0;padding:1rem 1rem 0.6rem 1rem;font-size:0.65rem}.overlay-buttons{flex-direction:column}}@media (max-height:750px){#page-inicio{padding:1rem 4rem 1rem;gap:0.5rem}.inicio-hero{margin:0;padding:0.5rem 0}.hero-title{font-size:clamp(2.8rem,6vw,5rem);margin-bottom:0.2rem}.hero-subtitle{font-size:clamp(1rem,2vw,1.5rem)}.hero-quote-main{font-size:clamp(1rem,2vw,1.5rem);margin-bottom:1rem}.divider-gold{margin:0.8rem auto}.btn-gold-outline{padding:0.6rem 1.5rem;font-size:0.8rem}.inicio-bottom-nav{gap:0.6rem}.bottom-nav-item{padding:0.8rem 1rem}.nav-item-icon{margin-bottom:0.4rem}.nav-item-icon svg{width:20px;height:20px}.bottom-nav-item h3{font-size:0.75rem;margin-bottom:0.2rem}.bottom-nav-item p{font-size:0.72rem;margin-bottom:0.4rem;line-height:1.2}}@media (max-height:600px){.hero-title{font-size:clamp(2.2rem,5vw,3.5rem)}.bottom-nav-item p{display:none}#page-inicio{padding:0.5rem 3rem 0.5rem}}.toast-container{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:10px}.toast{background:rgba(20,16,11,0.95);backdrop-filter:blur(10px);border:1px solid var(--accent-gold);border-left:4px solid var(--accent-gold);padding:16px 20px;border-radius:4px;min-width:300px;max-width:400px;box-shadow:0 8px 32px rgba(0,0,0,0.6);animation:toastSlideIn 0.3s ease,toastFadeOut 0.3s ease 3.7s forwards;font-family:var(--font-body)}.toast.success{border-left-color:#27ae60}.toast.success .toast-icon{color:#27ae60}.toast.error{border-left-color:#e74c3c}.toast.error .toast-icon{color:#e74c3c}.toast-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.toast-icon{font-size:1.2rem;color:var(--accent-gold)}.toast-title{font-weight:600;font-size:0.95rem;color:var(--text-color)}.toast-message{font-size:0.85rem;color:rgba(244,237,228,0.8);line-height:1.4}.toast-close{position:absolute;top:8px;right:10px;background:none;border:none;color:rgba(244,237,228,0.5);cursor:pointer;font-size:1.2rem;line-height:1;padding:0}.toast-close:hover{color:var(--text-color)}@keyframes toastSlideIn{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes toastFadeOut{from{opacity:1}to{opacity:0;pointer-events:none}}.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--primary-bg,#1a1a2e);border-top:1px solid var(--accent-gold,#d4af37);padding:12px 20px;z-index:9998;transform:translateY(100%);transition:transform 0.4s ease;box-shadow:0 -4px 20px rgba(0,0,0,0.5);pointer-events:none}.cookie-banner.show{transform:translateY(0);pointer-events:auto}.cookie-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.cookie-content p{margin:0;color:var(--text-color,#e0d5c1);font-size:0.85rem;line-height:1.5}.cookie-btn{background:var(--accent-gold,#d4af37);color:#1a1a2e;border:none;padding:8px 24px;font-family:var(--font-body,'Montserrat',sans-serif);font-weight:600;font-size:0.85rem;cursor:pointer;border-radius:4px;transition:background 0.3s;white-space:nowrap}.cookie-btn:hover{background:var(--accent-gold-hover,#b8962c)}