:root {
  --black: #050505;
  --coal: #101010;
  --gold: #c6a15b;
  --light: #e5c56b;
  --ivory: #e8e4dc;
  --muted: #aaa49a;
  --line: rgba(198, 161, 91, .28);
  --max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--black); }
body { margin: 0; background: var(--black); color: var(--ivory); font: 16px/1.7 Inter, system-ui, sans-serif; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, [tabindex]:focus-visible { outline: 2px solid var(--light); outline-offset: 4px; }
img { display: block; max-width: 100%; }
.wrap { width: min(var(--max), calc(100% - 40px)); margin: auto; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position: fixed; top: 10px; left: 10px; z-index: 2000; padding: 10px 14px; background: var(--light); color: #100c06; font-weight: 700; transform: translateY(-160%); }
.skip-link:focus { transform: none; }

.intro { position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; background: #030303; animation: intro-away .65s 1.35s forwards; }
.intro-seen .intro { display: none; }
.intro-mark { position: relative; width: 132px; height: 132px; display: grid; place-items: center; filter: drop-shadow(0 0 28px rgba(198, 161, 91, .2)); animation: intro-spin 1.3s cubic-bezier(.55, .05, .25, 1) forwards; }
.intro-mark img { width: 100%; height: 100%; object-fit: contain; }
.intro-mark::before, .intro-mark::after { content: ""; position: absolute; inset: -18px; border: 1px solid rgba(229, 197, 107, .4); border-radius: 50%; animation: pulse 1.1s ease-out .35s forwards; }
.intro-mark::after { inset: -38px; animation-delay: .55s; }
@keyframes intro-spin { 0% { transform: rotate(-300deg) scale(.4); opacity: 0; } 58% { transform: rotate(16deg); opacity: 1; } 100% { transform: rotate(0); } }
@keyframes pulse { to { transform: scale(1.65); opacity: 0; } }
@keyframes intro-away { to { opacity: 0; visibility: hidden; transform: scale(1.08); } }

[hidden] { display: none !important; }
.modal-open { overflow: hidden; }
.site-notice { position: fixed; inset: 0; z-index: 900; display: grid; place-items: center; padding: 24px; background: rgba(0, 0, 0, .82); backdrop-filter: blur(10px); animation: notice-in .38s ease both; }
.notice-card { position: relative; width: min(870px, 100%); max-height: calc(100vh - 48px); overflow: auto; display: grid; grid-template-columns: 170px 1fr; gap: 38px; align-items: start; padding: 42px; background: linear-gradient(145deg, #141414, #070707); border: 1px solid rgba(229, 197, 107, .55); box-shadow: 0 30px 100px rgba(0, 0, 0, .7); }
.notice-x { position: absolute; top: 12px; right: 16px; min-width: 44px; min-height: 44px; border: 0; background: transparent; color: #cfc8bb; font-size: 30px; line-height: 1; cursor: pointer; }
.notice-logo { width: 150px; height: 150px; object-fit: contain; }
.notice-kicker { display: block; color: var(--gold); font-size: .75rem; letter-spacing: .18em; text-transform: uppercase; }
.notice-copy h2 { margin: 8px 0 18px; font-size: clamp(2.1rem, 5vw, 3.4rem); }
.notice-copy p { margin: 0 0 16px; color: #cac4ba; }
.notice-highlight { margin: 22px 0; padding: 18px 20px; border-left: 3px solid var(--gold); background: rgba(198, 161, 91, .08); }
.notice-highlight strong { display: block; margin-bottom: 8px; color: var(--light); font: 1.35rem Georgia, serif; }
.notice-highlight p { margin: 0; }
.notice-follow { font-size: .9rem; }
.notice-follow a { color: var(--light); border-bottom: 1px solid var(--gold); }
.notice-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 24px; }
.notice-actions .button { cursor: pointer; font-size: .9rem; }
@keyframes notice-in { from { opacity: 0; } to { opacity: 1; } }

header { position: sticky; top: 0; z-index: 20; background: rgba(5, 5, 5, .92); backdrop-filter: blur(16px); border-bottom: 1px solid var(--line); }
nav { min-height: 76px; display: flex; align-items: center; gap: 30px; }
.brand { display: flex; align-items: center; gap: 13px; margin-right: auto; }
.mark { width: 48px; height: 48px; display: grid; place-items: center; flex: 0 0 auto; }
.mark img { width: 100%; height: 100%; object-fit: contain; }
.brand-name { font: 1rem Georgia, serif; letter-spacing: .16em; text-transform: uppercase; }
.site-language { position:relative; display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; white-space: nowrap; }
.site-language select { min-height: 34px; border: 1px solid var(--line); border-radius: 999px; padding: 5px 9px; background: #0d0d0d; color: var(--ivory); font: inherit; letter-spacing: .03em; cursor: pointer; }
.site-language > select { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0 0 0 0) !important; white-space:nowrap !important; border:0 !important; opacity:0 !important; pointer-events:none !important; }
.language-toggle { display:flex; align-items:center; gap:6px; min-height:34px; border:1px solid var(--line); border-radius:999px; padding:5px 9px; background:#0d0d0d; color:var(--ivory); font:inherit; cursor:pointer; }
.language-toggle img,.language-option img { width:22px; height:16px; object-fit:cover; border-radius:2px; flex:none; }
.language-menu { display:none; position:absolute; top:calc(100% + 5px); right:0; z-index:20; margin:0; min-width:145px; padding:5px; border:1px solid var(--line); border-radius:12px; background:#101010; box-shadow:0 16px 35px #000; }
.language-menu.open { display:grid; gap:3px; }
.language-option { display:grid; grid-template-columns:22px 1fr auto; align-items:center; gap:8px; width:100%; padding:8px; border:0; border-radius:8px; background:transparent; color:var(--ivory); text-align:left; cursor:pointer; }
.language-option:hover,.language-option:focus-visible { background:#262626; }
.language-option b { color:var(--gold); font-size:.72rem; }
.book-audio-badge { display:inline-flex; margin-left:8px; color:var(--gold); font-size:1rem; vertical-align:middle; }
.book-language-badge { display:inline-flex; align-items:center; gap:5px; margin-left:8px; color:var(--muted); font-size:.7rem; letter-spacing:.04em; }
.book-language-badge img { width:20px; height:14px; object-fit:cover; border-radius:2px; }
.links { display: flex; gap: 25px; color: #d1ccc3; font-size: .9rem; }
.links a:hover, .back:hover { color: var(--light); }
.menu-button { display: none; min-height: 44px; border: 1px solid var(--line); background: var(--coal); color: var(--ivory); padding: 9px 12px; border-radius: 8px; }
.back { font-size: .95rem; }

.promo-strip { height: 138px; background: #090909; border-bottom: 1px solid var(--line); overflow: hidden; }
.promo-inner { height: 100%; display: grid; grid-template-columns: auto 1fr auto; gap: 24px; align-items: center; }
.promo-label { color: var(--gold); font-size: .75rem; letter-spacing: .18em; text-transform: uppercase; }
.promo-viewport { height: 100%; position: relative; overflow: hidden; }
.promo-slide { position: absolute; inset: 0; display: grid; grid-template-columns: 132px minmax(0, 1fr) auto; gap: 24px; align-items: center; opacity: 0; transform: translateY(12px); pointer-events: none; transition: opacity .45s ease, transform .45s ease; }
.promo-slide.active { opacity: 1; transform: none; pointer-events: auto; }
.promo-slide img { width: 120px; height: 120px; object-fit: contain; object-position: center; }
.promo-slide > span { min-width: 0; }
.promo-slide strong { display: block; overflow-wrap: anywhere; color: var(--light); font: clamp(1.1rem, 2vw, 1.65rem)/1.1 Georgia, serif; }
.promo-slide small { display: block; margin-top: 4px; color: var(--muted); }
.promo-link { color: var(--light); font-size: .9rem; white-space: nowrap; }
.promo-toggle { min-width: 70px; min-height: 44px; border: 1px solid var(--line); background: transparent; color: #cfc9be; padding: 8px 11px; cursor: pointer; }

h1, h2, h3 { font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.eyebrow { display: flex; align-items: center; gap: 12px; color: var(--light); font-size: .75rem; letter-spacing: .28em; text-transform: uppercase; }
.eyebrow::before { content: ""; width: 42px; height: 1px; background: var(--gold); }
h2 { margin: 8px 0 25px; color: var(--light); font-size: clamp(2.6rem, 6vw, 4.4rem); line-height: 1.02; overflow-wrap: anywhere; }
.home-hero { min-height: calc(100vh - 76px); display: grid; align-items: center; position: relative; isolation: isolate; overflow: hidden; }
.home-bg { position: absolute; inset: 0; z-index: -3; background-position: center; background-size: cover; opacity: 0; transform: scale(1.025); transition: opacity 1.8s ease, transform 30s ease; filter: saturate(.72) contrast(.9) brightness(.62); }
.home-bg.active { opacity: .48; transform: scale(1.05); }
.home-bg.active { animation: hero-drift 18s ease-in-out infinite alternate; }
.home-hero::before { content: ""; position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(5, 5, 5, .96), rgba(5, 5, 5, .78) 55%, rgba(5, 5, 5, .62)); }
.home-hero::after { content: "JR"; position: absolute; right: 5vw; top: 50%; z-index: -1; transform: translateY(-52%); font: clamp(10rem, 28vw, 27rem) Georgia, serif; color: transparent; -webkit-text-stroke: 1px rgba(229, 197, 107, .18); }
.home-hero::after { animation: jr-breathe 6s ease-in-out infinite; }
.hero-orbit { position: absolute; z-index: -1; right: clamp(4%, 10vw, 14%); top: 50%; width: clamp(280px, 33vw, 500px); aspect-ratio: 1; transform: translateY(-50%); pointer-events: none; }
.hero-orbit::before, .hero-orbit::after, .hero-orbit span { content: ""; position: absolute; inset: 8%; border: 1px solid rgba(229, 197, 107, .44); border-radius: 50%; box-shadow: 0 0 34px rgba(198, 161, 91, .12), inset 0 0 28px rgba(198, 161, 91, .08); }
.hero-orbit::before { inset: 18%; border-color: rgba(229, 197, 107, .28); animation: orbit-spin 16s linear infinite; }
.hero-orbit::after { inset: 0; border-style: dashed; border-color: rgba(229, 197, 107, .22); animation: orbit-spin-reverse 24s linear infinite; }
.hero-orbit span { inset: 32%; border-color: rgba(229, 197, 107, .7); animation: orbit-pulse 3.2s ease-in-out infinite; }
.hero-orbit i { position: absolute; top: 1%; left: 50%; width: 3px; height: 50%; transform-origin: 50% 100%; background: linear-gradient(transparent, var(--light)); box-shadow: 0 0 18px var(--light); animation: orbit-spin 5s linear infinite; }
.hero-orbit b { position: absolute; inset: 0; display: grid; place-items: center; color: rgba(229, 197, 107, .92); font: clamp(3rem, 7vw, 6rem) Georgia, serif; letter-spacing: -.12em; text-shadow: 0 0 35px rgba(229, 197, 107, .35); animation: orbit-pulse 3.2s ease-in-out infinite; }
.scene-panel img { width: 100%; max-height: 520px; object-fit: cover; border: 1px solid var(--line); margin: 20px 0; }
.scenario-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.scenario-grid img { margin: 0; max-height: 360px; }
@media (max-width: 650px) { .scenario-grid { grid-template-columns: 1fr; } }
@keyframes orbit-spin { to { transform: rotate(360deg); } }
@keyframes orbit-spin-reverse { to { transform: rotate(-360deg); } }
@keyframes orbit-pulse { 0%, 100% { opacity: .62; transform: scale(.96); } 50% { opacity: 1; transform: scale(1.04); } }
.hero-inner { padding: 100px 0; }
.js .hero-inner > * { opacity: 0; }
.hero-inner.hero-ready > * { animation: hero-rise .85s both; }
.hero-inner.hero-ready > :nth-child(2) { animation-delay: .1s; }
.hero-inner.hero-ready > :nth-child(3) { animation-delay: .2s; }
.hero-inner.hero-ready > :nth-child(4) { animation-delay: .3s; }
@keyframes hero-rise { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: none; } }
@keyframes hero-drift { from { transform: scale(1.02) translate3d(0, 0, 0); } to { transform: scale(1.08) translate3d(-1%, -1%, 0); } }
@keyframes jr-breathe { 0%, 100% { opacity: .58; } 50% { opacity: 1; } }
.home-hero h1 { max-width: 900px; margin: 25px 0 28px; color: var(--light); font-size: clamp(3.6rem, 9vw, 7.6rem); line-height: .93; letter-spacing: -.055em; }
.hero-copy { max-width: 720px; font: clamp(1.18rem, 2vw, 1.5rem)/1.65 Georgia, serif; }
.actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 28px; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 13px 18px; border: 1px solid var(--gold); background: linear-gradient(135deg, var(--light), var(--gold)); color: #100c06; font-weight: 700; }
.button.secondary { color: var(--light); background: rgba(5, 5, 5, .6); }

section { padding: 108px 0; border-top: 1px solid rgba(198, 161, 91, .16); }
.section-head { display: grid; grid-template-columns: 1fr; }
.section-head > div { max-width: 900px; }
.lead { max-width: 780px; color: #d6d1c8; font: 1.25rem/1.7 Georgia, serif; }
.catalog { position: relative; isolation: isolate; overflow: hidden; }
.catalog::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(rgba(5, 5, 5, .96), rgba(5, 5, 5, .9)), url("books/porno-scene-2.webp") center/cover fixed; }
.catalog-toolbar { display: grid; grid-template-columns: auto 1fr auto; gap: 20px; align-items: center; margin: 38px 0 62px; padding: 16px 18px; background: rgba(16, 16, 16, .9); border: 1px solid var(--line); }
.catalog-toolbar > span:first-child { color: var(--light); font: 1rem Georgia, serif; white-space: nowrap; }
.catalog-filters { display: flex; gap: 8px; flex-wrap: wrap; }
.catalog-filter { min-height: 40px; padding: 8px 13px; border: 1px solid var(--line); border-radius: 999px; background: transparent; color: #cec8bd; cursor: pointer; }
.catalog-filter:hover, .catalog-filter.active { border-color: var(--gold); background: var(--gold); color: #100c06; }
.filter-status { color: var(--muted); font-size: .78rem; white-space: nowrap; }
.catalog-group + .catalog-group { margin-top: 78px; padding-top: 70px; border-top: 1px solid var(--line); }
.catalog-group-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 28px; }
.catalog-group-head h3 { margin: 8px 0 0; color: var(--light); font-size: clamp(2rem, 5vw, 3.3rem); line-height: 1; }
.featured-books, .other-books { display: grid; gap: 24px; }
.featured-books { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.other-books { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.book-card { display:flex; min-width:0; flex-direction:column; background:transparent; border:0; }
.book-card:hover { transform:none; }
.book-card-main { flex: 1; display: flex; min-width: 0; flex-direction: column; }
.book-card-main > img { display:block; width:100%; height:auto; margin:0 0 12px; object-fit:contain; object-position:center; background:transparent; box-shadow:none; transition:none; }
.book-card:hover .book-card-main > img { transform:none; filter:none; }
.catalog .featured-books .book-card-main > img,.catalog .other-books .book-card-main > img { width:100%; aspect-ratio:2/3; height:auto; margin:0 0 12px; padding:0; object-fit:contain; background:#080808; }
.book-card-copy { flex:1; display:flex; flex-direction:column; padding:18px; background:rgba(16,16,16,.97); border:1px solid var(--line); border-radius:12px; }
.meta { color: var(--gold); font-size: .75rem; letter-spacing: .1em; text-transform: uppercase; }
.book-card h3 { margin:10px 0 6px; color:var(--light); font-size:clamp(1.15rem,1.8vw,1.45rem); line-height:1.1; overflow-wrap:anywhere; }
.book-card p { color:#c7c2b8; font-size:.88rem; line-height:1.5; }
.book-card .book-subtitle { margin:0 0 10px; color:var(--ivory); font:italic .88rem/1.4 Georgia,serif; }
.book-collection { display:inline-block; align-self:flex-start; margin-top:10px; padding:4px 9px; border:1px solid rgba(229,197,107,.65); border-radius:999px; color:var(--gold-light); font-size:.76rem; line-height:1.35; }
.other-books .book-card-copy { padding: 19px; }
.other-books .book-card h3 { font-size: 1.3rem; }
.other-books .book-card p { font-size: .86rem; line-height: 1.55; }
.other-books .meta { font-size: .66rem; }
.other-books .audio-card { align-items: flex-start; flex-direction: column; padding: 13px; }
.other-books .audio-play { width: 100%; justify-content: center; font-size: .78rem; }
.card-link { margin-top: auto; padding-top: 15px; color: var(--light); border-top: 1px solid var(--line); font-size: .9rem; }
.audio-card, .audio-panel { display: flex; align-items: center; gap: 12px; border-top: 1px solid var(--line); background: rgba(198, 161, 91, .06); }
.audio-card { padding: 16px 20px; }
.audio-panel { margin: 24px 0; padding: 18px; border: 1px solid var(--line); }
.audio-play { display: inline-flex; align-items: center; gap: 9px; min-height: 46px; padding: 10px 15px; border: 1px solid var(--gold); border-radius: 999px; background: transparent; color: var(--light); font: 700 .88rem/1 Inter, system-ui, sans-serif; cursor: pointer; }
.audio-play:hover { background: rgba(198, 161, 91, .12); }
.audio-play span { width: 1em; text-align: center; }
.audio-status { color: var(--muted); font-size: .8rem; }
.audio-card audio, .audio-panel audio { display: none; }

.author-layout { display: grid; grid-template-columns: minmax(240px, 350px) 1fr; gap: 64px; align-items: start; }
.author-copy { grid-column: 2; }
.author-copy p, .studio-copy p { color: #c8c3ba; font-size: 1.05rem; }
.author-photo { grid-column: 1; grid-row: 1; margin: 12px 0 0; position: relative; }
.author-photo::before { content: ""; position: absolute; inset: 14px -14px -14px 14px; z-index: -1; border: 1px solid var(--gold); }
.author-photo img { width: 100%; height: 455px; object-fit: cover; object-position: center 15%; border: 1px solid var(--line); filter: saturate(.82); }
.credentials { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; margin-top: 34px; background: var(--line); border: 1px solid var(--line); }
.credential { background: var(--coal); padding: 20px; }
.studio-card { border-left: 2px solid var(--gold); padding: 5px 0 5px 30px; }
.contact { background: var(--coal); }
.contact-box { display: grid; grid-template-columns: minmax(250px,.72fr) minmax(320px,1.28fr); gap: 54px; align-items: start; }
.instagram { max-width: 100%; overflow-wrap: anywhere; color: var(--light); font: clamp(1.25rem, 3vw, 1.95rem) Georgia, serif; border-bottom: 1px solid var(--gold); }
.notify-form { padding:clamp(24px,4vw,42px); background:rgba(5,5,5,.72); border:1px solid var(--line); }
.notify-heading h3 { margin:8px 0 10px; color:var(--light); font-size:clamp(1.65rem,3vw,2.4rem); }
.notify-heading p { margin:0 0 24px; color:var(--muted); }
.notify-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.notify-fields label { display:grid; gap:7px; color:var(--ivory); font-size:.9rem; }
.notify-fields input:not([type="checkbox"]),.notify-fields select { width:100%; min-height:48px; padding:11px 13px; border:1px solid var(--line); border-radius:0; background:#0b0b0b; color:var(--light); font:inherit; }
.notify-fields label:nth-child(3),.notify-consent,.notify-fields .button,.notify-status { grid-column:1/-1; }
.notify-consent { grid-template-columns:auto 1fr!important; align-items:start; line-height:1.5; color:var(--muted)!important; }
.notify-consent input { width:19px; height:19px; margin-top:2px; accent-color:var(--gold); }
.notify-hp { position:absolute!important; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.notify-fields .button { justify-self:start; border-radius:0; cursor:pointer; }
.notify-fields .button:disabled { opacity:.55; cursor:wait; }
.notify-status { min-height:1.5em; margin:0; color:var(--muted); }
.notify-status.success { color:#a8d8a8; }
.notify-status.error { color:#ffadad; }

.book-page { position: relative; isolation: isolate; }
.book-page::before { content: ""; position: fixed; inset: 0; z-index: -3; background-image: linear-gradient(90deg, rgba(5, 5, 5, .98), rgba(5, 5, 5, .9) 48%, rgba(5, 5, 5, .68)), var(--page-bg); background-position: center; background-size: cover; }
.book-main { padding: 84px 0 110px; }
.book-main section { border-top: 0; }
.book-hero { display: grid; grid-template-columns: minmax(260px, 360px) 1fr; gap: 68px; align-items: center; padding: 0; }
.book-hero > div { padding:clamp(22px,4vw,44px); background:linear-gradient(145deg,rgba(18,18,18,.94),rgba(8,8,8,.78)); border:1px solid var(--line); border-radius:18px; box-shadow:0 24px 70px rgba(0,0,0,.32); }
.book-cover { width: 100%; height: min(72vh, 560px); aspect-ratio: 2/3; max-height: 560px; object-fit: contain; object-position: center; background: #090909; border: 1px solid rgba(255, 255, 255, .1); box-shadow: 0 35px 90px #000; }
.book-cover-3d { transform: perspective(1200px) rotateY(-4deg) rotateX(1deg); transition: transform .35s ease, box-shadow .35s ease; transform-origin: center; }
.book-cover-3d:hover, .book-cover-3d:focus-visible { transform: perspective(1200px) rotateY(3deg) rotateX(-1deg) translateY(-6px); box-shadow: 18px 38px 90px rgba(0,0,0,.75); }
@media (prefers-reduced-motion: reduce) { .book-cover-3d { transform: none; transition: none; } .book-cover-3d:hover, .book-cover-3d:focus-visible { transform: none; } }
.book-title { margin: 15px 0 23px; color: var(--light); font-size: clamp(2.6rem, 7vw, 5.5rem); line-height: .94; letter-spacing: -.025em; overflow-wrap: anywhere; }
.positioning { color: #ddd6ca; font: 1.4rem/1.5 Georgia, serif; }
.synopsis, .panel p { color: #c5beb3; font-size: 1.05rem; }
.chips { display: flex; gap: 8px; flex-wrap: wrap; margin: 24px 0; }
.chip { border: 1px solid var(--line); background: rgba(5, 5, 5, .55); color: #d0bf91; border-radius: 99px; padding: 7px 11px; font-size: .75rem; }
.facts { display: grid; grid-template-columns: repeat(auto-fit,minmax(140px,1fr)); gap: 1px; margin: 34px 0; overflow:hidden; background: var(--line); border: 1px solid var(--line); border-radius:16px; }
.edition-language { grid-column: 1 / -1; display: flex; align-items: center; gap: 14px; flex-wrap: wrap; padding: 16px 18px; background: #0b0b0b; border-top: 1px solid var(--line); }
.edition-label { color: var(--light); font: 1rem Georgia, serif; }
.edition-options { display: flex; gap: 8px; flex-wrap: wrap; }
.edition-option { min-height: 38px; padding: 7px 12px; border: 1px solid var(--line); border-radius: 999px; background: transparent; color: var(--ivory); cursor: pointer; }
.edition-option img { width:22px; height:16px; object-fit:cover; border-radius:2px; vertical-align:-3px; margin-right:5px; }
.edition-option.active, .edition-option:hover { border-color: var(--light); background: rgba(198, 161, 91, .15); }
.edition-option.pending { opacity:.58; cursor:default; }
.edition-language small { flex-basis: 100%; color: var(--muted); font-size: .8rem; }
.sample-language-block { margin-top: 26px; }
.sample-language-label { display:block; color:var(--light); font:1rem Georgia,serif; }
.sample-language-options { display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; }
.sample-language-option { display:inline-flex; align-items:center; gap:6px; min-height:42px; padding:9px 13px; border:1px solid var(--gold); border-radius:999px; background:rgba(198,161,91,.08); color:var(--ivory); font-weight:700; }
.sample-language-option img { width:22px; height:16px; object-fit:cover; border-radius:2px; }
.sample-language-option.disabled { border-color:var(--line); opacity:.58; cursor:not-allowed; }
.sample-language-block small { display:block; max-width:720px; margin-top:10px; color:var(--muted); font-size:.8rem; line-height:1.5; }
.fact { background: rgba(16, 16, 16, .96); padding: 20px; }
.fact b { display: block; color: var(--light); font: 1.25rem Georgia, serif; overflow-wrap: anywhere; }
.fact span { color: #918a80; font-size: .75rem; }
.book-page .book-main > .wrap { display:flex; flex-direction:column; gap:18px; align-items:stretch; }
.book-page .book-main > .wrap > .book-hero,.book-page .book-main > .wrap > .facts,.book-page .book-main > .wrap > .panel:has(.story-gallery),.book-page .book-main > .wrap > .panel:has(.mockup-ad),.book-page .book-main > .wrap > .scene-panel { grid-column:1/-1; }
.panel { margin-top: 28px; padding: clamp(26px, 5vw, 58px); background: linear-gradient(145deg,rgba(12,12,12,.94),rgba(6,6,6,.86)); border: 1px solid var(--line); border-radius:16px; backdrop-filter: blur(8px); }
.book-page .book-main > .wrap > .panel { min-width:0; min-height:0; margin:0; padding:clamp(22px,3vw,36px); border-top:2px solid var(--gold); }
.book-page .book-main > .wrap > .panel h2 { font-size:clamp(1.7rem,3.2vw,2.8rem); }
.book-page .book-main > .wrap > .panel p { max-width:860px; font-size:.98rem; line-height:1.6; }
.book-page .book-hero > div { padding:0; background:transparent; border:0; border-radius:0; box-shadow:none; }
.book-page .book-hero { gap:clamp(34px,6vw,78px); }
.book-page .book-title { max-width:760px; }
.book-page .purchase-panel { background:linear-gradient(145deg,rgba(20,19,17,.96),rgba(8,8,8,.92)); border-top:2px solid var(--gold); }
.book-page .purchase-panel h2 { margin-bottom:18px; }
.book-page .share-status { margin-top:14px; }
.mockup-ad { min-height: 420px; display: grid; place-items: center; margin-top: 34px; background: radial-gradient(circle, rgba(198, 161, 91, .15), transparent 64%); border: 1px solid rgba(198, 161, 91, .15); }
.mockup-ad img { width: min(100%, 780px); max-height: 620px; object-fit: contain; }
.availability { border-left: 2px solid var(--gold); padding-left: 20px; color: var(--muted); }

.story-gallery { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 14px; margin-top: 28px; }
.gallery-card { display: flex; min-width: 0; grid-column:span 2; flex-direction: column; overflow:hidden; background: #090909; border: 1px solid var(--line); border-radius:12px; transition: transform .25s, border-color .25s; }
.gallery-card:hover { transform: translateY(-4px); border-color: var(--light); }
.gallery-card img { width: 100%; height: clamp(190px, 24vw, 280px); object-fit: contain; object-position: center; background: #050505; }
.gallery-card span { display: block; padding: 17px; color: var(--muted); font-size: .9rem; line-height: 1.5; }
.gallery-card b { display: block; margin-bottom: 6px; color: var(--light); font: 1.1rem/1.2 Georgia, serif; }
.gallery-card:nth-last-child(2):nth-child(3n+1),.gallery-card:last-child:nth-child(3n+2) { grid-column:span 3; }
.gallery-card:last-child:nth-child(3n+1) { grid-column:1/-1; }

.lightbox { width: min(1080px, calc(100% - 32px)); max-width: none; height: min(92vh, 900px); max-height: none; padding: 0; color: var(--ivory); background: #080808; border: 1px solid rgba(229, 197, 107, .55); box-shadow: 0 30px 100px #000; }
.lightbox::backdrop { background: rgba(0, 0, 0, .88); backdrop-filter: blur(8px); }
.lightbox-shell { height: 100%; display: grid; grid-template-rows: 1fr auto; position: relative; }
.lightbox-media { min-height: 0; display: grid; place-items: center; padding: 52px 64px 20px; }
.lightbox-media img { width: 100%; height: 100%; object-fit: contain; }
.lightbox-caption { margin: 0; padding: 18px 72px 24px; color: #c9c2b6; text-align: center; }
.lightbox-counter { position: absolute; top: 18px; left: 18px; z-index: 2; margin: 0; color: var(--light); font-size: .8rem; letter-spacing: .12em; text-transform: uppercase; }
.lightbox-close, .lightbox-prev, .lightbox-next { position: absolute; z-index: 2; display: grid; place-items: center; width: 46px; height: 46px; border: 1px solid var(--line); background: rgba(5, 5, 5, .82); color: var(--light); cursor: pointer; }
.lightbox-close { top: 12px; right: 12px; font-size: 1.8rem; }
.lightbox-prev, .lightbox-next { top: 50%; transform: translateY(-50%); font-size: 1.6rem; }
.lightbox-prev { left: 12px; }
.lightbox-next { right: 12px; }

footer { padding: 34px 0 48px; border-top: 1px solid var(--line); background: #050505; color: #817c73; font-size: .8rem; }
.footer-row { display: flex; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.js .fade { opacity: 0; transform: translateY(18px); transition: opacity .7s, transform .7s; }
.js .fade.visible { opacity: 1; transform: none; }
.js .catalog .book-card { opacity: 0; transform: translateY(24px) scale(.985); }
.js .catalog .book-card.book-visible { opacity: 1; transform: none; transition: opacity .6s ease var(--reveal-delay, 0ms), transform .6s ease var(--reveal-delay, 0ms), border-color .25s; }

@media (max-width: 980px) {
  .featured-books { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .other-books { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .facts { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 820px) {
  nav { min-height: 68px; flex-wrap: wrap; padding: 10px 0; }
  .brand-name { font-size: .8rem; }
  .menu-button { display: block; }
  .links { display: none; width: 100%; padding: 10px 0 15px; flex-direction: column; }
  .links.open { display: flex; }
  .promo-strip { height: 112px; }
  .promo-inner { grid-template-columns: 1fr auto; gap: 10px; }
  .promo-label { display: none; }
  .promo-slide { grid-template-columns: 88px minmax(0, 1fr); gap: 12px; }
  .promo-slide img { width: 84px; height: 84px; }
  .promo-link { display: none; }
  .promo-slide strong { font-size: 1.05rem; }
  .promo-slide small { font-size: .75rem; line-height: 1.25; }
  .author-layout, .book-hero { grid-template-columns: 1fr; gap: 30px; }
  .author-copy, .author-photo { grid-column: 1; }
  .author-photo { grid-row: auto; max-width: 300px; margin-bottom: 25px; }
  section { padding: 78px 0; }
  .author-photo img { height: auto; }
  .book-cover { width: 100%; height: min(68vh, 460px); max-width: 320px; margin-inline: auto; }
  .contact-box { grid-template-columns: 1fr; }
  .book-main { padding-top: 60px; }
  .book-hero { align-items: start; }
  .mockup-ad { min-height: 320px; }
  .home-hero { min-height: 690px; }
  .story-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .story-gallery .gallery-card { grid-column:auto; }
  .catalog-toolbar { grid-template-columns: 1fr; }
}

@media (max-width: 650px) {
  .site-notice { padding: 14px; }
  .notice-card { max-height: calc(100vh - 28px); grid-template-columns: 1fr; gap: 12px; padding: 30px 22px 24px; }
  .notice-logo { width: 82px; height: 82px; }
  .notice-copy h2 { font-size: 2rem; }
  .notice-highlight { padding: 15px; }
  .notice-highlight strong { font-size: 1.15rem; }
  .notice-actions { display: grid; grid-template-columns: 1fr; }
  .notice-actions .button { width: 100%; }
  .featured-books { grid-template-columns: 1fr; }
  .notify-fields { grid-template-columns:1fr; }
  .notify-fields label,.notify-consent,.notify-fields .button,.notify-status { grid-column:1; }
  .site-language { margin-left: auto; }
  .hero-orbit { right: -22%; top: 32%; width: 300px; opacity: .58; }
  .other-books { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .other-books .book-card-copy { padding: 14px; }
  .other-books .book-card p, .other-books .meta { display: block; }
  .other-books .book-card h3 { margin: 10px 0 14px; font-size: 1.05rem; }
  .other-books .card-link { font-size: .78rem; }
}

@media (max-width: 560px) {
  .wrap { width: min(100% - 28px, var(--max)); }
  .back { max-width: 46%; text-align: right; line-height: 1.25; }
  .brand-name { letter-spacing: .08em; }
  .home-hero h1 { font-size: clamp(3rem, 16vw, 4.4rem); overflow-wrap: anywhere; }
  h2 { font-size: clamp(2.25rem, 12vw, 3.2rem); }
  .book-title { font-size: clamp(2.15rem, 11vw, 3.1rem); line-height: .98; overflow-wrap: anywhere; }
  .positioning { font-size: 1.2rem; }
  .facts { grid-template-columns: 1fr 1fr; }
  .credentials { grid-template-columns: 1fr; }
  .intro-mark { width: 108px; height: 108px; }
  .promo-toggle { min-width: 64px; font-size: .75rem; padding: 7px 8px; }
  .promo-slide small { display: none; }
  .promo-slide strong { font-size: .92rem; line-height: 1.05; }
  .story-gallery { grid-template-columns: 1fr; }
  .gallery-card img { height: 240px; }
  .panel { padding: 26px 18px; }
  .lightbox { width: calc(100% - 16px); height: 94vh; }
  .lightbox-media { padding: 56px 38px 14px; }
  .lightbox-caption { padding: 12px 46px 20px; font-size: .9rem; }
  .lightbox-prev { left: 4px; }
  .lightbox-next { right: 4px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .js .fade { opacity: 1; transform: none; }
  .intro { animation-duration: .01s; animation-delay: .01s; }
  .intro-mark, .intro-mark::before, .intro-mark::after { animation: none; }
  .catalog::before { background-attachment: scroll; }
  .promo-slide, .home-bg, .book-card, .gallery-card { transition: none; animation: none; }
  .hero-inner > *, .home-hero::after { animation: none; opacity: 1; }
  .hero-orbit, .hero-orbit::before, .hero-orbit::after, .hero-orbit span, .hero-orbit i, .hero-orbit b { animation: none; }
  .js .catalog .book-card { opacity: 1; transform: none; }
  .promo-toggle { display: none; }
}

/* Universo temático: mesma base editorial, dez atmosferas leves. */
.theme-hub { padding: 72px 0 36px; background: linear-gradient(180deg,#090909,#050505); }
.theme-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.theme-tile { min-height:150px; padding:20px; display:flex; flex-direction:column; justify-content:space-between; color:var(--ivory); border:1px solid var(--line); background:#0d0d0d; transition:transform .25s,border-color .25s,background .25s; }
.theme-tile:hover { transform:translateY(-5px); border-color:var(--light); background:#151515; }
.theme-symbol { color:var(--light); font-size:1.8rem; line-height:1; }
.theme-tile strong { margin-top:16px; font:1.25rem/1.1 Georgia,serif; }
.theme-tile small { color:var(--muted); font-size:.78rem; line-height:1.35; }
.theme-kids { background:linear-gradient(145deg,#14221e,#0d0d0d); }
.theme-romance { background:linear-gradient(145deg,#26151a,#0d0d0d); }
.theme-infantil { background:linear-gradient(145deg,#181735,#0d0d0d); }
.theme-psicologia { background:linear-gradient(145deg,#102322,#0d0d0d); }
.theme-espiritualidade { background:linear-gradient(145deg,#241c10,#0d0d0d); }
.theme-aventura { background:linear-gradient(145deg,#14221b,#0d0d0d); }
.theme-humor { background:linear-gradient(145deg,#282011,#0d0d0d); }
.theme-autoajuda { background:linear-gradient(145deg,#18202a,#0d0d0d); }
.theme-misterio { background:linear-gradient(145deg,#171322,#0d0d0d); }
.theme-sociedade { background:linear-gradient(145deg,#211329,#0d0d0d); }
.theme-page { min-height:100vh; background:#070707; }
.theme-page .theme-hero { padding:130px 0 78px; border-bottom:1px solid var(--line); background:radial-gradient(circle at 78% 24%,var(--theme-glow,rgba(229,197,107,.18)),transparent 38%),linear-gradient(135deg,var(--theme-bg,#111),#070707 68%); overflow:hidden; position:relative; }
.theme-page .theme-hero::after { content:""; position:absolute; width:420px; height:420px; right:-120px; top:40px; border:1px solid rgba(229,197,107,.28); border-radius:50%; animation:themeOrbit 18s linear infinite; }
.theme-page .theme-hero-inner { position:relative; z-index:1; max-width:720px; }
.theme-page[data-theme-page="kids"] { --theme-bg:#10211c; --theme-glow:rgba(122,207,173,.2); }
.theme-page[data-theme-page="romance"] { --theme-bg:#28151b; --theme-glow:rgba(177,76,101,.2); }
.theme-page[data-theme-page="infantojuvenil"] { --theme-bg:#171832; --theme-glow:rgba(115,112,215,.2); }
.theme-page[data-theme-page="psicologia"] { --theme-bg:#102525; --theme-glow:rgba(74,177,163,.18); }
.theme-page[data-theme-page="espiritualidade"] { --theme-bg:#271c0d; --theme-glow:rgba(229,197,107,.2); }
.theme-page[data-theme-page="aventura"] { --theme-bg:#122219; --theme-glow:rgba(89,168,116,.2); }
.theme-page[data-theme-page="humor"] { --theme-bg:#2a2110; --theme-glow:rgba(239,177,65,.2); }
.theme-page[data-theme-page="autoajuda"] { --theme-bg:#17212d; --theme-glow:rgba(102,157,209,.2); }
.theme-page[data-theme-page="misterio"] { --theme-bg:#171222; --theme-glow:rgba(166,107,201,.2); }
.theme-page[data-theme-page="sociedade"] { --theme-bg:#241329; --theme-glow:rgba(217,105,186,.2); }
.theme-hero-symbol { display:block; color:var(--light); font-size:4rem; margin-bottom:18px; animation:themeFloat 4s ease-in-out infinite; }
.theme-hero-title { margin:0 0 20px; font:clamp(3.1rem,8vw,6.8rem)/.94 Georgia,serif; letter-spacing:-.04em; }
.theme-hero-copy { max-width:600px; color:#c9c2b6; font-size:1.1rem; line-height:1.7; }
.theme-books-section { padding:70px 0 110px; }
.theme-books { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.theme-books .book-card { min-width:0; }
.theme-count { color:var(--light); font-size:.86rem; }
.theme-empty { grid-column:1/-1; padding:40px; border:1px solid var(--line); color:var(--muted); }
.theme-empty strong { display:block; color:var(--ivory); font:1.5rem Georgia,serif; margin-bottom:8px; }
@keyframes themeOrbit { to { transform:rotate(360deg); } }
@keyframes themeFloat { 50% { transform:translateY(-8px) rotate(4deg); } }
.featured-books .book-card-main > img,.other-books .book-card-main > img { max-height:none; object-fit:contain; }
.theme-books .book-card-main > img { max-height:330px; object-fit:contain; }
@media (max-width:980px) { .theme-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .theme-books { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:650px) { .theme-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .theme-tile { min-height:132px; padding:15px; } .theme-books { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; } .theme-page .theme-hero { padding:100px 0 62px; } .theme-page .theme-hero::after { width:280px; height:280px; right:-130px; } }
@media (max-width:760px) { .book-page .book-main > .wrap { display:block; } .book-page .book-main > .wrap > .book-hero,.book-page .book-main > .wrap > .facts,.book-page .book-main > .wrap > .panel { grid-column:1; grid-row-end:auto!important; margin-bottom:16px; } .book-page .book-main > .wrap > .panel { min-height:0; } }
@media (max-width:650px) { .catalog .featured-books .book-card-main > img,.catalog .other-books .book-card-main > img { width:100%; aspect-ratio:2/3; height:auto; object-fit:contain; } .book-card-copy { padding:13px; } }
@media (prefers-reduced-motion:reduce) { .theme-page .theme-hero::after,.theme-hero-symbol { animation:none; } }

/* Experiência infantil isolada: só é ativada nas páginas JR Kids. */
.kids-experience { --kids-ink:#244044; --kids-purple:#7957b8; --kids-pink:#f47f9c; --kids-yellow:#ffd76a; --kids-blue:#71c9e8; background:#fff9ed; color:var(--kids-ink); font-family:'Fredoka',system-ui,sans-serif; }
.kids-experience header { background:rgba(255,255,255,.84); border-bottom:2px solid rgba(36,64,68,.12); }
.kids-experience .brand-name,.kids-experience .back { color:var(--kids-ink); }
.kids-experience .mark { border-color:var(--kids-purple); background:#fff; }
.kids-experience .mark img { filter:none; }
.kids-sky { position:fixed; inset:0; z-index:0; pointer-events:none; overflow:hidden; background:linear-gradient(180deg,#dff6ff 0%,#fff9ed 72%); }
.kids-sky::before,.kids-sky::after { content:""; position:absolute; width:180px; height:58px; border-radius:50px; background:rgba(255,255,255,.82); filter:blur(1px); animation:kidsCloud 24s linear infinite; }
.kids-sky::before { top:18%; left:-200px; box-shadow:48px 18px 0 14px rgba(255,255,255,.82),100px 0 0 5px rgba(255,255,255,.82); }
.kids-sky::after { top:54%; left:-280px; transform:scale(.7); animation-duration:31s; animation-delay:-12s; opacity:.68; }
.kids-experience main,.kids-experience footer { position:relative; z-index:1; }
.kids-experience .theme-hero { min-height:560px; padding:124px 0 76px; background:transparent; border:0; }
.kids-experience .theme-hero::after { border-color:rgba(121,87,184,.28); }
.kids-experience .theme-hero-title { color:var(--kids-purple); text-shadow:3px 4px 0 rgba(244,127,156,.28); }
.kids-experience .theme-hero-copy,.kids-experience .lead,.kids-experience p { color:var(--kids-ink); }
.kids-experience .theme-hero-symbol { font-size:5rem; color:var(--kids-pink); text-shadow:0 8px 0 rgba(255,215,106,.55); }
.kids-experience .theme-hero-inner::after { content:"★  ☁  ✦  ☁  ★"; display:block; margin-top:34px; color:var(--kids-yellow); font-size:2rem; letter-spacing:.5em; animation:kidsTwinkle 3s ease-in-out infinite; }
.kids-experience .theme-books-section { padding-top:36px; background:rgba(255,255,255,.45); }
.kids-experience .theme-books { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.kids-experience .book-card { border:3px solid rgba(121,87,184,.22); border-radius:24px; background:#fff; box-shadow:0 12px 0 rgba(121,87,184,.1); overflow:hidden; }
.kids-experience .book-card:hover { border-color:var(--kids-pink); box-shadow:0 15px 0 rgba(244,127,156,.18); }
.kids-experience .book-card-main > img { padding:12px; background:linear-gradient(135deg,#fff,#eafaff); border-radius:20px; }
.kids-experience .book-card:hover .book-card-main > img,.kids-experience .book-card.touch-bounce .book-card-main > img { animation:kidsBookBounce .7s ease; }
.kids-experience .book-card-copy { padding:18px; }
.kids-experience .book-card h3 { color:var(--kids-purple); font-size:1.35rem; }
.kids-experience .card-link,.kids-experience .theme-count { color:#b95778; }
.kids-experience .kids-activity { max-width:760px; margin:42px auto 0; padding:24px; border:3px solid rgba(113,201,232,.45); border-radius:28px; background:rgba(255,255,255,.9); box-shadow:0 10px 0 rgba(113,201,232,.13); }
.kids-experience .kids-activity h2 { margin-top:0; color:var(--kids-purple); font-size:clamp(1.8rem,6vw,2.8rem); }
.kids-quiz-options { display:grid; gap:10px; }
.kids-quiz-option,.kids-audio-button { border:0; border-radius:999px; padding:14px 18px; color:#fff; font:inherit; font-weight:600; cursor:pointer; background:var(--kids-purple); box-shadow:0 5px 0 #59408b; transition:transform .15s,box-shadow .15s; }
.kids-quiz-option:nth-child(2n),.kids-audio-button { background:#e56c91; box-shadow:0 5px 0 #b64e70; }
.kids-quiz-option:hover,.kids-audio-button:hover { transform:translateY(-2px) scale(1.02); }
.kids-quiz-option:active,.kids-audio-button:active { transform:translateY(4px); box-shadow:0 1px 0 currentColor; }
.kids-quiz-option:focus-visible,.kids-audio-button:focus-visible,.kids-experience a:focus-visible { outline:4px solid var(--kids-yellow); outline-offset:3px; }
.kids-quiz-feedback { min-height:1.5em; margin:14px 0 0; font-weight:600; }
.kids-caterpillar-progress { position:fixed; z-index:8; left:12px; right:12px; bottom:12px; height:24px; display:flex; align-items:center; gap:3px; pointer-events:none; }
.kids-caterpillar-progress span { width:22px; height:22px; border-radius:50%; background:#d8e1df; border:2px solid #fff; transition:background .2s,transform .2s; }
.kids-caterpillar-progress span.active { background:var(--kids-pink); transform:translateY(-4px); }
.kids-caterpillar-progress span:last-child { background:var(--kids-yellow); }
.kids-story-tools { margin:28px 0; padding:20px; border-radius:26px; background:#fff8d9; border:3px solid rgba(255,215,106,.8); }
.kids-story-tools h2 { margin:0 0 8px; color:var(--kids-purple); font-size:1.7rem; }
.kids-audio-button[disabled] { opacity:.62; cursor:not-allowed; box-shadow:0 3px 0 #9f8290; }
.kids-audio-icon { display:inline-block; margin-right:6px; animation:kidsPulse 1.4s ease-in-out infinite; }
.kids-experience.book-page { background:#fff9ed; }
.kids-experience.book-page::before { opacity:.08; }
.kids-experience.book-page .book-title { color:var(--kids-purple); }
.kids-experience.book-page .positioning { color:#b95778; }
.kids-experience.book-page .book-cover { border:5px solid #fff; border-radius:24px; box-shadow:0 14px 0 rgba(121,87,184,.15); }
@keyframes kidsCloud { to { transform:translateX(calc(100vw + 420px)); } }
@keyframes kidsBookBounce { 0%,100% { transform:rotate(0) translateY(0); } 35% { transform:rotate(-4deg) translateY(-9px); } 70% { transform:rotate(4deg) translateY(-4px); } }
@keyframes kidsPulse { 50% { transform:scale(1.2) rotate(-8deg); } }
@keyframes kidsTwinkle { 50% { opacity:.5; transform:scale(1.04); } }
@media (max-width:650px) { .kids-experience .theme-books { grid-template-columns:1fr; } .kids-experience .theme-hero { min-height:500px; } .kids-caterpillar-progress { left:7px; right:7px; } .kids-caterpillar-progress span { width:18px; height:18px; } }
@media (prefers-reduced-motion:reduce) { .kids-sky::before,.kids-sky::after,.kids-experience .theme-hero-inner::after,.kids-hero-symbol,.kids-audio-icon { animation:none; } .kids-experience .book-card:hover .book-card-main > img,.kids-experience .book-card.touch-bounce .book-card-main > img { animation:none; } }

/* Catálogo homologado em 10/10/2026. */
.current-themes { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:820px; }
.current-catalog .featured-books { grid-template-columns:repeat(2,minmax(0,360px)); justify-content:center; }
.current-catalog .book-card-main > img { width:100%; aspect-ratio:2/3; height:auto; max-height:540px; object-fit:contain; object-position:center; background:#080808; }
.current-catalog .book-card-copy { padding:14px 16px; }
.current-catalog .book-card h3 { margin:8px 0 5px; font-size:clamp(1.12rem,1.7vw,1.38rem); }
.current-catalog .book-card p { margin:5px 0; font-size:.84rem; line-height:1.45; }
.current-catalog .book-card .book-subtitle { margin:0 0 7px; }
.book-price { display:block; margin-top:10px; color:var(--light); font:600 1.05rem Georgia,serif; }
.book-languages { display:inline-flex; align-items:center; align-self:flex-start; margin-top:auto; padding:7px 10px; border:1px solid var(--line); border-radius:999px; color:var(--ivory); font-size:.75rem; }
.book-primary-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.audio-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:20px; }
.audio-list .audio-panel { min-width:0; margin:0; flex-wrap:wrap; border-radius:12px; }
.purchase-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:22px; }
.purchase-option { display:flex; min-width:0; flex-direction:column; align-items:flex-start; padding:20px; border:1px solid var(--line); border-radius:12px; background:rgba(5,5,5,.52); }
.purchase-option strong { color:var(--light); font:1.2rem Georgia,serif; }
.purchase-option .price { margin:10px 0 0; color:var(--gold); font:700 1.8rem Georgia,serif; }
.purchase-option p { flex:1; font-size:.92rem; }
@media (max-width:760px) {
  .current-themes,.current-catalog .featured-books,.purchase-options,.audio-list { grid-template-columns:1fr; }
  .current-catalog .featured-books { max-width:360px; margin-inline:auto; }
  .book-primary-actions .button { width:100%; justify-content:center; }
}

/* Referência visual incorporada da loja enviada: busca, faixa editorial e leitura em três passos. */
.site-search { display:flex; align-items:center; min-width:170px; max-width:230px; margin-left:auto; }
.site-search input { width:100%; min-height:36px; padding:8px 12px; border:1px solid var(--line); border-radius:999px; background:#0d0d0d; color:var(--ivory); font:inherit; font-size:.78rem; }
.site-search input::placeholder { color:#8d887e; }
.site-search input:focus { border-color:var(--light); outline:2px solid rgba(229,197,107,.2); }
.editorial-strip { overflow:hidden; border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--gold); color:#100c06; }
.editorial-strip-track { width:max-content; display:flex; align-items:center; gap:24px; padding:12px 0; font:600 1.05rem Georgia,serif; white-space:nowrap; animation:editorial-slide 32s linear infinite; }
.editorial-strip-track b { color:#604a1b; }
@keyframes editorial-slide { from{transform:translateX(0)} to{transform:translateX(-34%)} }
.how-it-works { background:linear-gradient(180deg,#0b0b0b,#12100d); }
.how-it-works h2 { max-width:700px; }
.how-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin-top:38px; background:var(--line); border:1px solid var(--line); }
.how-grid article { min-height:220px; padding:28px; background:#0d0d0d; }
.how-grid article:nth-child(2) { background:#17130c; }
.how-grid article:nth-child(3) { background:#11151a; }
.how-grid span { color:var(--light); font:italic 2.2rem Georgia,serif; }
.how-grid h3 { margin:24px 0 10px; color:var(--ivory); font-size:1.5rem; }
.how-grid p { margin:0; color:var(--muted); font-size:.95rem; line-height:1.6; }
.combo-section { background:#0a0a0a; }
.combo-card { display:grid; grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr); gap:42px; align-items:center; padding:30px; border:1px solid var(--line); background:linear-gradient(135deg,#11100e,#080808); }
.combo-covers { display:flex; align-items:flex-end; justify-content:center; min-height:250px; padding:20px; }
.combo-covers img { width:clamp(130px,18vw,190px); aspect-ratio:2/3; object-fit:cover; border:1px solid var(--line); box-shadow:0 18px 35px rgba(0,0,0,.55); }
.combo-covers img + img { margin-left:-30px; transform:translateY(20px); }
.combo-copy h3 { margin:12px 0; color:var(--ivory); font:clamp(1.8rem,4vw,3rem)/1 Georgia,serif; }
.combo-copy p { max-width:620px; color:#c7c2b8; }
.combo-note { padding:14px 16px; border-left:2px solid var(--gold); background:rgba(198,161,91,.08); font-size:.9rem; }
.combo-note strong { color:var(--light); }
.kids-home-feature { background:#ead184; color:#100f0c; border-top:0; }
.kids-home-grid { display:grid; grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr); gap:48px; align-items:center; }
.kids-home-copy h2 { max-width:600px; margin-bottom:18px; color:#100f0c; }
.kids-home-copy p { max-width:550px; font-size:1.15rem; line-height:1.6; }
.kids-home-copy .eyebrow { color:#100f0c; }
.kids-home-button { border-color:#100f0c; background:#100f0c; color:#ead184; }
.kids-home-button:hover { background:#2a2519; color:#fff3c0; }
.kids-home-books { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; align-items:end; }
.kids-home-books a { position:relative; display:block; color:#100f0c; text-decoration:none; }
.kids-home-books a:nth-child(2) { transform:translateY(26px); }
.kids-home-books img { width:100%; aspect-ratio:2/3; object-fit:cover; border:1px solid rgba(16,15,12,.35); border-radius:16px; box-shadow:0 16px 26px rgba(43,34,14,.25); }
.kids-home-books span { display:block; margin-top:8px; font-size:.7rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.reader-voices { background:#080808; }
.voice-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.voice-grid article { min-height:180px; padding:28px; border:1px solid var(--line); background:#12110f; }
.quote-mark { color:var(--gold); font:3rem Georgia,serif; line-height:.7; }
.voice-grid p { margin:24px 0 18px; color:#d1ccc3; font:italic 1.1rem/1.45 Georgia,serif; }
.voice-grid small { color:var(--gold); font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; }
.faq-section { background:#0b0b0b; }
.faq-list { max-width:920px; border-top:1px solid var(--line); }
.faq-list details { border-bottom:1px solid var(--line); }
.faq-list summary { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:22px 4px; color:var(--ivory); cursor:pointer; list-style:none; font:1.25rem Georgia,serif; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:'+'; color:var(--gold); font:1.7rem Inter,system-ui,sans-serif; }
.faq-list details[open] summary::after { content:'−'; }
.faq-list details p { max-width:760px; margin:0 0 22px; color:var(--muted); font-size:.98rem; line-height:1.65; }
.share-invite { padding:56px 0; background:#11100e; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.share-invite-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.share-invite h2 { margin:8px 0 0; font-size:clamp(2rem,4vw,3.5rem); }
.share-invite p { margin:0; color:var(--muted); }
.share-status { min-height:1.4em; margin:10px 0 0; color:var(--light); font-size:.85rem; }
@media (max-width:760px) { .share-invite-inner { align-items:flex-start; flex-direction:column; } }
@media (max-width:820px) { .site-search { order:5; flex:1 1 100%; max-width:none; margin-left:0; } }
@media (max-width:760px) { .combo-card { grid-template-columns:1fr; gap:18px; padding:20px; } .combo-covers { min-height:210px; } .kids-home-grid { grid-template-columns:1fr; gap:26px; } .kids-home-books { max-width:520px; } .voice-grid { grid-template-columns:1fr; } }
@media (max-width:650px) { .how-grid { grid-template-columns:1fr; } .editorial-strip-track { font-size:.95rem; gap:16px; } }
@media (prefers-reduced-motion:reduce) { .editorial-strip-track { animation:none; } }

/* Estruturas novas: próximos lançamentos e depoimentos */
.future-releases,.testimonials{padding:clamp(3rem,8vw,7rem) 0}
.future-books-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1rem}
.future-book-card{display:grid;grid-template-columns:5.5rem 1fr;gap:1rem;align-items:center;padding:1rem;border:1px solid rgba(255,255,255,.12);border-radius:1rem;background:rgba(255,255,255,.035)}
.future-book-cover{width:5.5rem;aspect-ratio:2/3;display:grid;place-items:center;border-radius:.65rem;background:linear-gradient(145deg,#2b2b2b,#0d0d0d);color:#d9b36c;font-weight:700;font-size:1.5rem;overflow:hidden;background-position:center;background-size:cover}
.future-book-card h3{margin:.25rem 0;font-size:1.05rem}.future-book-card p{margin:.3rem 0 .7rem;color:var(--muted)}
.future-status{display:block;margin:.4rem 0 .8rem;color:#d9b36c;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.future-notify{font-size:.78rem;padding:.55rem .75rem}.future-loading,.future-empty{color:var(--muted)}
.testimonials-layout{display:grid;grid-template-columns:1fr minmax(18rem,32rem);gap:2rem;align-items:start}
.testimonial-form{display:grid;gap:.8rem;padding:1.2rem;border:1px solid rgba(255,255,255,.12);border-radius:1rem;background:rgba(255,255,255,.035)}
.testimonial-form label{display:grid;gap:.35rem;color:var(--muted);font-size:.88rem}.testimonial-form input,.testimonial-form select,.testimonial-form textarea{width:100%;padding:.75rem;border:1px solid rgba(255,255,255,.18);border-radius:.6rem;background:#101010;color:inherit;font:inherit}.testimonial-form textarea{resize:vertical}.testimonial-status{margin:0;color:var(--muted);font-size:.8rem}
@media (max-width:760px){.testimonials-layout{grid-template-columns:1fr}.future-book-card{grid-template-columns:4.5rem 1fr}.future-book-cover{width:4.5rem}}
