/* ===========================================================
   Edward Greener — landing page moderna, tema Londres
   Serifada editorial (Playfair/Cormorant) + grotesca moderna
   (Space Grotesk) para UI. Paleta: noite londrina azul-carvão,
   dourado de lampião a gás e vermelho de cabine telefônica.
=========================================================== */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,500;0,600;0,700;0,900;1,600&family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500;1,600&family=Space+Grotesk:wght@400;500;600;700&display=swap');

:root{
  --night: #0a0d10;
  --night-2: #10151a;
  --night-3: #171e24;
  --panel: #1b2027;
  --fog: #7c8790;
  --cream: #f2ede3;
  --cream-dim: #cfc6b4;
  --gold: #d1a13f;
  --gold-bright: #f0c976;
  --red: #b23a2f;
  --red-bright: #d85042;
  --green: #4a6b57;
  --shadow: 0 30px 70px rgba(0,0,0,.5);
}

*{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{
  margin:0;
  background: var(--night);
  color: var(--cream);
  font-family: 'Cormorant Garamond', serif;
  font-size: 20px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
img{ max-width:100%; display:block; }
a{ color: inherit; }
.container{
  max-width: 1220px;
  margin: 0 auto;
  padding: 0 32px;
}
h1,h2,h3{
  font-family: 'Playfair Display', serif;
  margin: 0 0 .3em;
  font-weight: 700;
  letter-spacing: -.01em;
}
.ui{ font-family:'Space Grotesk', sans-serif; }
.label{
  font-family:'Space Grotesk', sans-serif;
  font-size: 13px;
  letter-spacing:.22em;
  text-transform: uppercase;
  color: var(--gold-bright);
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom: 20px;
}
.label .num{
  font-weight:700;
  color: var(--red-bright);
}
.label::after{
  content:"";
  flex:1;
  max-width: 60px;
  height:1px;
  background: currentColor;
  opacity:.4;
}

/* film grain overlay */
body::before{
  content:"";
  position: fixed; inset:0;
  z-index: 300;
  pointer-events:none;
  opacity: .035;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  mix-blend-mode: overlay;
}

/* ---------- reveal on scroll ---------- */
.reveal{
  opacity:0;
  transform: translateY(34px);
  transition: opacity .8s cubic-bezier(.2,.7,.3,1), transform .8s cubic-bezier(.2,.7,.3,1);
}
.reveal.is-visible{ opacity:1; transform:none; }

/* ---------- nav ---------- */
.site-nav{
  position: fixed;
  top:0; left:0; right:0;
  z-index: 200;
  display:flex;
  align-items:center;
  justify-content: space-between;
  padding: 22px 40px;
  transition: background .35s ease, padding .35s ease, border-color .35s ease;
  border-bottom: 1px solid transparent;
}
.site-nav.scrolled{
  background: rgba(10,13,16,.88);
  padding: 14px 40px;
  border-color: rgba(209,161,63,.15);
}
.brand{
  font-family:'Playfair Display', serif;
  font-weight: 700;
  font-size: 21px;
  text-decoration:none;
  color: var(--cream);
}
.brand span{ color: var(--gold-bright); }
.nav-links{
  display:flex;
  align-items:center;
  gap: 30px;
  list-style:none;
  margin:0; padding:0;
  font-family:'Space Grotesk', sans-serif;
}
.nav-links a{
  text-decoration:none;
  font-size: 14px;
  letter-spacing:.04em;
  color: var(--cream-dim);
  transition:color .2s ease;
}
.nav-links a:hover{ color: var(--gold-bright); }
.nav-cta{
  border: 1px solid var(--gold);
  padding: 9px 20px !important;
  border-radius: 999px;
  color: var(--gold-bright) !important;
}
.nav-cta:hover{ background: var(--gold); color: var(--night) !important; }

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  padding: 16px 32px;
  font-family:'Space Grotesk', sans-serif;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: .02em;
  text-decoration:none;
  border-radius: 999px;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease;
  border: 1px solid transparent;
}
.btn:hover{ transform: translateY(-3px); }
.btn-gold{
  background: linear-gradient(135deg, var(--gold-bright), var(--gold));
  color: var(--night);
  font-weight: 600;
  box-shadow: 0 14px 34px rgba(209,161,63,.28);
}
.btn-outline{
  border-color: rgba(242,237,227,.35);
  color: var(--cream);
}
.btn-outline:hover{ border-color: var(--gold-bright); color: var(--gold-bright); }

/* ================= HERO ================= */
.hero{
  position: relative;
  height: 100vh;
  min-height: 720px;
  overflow: hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  background: var(--night);
}
.hero-photo{
  position:absolute; inset:0;
  background: url('images/hero-bg.jpg') center 35% / cover no-repeat;
  filter: brightness(.3) saturate(1.05) blur(1px);
  transform: scale(1.08);
}
.hero-fog{
  position:absolute; left:-20%; right:-20%; bottom:0; height:46%;
  background: linear-gradient(180deg, rgba(10,13,16,0), rgba(10,13,16,.9) 80%),
              radial-gradient(ellipse at 30% 100%, rgba(124,135,144,.35), transparent 60%),
              radial-gradient(ellipse at 75% 100%, rgba(124,135,144,.3), transparent 55%);
  animation: fogDrift 26s ease-in-out infinite alternate;
  pointer-events:none;
}
@keyframes fogDrift{
  0%{ transform: translateX(-3%); }
  100%{ transform: translateX(3%); }
}
.hero-skyline{
  position:absolute; left:0; right:0; bottom:0;
  width:100%; height:auto;
  z-index:2;
  opacity:.9;
}
.hero-skyline path{ fill: #05070a; }
.hero-vignette{
  position:absolute; inset:0;
  background: radial-gradient(ellipse at 50% 30%, rgba(10,13,16,0), rgba(10,13,16,.55) 75%),
              linear-gradient(180deg, rgba(10,13,16,.35), transparent 30%, transparent 60%, var(--night));
}
.leaves{ position:absolute; inset:0; z-index:3; pointer-events:none; }
.leaf{
  position:absolute; top:-10%;
  width: 14px; height:14px;
  opacity:.75;
  background: var(--gold);
  clip-path: path('M7 0C10 4 14 6 14 10C14 12.5 11 14 7 14C3 14 0 12.5 0 10C0 6 4 4 7 0Z');
  animation-name: leafFall;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}
@keyframes leafFall{
  0%{ transform: translate(0,0) rotate(0deg); }
  100%{ transform: translate(var(--drift,40px), 115vh) rotate(360deg); }
}

.hero-content{
  position:relative; z-index:5;
  text-align:center;
  max-width: 820px;
  padding: 0 24px;
}
.hero-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-family:'Space Grotesk',sans-serif;
  font-size:13px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color: var(--gold-bright);
  border: 1px solid rgba(240,201,118,.4);
  border-radius: 999px;
  padding: 8px 18px;
  margin-bottom: 30px;
}
.hero-badge .dot{
  width:7px;height:7px;border-radius:50%;
  background: var(--red-bright);
  box-shadow: 0 0 10px var(--red-bright);
}
.split-title{
  font-size: clamp(52px, 9vw, 118px);
  line-height: .96;
  color: var(--cream);
  margin-bottom: 18px;
}
.split-title .word{ display:inline-block; overflow:hidden; }
.split-title .word span{
  display:inline-block;
  transform: translateY(110%);
  animation: wordUp 1s cubic-bezier(.2,.8,.2,1) forwards;
}
@keyframes wordUp{ to{ transform:none; } }
.hero-tagline{
  font-style: italic;
  font-size: clamp(19px, 2.4vw, 26px);
  color: var(--gold-bright);
  margin-bottom: 26px;
}
.hero-desc{
  font-family:'Space Grotesk', sans-serif;
  font-size: 16px;
  line-height:1.7;
  color: var(--cream-dim);
  max-width: 520px;
  margin: 0 auto 38px;
}
.hero-actions{ display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }

.scroll-line{
  position:absolute; z-index:5;
  bottom: 34px; left:50%; transform:translateX(-50%);
  display:flex; flex-direction:column; align-items:center; gap:10px;
  font-family:'Space Grotesk',sans-serif;
  font-size:11px; letter-spacing:.25em; text-transform:uppercase;
  color: var(--cream-dim);
}
.scroll-line .rail{
  width:1px; height:50px;
  background: rgba(242,237,227,.25);
  position:relative;
  overflow:hidden;
}
.scroll-line .rail::after{
  content:"";
  position:absolute; left:0; top:-100%;
  width:100%; height:100%;
  background: var(--gold-bright);
  animation: railDrop 2.2s ease-in-out infinite;
}
@keyframes railDrop{
  0%{ top:-100%; }
  60%{ top:100%; }
  100%{ top:100%; }
}

/* ================= MARQUEE ================= */
.marquee{
  background: var(--red);
  color: var(--cream);
  overflow:hidden;
  white-space:nowrap;
  padding: 16px 0;
  transform: rotate(-1deg);
  margin: -18px 0;
  position:relative;
  z-index: 10;
}
.marquee-track{
  display:inline-block;
  animation: marqueeScroll 32s linear infinite;
  font-family:'Space Grotesk',sans-serif;
  font-size: 15px;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-weight:600;
}
.marquee-track span{ margin: 0 22px; opacity:.92; }
.marquee-track span.sep{ color: var(--gold-bright); }
@keyframes marqueeScroll{
  0%{ transform: translateX(0); }
  100%{ transform: translateX(-50%); }
}

/* ================= SINOPSE (editorial) ================= */
.sinopse{
  padding: 170px 0 140px;
  background: var(--night);
  position:relative;
}
.sinopse .container{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 90px;
  align-items:center;
}
.sinopse h2{
  font-size: clamp(36px, 4.4vw, 56px);
  max-width: 560px;
}
.sinopse .dropcap p:first-of-type::first-letter{
  font-family:'Playfair Display', serif;
  font-size: 68px;
  float:left;
  line-height:.8;
  padding: 6px 12px 0 0;
  color: var(--gold-bright);
}
.sinopse p{ color: var(--cream-dim); font-size: 20px; }
.sinopse p + p{ margin-top: 1em; }
.sinopse-visual{
  position:relative;
}
.redline{
  position:absolute;
  left:-40px; top:-30px; bottom:-30px;
  width:3px;
  background: linear-gradient(var(--red-bright), transparent 70%);
  display:none;
}
@media(min-width:981px){ .redline{ display:block; } }

/* ---------- capa 3D interativa ---------- */
:root{
  --bw: 250px;
  --bh: 382px;
  --bd: 42px;
}
.book3d-wrap{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap: 22px;
  perspective: 1800px;
}
.book3d-stage{
  width: var(--bw);
  height: var(--bh);
  position:relative;
  filter: drop-shadow(0 40px 50px rgba(0,0,0,.55));
}
.book3d{
  position:relative;
  width:100%; height:100%;
  transform-style: preserve-3d;
  cursor: grab;
  touch-action: none;
}
.book3d.is-dragging{ cursor: grabbing; }
.book3d .face{
  position:absolute;
  top:50%; left:50%;
  background-size: cover;
  background-position:center;
  background-color: var(--panel);
  backface-visibility: hidden;
}
.book3d .f-front, .book3d .f-back{
  width: var(--bw); height: var(--bh);
  margin: calc(var(--bh) / -2) 0 0 calc(var(--bw) / -2);
}
.book3d .f-front{ background-image: url('images/book-front.jpg'); transform: translateZ(calc(var(--bd) / 2)); }
.book3d .f-back{ background-image: url('images/book-back.jpg'); transform: rotateY(180deg) translateZ(calc(var(--bd) / 2)); }
.book3d .f-spine, .book3d .f-fore{
  width: var(--bd); height: var(--bh);
  margin: calc(var(--bh) / -2) 0 0 calc(var(--bd) / -2);
}
.book3d .f-spine{ background-image: url('images/book-spine.jpg'); transform: rotateY(-90deg) translateZ(calc(var(--bw) / 2)); }
.book3d .f-fore{ background-image: url('images/book-pages.jpg'); background-size: 100% 100%; transform: rotateY(90deg) translateZ(calc(var(--bw) / 2)); }
.book3d .f-top, .book3d .f-bottom{
  width: var(--bw); height: var(--bd);
  margin: calc(var(--bd) / -2) 0 0 calc(var(--bw) / -2);
  background-image: url('images/book-pages.jpg');
  background-size: 100% 100%;
}
.book3d .f-top{ transform: rotateX(90deg) translateZ(calc(var(--bh) / 2)); }
.book3d .f-bottom{ transform: rotateX(-90deg) translateZ(calc(var(--bh) / 2)); }

.drag-hint{
  font-family:'Space Grotesk', sans-serif;
  font-size: 13px;
  letter-spacing:.08em;
  color: var(--cream-dim);
  display:flex;
  align-items:center;
  gap: 8px;
  opacity:1;
  transition: opacity .4s ease;
}
.drag-hint.is-hidden{ opacity:0; }
.drag-hint svg{ width:16px; height:16px; }

/* ================= LINHA / JORNADA (tube map) ================= */
.jornada{
  padding: 140px 0 160px;
  background: var(--night-2);
  text-align:center;
}
.jornada .label{ justify-content:center; }
.jornada h2{ font-size: clamp(32px,3.8vw,48px); margin-bottom: 14px; }
.jornada .lead{
  max-width: 560px;
  margin: 0 auto 70px;
  color: var(--cream-dim);
  font-size:19px;
}
.tube-wrap{ max-width: 980px; margin: 0 auto; }
.tube-line{ width:100%; height:auto; overflow: visible; }
.tube-line .rail{
  fill:none;
  stroke: var(--gold);
  stroke-width: 3;
  stroke-linecap: round;
  stroke-dasharray: 1400;
  stroke-dashoffset: 1400;
  transition: stroke-dashoffset 1.8s cubic-bezier(.2,.7,.2,1);
}
.tube-line.is-visible .rail{ stroke-dashoffset: 0; }
.tube-line circle{
  fill: var(--night-2);
  stroke: var(--gold-bright);
  stroke-width: 3;
  opacity:0;
  transform: scale(.4);
  transform-box: fill-box;
  transform-origin: center;
  transition: opacity .5s ease, transform .5s ease;
}
.tube-line.is-visible circle{ opacity:1; transform:scale(1); }
.tube-line.is-visible circle:nth-of-type(1){ transition-delay:.1s; }
.tube-line.is-visible circle:nth-of-type(2){ transition-delay:.5s; }
.tube-line.is-visible circle:nth-of-type(3){ transition-delay:.9s; }
.tube-line.is-visible circle:nth-of-type(4){ transition-delay:1.3s; }
.tube-line.is-visible circle:nth-of-type(5){ transition-delay:1.7s; }
.tube-labels{
  display:grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
  margin-top: -6px;
}
.tube-labels div{
  font-family:'Space Grotesk',sans-serif;
  font-size: 14px;
  letter-spacing:.03em;
  color: var(--cream-dim);
}
.tube-labels div em{
  display:block;
  font-family:'Cormorant Garamond',serif;
  font-style:italic;
  color: var(--cream);
  font-size: 17px;
  margin-top: 4px;
}

/* ================= AMOSTRA (flipbook) ================= */
.amostra{
  padding: 150px 0 160px;
  background: var(--night);
  text-align:center;
}
.amostra .label{ justify-content:center; }
.amostra h2{ font-size: clamp(32px,3.8vw,48px); margin-bottom:14px; }
.amostra .lead{
  max-width: 560px;
  margin: 0 auto 60px;
  color: var(--cream-dim);
  font-size: 19px;
}
:root{
  --pw: 300px;
  --ph: 450px;
}
.flipbook-wrap{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap: 30px;
}
.flipbook-stage{
  display:flex;
  align-items:center;
  justify-content:center;
}
.flipbook-controls{
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 22px;
}
.flip-btn{
  flex: none;
  width: 52px; height:52px;
  border-radius:50%;
  border: 1px solid rgba(242,237,227,.28);
  background: var(--panel);
  color: var(--cream);
  font-size:19px;
  cursor:pointer;
  transition: border-color .2s ease, color .2s ease, opacity .2s ease;
}
.flip-btn:hover:not(:disabled){ border-color: var(--gold-bright); color: var(--gold-bright); }
.flip-btn:disabled{ opacity:.3; cursor:default; }

.flipbook{
  position:relative;
  width: var(--pw);
  height: var(--ph);
  perspective: 2400px;
  box-shadow: 0 30px 60px rgba(0,0,0,.5);
}
.flipbook::before{
  content:"";
  position:absolute;
  left:-3px; top:6px; bottom:6px; width:10px;
  background: linear-gradient(90deg, #d8cdb4, #efe6d2);
  border-radius: 2px 0 0 2px;
  z-index:0;
}
.fb-page{
  position:absolute; inset:0;
  transform-style: preserve-3d;
  transform-origin: left center;
  transform: rotateY(0deg);
  transition: transform .85s cubic-bezier(.4,.1,.2,1);
}
.fb-page.is-flipped{ transform: rotateY(-178deg); }
.fb-face{
  position:absolute; inset:0;
  backface-visibility: hidden;
  background: #efe6d2;
  overflow:hidden;
  border: 1px solid rgba(0,0,0,.15);
}
.fb-face img{ width:100%; height:100%; object-fit: cover; display:block; }
.fb-face.fb-back{
  transform: rotateY(180deg);
  background: url('images/book-pages.jpg') center/cover;
}
.fb-counter{
  font-family:'Space Grotesk', sans-serif;
  font-size: 13px;
  letter-spacing:.08em;
  color: var(--cream-dim);
  min-width: 60px;
}
.amostra .cta-row{
  margin-top: 40px;
  display:flex;
  justify-content:center;
  gap:16px;
  flex-wrap:wrap;
}

/* ================= PULLQUOTE ================= */
.pullquote{
  position:relative;
  padding: 160px 24px;
  text-align:center;
  background: var(--night);
  overflow:hidden;
}
.pullquote .bigben{
  position:absolute; right: -60px; top: 50%; transform:translateY(-50%);
  width: 420px; opacity:.05;
}
.pullquote blockquote{
  position:relative; z-index:2;
  max-width: 840px;
  margin: 0 auto;
  font-family:'Playfair Display', serif;
  font-style: italic;
  font-weight: 600;
  font-size: clamp(28px, 4.4vw, 50px);
  line-height: 1.4;
  color: var(--gold-bright);
}
.pullquote .mark{ color: var(--red-bright); font-size:1.4em; }

/* ================= AUTOR ================= */
.autor{ background: var(--night-2); padding: 150px 0; }
.autor .container{
  display:grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 80px;
  align-items:center;
}
.autor-card{
  position:relative;
  background: var(--panel);
  border: 1px solid rgba(209,161,63,.15);
  padding: 30px;
  text-align:center;
}
.autor-card img{ width: 100%; max-width:280px; margin:0 auto; }
.autor h2{ font-size: clamp(32px,3.6vw,46px); }
.autor p{ color: var(--cream-dim); font-size: 19px; }
.autor p + p{ margin-top: 1em; }
.autor-social{
  margin-top: 26px;
  display:inline-flex;
  align-items:center;
  gap: 10px;
  color: var(--gold-bright);
  text-decoration:none;
  font-family:'Space Grotesk',sans-serif;
  font-size: 15px;
  border-bottom: 1px solid rgba(240,201,118,.4);
  padding-bottom: 4px;
}

/* ================= CENAS (horizontal scroll) ================= */
.cenas{ padding: 140px 0; background: var(--night); }
.cenas-head{
  display:flex; justify-content:space-between; align-items:flex-end;
  margin-bottom: 50px; flex-wrap:wrap; gap:20px;
}
.cenas h2{ font-size: clamp(32px,3.8vw,48px); margin-bottom:8px; }
.cenas .lead{ color: var(--cream-dim); max-width:460px; font-size:18px; }
.scroll-controls{ display:flex; gap:10px; }
.scroll-controls button{
  width:46px; height:46px;
  border-radius:50%;
  border: 1px solid rgba(242,237,227,.3);
  background: transparent;
  color: var(--cream);
  font-size: 18px;
  cursor:pointer;
  transition: border-color .2s ease, color .2s ease;
}
.scroll-controls button:hover{ border-color: var(--gold-bright); color: var(--gold-bright); }
.cenas-track{
  display:flex;
  gap: 26px;
  overflow-x:auto;
  scroll-snap-type: x mandatory;
  padding-bottom: 10px;
  scrollbar-width:none;
}
.cenas-track::-webkit-scrollbar{ display:none; }
.cenas-track figure{
  flex: 0 0 auto;
  scroll-snap-align:start;
  width: 300px;
  margin:0;
  background: var(--panel);
  padding: 12px 12px 18px;
  border: 1px solid rgba(209,161,63,.12);
}
.cenas-track img{ width:100%; height:230px; object-fit:cover; }
.cenas-track figcaption{
  font-family:'Cormorant Garamond', serif;
  font-style: italic;
  color: var(--cream-dim);
  font-size: 16px;
  padding-top: 12px;
  text-align:center;
}

/* ================= COMPRAR ================= */
.comprar{
  padding: 150px 0 130px;
  background: var(--night-2);
  text-align:center;
}
.comprar h2{ font-size: clamp(32px,3.8vw,48px); }
.comprar .lead{
  max-width: 540px; margin:0 auto 56px;
  color: var(--cream-dim); font-size:19px;
}
.store-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,300px));
  gap: 26px;
  justify-content:center;
}
.store-card{
  position:relative;
  background: var(--panel);
  border: 1px solid rgba(209,161,63,.18);
  padding: 42px 28px;
  text-decoration:none;
  color: var(--cream);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
  overflow:hidden;
}
.store-card::before{
  content:"";
  position:absolute; inset:0;
  background: radial-gradient(circle at 30% 0%, rgba(209,161,63,.18), transparent 60%);
  opacity:0;
  transition: opacity .3s ease;
}
.store-card:hover{
  transform: translateY(-8px);
  border-color: var(--gold);
  box-shadow: 0 20px 50px rgba(0,0,0,.4);
}
.store-card:hover::before{ opacity:1; }
.store-card .store-name{
  font-family:'Playfair Display', serif;
  font-size: 25px;
  margin-bottom: 8px;
  color: var(--gold-bright);
  position:relative;
}
.store-card .store-hint{ color: var(--cream-dim); font-size: 15px; margin-bottom: 22px; position:relative; }
.store-card .store-go{
  font-family:'Space Grotesk',sans-serif;
  font-size: 13px;
  letter-spacing:.15em;
  text-transform:uppercase;
  color: var(--gold);
  position:relative;
}
.store-card .store-go::after{ content:" →"; }

/* ================= FOOTER ================= */
footer{
  background: #060708;
  padding: 60px 0 30px;
  text-align:center;
  color: var(--cream-dim);
  font-size: 14px;
}
footer .brand{ font-size: 20px; display:block; margin-bottom: 18px; }
footer .foot-links{
  display:flex; justify-content:center; gap: 26px;
  margin-bottom: 26px; flex-wrap:wrap;
  font-family:'Space Grotesk',sans-serif;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.05em;
}
footer a{ text-decoration:none; color: var(--cream-dim); }
footer a:hover{ color: var(--gold-bright); }
footer .isbn{ opacity:.55; letter-spacing:.05em; margin-bottom: 6px; font-family:'Space Grotesk',sans-serif; font-size:12px;}
footer .copyright{ opacity:.4; font-family:'Space Grotesk',sans-serif; font-size:12px;}

/* ================= RESPONSIVE ================= */
@media (max-width: 980px){
  .nav-links{ display:none; }
  .sinopse .container, .autor .container{
    grid-template-columns: 1fr;
    gap: 50px;
  }
  .sinopse .container{ text-align:left; }
  .autor .container{ text-align:center; }
  .tube-labels{ grid-template-columns: repeat(5, minmax(90px,1fr)); }
  .tube-wrap{ overflow-x:auto; }
  .cenas-head{ flex-direction:column; align-items:flex-start; }
  .container{ padding: 0 22px; }
  .hero-desc{ padding: 0 10px; }
  .sinopse, .jornada, .amostra, .pullquote, .autor, .cenas, .comprar{
    padding-top: 90px; padding-bottom: 90px;
  }
  :root{ --pw: 240px; --ph: 360px; }
}
@media (max-width: 640px){
  .tube-labels{ grid-template-columns: repeat(5, 84px); }
  :root{ --bw: 210px; --bh: 321px; --bd: 36px; }
  :root{ --pw: 220px; --ph: 330px; }
}
