:root{--ink:#0d0d0b;--ink2:#15130f;--paper:#e9dcc2;--paper2:#d8c39c;--gold:#c89a43;--gold2:#9d6c20;--burg:#6c1818;--cream:#f7f0e4;--muted:#c7bcaa;--line:rgba(200,154,67,.45)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--cream);font-family:Montserrat,Arial,sans-serif;line-height:1.65}img{max-width:100%;display:block}.container{width:min(1180px,92vw);margin:auto}.site-header{position:fixed;z-index:1000;inset:0 0 auto;background:rgba(10,9,7,.93);border-bottom:1px solid rgba(200,154,67,.18);backdrop-filter:blur(10px)}.nav-wrap{height:74px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:10px;color:var(--gold);text-decoration:none;font-family:Cinzel,serif;text-transform:uppercase;font-weight:600;font-size:.93rem;letter-spacing:.05em}.brand-glyph{font-size:1.6rem}.main-nav{display:flex;gap:28px}.main-nav a{color:#eee7da;text-transform:uppercase;font-size:.7rem;letter-spacing:.09em;text-decoration:none;position:relative}.main-nav a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--gold);transition:.3s}.main-nav a:hover:after,.main-nav a.active:after{width:100%}.menu-toggle{display:none;background:none;border:0;color:var(--gold);font-size:1.6rem}.hero{min-height:760px;padding-top:74px;position:relative;overflow:hidden;background:radial-gradient(circle at 70% 28%,rgba(114,83,42,.19),transparent 28%),linear-gradient(rgba(0,0,0,.44),rgba(0,0,0,.55)),repeating-linear-gradient(125deg,#15130f 0,#15130f 8px,#11100d 8px,#11100d 15px)}.hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.025) 1px,transparent 1px);background-size:5px 5px;opacity:.55}.hero-grid{min-height:690px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:45px;position:relative;z-index:2}.eyebrow,.section-kicker{text-transform:uppercase;color:var(--gold);letter-spacing:.18em;font-size:.73rem;font-weight:600}.hero h1{font-family:Cinzel,serif;text-transform:uppercase;font-size:clamp(3rem,5.2vw,5.6rem);line-height:.94;letter-spacing:.01em;margin:.2em 0;color:var(--cream);font-weight:600}.hero h1 span{color:var(--gold)}.ornament{height:1px;width:280px;max-width:70%;background:linear-gradient(90deg,var(--gold),transparent);margin:28px 0;position:relative}.ornament:before{content:"◆";position:absolute;right:22%;top:-12px;color:var(--gold);font-size:.7rem}.ornament.short{width:180px;margin:18px 0}.hero-quote{font-family:"Cormorant Garamond",serif;font-size:clamp(1.65rem,2.5vw,2.35rem);font-style:italic;line-height:1.08;max-width:520px;margin:0 0 18px}.hero-text{max-width:590px;color:#d7d0c6;font-size:.96rem}.hero-actions,.book-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:0 22px;border:1px solid var(--gold);text-decoration:none;text-transform:uppercase;font-size:.72rem;letter-spacing:.04em;transition:.25s;cursor:pointer;font-family:Montserrat,sans-serif}.btn:hover{transform:translateY(-2px);filter:brightness(1.08)}.btn-gold{background:var(--gold);color:#17110a}.btn-outline{background:transparent;color:var(--cream)}.btn-outline.small{min-height:40px}.btn-burgundy{background:var(--burg);border-color:var(--burg);color:#fff}.btn-light{background:transparent;border-color:#8a7559;color:#3d2b1f}.hero-photo{height:690px;display:flex;align-items:flex-end;justify-content:center}.hero-photo-frame{width:100%;height:620px;position:relative;overflow:hidden;border-bottom:1px solid var(--gold)}.hero-photo-frame:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 0%,transparent 26%,transparent 75%,var(--ink) 100%),linear-gradient(0deg,var(--ink) 0%,transparent 26%);z-index:1;pointer-events:none}.hero-photo-frame img{width:100%;height:100%;object-fit:cover;object-position:center 38%;filter:saturate(.83) contrast(1.04)}.hero-glyph{position:absolute;color:var(--gold);opacity:.5;font-size:14rem;line-height:1;z-index:1}.glyph-left{left:45%;top:16%;filter:blur(.2px)}.glyph-right{right:4%;top:12%;font-size:18rem;opacity:.56}.codex-band{height:76px;position:absolute;bottom:0;left:0;right:0;z-index:3;background:linear-gradient(rgba(143,75,31,.75),rgba(100,48,18,.82)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='40'%3E%3Cpath d='M5 20h25m10 0h25m10 0h10' stroke='%23d6a55a' opacity='.4'/%3E%3Ccircle cx='35' cy='20' r='8' fill='none' stroke='%23d6a55a' opacity='.4'/%3E%3C/svg%3E");display:flex;align-items:center;justify-content:space-around;color:#ba7335}.dark-section{background:radial-gradient(circle at 85% 30%,rgba(89,58,25,.18),transparent 26%),linear-gradient(135deg,#12100d,#0b0b09);position:relative}.author-section{padding:74px 0}.author-grid{display:grid;grid-template-columns:360px 1fr;gap:60px;align-items:center}.author-image{margin:0;position:relative}.author-image:before{content:"";position:absolute;inset:-12px 12px 12px -12px;border:1px solid rgba(200,154,67,.35);z-index:0}.author-image img{position:relative;z-index:1;width:100%;height:430px;object-fit:cover;object-position:center 24%;filter:saturate(.85)}.author-copy h2,.section-heading h2,.bio-modal h2{font-family:"Cormorant Garamond",serif;font-size:clamp(2.4rem,4vw,4rem);line-height:1;margin:.1em 0;color:var(--cream);font-weight:600}.author-copy p{max-width:720px;color:#d6cec2}.books-section{padding:82px 0;background:linear-gradient(rgba(235,220,194,.96),rgba(227,210,179,.98)),repeating-linear-gradient(0deg,rgba(80,55,30,.04),rgba(80,55,30,.04) 1px,transparent 1px,transparent 4px);color:#2e2118}.section-heading{text-align:center;margin-bottom:48px}.section-heading h2{color:#56301f;text-transform:uppercase;font-family:Cinzel,serif;font-size:2.25rem}.section-heading>p:last-child{color:#6e5a45}.books-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px}.book-card{display:grid;grid-template-columns:210px 1fr;gap:26px;align-items:center;padding:28px;border-top:1px solid rgba(89,60,34,.24);border-bottom:1px solid rgba(89,60,34,.24)}.book-cover img{width:100%;aspect-ratio:2/3;object-fit:cover;box-shadow:0 18px 26px rgba(61,36,16,.28)}.book-info h3{font-family:Cinzel,serif;font-size:1.65rem;line-height:1.08;margin:0 0 8px;color:#3d2418}.book-subtitle{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:1.15rem;line-height:1.18;color:#4a3325}.book-info>p:not(.book-subtitle):not(.book-meta){font-size:.84rem}.book-meta{font-size:.72rem;color:#765f49}.encounters{padding:76px 0}.section-heading.light h2{color:var(--gold)}.section-heading.light>p:last-child{color:var(--muted)}.encounter-feature{display:grid;grid-template-columns:1.2fr .8fr;background:rgba(255,255,255,.03);border:1px solid rgba(200,154,67,.24)}.encounter-photo img{width:100%;height:460px;object-fit:cover;object-position:center 30%}.encounter-copy{padding:48px;display:flex;flex-direction:column;justify-content:center}.encounter-copy h3{font-family:"Cormorant Garamond",serif;font-size:2.3rem;line-height:1.05;margin:.2em 0}.encounter-copy p{color:#d4cabd}.photo-note{font-size:.78rem;color:var(--gold)!important}.gallery-section{padding:72px 0 86px}.carousel{position:relative}.carousel-track-wrap{overflow:hidden}.carousel-track{display:flex;transition:transform .5s ease}.slide{min-width:33.333%;padding:0 8px;margin:0;position:relative}.slide img{width:100%;height:360px;object-fit:cover}.slide figcaption{position:absolute;left:8px;right:8px;bottom:0;padding:32px 18px 14px;background:linear-gradient(transparent,rgba(0,0,0,.88));font-size:.78rem;color:#eee}.carousel-btn{position:absolute;top:43%;z-index:4;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.58);color:#fff;font-size:1.8rem;cursor:pointer}.carousel-btn.prev{left:-16px}.carousel-btn.next{right:-16px}.carousel-dots{display:flex;justify-content:center;gap:7px;margin-top:18px}.carousel-dot{width:8px;height:8px;border:0;border-radius:50%;background:#6e665b;cursor:pointer}.carousel-dot.active{background:var(--gold)}.quote-band{padding:50px 0;background:radial-gradient(circle at 70% 20%,rgba(142,69,34,.36),transparent 38%),linear-gradient(90deg,#26150f,#4a2217,#26150f);border-top:1px solid #7b482d;border-bottom:1px solid #7b482d}.quote-inner{max-width:980px;position:relative;padding-left:80px}.quote-mark{position:absolute;left:0;top:-24px;color:var(--gold);font-family:Georgia,serif;font-size:7rem}.quote-inner blockquote{font-family:"Cormorant Garamond",serif;font-size:clamp(1.65rem,2.8vw,2.5rem);font-style:italic;line-height:1.15;margin:0;color:#f1e6d6}.quote-inner cite{display:block;text-align:right;color:var(--gold);margin-top:12px;font-style:normal}.contact-section{padding:66px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:38px}.contact-col{padding-right:28px;border-right:1px solid rgba(200,154,67,.25)}.contact-col:last-child{border-right:0}.contact-col h3{font-family:Cinzel,serif;color:var(--gold);font-size:1.05rem}.contact-col p{font-size:.84rem;color:#d6cec2}.socials{display:grid;gap:10px}.socials a{color:#eee7dc;text-decoration:none;font-size:.82rem}.socials a span{margin-left:10px}.small-note{font-size:.68rem!important;color:#958b7e!important}.porrua-logo{font-weight:800;font-size:3rem;letter-spacing:-.08em;color:#fff;line-height:1}.porrua-logo span{font-size:.8rem;letter-spacing:0}.site-footer{background:#080806;border-top:1px solid rgba(200,154,67,.22);padding:18px 0;color:#8f887f;font-size:.68rem}.footer-inner{display:flex;justify-content:space-between;gap:20px}.bio-modal{width:min(720px,90vw);background:#15120e;color:#eee4d7;border:1px solid var(--gold);padding:42px;box-shadow:0 28px 80px rgba(0,0,0,.65)}.bio-modal::backdrop{background:rgba(0,0,0,.8)}.bio-modal h2{color:#fff}.modal-close{position:absolute;right:16px;top:12px;border:0;background:none;color:var(--gold);font-size:2rem;cursor:pointer}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:980px){.main-nav{position:absolute;top:74px;left:0;right:0;background:#0c0b09;padding:22px 4vw;display:none;flex-direction:column}.main-nav.open{display:flex}.menu-toggle{display:block}.hero-grid{grid-template-columns:1fr;gap:0}.hero{padding-top:100px}.hero-photo{height:520px}.hero-photo-frame{height:500px}.glyph-right{font-size:12rem}.author-grid,.encounter-feature,.contact-grid{grid-template-columns:1fr}.author-grid{max-width:760px}.author-image{max-width:420px}.books-grid{grid-template-columns:1fr}.contact-col{border-right:0;border-bottom:1px solid rgba(200,154,67,.2);padding-bottom:25px}.slide{min-width:50%}}@media(max-width:640px){.brand span:last-child{font-size:.72rem}.hero{min-height:auto}.hero-grid{min-height:auto}.hero h1{font-size:2.9rem}.hero-photo{height:420px}.hero-photo-frame{height:400px}.codex-band{height:52px}.author-grid{grid-template-columns:1fr;gap:34px}.author-image img{height:380px}.book-card{grid-template-columns:1fr;padding:18px}.book-cover{max-width:250px;margin:auto}.book-info{text-align:center}.book-actions{justify-content:center}.encounter-feature{grid-template-columns:1fr}.encounter-photo img{height:360px}.encounter-copy{padding:30px}.slide{min-width:100%}.carousel-btn.prev{left:4px}.carousel-btn.next{right:4px}.quote-inner{padding-left:50px}.quote-mark{font-size:5rem}.footer-inner{flex-direction:column}.btn{width:100%}.hero-actions{display:grid}.hero-glyph{display:none}}


/*
BOTONES FLOTANTES DE CONTACTO (PREPARADOS, NO ACTIVOS)
-----------------------------------------------------
Para activarlos, descomentar también el bloque HTML correspondiente en index.html.

.floating-contact{position:fixed;right:22px;bottom:22px;z-index:100;display:grid;gap:10px}
.floating-btn{display:flex;align-items:center;justify-content:center;min-width:118px;height:44px;padding:0 16px;border-radius:999px;text-decoration:none;font:600 .75rem Montserrat,sans-serif;box-shadow:0 8px 24px rgba(0,0,0,.35)}
.floating-btn.whatsapp{background:#1f8f55;color:#fff}
.floating-btn.phone{background:var(--gold);color:#1a120a}
*/


/* =========================================================
   SECCIÓN DE ENVÍOS / VENTA DIRECTA
   ========================================================= */
.shipping-section{padding:64px 0;background:linear-gradient(rgba(27,20,15,.97),rgba(13,12,10,.99)),repeating-linear-gradient(135deg,rgba(200,154,67,.035) 0,rgba(200,154,67,.035) 1px,transparent 1px,transparent 8px);position:relative;overflow:hidden}.shipping-section:before,.shipping-section:after{content:"";position:absolute;width:260px;height:260px;border:1px solid rgba(200,154,67,.10);transform:rotate(45deg);pointer-events:none}.shipping-section:before{left:-150px;top:-130px}.shipping-section:after{right:-150px;bottom:-130px}.shipping-card{position:relative;display:grid;grid-template-columns:80px 1fr auto;gap:28px;align-items:center;padding:38px 42px;border:1px solid rgba(200,154,67,.42);background:radial-gradient(circle at 78% 20%,rgba(108,24,24,.22),transparent 34%),rgba(255,255,255,.018);box-shadow:0 18px 45px rgba(0,0,0,.24)}.shipping-card:before{content:"";position:absolute;inset:9px;border:1px solid rgba(200,154,67,.12);pointer-events:none}.shipping-symbol{width:62px;height:62px;border:1px solid var(--gold);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:1.25rem;transform:rotate(45deg)}.shipping-symbol::first-letter{transform:rotate(-45deg)}.shipping-copy{position:relative;z-index:1}.shipping-copy h2{font-family:Cinzel,serif;text-transform:uppercase;color:var(--gold);font-size:clamp(1.65rem,3vw,2.55rem);line-height:1.08;margin:.12em 0 .35em}.shipping-copy p{margin:.35em 0;color:#d9d0c3;max-width:740px}.shipping-copy .shipping-lead{font-family:"Cormorant Garamond",serif;color:var(--cream);font-size:1.35rem;line-height:1.2}.shipping-copy strong{color:var(--gold);font-weight:600}.shipping-action{position:relative;z-index:1;min-width:190px;text-align:center}.shipping-action .btn-shipping{width:100%;min-width:190px;opacity:.72;cursor:not-allowed}.shipping-action small{display:block;margin-top:9px;color:#9e9487;font-size:.64rem;letter-spacing:.03em}
@media(max-width:860px){.shipping-card{grid-template-columns:70px 1fr}.shipping-action{grid-column:1/-1;width:min(320px,100%);margin:auto}.shipping-action .btn-shipping{width:100%}}
@media(max-width:560px){.shipping-section{padding:46px 0}.shipping-card{grid-template-columns:1fr;padding:28px 22px;text-align:center}.shipping-symbol{margin:0 auto}.shipping-copy h2{font-size:1.7rem}.shipping-copy .shipping-lead{font-size:1.2rem}.shipping-action{grid-column:auto}.shipping-action .btn-shipping{min-width:0}}

/* ===== Lightbox / zoom de galería ===== */
.slide img{cursor:zoom-in}
.gallery-lightbox{position:fixed;inset:0;z-index:3000;display:none;align-items:center;justify-content:center;padding:28px;background:rgba(0,0,0,.92);backdrop-filter:blur(5px)}
.gallery-lightbox.open{display:flex}
.gallery-lightbox-inner{position:relative;width:min(1180px,94vw);height:min(820px,88vh);display:flex;align-items:center;justify-content:center}
.gallery-lightbox-image{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 22px 70px rgba(0,0,0,.7);border:1px solid rgba(200,154,67,.35)}
.gallery-lightbox-close,.gallery-lightbox-nav{position:absolute;z-index:2;border:1px solid rgba(200,154,67,.65);background:rgba(13,13,11,.72);color:var(--cream);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s}
.gallery-lightbox-close:hover,.gallery-lightbox-nav:hover{background:var(--gold);color:#17110a}
.gallery-lightbox-close{right:0;top:0;width:46px;height:46px;border-radius:50%;font-size:1.8rem}
.gallery-lightbox-nav{top:50%;transform:translateY(-50%);width:48px;height:58px;font-size:2rem}
.gallery-lightbox-prev{left:0}.gallery-lightbox-next{right:0}
.gallery-lightbox-caption{position:absolute;left:50%;bottom:0;transform:translateX(-50%);max-width:80%;padding:8px 16px;background:rgba(0,0,0,.68);color:#eee7da;text-align:center;font-size:.8rem}
@media(max-width:640px){.gallery-lightbox{padding:12px}.gallery-lightbox-inner{width:100%;height:82vh}.gallery-lightbox-nav{width:42px;height:52px}.gallery-lightbox-caption{max-width:92%;width:max-content}}

/* ===== Experiencia sonora ===== */
.sound-gate{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:24px;background:rgba(10,8,7,.94);backdrop-filter:blur(8px);opacity:1;transition:opacity .45s ease,visibility .45s ease}.sound-gate.hide{opacity:0;visibility:hidden}.sound-gate-card{width:min(560px,100%);text-align:center;padding:42px 34px;border:1px solid rgba(199,162,95,.45);background:linear-gradient(145deg,rgba(31,27,23,.98),rgba(14,12,11,.98));box-shadow:0 24px 80px rgba(0,0,0,.55)}.sound-gate-card h2{margin:.25rem 0 .8rem;font-family:'Cinzel',serif;font-size:clamp(2rem,6vw,3.2rem);color:#efe2c2}.sound-gate-card p:not(.section-kicker){max-width:430px;margin:0 auto 1.5rem;color:#d6c7aa;line-height:1.7}.sound-gate-symbol{font-size:2.1rem;color:#c7a25f;margin-bottom:.5rem}.sound-gate-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.sound-gate-actions .btn{min-width:190px}.sound-toggle{position:fixed;right:18px;bottom:18px;z-index:9000;width:48px;height:48px;border-radius:50%;border:1px solid rgba(199,162,95,.65);background:rgba(21,18,16,.9);color:#c7a25f;font-size:1.2rem;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.28);transition:transform .2s ease,background .2s ease,color .2s ease}.sound-toggle:hover{transform:translateY(-2px)}.sound-toggle.is-on{background:#7e2630;color:#fff;border-color:#a64b55}.sound-toggle:focus-visible{outline:2px solid #d8b66f;outline-offset:3px}@media(max-width:640px){.sound-gate-card{padding:34px 20px}.sound-gate-actions{flex-direction:column}.sound-gate-actions .btn{width:100%;min-width:0}.sound-toggle{right:14px;bottom:14px;width:46px;height:46px}}
