@font-face { font-family: Literata; src: url('/assets/fonts/literata-latin-ext.woff2') format('woff2'); font-weight: 400 700; font-display: swap; unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Literata; src: url('/assets/fonts/literata-latin.woff2') format('woff2'); font-weight: 400 700; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Manrope; src: url('/assets/fonts/manrope-latin-ext.woff2') format('woff2'); font-weight: 400 800; font-display: swap; unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Manrope; src: url('/assets/fonts/manrope-latin.woff2') format('woff2'); font-weight: 400 800; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
:root {
  /* Silviu (folder petru-neagu): slate ink + brick accent (his shirt), linen paper. Token names kept from the Dacian copy, so --gold is the accent. */
  --paper: #F5F0E8; --card: #FCFAF6; --ink: #2B3640; --ink-deep: #1E262E; --gold: #A4472E; --gold-deep: #87381F; --gold-bright: #C9623F; --gold-light: #F1C9B3;
  --slate: #5F7280; --slate-deep: #4A5B68; --cream: #F3EEE6; --band: #ECE3D6; --line: #DDD5C8; --muted: #56606A; --red: #c8442e;
  --serif: Literata, Georgia, serif; --sans: Manrope, Arial, sans-serif;
  --wave: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 48' preserveAspectRatio='none'%3E%3Cpath d='M0 48V24C240 0 480 44 720 24S1200 4 1440 22V48Z' fill='%23F5F0E8'/%3E%3C/svg%3E");
}
* { box-sizing: border-box; }
html { scroll-padding-top: 16px; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 18px/1.6 var(--sans); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
.grain { position: fixed; inset: 0; z-index: 30; pointer-events: none; opacity: .06; mix-blend-mode: multiply; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>"); }
main { overflow-x: clip; }
a { color: inherit; text-underline-offset: 4px; }
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible { outline: 3px solid var(--gold-bright); outline-offset: 3px; }
img { display: block; max-width: 100%; height: auto; }
h1, h2, h3 { font-family: var(--serif); font-weight: 400; line-height: 1.05; letter-spacing: -.01em; text-wrap: balance; margin: 0 0 14px; }
h2 { font-size: clamp(38px, 9vw, 58px); }
h3 { font-size: 27px; }
p { margin: 0 0 14px; }
.wrap { width: 100%; max-width: 1100px; margin: 0 auto; padding: 0 16px; }
.eyebrow { font-size: 16px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; margin: 0 0 12px; color: var(--gold); }
.muted { color: var(--muted); }
.section { padding: 56px 0; }
.small { font-size: 18px; margin: 12px 0 0; }

/* Header */
.header { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 68px; }
.wordmark { font: 26px/1.1 var(--serif); text-decoration: none; }
.nav-buy { display: inline-flex; align-items: center; min-height: 48px; padding: 8px 16px; border-radius: 12px; background: linear-gradient(180deg, #f2b96b, #e0933a); color: #2a1a08; box-shadow: 0 3px 0 #9a6120; font-weight: 800; font-size: 17px; text-decoration: none; white-space: nowrap; }
.nav-buy:active { transform: translateY(2px); box-shadow: 0 1px 0 #9a6120; }

/* Buttons: warm orange, 3D, a light stripe sweeping across */
.cta { position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; width: 100%; min-height: 64px; padding: 14px 22px; background: linear-gradient(180deg, #f2b96b, #e0933a); color: #2a1a08; border: 0; border-radius: 14px; font: 800 21px/1.25 var(--sans); text-align: center; text-decoration: none; cursor: pointer; box-shadow: 0 5px 0 #9a6120, 0 14px 26px rgba(20,30,30,.25); transition: transform .1s ease, box-shadow .1s ease, filter .2s ease; }
.cta:hover { filter: brightness(1.05); }
.cta:active { transform: translateY(2px); box-shadow: 0 3px 0 #9a6120, 0 8px 16px rgba(20,30,30,.2); }
.cta[data-plan]::after { content: ""; position: absolute; top: 0; bottom: 0; left: -40%; width: 30%; background: linear-gradient(100deg, transparent, rgba(255,255,255,.55), transparent); transform: skewX(-20deg); animation: shine-sweep 3.2s ease-in-out infinite; pointer-events: none; }
@keyframes shine-sweep { 0%, 55% { left: -40%; } 100% { left: 130%; } }
.cta[disabled] { opacity: .6; cursor: wait; }
.cta.ink { background: var(--ink); color: var(--cream); box-shadow: 0 5px 0 #11171c, 0 12px 22px rgba(30,38,46,.2); }
.cta.ink:active { box-shadow: 0 3px 0 #11171c; }
.cta.center { max-width: 460px; margin: 34px auto 0; }
.ghost { display: inline-flex; align-items: center; min-height: 44px; margin-top: 10px; padding: 6px 18px; border: 1px solid rgba(239,232,216,.4); border-radius: 999px; font-weight: 700; font-size: 16px; text-decoration: none; transition: background .2s, border-color .2s; }
.ghost:hover { background: rgba(239,232,216,.1); border-color: var(--gold-light); }
.text-link { display: inline-block; padding: 12px 0; font-weight: 700; font-size: 18px; }

/* Wave edges */
.wave-top, .wave-bottom { position: relative; }
.wave-bottom::after, .wave-top::before { content: ""; position: absolute; left: 0; right: 0; height: 40px; background: var(--wave) center / 100% 100% no-repeat; pointer-events: none; z-index: 1; }
.wave-bottom::after { bottom: -1px; }
.wave-top::before { top: -1px; transform: scaleY(-1); }

/* Botanical watermark */
.watermark { position: absolute; z-index: 0; top: 50%; right: -120px; height: 115%; width: auto; max-width: none; transform: translateY(-50%); opacity: .5; mix-blend-mode: multiply; pointer-events: none; -webkit-mask-image: radial-gradient(closest-side, #000 55%, transparent); mask-image: radial-gradient(closest-side, #000 55%, transparent); }

/* Hero */
.hero { overflow: hidden; background: radial-gradient(ellipse 70% 60% at 28% 55%, #3b4c59 0%, #26323d 50%, #151c23 100%); color: var(--cream); padding: 22px 0 70px; }
.hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1fr); grid-template-areas: "text text" "art price" "buy buy"; gap: 18px 16px; align-items: center; }
.hero-text { grid-area: text; text-align: center; }
.hero-art { grid-area: art; }
.hero-price { grid-area: price; }
.hero-buy { grid-area: buy; text-align: center; }
.hero .eyebrow { color: var(--gold-light); font-size: 16px; }
.hero h1 { font-size: clamp(50px, 14vw, 104px); line-height: .95; margin-bottom: 10px; }
.hero .sub { font: italic clamp(21px, 5.4vw, 30px)/1.3 var(--serif); margin: 0 auto; max-width: 28ch; color: #f6f0e3; }
.hero .small { color: #e3e8ec; }
.hero .price s, .offer .price s { color: #f08a72; }
.hero .ghost { color: var(--cream); }

/* 3D book */
.book3d { perspective: 1100px; }
.book { position: relative; transform: rotateY(-10deg); transform-origin: left center; animation: float 6s ease-in-out infinite; border-radius: 2px 6px 6px 2px; box-shadow: 1px 1px 0 rgba(255,255,255,.25), 6px 6px 0 -1px #e9e1cf, 7px 7px 0 -1px rgba(0,0,0,.25), 18px 26px 30px rgba(0,0,0,.35), 34px 50px 60px rgba(0,0,0,.25); }
.book img { width: 100%; border-radius: 2px 6px 6px 2px; }
.book::after { content: ""; position: absolute; inset: 0; border-radius: inherit; background: linear-gradient(90deg, rgba(0,0,0,.28), rgba(255,255,255,.18) 3%, transparent 7%, transparent 80%, rgba(255,255,255,.08)); pointer-events: none; }
@keyframes float { 0%, 100% { transform: rotateY(-10deg) translateY(0); } 50% { transform: rotateY(-10deg) translateY(-10px); } }

/* Price */
.price-block { text-align: center; }
.price { display: flex; flex-direction: column; align-items: center; margin: 0; line-height: 1; }
.price s { color: var(--red); font-size: 26px; font-weight: 700; text-decoration-thickness: 3px; }
.price strong { font: 76px/1 var(--serif); color: var(--gold-bright); margin: 4px 0 8px; }
.price strong small { font-size: .42em; }
.save { display: inline-block; margin: 0 0 8px; padding: 4px 14px; border: 2px solid var(--gold-bright); border-radius: 999px; color: var(--gold-light); font-weight: 800; font-size: 16px; }
.price-note { margin: 0; font-weight: 700; font-size: 16px; }

/* Trust strip */
.trust { list-style: none; margin: 8px auto 0; padding-top: 10px; padding-bottom: 10px; display: grid; gap: 4px; }
.trust li { display: flex; align-items: center; gap: 12px; padding: 8px 0; font-weight: 700; font-size: 18px; }
.ck { flex: none; width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; background: var(--ink); color: var(--gold-light); font-size: 15px; font-weight: 800; }

/* Inside the book */
.inside h2, .faq h2 { text-align: center; }
.stats { list-style: none; padding: 0; margin: 26px 0 36px; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.stats li { background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 18px 12px 16px; text-align: center; box-shadow: 0 10px 24px rgba(30,38,46,.07); }
.stats b { display: block; font: 400 clamp(64px, 17vw, 88px)/.9 var(--serif); color: var(--gold-bright); }
.stats span { display: block; margin-top: 6px; font-weight: 700; font-size: 18px; line-height: 1.25; }
.fan { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; max-width: 760px; margin: 0 auto; padding: 10px 4px 0; }
.fan figure { margin: 0; }
.fan figure:first-child { transform: rotate(-4deg) translateY(10px); }
.fan figure:last-child { transform: rotate(4deg) translateY(10px); }
.fan figure:nth-child(2) { position: relative; z-index: 1; }
.fan img { width: 100%; border-radius: 4px; background: #fff; box-shadow: 0 16px 30px rgba(30,38,46,.22); }
.fan figcaption { margin-top: 12px; text-align: center; font: italic 20px/1.2 var(--serif); color: var(--gold); }

/* Photo band */
.photos { padding: 26px 0 0; }
.photos .eyebrow { margin: 0 auto 14px; text-align: center; }
.photo-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 3px; }
.photo-row img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }

/* Free chapter */
.chapter { background: var(--band); }
.chapter-grid { display: grid; gap: 22px; align-items: center; }
.chapter .lead { font-size: 20px; margin: 0; }
.form label { display: block; font-weight: 700; margin-bottom: 8px; }
.form input[type=email] { width: 100%; min-height: 60px; padding: 12px 16px; font: 19px var(--sans); color: var(--ink); background: #fff; border: 2px solid var(--ink); border-radius: 12px; margin-bottom: 14px; }
.form .cta { width: 100%; }
.honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.consent { font-size: 18px; color: var(--muted); margin: 12px 0 0; }
.status { margin: 14px 0 0; font-weight: 700; }
.status:empty { display: none; }
.status.error { color: #8a2f1f; }

/* Author */
.author { max-width: 640px; margin: 0 auto; background: var(--card); border: 1px solid var(--line); border-radius: 20px; padding: 30px 24px; box-shadow: 0 20px 50px rgba(30,38,46,.08); text-align: center; }
.author p { font: italic 22px/1.45 var(--serif); }
.author .honest { font: 16px/1.5 var(--sans); color: var(--muted); border-top: 1px solid var(--line); padding-top: 14px; }
.sign { font: italic 28px/1.2 var(--serif); color: var(--gold); margin: 10px 0 0; }

/* Final offer */
.offer { overflow: hidden; background: radial-gradient(ellipse at 50% 30%, #3b4c59, var(--ink-deep) 72%); color: var(--cream); text-align: center; padding: 84px 0 96px; }
.offer .watermark { right: auto; left: -140px; opacity: .35; }
.offer-card { position: relative; z-index: 2; max-width: 520px; }
.small-book { width: 180px; margin: 0 auto 26px; }
.offer h2 { color: #fbf6ea; }
.offer .price-block { margin-bottom: 22px; }
.guarantee { margin: 20px 0 0; font-weight: 700; }

/* FAQ */
.faq .wrap { max-width: 760px; }
.faq details { border-bottom: 1px solid var(--line); }
.faq summary { cursor: pointer; padding: 18px 0; min-height: 56px; font-weight: 700; font-size: 20px; list-style-position: inside; }
.faq details p { margin: 0 0 18px; }

/* Footer */
.footer { padding: 36px 20px 30px; font-size: 16px; color: var(--muted); text-align: center; }
.footer nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 20px; margin-bottom: 12px; }
.footer nav a { display: inline-block; padding: 10px 0; }
.footer p { margin: 0 0 8px; }

/* Sticky buy bar, mobile only */
.sticky { position: fixed; z-index: 20; left: 0; right: 0; bottom: 0; display: flex; align-items: center; gap: 12px; padding: 10px 14px calc(12px + env(safe-area-inset-bottom)); background: rgba(251,248,242,.97); border-top: 1px solid var(--line); box-shadow: 0 -6px 20px rgba(30,38,46,.12); transition: transform .2s ease; }
.sticky[hidden] { display: flex; transform: translateY(110%); }
.sticky img { width: 40px; flex: none; }
.sticky .meta { flex: 1; min-width: 0; line-height: 1.2; }
.sticky .title { font: 19px/1.15 var(--serif); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sticky .cost { font-size: 17px; font-weight: 700; color: var(--gold-deep); }
.sticky .cost s { color: var(--red); font-weight: 400; margin-right: 4px; }
.sticky .cta { flex: none; width: auto; min-height: 54px; padding: 10px 20px; font-size: 19px; box-shadow: 0 4px 0 #9a6120; }
.has-sticky { padding-bottom: calc(86px + env(safe-area-inset-bottom)); }

/* Simple pages */
.page { max-width: 720px; padding-top: 30px; padding-bottom: 56px; }
.page h1 { font-size: clamp(40px, 9vw, 56px); }
.page h2 { font: 700 21px/1.4 var(--sans); letter-spacing: 0; margin: 30px 0 10px; }
.page .back { display: inline-block; padding: 10px 0; margin-bottom: 16px; }
.page ul { padding-left: 22px; }
.page li { margin-bottom: 8px; }
.box { background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 22px 20px; margin: 22px 0; }
.chapter .box { margin: 0; box-shadow: 0 20px 40px rgba(30,38,46,.1); }
.state { display: none; }
#trimis:target, #eroare:target { display: block; }

@media (min-width: 700px) {
  .trust { grid-template-columns: repeat(3, auto); justify-content: center; gap: 8px 36px; }
  .stats { grid-template-columns: repeat(4, 1fr); gap: 16px; }
  .fan { gap: 0; }
  .fan figure:first-child { margin-right: -22px; }
  .fan figure:last-child { margin-left: -22px; }
  .chapter-grid { grid-template-columns: 1fr 1fr; gap: 50px; }
}
@media (min-width: 900px) {
  body { font-size: 19px; }
  .has-sticky { padding-bottom: 0; }
  .sticky { display: none !important; }
  .hero { padding: 40px 0 100px; }
  .hero-grid { grid-template-columns: 1fr 1.15fr; grid-template-areas: "art text" "art price" "art buy"; gap: 0 70px; }
  .hero-art { align-self: center; padding: 20px 0; }
  .hero-text, .hero-buy { text-align: left; max-width: 520px; }
  .hero-text { align-self: end; }
  .hero-buy { align-self: start; }
  .hero .sub { margin: 0 0 22px; }
  .hero .price-block { text-align: left; margin-bottom: 22px; }
  .hero .price { flex-direction: row; align-items: baseline; gap: 18px; }
  .hero .price strong { font-size: 104px; }
  .hero .save { margin-right: 12px; }
  .hero .price-note { display: inline; }
  .hero-art .book3d { max-width: 420px; margin: 0 auto; }
  .watermark { right: 0; }
  .photo-row img { aspect-ratio: 1 / 1; }
  .section { padding: 84px 0; }
}
@media (max-width: 360px) {
  .wordmark { font-size: 21px; }
  .nav-buy { padding: 8px 10px; font-size: 16px; }
  .cta { font-size: 20px; padding-inline: 14px; }
  .sticky .cta { padding: 10px 14px; }
  .price s { font-size: 22px; }
  .save { font-size: 14px; padding: 3px 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .cta, .sticky { transition: none; }
  .cta[data-plan]::after { display: none; }
  .book { animation: none; }
}

/* Book at home: 6 photos, then a buy button */
.acasa h2 { text-align: center; margin-bottom: 22px; }
.acasa-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-bottom: 28px; }
.acasa-grid img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 12px; box-shadow: 0 10px 24px rgba(30,38,46,.14); }
.acasa .cta { max-width: 460px; margin: 0 auto; }
@media (min-width: 900px) { .acasa-grid { grid-template-columns: repeat(3, 1fr); gap: 16px; } }
/* Reader messages, filled from #reader-reviews */
.review-list { display: grid; gap: 14px; }
.review { background: var(--card); border: 1px solid var(--line); border-radius: 14px; padding: 20px; margin: 0; }
.review p { margin: 0 0 10px; font-size: 19px; }
.review footer { font-weight: 700; font-size: 16px; color: var(--muted); }
@media (min-width: 700px) { .review-list { grid-template-columns: repeat(2, 1fr); } }

/* ---- simplified page: photos + motion ---- */
.shots { display: grid; grid-auto-flow: column; grid-auto-columns: 78%; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; margin: 28px -20px 10px; padding: 4px 20px 14px; scrollbar-width: none; }
.shots::-webkit-scrollbar { display: none; }
.shots img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 16px; scroll-snap-align: center; box-shadow: 0 14px 30px rgba(30,38,46,.16); transition: transform .5s cubic-bezier(.2,.7,.2,1), box-shadow .5s; }
.shots-note { text-align: center; font: italic 22px/1.3 var(--serif); color: var(--muted); margin: 0 0 26px; }
@media (min-width: 900px) {
  .shots { grid-auto-flow: row; grid-template-columns: repeat(3, 1fr); overflow: visible; margin: 34px 0 12px; padding: 0; }
  .shots img:nth-child(1) { transform: rotate(-2deg); }
  .shots img:nth-child(3) { transform: rotate(2deg); }
  .shots img:hover { transform: translateY(-8px) scale(1.02) rotate(0); box-shadow: 0 26px 50px rgba(30,38,46,.24); }
}

/* Scroll reveal: only when JS marked the page, so content never hides without JS */
.js .rv { opacity: 0; transform: translateY(28px); transition: opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1); }
.js .rv.in { opacity: 1; transform: none; }
.js .rv.stats li, .js .rv.shots img, .js .rv.trust li { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); }
.js .rv.in.stats li, .js .rv.in.shots img, .js .rv.in.trust li { opacity: 1; transform: none; }
.js .rv.in > :nth-child(2) { transition-delay: .12s; }
.js .rv.in > :nth-child(3) { transition-delay: .24s; }
.js .rv.in > :nth-child(4) { transition-delay: .36s; }
@media (min-width: 900px) {
  .js .rv.in.shots img:nth-child(1) { transform: rotate(-2deg); }
  .js .rv.in.shots img:nth-child(3) { transform: rotate(2deg); }
}

/* Hero entrance */
@keyframes rise { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
.hero-text, .hero-art, .hero-price, .hero-buy { animation: rise .9s cubic-bezier(.2,.7,.2,1) both; }
.hero-art { animation-delay: .15s; } .hero-price { animation-delay: .3s; } .hero-buy { animation-delay: .45s; }
@keyframes pulse { 0%, 100% { box-shadow: 0 5px 0 #9a6120, 0 0 0 0 rgba(224,147,58,.45); } 60% { box-shadow: 0 5px 0 #9a6120, 0 0 0 14px rgba(224,147,58,0); } }
.hero-buy .cta { animation: pulse 2.6s ease-out 1.6s infinite; }

@media (prefers-reduced-motion: reduce) {
  .js .rv, .js .rv * { opacity: 1 !important; transform: none !important; transition: none !important; }
  .hero-text, .hero-art, .hero-price, .hero-buy, .hero-buy .cta { animation: none !important; }
}

/* ---- v5: sales touches + motion ---- */
.promo { position: relative; z-index: 3; background: linear-gradient(90deg, #7d2616, #a8371f, #7d2616); color: #fbeee0; text-align: center; font-size: 17px; font-weight: 700; padding: 8px 12px; }
.promo b, .timer { color: #ffd9a8; }
.timer { font-variant-numeric: tabular-nums; }
.cta s, .nav-buy s { font-weight: 600; opacity: .6; margin: 0 .28em 0 .1em; text-decoration-thickness: 2px; text-decoration-color: #9b2412; }

.hero-art { position: relative; perspective: 1100px; }
.book3d { transition: transform .4s cubic-bezier(.2,.7,.2,1); transform: rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)); }
.glow { position: absolute; inset: -18% -22%; z-index: -1; background: radial-gradient(closest-side, rgba(232,190,120,.42), rgba(232,190,120,.12) 55%, transparent); animation: breathe 5s ease-in-out infinite; pointer-events: none; }
@keyframes breathe { 0%, 100% { opacity: .75; transform: scale(.95); } 50% { opacity: 1; transform: scale(1.05); } }
.seal { position: absolute; z-index: 3; top: -10px; right: -8px; width: 70px; height: 70px; display: grid; place-items: center; border-radius: 50%; background: radial-gradient(circle at 35% 30%, #e0573a, #a8321c); color: #fff; font: 800 19px/1 var(--sans); box-shadow: 0 6px 16px rgba(0,0,0,.35), inset 0 0 0 3px rgba(255,255,255,.25); transform: rotate(12deg); animation: stamp .6s cubic-bezier(.2,1.6,.4,1) 1.1s both, wiggle 4.5s ease-in-out 2.5s infinite; }
@keyframes stamp { from { opacity: 0; transform: scale(2.2) rotate(-20deg); } to { opacity: 1; transform: scale(1) rotate(12deg); } }
@keyframes wiggle { 0%, 88%, 100% { transform: rotate(12deg) scale(1); } 92% { transform: rotate(4deg) scale(1.08); } 96% { transform: rotate(18deg) scale(1.04); } }

/* Old price: a red line draws across it, then the new price pops */
.price s { position: relative; text-decoration: none; }
.price s::after { content: ""; position: absolute; left: -6%; right: -6%; top: 52%; height: 3px; border-radius: 2px; background: #ff4d3d; transform: rotate(-8deg) scaleX(0); transform-origin: left; animation: strike .5s ease-out 1s forwards; }
@keyframes strike { to { transform: rotate(-8deg) scaleX(1); } }
.price strong { animation: pop .5s cubic-bezier(.2,1.6,.4,1) 1.4s both; }
@keyframes pop { from { transform: scale(.6); opacity: 0; } to { transform: none; opacity: 1; } }
.rv .price s::after { animation-delay: .4s; }
.rv .price strong { animation-delay: .8s; }
.js .rv:not(.in) .price s::after, .js .rv:not(.in) .price strong { animation: none; }
.js .rv:not(.in) .price strong { opacity: 0; }

.pay { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; padding: 0; margin: 14px 0 0; }
.pay li { padding: 3px 10px; border-radius: 6px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); font-size: 16px; font-weight: 700; color: #e9eee9; }
.hero .small { margin-top: 8px; font-size: 18px; }

.watermark { animation: sway 16s ease-in-out infinite alternate; }
@keyframes sway { from { transform: translateY(-50%) rotate(-2deg); } to { transform: translateY(-52%) rotate(2deg); } }
.stats li { transition: transform .3s ease, box-shadow .3s ease; }
.stats li:hover { transform: translateY(-4px); box-shadow: 0 18px 34px rgba(30,38,46,.14); }
.trust .ck { transition: transform .4s cubic-bezier(.2,1.6,.4,1) .3s; }
.js .rv.trust:not(.in) .ck { transform: scale(0); }

.value { list-style: none; padding: 0; margin: 0 auto 24px; max-width: 380px; text-align: left; display: grid; gap: 8px; }
.value li { position: relative; padding-left: 32px; font-weight: 600; }
.value li::before { content: "✓"; position: absolute; left: 0; top: 3px; width: 22px; height: 22px; display: grid; place-items: center; border-radius: 50%; background: var(--gold-bright); color: var(--ink-deep); font-size: 13px; font-weight: 800; }
.guarantee { display: flex; align-items: center; gap: 14px; margin: 24px auto 0; max-width: 400px; text-align: left; }
.guarantee p { margin: 0; font-weight: 700; }
.stamp { flex: none; width: 84px; height: 84px; fill: var(--gold-light); }
.stamp .ring { transform-origin: 50px 50px; animation: spin 22s linear infinite; }
.stamp text { font: 800 9.5px var(--sans); }
.stamp .mid { font: 34px var(--serif); letter-spacing: 0; fill: var(--gold-bright); }
@keyframes spin { to { transform: rotate(360deg); } }
@media (max-width: 380px) { .cta { font-size: 20px; } .seal { width: 58px; height: 58px; font-size: 16px; } .promo { font-size: 16px; } .wordmark { font-size: 21px; } .nav-buy { font-size: 16px; padding: 6px 12px; } }
@media (min-width: 900px) { .seal { width: 92px; height: 92px; font-size: 24px; top: 0; right: 10px; } .pay { justify-content: flex-start; } }

@media (prefers-reduced-motion: reduce) {
  .glow, .seal, .watermark, .stamp .ring, .price strong, .price s::after { animation: none !important; }
  .price s::after { transform: rotate(-8deg); }
  .book3d { transition: none; }
}
.shots img[src*="/pagini/"] { object-fit: contain; background: #fff; }
.box.author { margin: 30px auto 26px; }
.steps { font-size: 20px; line-height: 1.45; padding-left: 26px; }
.steps li { margin: 0 0 8px; }
.checkout-note { max-width: 460px; margin-inline: auto; }

/* Hero v2: linen behind the blue-grey cover, cover big on phones */
.hero { background: radial-gradient(ellipse 80% 60% at 50% 42%, #fdfbf7 0%, #efe8dd 60%, #e2d8ca 100%); color: var(--ink-deep); padding-bottom: 60px; }
.hero .eyebrow { color: var(--gold-deep); }
.hero h1 { color: var(--ink-deep); }
.hero .sub { color: #34404a; }
.hero .small { color: #48535d; }
.hero .price s { color: var(--red); }
.hero .price strong { color: var(--ink-deep); }
.hero .save { color: #fff; background: var(--red); border-color: var(--red); }
.hero .ghost { color: var(--ink); border-color: rgba(30,38,46,.35); }
.hero .pay li { background: #fff; border-color: var(--line); color: var(--ink-deep); }
.hero .glow { background: radial-gradient(closest-side, rgba(255,255,255,.9), rgba(250,244,236,.5) 55%, transparent); }
.hero .watermark { opacity: .22; }
.hero-sub { grid-area: sub; text-align: center; }
.hero-grid { grid-template-columns: minmax(0, 1fr); grid-template-areas: "text" "art" "price" "sub" "buy"; gap: 14px; }
.hero h1 { margin-bottom: 0; }
.hero-art .book3d { width: min(62vw, 300px); margin: 6px auto 0; }
.hero .seal { top: 4px; right: max(0px, calc(50% - min(31vw, 150px) - 26px)); width: 78px; height: 78px; font-size: 21px; }
.hero .price { flex-direction: row; justify-content: center; align-items: baseline; gap: 14px; }
.hero .price strong { font-size: 72px; margin: 0; }
.hero .save { margin: 6px 0 0; }
.hero .sub { font-size: clamp(19px, 5vw, 26px); }
@media (min-width: 900px) {
  .hero-grid { grid-template-columns: 1fr 1.15fr; grid-template-areas: "art text" "art price" "art sub" "art buy"; gap: 0 70px; }
  .hero-sub { text-align: left; max-width: 520px; }
  .hero .price { justify-content: flex-start; }
  .hero .price strong { font-size: 104px; }
  .hero-art .book3d { width: auto; max-width: 440px; }
  .hero .seal { right: -8px; top: -10px; }
}

/* Facebook/Instagram in-app: slim "open in browser" bar */
.inapp { position: sticky; top: 0; z-index: 20; display: flex; align-items: center; gap: 10px; padding: 8px 12px; background: #fff7df; border-bottom: 2px solid #e0933a; font-size: 16px; line-height: 1.3; color: var(--ink-deep); }
.inapp[hidden] { display: none; }
.inapp span { flex: 1; }
.inapp .dots { display: inline-block; background: var(--ink-deep); color: #fff; border-radius: 6px; padding: 0 7px; letter-spacing: 2px; }
.inapp a { flex: none; padding: 9px 12px; border-radius: 10px; background: var(--ink-deep); color: #fff; font-weight: 800; font-size: 15px; text-decoration: none; }

/* Mamaie-Jana style pushes: arrow line above the hero button, ailment index */
.press-down { margin: 4px 0 10px; font-weight: 800; font-size: clamp(15px, 4.6vw, 19px); text-wrap: balance; color: #c8302a; animation: nudge 1.4s ease-in-out infinite; }
@keyframes nudge { 50% { transform: translateY(4px); } }
.ailments { max-width: 680px; margin: 0 auto 34px; background: var(--card); border: 1px solid var(--line); border-radius: 20px; padding: 26px 20px; box-shadow: 0 20px 50px rgba(30,38,46,.08); text-align: center; }
.ailments h3 { font: 400 clamp(28px, 7vw, 38px)/1.1 var(--serif); margin: 0 0 16px; }
.ailments ol { list-style: none; padding: 0; margin: 0; display: grid; gap: 0; text-align: left; }
.ailments li { display: flex; gap: 12px; align-items: baseline; padding: 10px 4px; border-top: 1px solid var(--line); font-size: 19px; font-weight: 600; }
.ailments li span { flex: none; width: 46px; font: 400 20px var(--serif); color: var(--gold-deep); }
@media (min-width: 700px) { .ailments ol { grid-template-columns: 1fr 1fr; column-gap: 28px; } }
@media (prefers-reduced-motion: reduce) { .press-down { animation: none; } }
.cta.two { flex-direction: column; gap: 2px; line-height: 1.15; }
.cta.two .two-price { font-size: .85em; }

/* /plata: Whop checkout embedded, Romanian guide next to it */
.pay-page .header { padding-top: 14px; padding-bottom: 6px; }
.pay-back { font-weight: 700; color: var(--ink); text-decoration: none; padding: 10px 4px; }
.pay-wrap { padding-bottom: 30px; }
.pay-sum { display: flex; gap: 16px; align-items: center; background: var(--card); border: 1px solid var(--line); border-radius: 18px; padding: 14px 16px; margin: 6px 0 16px; }
.pay-sum img { width: 74px; height: auto; border-radius: 4px; box-shadow: 0 8px 18px rgba(30,38,46,.18); }
.pay-sum h1 { font: 400 30px/1.05 var(--serif); margin: 0 0 4px; }
.pay-price { margin: 0; font-size: 20px; } .pay-price s { color: #c8302a; } .pay-price b { font-size: 26px; color: var(--ink-deep); }
.pay-what { margin: 4px 0 0; font-size: 16px; color: var(--muted); line-height: 1.35; }
.pay-card { background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 18px 16px 16px; box-shadow: 0 10px 26px rgba(30,38,46,.08); max-width: 620px; margin: 0 auto; }
.pay-card h2 { font: 700 24px/1.2 var(--sans); margin: 0 0 4px; color: var(--ink-deep); display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.pay-lock { font-size: 15px; font-weight: 700; color: #2e7d4f; background: #e7f4ec; border-radius: 999px; padding: 3px 10px; white-space: nowrap; }
.pay-once { margin: 0 0 14px; font-size: 17px; color: var(--muted); }
.pf { margin: 0 0 16px; }
.pf label { display: flex; align-items: center; gap: 8px; font-weight: 800; font-size: 19px; color: var(--ink-deep); margin: 0 0 6px; }
.pf-n { display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--ink); color: var(--gold-light); font-size: 15px; flex: none; }
.pf input, .pf select { box-sizing: border-box; width: 100%; min-height: 56px; padding: 12px 14px; border: 2px solid #b9b1a2; border-radius: 10px; background: #fff; color: var(--ink-deep); font: 600 20px/1.2 var(--sans); }
.pf input + input, .pf select + input { margin-top: 10px; }
.pf input:focus, .pf select:focus { outline: none; border-color: #e0933a; box-shadow: 0 0 0 3px rgba(224,147,58,.25); }
.pf input::placeholder { color: #9a9285; font-weight: 500; }
.pf-box { min-height: 56px; }
.pf-hint { margin: 5px 0 0; font-size: 16px; color: var(--muted); line-height: 1.35; }
.pf-fix { margin: 8px 0 0; padding: 10px 12px; background: #fff3d6; border: 2px solid #e0933a; border-radius: 10px; font-size: 17px; }
.pf-fix button { margin-left: 6px; padding: 6px 12px; border: 0; border-radius: 8px; background: var(--ink); color: var(--cream); font: 700 16px var(--sans); cursor: pointer; }
.pf-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.pf-row .pf { margin-bottom: 16px; }
.pf-row select { min-width: 0; }
.pay-sms { background: #fff7df; border: 2px solid #e0933a; border-radius: 12px; padding: 12px 14px; margin: 4px 0 14px; font-size: 17px; line-height: 1.45; }
.pay-error { background: #fdecea; border: 2px solid #c8302a; color: #8f1d17; border-radius: 12px; padding: 12px 14px; margin: 0 0 14px; font-size: 18px; font-weight: 700; line-height: 1.4; }
.pay-btn { font-size: 24px; min-height: 70px; }
.pay-busy { text-align: center; font-size: 18px; font-weight: 700; color: var(--ink-deep); margin: 12px 0 0; }
.pay-branding { margin: 14px 0 0; min-height: 24px; }
.pay-alt { text-align: center; font-size: 16px; color: var(--muted); margin: 12px 0 0; } .pay-alt a { color: var(--ink); font-weight: 700; }
.pay-alt-big { font-size: 19px; background: #fff3d6; border-radius: 10px; padding: 12px; color: var(--ink-deep); } .pay-alt-big a { color: #c8302a; font-weight: 800; }
.pay-trust { max-width: 620px; margin-left: auto !important; margin-right: auto !important; }
.pay-sum { max-width: 620px; margin-left: auto !important; margin-right: auto !important; box-sizing: border-box; }
@media (max-width: 380px) { .pf-row { grid-template-columns: 1fr; gap: 0; } }
.pay-wallets { margin: 0 0 16px; }
.wbtn { display: flex; align-items: center; justify-content: center; gap: 6px; width: 100%; min-height: 60px; border: 0; border-radius: 12px; background: #000; color: #fff; font: 600 21px/1 -apple-system, BlinkMacSystemFont, var(--sans); cursor: pointer; }
.wbtn b { font-weight: 700; }
.wbtn[hidden] { display: none; }
.wbtn + .wbtn { margin-top: 10px; }
.pay-or { display: flex; align-items: center; gap: 10px; margin: 14px 0 0; color: var(--muted); font-size: 16px; }
.pay-or::before, .pay-or::after { content: ""; flex: 1; height: 1px; background: var(--line); }
.dl-box { background: #fff; border: 2px solid var(--gold-bright); border-radius: 18px; padding: 18px 16px; margin: 0 0 22px; text-align: center; }
.dl-box h2 { font: 700 22px/1.25 var(--sans); margin: 0 0 8px; color: var(--ink-deep); }
.dl-box p { margin: 8px 0 0; font-size: 17px; }
.dl-box .cta { margin-top: 12px; }
.dl-box .cta[hidden] { display: none; }
.pay-trust { list-style: none; padding: 0; margin: 18px 0 0; display: grid; gap: 8px; font-size: 17px; }
.pay-trust .ck { display: inline-grid; place-items: center; width: 22px; height: 22px; margin-right: 8px; border-radius: 50%; background: var(--gold-bright); color: var(--ink-deep); font-size: 13px; font-weight: 800; }

/* ---- Ediția a doua (2026-10-20): 3D book that opens once, page strip, no fake discount ---- */
/* Book: cover + first page + page block + back, built with CSS 3D. It rises, opens its cover once to show
   the first page, closes and rests. Transforms only (GPU), no JS, nothing extra to download but one page image. */
.book2 { --t: 18px; display: block; position: relative; width: min(60vw, 290px); margin: 10px auto 18px; transform-style: preserve-3d; text-decoration: none; -webkit-tap-highlight-color: transparent; animation: bk-float 7s ease-in-out 4.2s infinite; }
.bk { position: relative; display: block; aspect-ratio: 480 / 678; transform-style: preserve-3d; transform: rotateY(-20deg) rotateX(4deg); animation: bk-in 1.1s cubic-bezier(.2,.75,.25,1) .1s both; }
.bk > span { position: absolute; display: block; }
.bk-cover { inset: 0; z-index: 3; transform-origin: left center; transform: translateZ(calc(var(--t) / 2)); transform-style: preserve-3d; transition: transform .7s cubic-bezier(.3,.7,.2,1); animation: bk-peek 2.9s cubic-bezier(.45,.05,.2,1) 1.25s backwards; }
.bk-cover img { width: 100%; height: 100%; border-radius: 2px 5px 5px 2px; backface-visibility: hidden; box-shadow: inset 4px 0 6px rgba(0,0,0,.25); }
.bk-cover::after { content: ""; position: absolute; inset: 0; border-radius: 2px 5px 5px 2px; background: linear-gradient(90deg, rgba(0,0,0,.3), rgba(255,255,255,.22) 2.5%, transparent 6%, transparent 78%, rgba(255,255,255,.1)); backface-visibility: hidden; pointer-events: none; }
.bk-inside { position: absolute; inset: 0; border-radius: 5px 2px 2px 5px; background: linear-gradient(90deg, #e9e1d1, #f7f2e8 30%); transform: rotateY(180deg); backface-visibility: hidden; }
.bk-page { top: 1.2%; bottom: 1.2%; left: 0; right: 1.5%; overflow: hidden; background: #fbf8f2; border-radius: 0 3px 3px 0; transform: translateZ(calc(var(--t) / 2 - 1px)); box-shadow: inset 10px 0 14px -8px rgba(0,0,0,.25); }
.bk-page img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.bk-edge { top: 1.2%; bottom: 1.2%; right: calc(1.5% - var(--t) / 2); width: var(--t); transform: rotateY(90deg); background: repeating-linear-gradient(90deg, #fbf7ee 0 1px, #e3dac8 1px 2px), #f3ecdf; box-shadow: inset 0 0 6px rgba(0,0,0,.18); }
.bk-back { top: 1.2%; bottom: 1.2%; left: 0; right: 1.5%; border-radius: 0 3px 3px 0; background: #e6dece; transform: translateZ(calc(var(--t) / -2)); box-shadow: 18px 24px 34px rgba(30,25,10,.35); }
.bk-shadow { position: absolute; left: 6%; right: -4%; bottom: -26px; height: 34px; border-radius: 50%; background: radial-gradient(closest-side, rgba(60,45,20,.38), transparent); filter: blur(4px); transform: translateZ(-60px); animation: bk-shadow 7s ease-in-out 4.2s infinite; pointer-events: none; }
@keyframes bk-in { from { opacity: 0; transform: translateY(46px) rotateY(-42deg) rotateX(18deg); } to { opacity: 1; transform: rotateY(-20deg) rotateX(4deg); } }
@keyframes bk-peek { 0%, 100% { transform: translateZ(calc(var(--t) / 2)) rotateY(0); } 30%, 62% { transform: translateZ(calc(var(--t) / 2)) rotateY(-58deg); } }
@keyframes bk-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
@keyframes bk-shadow { 0%, 100% { opacity: 1; } 50% { opacity: .7; } }
@media (hover: hover) { .book2:hover .bk-cover, .book2:focus-visible .bk-cover { transform: translateZ(calc(var(--t) / 2)) rotateY(-26deg); } }
.hero .glow { inset: -6% -18%; }
@media (min-width: 900px) { .book2 { --t: 24px; width: min(100%, 400px); margin: 0 auto; } }
@media (prefers-reduced-motion: reduce) { .book2, .bk, .bk-cover, .bk-shadow { animation: none !important; transition: none; } }

/* One clear price, no crossed-out anchor */
.hero .price strong { margin: 0; }
.price-once { margin: 6px 0 0; font-size: 18px; font-weight: 700; color: var(--ink); text-align: center; }
@media (min-width: 900px) { .price-once { text-align: left; } }
.offer .price-note { color: var(--gold-light); }
.offer-book { width: 170px; margin: 0 auto 26px; transform: rotate(-3deg); }
.offer-book img { border-radius: 2px 5px 5px 2px; box-shadow: 6px 6px 0 -1px #e9e1cf, 7px 7px 0 -1px rgba(0,0,0,.25), 18px 26px 34px rgba(0,0,0,.4); }

/* Worries list: the reader's own words, page number on the right */
.ailments .worries li { justify-content: space-between; gap: 14px; }
.ailments .worries li span { width: auto; flex: none; font: 600 16px var(--sans); color: var(--gold-deep); white-space: nowrap; }

/* Page strip: swipe on phones, big arrows for everyone, tap a page to open it large */
.browse { background: var(--card); border-block: 1px solid var(--line); }
.browse h2 { margin-bottom: 8px; }
.browse-help { font-size: 18px; color: var(--muted); max-width: 560px; }
.strip { position: relative; display: grid; grid-auto-flow: column; grid-auto-columns: min(78vw, 330px); gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 16px; padding: 8px 16px 18px; margin: 0 -16px; overscroll-behavior-x: contain; scrollbar-width: thin; }
.strip:focus-visible { outline: 3px solid var(--gold-bright); outline-offset: -3px; }
.strip figure { margin: 0; scroll-snap-align: start; }
.strip img { width: 100%; border-radius: 6px; background: #fff; box-shadow: 0 2px 0 var(--line), 0 14px 30px rgba(30,38,46,.14); }
.strip figcaption { margin-top: 10px; font-weight: 700; font-size: 18px; text-align: center; }
.strip-nav { display: flex; align-items: center; justify-content: center; gap: 22px; margin: 6px 0 10px; }
.strip-btn { width: 60px; height: 60px; border-radius: 50%; border: 2px solid var(--ink); background: #fff; color: var(--ink); font: 700 28px/1 var(--sans); cursor: pointer; }
.strip-btn:active { transform: translateY(2px); }
.strip-btn:disabled { opacity: .35; cursor: default; }
.strip-count { font-weight: 700; font-size: 18px; min-width: 64px; text-align: center; }
@media (min-width: 900px) { .strip { grid-auto-columns: 300px; } }
.browse .box.author { max-width: 680px; margin: 34px auto 0; background: #fff; }
.browse .box.author h3 { font-size: 32px; }
.browse .box.author p:not(.eyebrow):not(.sign) { font: 19px/1.6 var(--sans); font-style: normal; text-align: left; color: var(--ink-deep); }
.browse .box.author h3, .browse .box.author .sign { text-align: left; }

/* Silviu: face in the header and hero, the „Sunt Silviu” box. Literata ships no italic here, so no faux italics. */
.author p, .sign, .browse .box.author p { font-style: normal; }
.wordmark { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; }
.wordmark img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 2px var(--card), 0 0 0 3px var(--gold-light); }
.hero .by { display: inline-flex; align-items: center; gap: 10px; margin: 14px auto 0; padding: 6px 16px 6px 6px; background: #fff; border: 1px solid var(--line); border-radius: 999px; font-size: 17px; font-weight: 600; line-height: 1.3; color: var(--ink); text-align: left; }
.hero .by img { width: 44px; height: 44px; border-radius: 50%; flex: none; }
.box.petru { display: grid; gap: 18px; align-items: center; max-width: 760px; margin: 30px auto 26px; padding: 18px; background: #fff; box-shadow: 0 20px 50px rgba(30,38,46,.08); }
.box.petru img { width: 100%; border-radius: 12px; }
.box.petru h3 { font-size: 34px; }
.box.petru p:not(.eyebrow):not(.sign) { font-size: 18px; color: var(--ink-deep); }
.box.petru .sign { font-size: 26px; }
@media (min-width: 700px) { .box.petru { grid-template-columns: 260px 1fr; padding: 22px 26px 22px 22px; } }
