/* =========================================================
   FASE 6 — SISTEMA PREMIUM GLOBAL
   Miguel D. Rodríguez · independiente y extensible
   ========================================================= */
:root{
  --gold:#c8aa6a;
  --gold-soft:#e0c990;
  --ink:#080808;
  --paper:#f2ede4;
  --muted:rgba(242,237,228,.62);
  --hair:rgba(242,237,228,.12);
  --ease-premium:cubic-bezier(.2,.75,.2,1);
}

html{scroll-behavior:smooth}
body{overflow-x:hidden}
::selection{background:var(--gold);color:#080808}

/* Reading progress */
.reading-progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:200;pointer-events:none;background:transparent}
.reading-progress i{display:block;width:0;height:100%;transform-origin:left;background:linear-gradient(90deg,var(--novel-accent,var(--gold)),var(--gold-soft));box-shadow:0 0 18px rgba(220,195,130,.42)}

/* Cinematic ambient layer */
.book-page .launch-hero{isolation:isolate;overflow:hidden;min-height:min(920px,100vh)}
.book-page .launch-hero:after{content:"";position:absolute;inset:-8%;z-index:0;pointer-events:none;background-image:var(--cover-bg);background-size:cover;background-position:center;filter:blur(20px) saturate(.8);opacity:.28;transform:scale(1.08);transition:transform 1.8s var(--ease-premium),opacity 1.2s ease}
.book-page .launch-hero:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle at 72% 34%,var(--novel-glow,rgba(200,170,106,.16)),transparent 30%),linear-gradient(90deg,rgba(4,5,5,.96) 0%,rgba(4,5,5,.67) 50%,rgba(4,5,5,.86) 100%)}
.book-page .launch-noise{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");mix-blend-mode:screen}
.book-page .launch-hero-grid{position:relative;z-index:4}
.book-page .launch-cover-real,.book-page .cover-real{transform-style:preserve-3d;transition:transform .9s var(--ease-premium),box-shadow .9s var(--ease-premium);will-change:transform}
.book-page .launch-cover-real:hover,.book-page .cover-real:hover{box-shadow:34px 42px 110px rgba(0,0,0,.8);transform:translateY(-5px)}
.book-page .launch-cover-real img,.book-page .cover-real img{position:relative;z-index:3}

/* Shared cover-derived atmospheres */
.book-page[data-theme="spy"]{--cover-bg:url("../assets/novelas/sombras-de-la-noche-cover.webp")}
.book-page[data-theme="storm"]{--cover-bg:url("../assets/novelas/cenizas-de-la-tormenta-cover.webp")}
.book-page[data-theme="operation"]{--cover-bg:url("../assets/novelas/operacion-estrecho-cover.webp")}
.book-page[data-theme="state"]{--cover-bg:url("../assets/covers/secretos-de-estado.webp")}
.book-page[data-theme="mist"]{--cover-bg:url("../assets/covers/la-hermandad-de-la-niebla-cubierta.webp")}
.book-page[data-theme="pelayo"]{--cover-bg:url("../assets/covers/pelayo-cubierta.webp")}
.book-page[data-theme="benito"]{--cover-bg:url("../assets/covers/benito-soto-cubierta.webp")}

/* Hero title treatment */
.launch-kicker{position:relative;letter-spacing:.25em;font-size:.62rem;opacity:.75}
.book-page .launch-copy h1{max-width:850px;text-wrap:balance;line-height:.9;letter-spacing:-.045em;text-shadow:0 8px 45px rgba(0,0,0,.5)}
.book-page .impact{max-width:700px;text-wrap:balance}
.book-page .hero-lead{max-width:690px}

/* Cover frame */
.book-page .launch-cover-real:before,.book-page .cover-real:before{content:"";position:absolute;inset:-12px;z-index:1;border:1px solid color-mix(in srgb,var(--novel-accent,var(--gold)) 46%,transparent);pointer-events:none;transform:translateZ(10px)}
.book-page .launch-cover-real:after,.book-page .cover-real:after{content:"";position:absolute;left:12%;right:12%;bottom:-24px;height:36px;z-index:0;background:rgba(0,0,0,.72);filter:blur(20px);border-radius:50%;pointer-events:none}

/* Section transitions */
.launch-page section{position:relative}
.launch-page section:not(.launch-hero):before{content:"";position:absolute;top:0;left:50%;width:min(92%,1240px);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,var(--hair),transparent);opacity:.8}
.launch-statement{background:radial-gradient(circle at 15% 20%,color-mix(in srgb,var(--novel-accent,var(--gold)) 8%,transparent),transparent 28%),#0a0a09}
.launch-atmosphere{background:linear-gradient(180deg,#0c0c0b,#10100f 55%,#0b0b0a)}
.launch-quote{background:radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--novel-accent,var(--gold)) 9%,transparent),transparent 30%),#090908}
.launch-reading{background:#11100e}
.launch-data{background:#0b0b0a}
.launch-reviews{background:#11100e}
.launch-buy{background:linear-gradient(180deg,#090908,#0d0d0c)}

/* Atmosphere cards with image slots */
.atmosphere-grid .atmo-card{transition:transform .8s var(--ease-premium),border-color .5s ease,box-shadow .8s ease;position:relative;overflow:hidden}
.atmosphere-grid .atmo-card:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.05),transparent 35%,rgba(0,0,0,.35));pointer-events:none}
.atmosphere-grid .atmo-card:hover{transform:translateY(-8px);border-color:color-mix(in srgb,var(--novel-accent,var(--gold)) 38%,transparent);box-shadow:0 28px 70px rgba(0,0,0,.35)}

/* Spec cards */
.launch-specs>div{position:relative;overflow:hidden}
.launch-specs>div:after{content:"";position:absolute;right:-25px;bottom:-25px;width:80px;height:80px;border:1px solid color-mix(in srgb,var(--novel-accent,var(--gold)) 18%,transparent);border-radius:50%}

/* Story rail */
.story-rail{position:fixed;right:24px;top:50%;transform:translateY(-50%);z-index:80;display:grid;gap:11px;padding:12px 9px;border:1px solid rgba(242,237,228,.09);background:rgba(7,7,6,.52);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:30px}
.story-rail a{width:7px;height:7px;border:1px solid rgba(242,237,228,.5);border-radius:50%;display:block;position:relative;transition:transform .3s ease,background .3s ease,border-color .3s ease}
.story-rail a span{position:absolute;right:18px;top:50%;transform:translateY(-50%) translateX(5px);white-space:nowrap;padding:5px 8px;font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;background:#0c0c0b;border:1px solid var(--hair);opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease}
.story-rail a:hover span,.story-rail a.active span{opacity:1;transform:translateY(-50%) translateX(0)}
.story-rail a.active{background:var(--novel-accent,var(--gold));border-color:var(--novel-accent,var(--gold));transform:scale(1.35)}

/* Homepage — editorial hero */
.home-cinematic{position:absolute;inset:0;pointer-events:none;overflow:hidden;opacity:.7}
.home-cinematic:before{content:"";position:absolute;inset:-8%;background:radial-gradient(circle at 75% 45%,rgba(57,91,100,.28),transparent 27%),linear-gradient(90deg,rgba(5,5,5,.98),rgba(5,5,5,.58),rgba(5,5,5,.9)),url("../assets/novelas/sombras-de-la-noche-cover.webp");background-size:cover;background-position:center;filter:blur(13px);transform:scale(1.08)}
.home-cinematic:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,5,5,.98),transparent 42%,rgba(5,5,5,.28))}
.index-premium .hero{isolation:isolate}
.index-premium .hero-inner{position:relative;z-index:3}
.index-premium .hero h1{max-width:1000px}
.index-premium .hero h1 span{background:linear-gradient(110deg,#fff,var(--gold-soft));-webkit-background-clip:text;background-clip:text;color:transparent}

/* Homepage catalogue: real covers + editorial hover */
.index-premium .book-card,.catalog-premium .book-card{position:relative}
.index-premium .book-visual,.catalog-premium .book-visual{aspect-ratio:2/3;min-height:0;background:#090909;overflow:hidden}
.index-premium .book-visual img,.catalog-premium .book-visual img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s var(--ease-premium),filter 1s ease}
.index-premium .book-card:hover .book-visual img,.catalog-premium .book-card:hover .book-visual img{transform:scale(1.045);filter:brightness(1.05) saturate(1.08)}
.index-premium .book-visual:after,.catalog-premium .book-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 55%,rgba(0,0,0,.62));pointer-events:none}
.index-premium .book-info h3,.catalog-premium .book-info h3{letter-spacing:.015em}
.catalog-premium .page-hero{background:radial-gradient(circle at 80% 30%,rgba(198,166,107,.11),transparent 28%),#0b0b0a}
.catalog-premium .catalog-intro{max-width:780px}

/* Future-book placeholder is deliberately restrained */
.future-book{border:1px solid rgba(200,170,106,.22)!important;background:linear-gradient(145deg,#0e0e0d,#171511)!important}
.future-book .book-visual{display:grid;place-items:center;background:radial-gradient(circle,rgba(200,170,106,.12),transparent 48%),#0a0a09}
.future-book .cover-slot{border:1px dashed rgba(200,170,106,.35);margin:15px;width:calc(100% - 30px);height:calc(100% - 30px);display:grid;place-items:center}

/* Micro-interactions */
.btn,.arrow-link,.nav a{transition:color .35s ease,background .35s ease,border-color .35s ease,transform .35s var(--ease-premium),letter-spacing .35s ease}
.btn:hover{transform:translateY(-2px)}
.arrow-link:hover{letter-spacing:.035em}
.site-header.scrolled{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:rgba(7,7,7,.82)}

/* Accessibility */
:focus-visible{outline:2px solid var(--gold-soft);outline-offset:4px}
@media(max-width:900px){.story-rail{display:none}.book-page .launch-hero{min-height:auto}.book-page .launch-hero:after{opacity:.2;filter:blur(12px)}.book-page .launch-cover-real:hover,.book-page .cover-real:hover{transform:none}}
@media(max-width:560px){.book-page .launch-copy h1{font-size:clamp(3rem,16vw,5rem)}.book-page .launch-cover-real:before{inset:-7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.book-page .launch-hero:after,.book-page .launch-cover-real,.book-page .cover-real,.atmosphere-grid .atmo-card,.index-premium .book-visual img,.catalog-premium .book-visual img{transition:none!important}.story-rail{display:none}}

/* Catalogue-specific accents — derived from each real cover */
.cover-storm-card{box-shadow:inset 0 0 0 1px rgba(105,180,194,.18)}
.cover-operation-card{box-shadow:inset 0 0 0 1px rgba(50,105,145,.2)}
.cover-state-card{box-shadow:inset 0 0 0 1px rgba(200,176,103,.2)}
.cover-mist-card{box-shadow:inset 0 0 0 1px rgba(190,190,178,.18)}
.cover-pelayo-card{box-shadow:inset 0 0 0 1px rgba(207,169,91,.22)}
.cover-benito-card{box-shadow:inset 0 0 0 1px rgba(75,120,132,.24)}
.future-feature{position:relative;overflow:hidden;background:radial-gradient(circle at 55% 35%,rgba(200,170,106,.13),transparent 25%),linear-gradient(145deg,#0b0b0a,#1a1610)!important}
.future-feature:after{content:"";position:absolute;inset:14%;border:1px dashed rgba(200,170,106,.3);transform:rotate(-3deg)}
.future-feature .feature-title{position:relative;z-index:2}
.feature-caption{position:absolute;z-index:2;bottom:34px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:.55rem;letter-spacing:.2em;color:rgba(242,237,228,.42)}
.index-premium .book-visual img,.catalog-premium .book-visual img{object-fit:contain;background:#080908}
