/* "Todas as Manhãs": venda (hero com o livro), sumário do ano e leitura do dia. */
:root {
    --dv-brand: #2d1854;
    --dv-brand-soft: #f1edf8;
    --dv-gold: #c9a227;
    --dv-gold-text: #8f7115;
    --dv-ink: #1a1a2e;
    --dv-muted: #6b6776;
    --dv-line: #e5e0d8;
    --dv-read: 'Newsreader', Georgia, serif;
}

.dv-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: .65rem 1.3rem; border-radius: 10px; border: 1px solid transparent; font-weight: 600; font-size: .98rem; text-decoration: none; cursor: pointer; }
.dv-btn--gold { background: var(--dv-gold); color: #1c0f38; }
.dv-btn--gold:hover { background: #dbb437; color: #1c0f38; }
.dv-btn--ghost { color: #fff; border-color: rgba(255, 255, 255, .45); }
.dv-btn--ghost:hover { background: rgba(255, 255, 255, .1); color: #fff; }
.dv-btn--main { background: var(--dv-brand); color: #fff; }
.dv-btn--main:hover { background: #3d2575; color: #fff; }
.dv-btn--line { background: #fff; color: var(--dv-ink); border-color: var(--dv-line); }
.dv-btn--line:hover { border-color: var(--dv-gold); color: var(--dv-ink); }
.dv-btn:focus-visible { outline: 2px solid var(--dv-gold); outline-offset: 2px; }

/* Venda */
.dv-sale { background: var(--dv-brand); color: #fff; padding: clamp(2.5rem, 6vw, 4.5rem) 0; }
.dv-sale-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 360px); gap: clamp(2rem, 5vw, 4rem); align-items: center; }
.dv-sale-kicker { color: #e4bc4f; font-weight: 600; font-size: .9rem; margin: 0 0 .5rem; }
.dv-sale h1 { font: 500 clamp(2.6rem, 7vw, 4rem)/1.05 var(--dv-read); margin: 0; color: #fff; }
.dv-sale-slogan { font-size: clamp(1.05rem, 2.4vw, 1.25rem); margin: .8rem 0 0; opacity: .92; }
.dv-sale-verse { font: italic 400 1.15rem/1.5 var(--dv-read); margin: 1.4rem 0 0; padding-left: 1rem; border-left: 3px solid var(--dv-gold); max-width: 54ch; }
.dv-sale-verse cite { display: block; font-family: 'Inter', system-ui, sans-serif; font-size: .85rem; font-style: normal; font-weight: 500; opacity: .75; margin-top: .3rem; }
.dv-sale-by { font-size: .95rem; opacity: .85; margin: 1.1rem 0 0; }
.dv-sale-buy, .dv-sale-owned { margin-top: 1.6rem; }
.dv-sale-price strong { font-size: 2.1rem; font-weight: 700; display: block; line-height: 1.1; }
.dv-sale-price span { font-size: .9rem; opacity: .85; }
.dv-sale-actions { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1rem; }
.dv-sale-note { font-size: .9rem; opacity: .85; margin: .9rem 0 0; max-width: 54ch; }
.dv-sale-note a { color: #e4bc4f; }
.dv-sale-owned p { margin: 0 0 .8rem; font-weight: 600; }
.dv-sale-owned i { color: #e4bc4f; margin-right: .3rem; }
.dv-flash { background: rgba(255, 255, 255, .12); border-radius: 8px; padding: .6rem .9rem; font-size: .95rem; }

/* Capa do livro, desenhada em CSS */
.dv-book { perspective: 1400px; display: flex; justify-content: center; }
.dv-book-cover { position: relative; width: min(100%, 300px); aspect-ratio: 5 / 7.4; padding: 1.6rem 1.4rem; display: flex; flex-direction: column; color: #fff; background: linear-gradient(170deg, #4a2c86 0%, #2d1854 55%, #1c0f38 100%); border-radius: 4px 12px 12px 4px; box-shadow: inset 12px 0 16px -10px rgba(0, 0, 0, .6), 20px 26px 48px rgba(0, 0, 0, .45); transform: rotateY(-14deg); overflow: hidden; }
.dv-book-year { font-size: .8rem; letter-spacing: .2em; color: #e4bc4f; font-weight: 600; }
.dv-book-sun { position: absolute; left: 50%; bottom: 22%; width: 150%; aspect-ratio: 1; transform: translate(-50%, 62%); border-radius: 50%; background: radial-gradient(circle, rgba(228, 188, 79, .85) 0%, rgba(228, 188, 79, .28) 42%, rgba(228, 188, 79, 0) 68%); }
.dv-book-title { position: relative; font: 500 clamp(2.3rem, 6vw, 2.9rem)/1.02 var(--dv-read); margin-top: 1.1rem; }
.dv-book-slogan { position: relative; font-size: .78rem; line-height: 1.4; margin-top: .7rem; opacity: .9; }
.dv-book-authors { position: relative; margin-top: auto; font-size: .78rem; line-height: 1.4; color: #1c0f38; font-weight: 600; }
.dv-book .dv-book-cover.dv-book-cover--img { padding: 0; aspect-ratio: 2 / 3; background: #2d1854; }
.dv-book-cover--img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.dv-book-cover--img::after { content: ''; position: absolute; inset: 0; pointer-events: none; border-radius: inherit;
    background: linear-gradient(90deg, rgba(0, 0, 0, .35) 0, rgba(0, 0, 0, .08) 3%, rgba(255, 255, 255, .12) 4.5%, rgba(255, 255, 255, 0) 8%); }
@media (prefers-reduced-motion: no-preference) {
    .dv-book-cover { transition: transform .4s ease; }
    .dv-book-cover:hover { transform: rotateY(-4deg); }
}
@media (max-width: 767.98px) {
    .dv-sale-grid { grid-template-columns: minmax(0, 1fr); }
    .dv-book-cover { width: min(70%, 240px); transform: none; }
}

/* O que tem dentro */
.dv-inside h2, .dv-year h2 { font: 500 clamp(1.7rem, 4vw, 2.2rem)/1.15 var(--dv-read); margin: 0 0 .5rem; }
.dv-inside-lead { color: var(--dv-muted); margin: 0 0 1.5rem; }
.dv-steps { list-style: none; counter-reset: dv; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.dv-steps li { background: #fff; border: 1px solid var(--dv-line); border-radius: 12px; padding: 1.1rem; }
.dv-steps strong { display: block; font: 500 1.3rem/1.2 var(--dv-read); color: var(--dv-brand); margin-bottom: .3rem; }
.dv-steps span { font-size: .95rem; color: var(--dv-muted); }
.dv-inside-note { margin: 1.2rem 0 0; color: var(--dv-muted); font-size: .95rem; }
.dv-inside-note i { color: var(--dv-gold-text); margin-right: .3rem; }
@media (max-width: 767.98px) { .dv-steps { grid-template-columns: minmax(0, 1fr); } }

/* Sumário */
.dv-month { border-bottom: 1px solid var(--dv-line); }
.dv-month summary { display: flex; flex-wrap: wrap; align-items: baseline; gap: .3rem .8rem; padding: .9rem 0; cursor: pointer; }
.dv-month-name { font-weight: 700; min-width: 6.5rem; }
.dv-month-theme { color: var(--dv-muted); }
.dv-tag { background: var(--dv-brand-soft); color: var(--dv-brand); font-size: .75rem; font-weight: 600; padding: .1rem .55rem; border-radius: 99px; }
.dv-days { list-style: none; padding: 0 0 1rem; margin: 0; columns: 2; column-gap: 2rem; }
.dv-days li { break-inside: avoid; }
.dv-days a, .dv-day-soon { display: flex; gap: .7rem; align-items: baseline; padding: .35rem 0; color: var(--dv-ink); text-decoration: none; font-size: .95rem; }
.dv-days a:hover .dv-day-title { text-decoration: underline; }
.dv-day-soon { color: var(--dv-muted); }
.dv-day-date { color: var(--dv-muted); font-size: .82rem; font-variant-numeric: tabular-nums; flex: none; }
.dv-day-title { flex: 1; min-width: 0; }
.dv-days i { font-size: .75rem; color: var(--dv-muted); flex: none; }
.dv-days .is-done i { color: #15803d; }
@media (max-width: 767.98px) { .dv-days { columns: 1; } }

/* Página de venda (/devocional) */
.dvs-hero { position: relative; overflow: hidden; color: #fff; padding: clamp(2.6rem, 7vw, 5rem) 0 clamp(2.8rem, 7vw, 5rem);
    background: linear-gradient(180deg, #1c0f38 0%, #2d1854 50%, #4a2c6e 82%, #7a4a5c 100%); }
.dvs-hero-sun { position: absolute; left: 70%; bottom: 0; width: min(1100px, 160%); aspect-ratio: 1; transform: translate(-50%, 62%); border-radius: 50%;
    background: radial-gradient(circle, rgba(244, 196, 98, .7) 0%, rgba(228, 160, 79, .32) 30%, rgba(228, 160, 79, 0) 62%); pointer-events: none; }
.dvs-hero-grid { position: relative; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: clamp(2rem, 5vw, 4rem); align-items: center; }
.dvs-pill { display: inline-flex; align-items: center; gap: .5rem; margin: 0; padding: .35rem .9rem; border-radius: 99px; font-size: .82rem; font-weight: 600; color: #e4bc4f; background: rgba(228, 188, 79, .12); border: 1px solid rgba(228, 188, 79, .3); }
.dvs-hero h1 { font: 500 clamp(2.9rem, 8vw, 4.8rem)/1 var(--dv-read); margin: 1rem 0 0; color: #fff; letter-spacing: -.01em; }
.dvs-slogan { font-size: clamp(1.08rem, 2.4vw, 1.3rem); margin: .9rem 0 0; opacity: .92; max-width: 34ch; }
.dvs-verse { font: italic 400 clamp(1.08rem, 2.2vw, 1.2rem)/1.55 var(--dv-read); margin: 1.6rem 0 0; padding-left: 1.1rem; border-left: 3px solid var(--dv-gold); max-width: 52ch; opacity: .95; }
.dvs-verse cite { display: block; font: 500 .82rem/1.4 'Inter', system-ui, sans-serif; font-style: normal; opacity: .75; margin-top: .35rem; }
.dvs-buy, .dvs-owned { margin-top: 2rem; }
.dvs-price { display: flex; align-items: center; gap: .9rem; }
.dvs-price strong { font-size: 2.4rem; font-weight: 700; line-height: 1; }
.dvs-price span { font-size: .85rem; line-height: 1.35; opacity: .8; }
.dvs-actions { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.1rem; }
.dvs-actions--center { justify-content: center; }
.dvs-owned p { margin: 0 0 .9rem; font-weight: 600; }
.dvs-owned i { color: #e4bc4f; margin-right: .35rem; }
.dv-btn--ghost.dv-btn--lg { border-color: rgba(255, 255, 255, .4); }
.dvs-facts { list-style: none; display: flex; flex-wrap: wrap; gap: 0; padding: 0; margin: 2.2rem 0 0; border-top: 1px solid rgba(255, 255, 255, .14); padding-top: 1.3rem; }
.dvs-facts li { flex: 1 1 0; min-width: 6.5rem; padding-right: 1rem; }
.dvs-facts li + li { padding-left: 1rem; border-left: 1px solid rgba(255, 255, 255, .14); }
.dvs-facts strong { display: block; font: 500 1.5rem/1.1 var(--dv-read); color: #e4bc4f; }
.dvs-facts span { font-size: .82rem; opacity: .8; }
.dvs-hero-book { display: flex; flex-direction: column; align-items: center; }
.dvs-hero-book .dv-book { position: relative; width: 100%; }
.dvs-hero-book .dv-book::before { content: ''; position: absolute; inset: 10% -20% -6%; background: radial-gradient(closest-side, rgba(244, 196, 98, .45), rgba(244, 196, 98, 0)); filter: blur(10px); }
.dvs-hero-book .dv-book-cover { width: min(100%, 340px); }
.dvs-by { margin: 1.8rem 0 0; font: italic 400 1.05rem/1.4 var(--dv-read); text-align: center; opacity: .9; }
.dvs-by span { display: block; font: 600 .72rem/1 'Inter', system-ui, sans-serif; letter-spacing: .18em; text-transform: uppercase; font-style: normal; color: #e4bc4f; margin-bottom: .35rem; }
@media (prefers-reduced-motion: no-preference) {
    .dvs-hero-book .dv-book-cover { animation: dvs-float 7s ease-in-out infinite; }
    @keyframes dvs-float { 0%, 100% { translate: 0 0; } 50% { translate: 0 -10px; } }
}
@media (max-width: 991.98px) {
    .dvs-hero-grid { grid-template-columns: minmax(0, 1fr); }
    .dvs-hero-copy { text-align: center; }
    .dvs-slogan, .dvs-verse { margin-left: auto; margin-right: auto; }
    .dvs-verse { border-left: 0; padding-left: 0; }
    .dvs-price, .dvs-actions { justify-content: center; }
    .dvs-facts { justify-content: center; }
    .dvs-hero-book { order: -1; }
    .dvs-hero-book .dv-book-cover { width: min(58%, 260px); transform: rotateY(-8deg); }
    .dvs-by { display: none; }
    .dvs-hero-sun { left: 50%; }
}

.dvs-head { max-width: 640px; margin: 0 auto 2.2rem; text-align: center; }
.dvs-kicker { margin: 0 0 .5rem; font-size: .75rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--dv-gold-text); }
.dvs-head h2 { font: 500 clamp(1.9rem, 4.5vw, 2.6rem)/1.12 var(--dv-read); margin: 0; color: var(--dv-ink); text-wrap: balance; }
.dvs-head > p:last-child:not(.dvs-kicker) { margin: .8rem 0 0; color: var(--dv-muted); }

/* Prove uma manhã */
.dvs-taste { background: #faf9f6; padding: clamp(3rem, 8vw, 5rem) 0; }
.dvs-page { position: relative; max-width: 720px; margin: 0 auto; background: #fff; border: 1px solid var(--dv-line); border-radius: 20px; padding: clamp(1.6rem, 5vw, 2.8rem); box-shadow: 0 30px 60px -36px rgba(45, 24, 84, .45); text-align: center; }
.dvs-page-meta { margin: 0; font-size: .75rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--dv-gold-text); }
.dvs-page h3 { font: 500 clamp(1.7rem, 4vw, 2.2rem)/1.15 var(--dv-read); margin: .6rem 0 1.4rem; color: var(--dv-ink); }
.dvs-page-text { position: relative; text-align: left; max-height: 15.5rem; overflow: hidden; margin-bottom: 1.6rem; }
.dvs-page-text::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 6rem; background: linear-gradient(rgba(255, 255, 255, 0), #fff); }
.dvs-page-text p { font: 400 clamp(1.1rem, 2.3vw, 1.2rem)/1.75 var(--dv-read); color: #26233a; margin: 0 0 1rem; }
.dvs-page-text p:first-child::first-letter { float: left; font: 500 3.9em/.82 var(--dv-read); margin: .08em .1em 0 0; color: var(--dv-brand); }

/* Seis passos */
.dvs-steps { background: #fff; padding: clamp(3rem, 8vw, 5rem) 0; }
.dvs-step-grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.dvs-step-grid li { position: relative; background: #faf9f6; border: 1px solid var(--dv-line); border-radius: 16px; padding: 1.5rem 1.4rem 1.4rem; transition: transform .2s, box-shadow .2s, border-color .2s; }
.dvs-step-grid li:hover { transform: translateY(-3px); border-color: rgba(201, 162, 39, .5); box-shadow: 0 18px 36px -26px rgba(45, 24, 84, .45); }
.dvs-step-num { position: absolute; top: 1.2rem; right: 1.3rem; font: 500 .95rem/1 var(--dv-read); color: var(--dv-gold-text); opacity: .8; }
.dvs-step-grid i { width: 2.8rem; height: 2.8rem; display: grid; place-items: center; border-radius: 50%; background: var(--dv-brand); color: #e4bc4f; font-size: 1rem; }
.dvs-step-grid strong { display: block; font: 500 1.45rem/1.2 var(--dv-read); color: var(--dv-ink); margin: .9rem 0 .35rem; }
.dvs-step-grid span:last-child { font-size: .95rem; line-height: 1.55; color: var(--dv-muted); }
.dvs-note { margin: 1.6rem 0 0; text-align: center; color: var(--dv-muted); font-size: .95rem; }
.dvs-note i { color: var(--dv-gold-text); margin-right: .35rem; }
@media (max-width: 991.98px) { .dvs-step-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) { .dvs-step-grid { grid-template-columns: minmax(0, 1fr); } }

/* Faixa do versículo */
.dvs-band { padding: clamp(3rem, 8vw, 4.5rem) 0; color: #fff; text-align: center;
    background: radial-gradient(70% 130% at 50% 120%, rgba(228, 188, 79, .35) 0%, rgba(228, 188, 79, 0) 60%), linear-gradient(160deg, #2d1854, #1c0f38); }
.dvs-band blockquote { margin: 0 auto; max-width: 760px; font: italic 400 clamp(1.3rem, 3.2vw, 1.8rem)/1.5 var(--dv-read); text-wrap: balance; }
.dvs-band cite { display: block; margin-top: 1rem; font: 600 .78rem/1 'Inter', system-ui, sans-serif; letter-spacing: .16em; text-transform: uppercase; font-style: normal; color: #e4bc4f; }

/* Oferta */
.dvs-offer { background: #faf9f6; padding: clamp(3rem, 8vw, 5rem) 0; }
.dvs-offer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.2rem; max-width: 860px; margin: 0 auto; }
.dvs-offer-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--dv-line); border-radius: 20px; padding: 1.8rem 1.7rem; }
.dvs-offer-card--main { border: 2px solid var(--dv-gold); box-shadow: 0 30px 60px -36px rgba(45, 24, 84, .5); }
.dvs-offer-tag { margin: 0; font-size: .78rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--dv-gold-text); }
.dvs-offer-price { margin: .6rem 0 0; font-size: 2.4rem; font-weight: 700; line-height: 1; color: var(--dv-ink); }
.dvs-offer-price--sm { font: 500 2.1rem/1 var(--dv-read); }
.dvs-offer-sub { margin: .35rem 0 0; font-size: .88rem; color: var(--dv-muted); }
.dvs-offer-card ul { list-style: none; padding: 0; margin: 1.3rem 0 1.6rem; flex: 1; }
.dvs-offer-card li { position: relative; padding: .35rem 0 .35rem 1.7rem; font-size: .97rem; color: #34304a; }
.dvs-offer-card li::before { content: '\2713'; position: absolute; left: 0; top: .35rem; width: 1.2rem; height: 1.2rem; display: grid; place-items: center; border-radius: 50%; background: #fbf3dc; color: var(--dv-gold-text); font-size: .7rem; font-weight: 700; }
.dvs-offer-card .dv-btn { width: 100%; }
.dvs-login { text-align: center; margin: 1.4rem 0 0; color: var(--dv-muted); }
.dvs-login a { color: var(--dv-brand); font-weight: 600; }
@media (max-width: 767.98px) { .dvs-offer-grid { grid-template-columns: minmax(0, 1fr); } }

/* Sumário do ano */
.dvs-yearsec { background: #fff; padding: clamp(3rem, 8vw, 5rem) 0; }
.dvs-months { max-width: 880px; margin: 0 auto; display: grid; gap: .6rem; }
.dvs-month { border: 1px solid var(--dv-line); border-radius: 14px; background: #faf9f6; transition: border-color .2s, background .2s; }
.dvs-month[open] { background: #fff; border-color: rgba(201, 162, 39, .55); box-shadow: 0 18px 36px -28px rgba(45, 24, 84, .4); }
.dvs-month summary { display: flex; align-items: center; gap: 1rem; padding: .95rem 1.2rem; cursor: pointer; list-style: none; flex-wrap: nowrap; }
.dvs-month summary::-webkit-details-marker { display: none; }
.dvs-month-num { flex: none; width: 2.5rem; height: 2.5rem; display: grid; place-items: center; border-radius: 50%; border: 1px solid var(--dv-gold); color: var(--dv-gold-text); font: 500 .95rem/1 var(--dv-read); }
.dvs-month[open] .dvs-month-num { background: var(--dv-brand); border-color: var(--dv-brand); color: #e4bc4f; }
.dvs-month-txt { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.dvs-month .dv-month-name { min-width: 0; font-weight: 700; color: var(--dv-ink); }
.dvs-month .dv-month-theme { font: italic 400 1.02rem/1.35 var(--dv-read); color: var(--dv-muted); }
.dvs-month-side { flex: none; display: flex; align-items: center; gap: .6rem; }
.dvs-month-count { font-size: .8rem; color: var(--dv-muted); white-space: nowrap; }
.dvs-month-side i { color: var(--dv-muted); font-size: .8rem; transition: transform .2s; }
.dvs-month[open] .dvs-month-side i { transform: rotate(180deg); }
.dvs-month .dv-days { padding: .2rem 1.2rem 1.1rem 4.7rem; }
@media (max-width: 575.98px) {
    .dvs-month summary { gap: .75rem; padding: .85rem 1rem; }
    .dvs-month .dv-days { padding: 0 1rem 1rem; }
    .dvs-month-count { display: none; }
}

/* Chamada final */
.dvs-final { position: relative; overflow: hidden; color: #fff; text-align: center; padding: clamp(3rem, 8vw, 4.6rem) 0;
    background: linear-gradient(180deg, #1c0f38 0%, #2d1854 60%, #4a2c6e 100%); }
.dvs-final .dvs-hero-sun { left: 50%; transform: translate(-50%, 70%); }
.dvs-final .container { position: relative; }
.dvs-final h2 { font: 500 clamp(1.9rem, 4.5vw, 2.6rem)/1.15 var(--dv-read); margin: 0; color: #fff; text-wrap: balance; }
.dvs-final p { margin: .7rem 0 0; opacity: .85; }

/* Dia */
.dv-preview { background: #fff4d6; padding: .6rem 1rem; margin: 0; text-align: center; font-size: .95rem; }
.dv-column { max-width: 720px; }

.dv-progress { position: fixed; top: var(--nav-h, 70px); left: 0; right: 0; height: 3px; z-index: 1020; pointer-events: none; }
.dv-progress span { display: block; height: 100%; width: 0; background: linear-gradient(90deg, #e4bc4f, var(--dv-gold)); transition: width .1s linear; }

/* Amanhecer: roxo da marca descendo para a luz dourada */
.dv-dawn { position: relative; overflow: hidden; color: #fff; text-align: center; padding: clamp(2rem, 6vw, 3.6rem) 0 clamp(2.2rem, 6vw, 3.4rem);
    background: linear-gradient(180deg, #1c0f38 0%, #2d1854 48%, #4a2c6e 78%, #7a4a5c 100%); }
.dv-dawn-sun { position: absolute; left: 50%; bottom: 0; width: min(900px, 140%); aspect-ratio: 1; transform: translate(-50%, 66%); border-radius: 50%;
    background: radial-gradient(circle, rgba(244, 196, 98, .75) 0%, rgba(228, 160, 79, .35) 30%, rgba(228, 160, 79, 0) 62%); pointer-events: none; }
.dv-dawn-inner { position: relative; }
.dv-back { display: inline-flex; align-items: center; gap: .4rem; color: #fff; opacity: .8; font-size: .88rem; text-decoration: none; padding: .3rem .8rem; border: 1px solid rgba(255, 255, 255, .25); border-radius: 99px; }
.dv-back:hover { color: #fff; opacity: 1; border-color: rgba(255, 255, 255, .5); }
.dv-kicker { margin: 1.4rem 0 0; font-size: .78rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: #e4bc4f; }
.dv-dawn h1 { font: 500 clamp(2.2rem, 6.5vw, 3.4rem)/1.08 var(--dv-read); margin: .6rem auto 0; color: #fff; max-width: 18ch; text-wrap: balance; }
.dv-focus { font: italic 400 clamp(1.05rem, 2.4vw, 1.25rem)/1.45 var(--dv-read); margin: .8rem auto 0; max-width: 40ch; opacity: .9; text-wrap: balance; }
.dv-meta { list-style: none; padding: 0; margin: 1.5rem 0 0; display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem; }
.dv-meta li { display: inline-flex; align-items: center; gap: .45rem; font-size: .85rem; padding: .35rem .8rem; border-radius: 99px; background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .14); backdrop-filter: blur(4px); }
.dv-meta i { color: #e4bc4f; font-size: .8rem; }
.dv-yearbar { margin: 1.8rem auto 0; max-width: 320px; }
.dv-yearbar-track { height: 4px; border-radius: 99px; background: rgba(255, 255, 255, .18); overflow: hidden; }
.dv-yearbar-track span { display: block; height: 100%; min-width: 4px; background: #e4bc4f; border-radius: 99px; }
.dv-yearbar p { margin: .5rem 0 0; font-size: .78rem; opacity: .8; }

/* Passos do dia */
.dv-steps-nav { position: sticky; top: var(--nav-h, 70px); z-index: 1010; background: rgba(250, 249, 246, .92); backdrop-filter: blur(8px); border-bottom: 1px solid var(--dv-line); }
.dv-steps-nav .container { display: flex; gap: .25rem; overflow-x: auto; scrollbar-width: none; padding-top: .55rem; padding-bottom: .55rem; }
.dv-steps-nav .container::-webkit-scrollbar { display: none; }
.dv-steps-nav a { flex: none; font-size: .85rem; font-weight: 600; color: var(--dv-muted); text-decoration: none; padding: .35rem .85rem; border-radius: 99px; transition: background .2s, color .2s; }
.dv-steps-nav a:hover { color: var(--dv-brand); }
.dv-steps-nav a.is-active { background: var(--dv-brand); color: #fff; }

.dv-page { background: #faf9f6; padding: .5rem 0 4rem; }
.dv-step { margin-top: clamp(2.4rem, 6vw, 3.4rem); scroll-margin-top: calc(var(--nav-h, 70px) + 64px); }
.dv-step-head { display: flex; align-items: center; gap: .9rem; margin-bottom: 1.1rem; }
.dv-step-num { flex: none; width: 2.6rem; height: 2.6rem; display: grid; place-items: center; border-radius: 50%; border: 1px solid var(--dv-gold); color: var(--dv-gold-text); font: 500 .95rem/1 var(--dv-read); font-variant-numeric: lining-nums; }
.dv-step-head h2 { font: 500 1.65rem/1.1 var(--dv-read); margin: 0; color: var(--dv-ink); }
.dv-step-head p { margin: .15rem 0 0; font-size: .88rem; color: var(--dv-muted); }

/* Leia */
.dv-scripture { position: relative; background: #fff; border: 1px solid var(--dv-line); border-radius: 18px; padding: clamp(1.4rem, 5vw, 2.2rem); box-shadow: 0 18px 40px -28px rgba(45, 24, 84, .35); }
.dv-scripture::before { content: '“'; position: absolute; top: -.55rem; left: .9rem; font: 500 5.5rem/1 var(--dv-read); color: var(--dv-gold); opacity: .35; pointer-events: none; }
.dv-verses { position: relative; padding-top: 1.1rem; font: 400 clamp(1.2rem, 2.6vw, 1.38rem)/1.7 var(--dv-read); margin: 0; color: var(--dv-ink); }
.dv-verses sup { font: 600 .62rem/1 'Inter', system-ui, sans-serif; color: var(--dv-gold-text); margin: 0 .2rem 0 .3rem; vertical-align: .55em; }
.dv-ref { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .4rem 1rem; font-size: .86rem; color: var(--dv-muted); margin: 1.2rem 0 0; padding-top: .9rem; border-top: 1px solid var(--dv-line); }
.dv-ref strong { color: var(--dv-ink); font-weight: 600; }
.dv-ref a { color: var(--dv-brand); font-weight: 600; text-decoration: none; }
.dv-ref a:hover { text-decoration: underline; }

/* Medite */
.dv-prose { max-width: 64ch; }
.dv-prose::after { content: ''; display: table; clear: both; }
.dv-prose p, .dv-prose li { font: 400 clamp(1.14rem, 2.3vw, 1.24rem)/1.75 var(--dv-read); color: #26233a; }
.dv-prose p { margin: 0 0 1.15rem; }
.dv-prose > p:first-child { font-size: clamp(1.24rem, 2.6vw, 1.36rem); }
.dv-prose > p:first-child::first-letter { float: left; font: 500 4.1em/.82 var(--dv-read); margin: .08em .1em 0 0; color: var(--dv-brand); }
.dv-prose h2 { font: 500 1.5rem/1.25 var(--dv-read); margin: 2.4rem 0 .9rem; color: var(--dv-ink); }
.dv-prose h2::before { content: ''; display: block; width: 2.2rem; height: 2px; background: var(--dv-gold); margin-bottom: .9rem; }
.dv-prose blockquote { margin: 1.4rem 0; padding: .2rem 0 .2rem 1.2rem; border-left: 3px solid var(--dv-gold); }
.dv-prose blockquote p { font-style: italic; color: var(--dv-brand); margin: 0; }
.dv-prose strong { color: var(--dv-ink); }

/* Estude */
.dv-study { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
.dv-study-card { background: #fff; border: 1px solid var(--dv-line); border-radius: 14px; padding: 1.15rem 1.25rem; margin: 0; }
.dv-study-card--wide { grid-column: 1 / -1; }
.dv-study-card h3 { display: flex; align-items: center; gap: .5rem; font-size: .78rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--dv-gold-text); margin: 0 0 .6rem; }
.dv-study-card h3 i { font-size: .85rem; }
.dv-study-card p { margin: 0; font-size: .98rem; line-height: 1.6; color: #34304a; }
.dv-study-card--word { background: var(--dv-brand); border-color: var(--dv-brand); color: #fff; }
.dv-study-card--word h3 { color: #e4bc4f; }
.dv-study-card--word p { color: rgba(255, 255, 255, .88); }
.dv-word { font: 500 2.1rem/1.2 var(--dv-read) !important; color: #fff !important; margin: .1rem 0 .2rem !important; }
.dv-word-tr { font-size: .85rem !important; color: #e4bc4f !important; margin-bottom: .7rem !important; }
.dv-refs { display: flex; flex-wrap: wrap; gap: .45rem; }
.dv-refs a { font-size: .88rem; font-weight: 500; background: var(--dv-brand-soft); color: var(--dv-brand); border-radius: 99px; padding: .3rem .8rem; text-decoration: none; transition: background .2s; }
.dv-refs a:hover { background: #e3dbf2; }
.dv-henry { text-align: center; background: var(--dv-brand-soft); border-color: transparent; padding: 1.6rem clamp(1.2rem, 5vw, 2.4rem); }
.dv-henry blockquote { margin: 0; font: italic 400 clamp(1.15rem, 2.4vw, 1.3rem)/1.55 var(--dv-read); color: var(--dv-brand); }
.dv-henry figcaption { margin-top: .7rem; font-size: .78rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--dv-gold-text); }
.dv-dig { border-style: dashed; border-color: var(--dv-gold); }
.dv-study-locked { text-align: center; background: #fff; border: 1px solid var(--dv-line); border-radius: 14px; padding: 1.6rem 1.25rem; }
.dv-study-locked ul { list-style: none; padding: 0; margin: 0 0 1.1rem; display: flex; flex-wrap: wrap; justify-content: center; gap: .45rem; }
.dv-study-locked li { font-size: .85rem; color: var(--dv-brand); background: var(--dv-brand-soft); border-radius: 99px; padding: .3rem .8rem; }
.dv-study-locked li i { margin-right: .3rem; color: var(--dv-gold-text); }
.dv-study-locked p { margin: 0 auto 1rem; max-width: 44ch; color: var(--dv-muted); }
@media (max-width: 575.98px) { .dv-study { grid-template-columns: minmax(0, 1fr); } }

/* Ore */
.dv-step--pray .dv-pray { margin: 0; padding: clamp(1.5rem, 5vw, 2.2rem); border-radius: 18px; text-align: center; font: italic 400 clamp(1.18rem, 2.5vw, 1.32rem)/1.7 var(--dv-read); color: #fff;
    background: radial-gradient(120% 140% at 50% 120%, rgba(228, 188, 79, .35) 0%, rgba(228, 188, 79, 0) 55%), linear-gradient(160deg, #2d1854, #1c0f38); }

/* Viva */
.dv-action { display: flex; gap: 1rem; align-items: flex-start; background: #fff; border: 1px solid var(--dv-line); border-left: 4px solid var(--dv-gold); border-radius: 14px; padding: 1.15rem 1.3rem; }
.dv-action i { flex: none; width: 2.4rem; height: 2.4rem; display: grid; place-items: center; border-radius: 50%; background: #fbf3dc; color: var(--dv-gold-text); }
.dv-action p { margin: 0; font-size: 1.08rem; font-weight: 500; line-height: 1.55; color: var(--dv-ink); }

/* Anote */
.dv-notebook { background: #fff; border: 1px solid var(--dv-line); border-radius: 14px; padding: 1.2rem 1.3rem; }
.dv-note-q { display: block; margin: 0 0 .8rem; font: italic 400 1.15rem/1.5 var(--dv-read); color: var(--dv-ink); }
.dv-note { width: 100%; font: 400 16px/32px 'Inter', system-ui, sans-serif; padding: 0 .2rem; border: 0; border-radius: 0; resize: vertical; min-height: 192px; color: var(--dv-ink);
    background: repeating-linear-gradient(180deg, transparent 0, transparent 31px, var(--dv-line) 31px, var(--dv-line) 32px); background-attachment: local; }
.dv-note:focus { outline: none; }
.dv-notebook:focus-within { border-color: var(--dv-gold); box-shadow: 0 0 0 3px rgba(201, 162, 39, .15); }
.dv-note-status { min-height: 1.3em; margin: .4rem 0 0; font-size: .85rem; color: var(--dv-muted); }
.dv-note-login { font-size: .95rem; margin: 0; }
.dv-note-login a { color: var(--dv-brand); font-weight: 600; }

/* Compartilhar */
.dv-share-mini { display: flex; align-items: center; justify-content: flex-end; gap: .4rem; margin-top: .8rem; font-size: .82rem; color: var(--dv-muted); }
.dv-share-mini span { margin-right: .2rem; }
.dv-share-mini button { width: 2.2rem; height: 2.2rem; border-radius: 50%; border: 1px solid var(--dv-line); background: #fff; color: var(--dv-brand); cursor: pointer; transition: background .2s, color .2s, border-color .2s; }
.dv-share-mini button:hover { background: var(--dv-brand); border-color: var(--dv-brand); color: #fff; }
.dv-share-mini button[data-share="whatsapp"]:hover { background: #25d366; border-color: #25d366; }
.dv-share { display: flex; gap: 1.2rem; align-items: center; margin-top: 2.4rem; padding: 1.3rem 1.4rem; border-radius: 18px; background: #fff; border: 1px solid var(--dv-line); box-shadow: 0 18px 40px -30px rgba(45, 24, 84, .45); }
.dv-share img { flex: none; width: 84px; height: auto; border-radius: 3px 6px 6px 3px; box-shadow: 6px 8px 18px rgba(28, 15, 56, .3); }
.dv-share-body { min-width: 0; }
.dv-share-kicker { margin: 0; font: 500 1.35rem/1.2 var(--dv-read); color: var(--dv-ink); }
.dv-share-text { margin: .3rem 0 .9rem; font-size: .92rem; color: var(--dv-muted); }
.dv-share-actions { display: flex; flex-wrap: wrap; gap: .45rem; }
.dv-share-btn { display: inline-flex; align-items: center; gap: .4rem; padding: .5rem .95rem; border-radius: 99px; border: 1px solid var(--dv-line); background: #faf9f6; color: var(--dv-ink); font-size: .88rem; font-weight: 600; cursor: pointer; }
.dv-share-btn:hover { border-color: var(--dv-gold); }
.dv-share-btn--wa { background: #25d366; border-color: #25d366; color: #fff; }
.dv-share-btn--wa:hover { background: #1ebe5a; border-color: #1ebe5a; }
@media (max-width: 480px) { .dv-share { flex-direction: column; text-align: center; } .dv-share-actions { justify-content: center; } }

/* Fim do dia */
.dv-finish { margin-top: 3rem; text-align: center; }
.dv-finish-lead { font: italic 400 1.15rem/1.4 var(--dv-read); color: var(--dv-muted); margin: 0 0 .9rem; }
.dv-btn--lg { min-height: 52px; padding: .8rem 2rem; font-size: 1.02rem; border-radius: 99px; }
.dv-tomorrow { display: block; margin-top: 2.6rem; padding: 1.4rem 1.5rem; border-radius: 18px; color: #fff; text-decoration: none; position: relative; overflow: hidden;
    background: radial-gradient(90% 160% at 100% 100%, rgba(228, 188, 79, .45) 0%, rgba(228, 188, 79, 0) 55%), linear-gradient(135deg, #2d1854, #1c0f38); }
a.dv-tomorrow:hover { color: #fff; }
a.dv-tomorrow:hover .dv-tomorrow-ref i { transform: translateX(4px); }
.dv-tomorrow span { display: block; }
.dv-tomorrow-kicker { font-size: .75rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: #e4bc4f; }
.dv-tomorrow-title { font: 500 clamp(1.4rem, 3.4vw, 1.75rem)/1.2 var(--dv-read); margin: .45rem 0 .5rem; }
.dv-tomorrow-ref { font-size: .9rem; opacity: .85; }
.dv-tomorrow-ref i { margin-left: .4rem; transition: transform .2s; }
.dv-foot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .6rem; margin-top: 1.6rem; }
.dv-foot a { color: var(--dv-muted); font-size: .9rem; text-decoration: none; }
.dv-foot a:hover { color: var(--dv-brand); }
.dv-signed { margin: 2.4rem 0 0; text-align: center; font-size: .82rem; letter-spacing: .08em; text-transform: uppercase; color: var(--dv-muted); }
.dv-signed span { display: block; font-size: 1.3rem; color: var(--dv-gold); margin-bottom: .3rem; letter-spacing: 0; }

.dv-pending { margin: 2rem 0 0; padding: 1rem 1.2rem; background: var(--dv-brand-soft); border-radius: 12px; }
.dv-lock { margin-top: 2.6rem; padding: 2rem clamp(1.2rem, 5vw, 2.2rem); background: #fff; border: 1px solid var(--dv-gold); border-radius: 18px; text-align: center; box-shadow: 0 18px 40px -28px rgba(45, 24, 84, .35); }
.dv-lock > i { color: var(--dv-gold-text); font-size: 1.5rem; }
.dv-lock h2 { font: 500 1.75rem/1.2 var(--dv-read); margin: .6rem 0 .5rem; }
.dv-lock p { margin: 0 auto; max-width: 50ch; color: var(--dv-muted); }
.dv-lock-list { list-style: none; padding: 0; margin: 1.2rem auto 0; max-width: 40ch; text-align: left; }
.dv-lock-list li { position: relative; padding: .3rem 0 .3rem 1.6rem; font-size: .95rem; }
.dv-lock-list li::before { content: '\2713'; position: absolute; left: 0; color: var(--dv-gold-text); font-weight: 700; }
.dv-lock-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: .6rem; margin-top: 1.4rem; }
.dv-lock-login { margin-top: 1rem !important; font-size: .92rem; }

/* Ouvir */
.dv-listen { display: inline-flex; align-items: center; gap: .55rem; margin-top: 1.4rem; padding: .7rem 1.4rem; border: 0; border-radius: 99px; background: #e4bc4f; color: #1c0f38; font-weight: 600; font-size: .95rem; cursor: pointer; box-shadow: 0 10px 24px -12px rgba(0, 0, 0, .55); transition: transform .15s, background .2s; }
.dv-listen:hover { background: #efc95c; transform: translateY(-1px); }
.dv-listen:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.dv-listen.is-on { background: rgba(255, 255, 255, .14); color: #fff; box-shadow: none; border: 1px solid rgba(255, 255, 255, .3); }
.dv-player { position: fixed; left: 50%; bottom: calc(1rem + env(safe-area-inset-bottom, 0px)); transform: translateX(-50%); z-index: 1060; display: flex; align-items: center; gap: .35rem; padding: .4rem .45rem .4rem 1.1rem; border-radius: 99px; background: #1c0f38; color: #fff; box-shadow: 0 16px 40px -14px rgba(0, 0, 0, .6); max-width: calc(100% - 32px); }
.dv-player[hidden] { display: none; }
.dv-player-now { font-size: .85rem; opacity: .85; margin-right: .4rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
.dv-player button { flex: none; width: 2.6rem; height: 2.6rem; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .1); color: #fff; font-size: .9rem; font-weight: 600; cursor: pointer; touch-action: manipulation; }
.dv-player button:hover { background: rgba(255, 255, 255, .2); }
.dv-player #dvPlayerToggle { background: #e4bc4f; color: #1c0f38; }
.dv-player button:focus-visible { outline: 2px solid #e4bc4f; outline-offset: 2px; }
.dv-tts-on { background: rgba(228, 188, 79, .16); box-shadow: 0 0 0 .45rem rgba(228, 188, 79, .16); border-radius: 6px; transition: background .3s, box-shadow .3s; }
.dv-dawn h1.dv-tts-on { background: rgba(228, 188, 79, .18); box-shadow: 0 0 0 .45rem rgba(228, 188, 79, .18); }
.dv-step--pray .dv-pray.dv-tts-on { box-shadow: 0 0 0 3px #e4bc4f; }

@media (prefers-reduced-motion: reduce) {
    .dv-progress span, .dv-steps-nav a, .dv-tomorrow-ref i { transition: none; }
}

/* Destaque da página inicial */
.home-book { display: grid; grid-template-columns: minmax(0, 260px) minmax(0, 1fr); gap: clamp(1.5rem, 5vw, 3.5rem); align-items: center; background: var(--dv-brand); color: #fff; border-radius: 18px; padding: clamp(1.6rem, 5vw, 3rem); }
.home-book h2 { font: 500 clamp(2rem, 5vw, 2.9rem)/1.08 var(--dv-read); margin: .2rem 0 0; color: #fff; }
.home-book-kicker { color: #e4bc4f; font-weight: 600; font-size: .88rem; margin: 0; }
.home-book-slogan { margin: .6rem 0 0; font-size: 1.1rem; }
.home-book-text { margin: .8rem 0 0; opacity: .88; max-width: 60ch; }
.home-book .dv-book-cover { width: min(100%, 220px); padding: 1.2rem 1.1rem; }
.home-book .dv-book-title { font-size: 2rem; margin-top: .7rem; }
.home-book .dv-sale-price { margin-top: 1.1rem; }
@media (max-width: 767.98px) {
    .home-book { grid-template-columns: minmax(0, 1fr); }
    .home-book .dv-book { order: 2; }
    .home-book .dv-book-cover { width: min(62%, 200px); transform: none; }
}
