/*
 * Base editorial compartilhada das páginas de livros — 2026.
 * Layout e componentes comuns ficam nesta base; cada livro mantém
 * no próprio HTML somente sua identidade e seus módulos exclusivos.
 */
:root {
    --va-night: #061523;
    --va-pine: #0b3650;
    --va-pine-light: #18799f;
    --va-snow: #f5f3ed;
    --va-mist: #b9d3df;
    --va-accent: #d6a52a;
    --va-accent-dark: #a9790a;
    --va-sky: #73c8e8;
    --va-gold: #f5c84b;
  }

html { scroll-behavior: smooth; }

body.home { background: var(--va-night); color: var(--va-snow); }

.va-main { overflow: hidden; background: var(--va-night); }

.va-main *, .va-main *::before, .va-main *::after { box-sizing: border-box; }

.va-shell { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }

.va-kicker { color: var(--va-accent); font: 800 11px/1 'Open Sans', sans-serif; letter-spacing: .26em; text-transform: uppercase; }

.va-display { margin: 20px 0 30px; color: var(--va-snow); font: 300 clamp(40px, 5.4vw, 74px)/1.01 'Raleway', sans-serif; letter-spacing: -.04em; }

.va-display strong { color: var(--va-accent); font-weight: 800; }

.va-copy p { margin: 0 0 22px; color: #bad0da; font-size: 17px; line-height: 1.9; }

.va-button { min-height: 54px; display: inline-flex; align-items: center; justify-content: center; padding: 0 26px; border: 1px solid var(--va-accent); color: #132f3d; background: var(--va-accent); font: 800 12px/1 'Open Sans', sans-serif; letter-spacing: .12em; text-transform: uppercase; text-decoration: none; transition: transform .25s ease, background .25s ease, color .25s ease; }

.va-button:hover, .va-button:focus { transform: translateY(-3px); background: #ecc85b; color: #0b2737; }

.va-button--ghost { color: #fff; background: rgba(6,21,35,.35); border-color: rgba(255,255,255,.58); }

.va-button--ghost:hover, .va-button--ghost:focus { border-color: #fff; background: #fff; color: var(--va-night); }

.va-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }

.va-eyebrow::before { content: ''; width: 56px; height: 4px; background: var(--va-accent); }

.va-hero h1 { margin: 0; color: #fff; font: 800 clamp(66px, 10.7vw, 148px)/.79 'Raleway', sans-serif; letter-spacing: -.062em; text-transform: uppercase; text-shadow: 0 8px 40px rgba(0,0,0,.52); }

.va-hero h1 span { display: block; color: var(--va-accent); }

.va-trail-tag { position: absolute; right: 30px; bottom: 44px; color: #fff; font: 800 10px/1 monospace; letter-spacing: .2em; writing-mode: vertical-rl; }

.va-stats { position: relative; z-index: 2; margin-top: -1px; background: #178fba; }

.va-stats-grid { display: grid; grid-template-columns: repeat(5, 1fr); }

.va-stat { padding: 26px 20px 28px; border-right: 1px solid rgba(255,255,255,.25); text-align: center; }

.va-stat:first-child { border-left: 1px solid rgba(255,255,255,.25); }

.va-stat strong { display: block; color: #fff; font: 800 clamp(28px, 3.5vw, 49px)/1 'Raleway', sans-serif; }

.va-stat span { display: block; margin-top: 8px; color: rgba(255,255,255,.82); font: 700 9px/1.25 'Open Sans', sans-serif; letter-spacing: .16em; text-transform: uppercase; }

.va-intro { padding: 130px 0; }

.va-intro-grid { display: grid; grid-template-columns: 1fr .9fr; gap: clamp(55px, 9vw, 130px); align-items: center; }

.va-book-stage { position: relative; min-height: 700px; display: flex; flex-direction: column; align-items: center; justify-content: center; isolation: isolate; }

.va-book-stage::before { content: ''; position: absolute; inset: 8% -2% 17%; z-index: -1; border: 0; border-radius: 0; background-image: radial-gradient(circle, rgba(54,151,190,.3) 1.2px, transparent 1.4px); background-size: 17px 17px; box-shadow: none; -webkit-mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); }

.va-book-stage img { display: block; width: 108%; max-width: none; filter: drop-shadow(0 30px 32px rgba(31,75,92,.25)); transform: none; }

.va-book-stamp:hover, .va-book-stamp:focus { color: #050505; background: #ffe230; text-decoration: none; transform: translateY(-3px) scale(1.02); box-shadow: 0 18px 36px rgba(31,75,92,.24); }

.va-book-stamp:focus-visible { outline: 3px solid #167fa8; outline-offset: 12px; }

.va-book-stamp::before { content: ''; position: absolute; left: 50%; top: 50%; width: 4px; height: 4px; margin: -2px 0 0 -2px; border: 0; border-radius: 50%; background: transparent; pointer-events: none; box-shadow: 88px 0 0 #e9c700, 87.2px 11.5px 0 #e9c700, 85px 22.8px 0 #e9c700, 81.3px 33.7px 0 #e9c700, 76.2px 44px 0 #e9c700, 69.8px 53.6px 0 #e9c700, 62.2px 62.2px 0 #e9c700, 53.6px 69.8px 0 #e9c700, 44px 76.2px 0 #e9c700, 33.7px 81.3px 0 #e9c700, 22.8px 85px 0 #e9c700, 11.5px 87.2px 0 #e9c700, 0 88px 0 #e9c700, -11.5px 87.2px 0 #e9c700, -22.8px 85px 0 #e9c700, -33.7px 81.3px 0 #e9c700, -44px 76.2px 0 #e9c700, -53.6px 69.8px 0 #e9c700, -62.2px 62.2px 0 #e9c700, -69.8px 53.6px 0 #e9c700, -76.2px 44px 0 #e9c700, -81.3px 33.7px 0 #e9c700, -85px 22.8px 0 #e9c700, -87.2px 11.5px 0 #e9c700, -88px 0 0 #e9c700, -87.2px -11.5px 0 #e9c700, -85px -22.8px 0 #e9c700, -81.3px -33.7px 0 #e9c700, -76.2px -44px 0 #e9c700, -69.8px -53.6px 0 #e9c700, -62.2px -62.2px 0 #e9c700, -53.6px -69.8px 0 #e9c700, -44px -76.2px 0 #e9c700, -33.7px -81.3px 0 #e9c700, -22.8px -85px 0 #e9c700, -11.5px -87.2px 0 #e9c700, 0 -88px 0 #e9c700, 11.5px -87.2px 0 #e9c700, 22.8px -85px 0 #e9c700, 33.7px -81.3px 0 #e9c700, 44px -76.2px 0 #e9c700, 53.6px -69.8px 0 #e9c700, 62.2px -62.2px 0 #e9c700, 69.8px -53.6px 0 #e9c700, 76.2px -44px 0 #e9c700, 81.3px -33.7px 0 #e9c700, 85px -22.8px 0 #e9c700, 87.2px -11.5px 0 #e9c700; }

.va-book-stamp small { display: block; color: #050505; font: 900 13px/1 'Open Sans', sans-serif; letter-spacing: .04em; }

.va-book-stamp strong { display: block; margin: 8px 0 7px; color: #050505; font-family: "Arial Black", Arial, Helvetica, sans-serif; font-size: 38px; font-weight: 900; font-stretch: normal; font-style: normal; font-variant-numeric: lining-nums tabular-nums; font-feature-settings: 'lnum' 1, 'tnum' 1; line-height: .92; letter-spacing: -.065em; white-space: nowrap; }

.va-book-stamp em { display: block; color: #050505; font: normal 900 13px/1 'Open Sans', sans-serif; letter-spacing: -.02em; white-space: nowrap; }

.va-details { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; margin-top: 36px; border: 1px solid rgba(255,255,255,.13); background: rgba(255,255,255,.13); }

.va-detail { padding: 18px; background: #09273a; }

.va-detail strong { display: block; color: #fff; font: 700 17px/1.2 'Raleway', sans-serif; }

.va-detail span { display: block; margin-top: 6px; color: #86aabd; font: 700 9px/1 'Open Sans', sans-serif; letter-spacing: .13em; text-transform: uppercase; }

.va-route { position: relative; padding: 130px 0; background: var(--va-snow); color: #102c3b; }

.va-route-grid { display: grid; grid-template-columns: .84fr 1.16fr; gap: clamp(50px, 8vw, 110px); align-items: center; }

.va-route .va-display { color: #102c3b; }

.va-route .va-copy p { color: #536c78; }

.va-map { position: relative; margin: 0; padding: 1px; background: #fff; box-shadow: 4px 4px 0 #d9d4c8; }

.va-map img { display: block; width: 100%; filter: saturate(.75) contrast(1.04); }

.va-route-points { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }

.va-route-points span { padding: 9px 12px; border: 1px solid rgba(16,44,59,.24); color: #335365; font: 700 9px/1 'Open Sans', sans-serif; letter-spacing: .1em; text-transform: uppercase; }

.va-elevation { position: relative; padding: 130px 0; color: #fff; background: linear-gradient(145deg, #071827 0%, #0c3b57 58%, #126d91 100%); }

.va-elevation::before { content: ''; position: absolute; inset: 0; pointer-events: none; opacity: .22; background: linear-gradient(120deg, transparent 49.7%, rgba(255,255,255,.18) 50%, transparent 50.3%); background-size: 54px 54px; }

.va-elevation-head { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 45px; align-items: end; margin-bottom: 45px; }

.va-elevation-head .va-display { max-width: 760px; margin-bottom: 0; }

.va-elevation-summary { display: grid; grid-template-columns: repeat(2, auto); gap: 1px; border: 1px solid rgba(255,255,255,.17); background: rgba(255,255,255,.17); }

.va-elevation-summary div { min-width: 150px; padding: 17px 19px; background: rgba(5,22,35,.76); }

.va-elevation-summary strong { display: block; color: #fff; font: 800 22px/1 'Raleway', sans-serif; }

.va-elevation-summary span { display: block; margin-top: 7px; color: #8fc6dc; font: 700 8px/1 'Open Sans', sans-serif; letter-spacing: .13em; text-transform: uppercase; }

.va-altimeter { position: relative; padding: 28px 28px 22px; border: 1px solid rgba(255,255,255,.19); background: rgba(3,18,30,.74); box-shadow: 0 30px 80px rgba(0,0,0,.24); backdrop-filter: blur(8px); }

.va-altimeter canvas { display: block; width: 100%; height: 390px; cursor: crosshair; touch-action: pan-y; }

.va-altimeter-tooltip { position: absolute; z-index: 4; min-width: 170px; padding: 12px 14px; pointer-events: none; opacity: 0; color: #082033; background: #fff; box-shadow: 0 12px 35px rgba(0,0,0,.3); transform: translate(-50%, calc(-100% - 18px)); transition: opacity .15s ease; }

.va-altimeter-tooltip.is-visible { opacity: 1; }

.va-altimeter-tooltip strong { display: block; color: var(--va-accent-dark); font: 800 18px/1.1 'Raleway', sans-serif; }

.va-altimeter-tooltip span { display: block; margin-top: 5px; color: #315365; font: 700 10px/1.35 'Open Sans', sans-serif; }

.va-elevation-help { display: flex; justify-content: space-between; gap: 24px; margin: 18px 0 0; color: #9dc8d9; font-size: 12px; line-height: 1.5; }

.va-elevation-help a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }

.va-stages { display: flex; gap: 8px; margin-top: 22px; overflow-x: auto; padding-bottom: 8px; scrollbar-color: var(--va-accent) rgba(255,255,255,.1); }

.va-stage { flex: 0 0 auto; min-width: 145px; padding: 12px 14px; border-top: 2px solid var(--va-accent); background: rgba(4,23,37,.65); }

.va-stage strong { display: block; color: #fff; font: 800 10px/1.2 'Open Sans', sans-serif; text-transform: uppercase; }

.va-stage span { display: block; margin-top: 5px; color: #82b4ca; font: 700 9px/1 'Open Sans', sans-serif; }

.va-experience { padding: 130px 0; }

.va-section-head { display: flex; justify-content: space-between; align-items: end; gap: 40px; padding-bottom: 35px; border-bottom: 1px solid rgba(255,255,255,.16); }

.va-section-head h2 { max-width: 800px; margin: 0; color: var(--va-snow); font: 300 clamp(36px, 4.5vw, 62px)/1.04 'Raleway', sans-serif; letter-spacing: -.035em; }

.va-section-code { color: var(--va-accent); font: 800 11px/1 monospace; letter-spacing: .15em; white-space: nowrap; }

.va-gallery { position: relative; left: 50%; width: 100vw; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 38px; align-items: start; transform: translateX(-50%); }

.va-gallery-row { display: contents; }

.va-gallery-item { min-width: 0; margin: 0; }

.va-gallery a { position: relative; display: block; color: #fff; background: transparent; text-decoration: none; }

.va-gallery img { display: block; width: 100%; height: auto; object-fit: contain; box-shadow: 0 18px 45px rgba(20,63,80,.12); transition: opacity .25s ease, box-shadow .25s ease; }

.va-gallery a:hover img, .va-gallery a:focus-visible img { opacity: .9; box-shadow: 0 24px 58px rgba(20,63,80,.2); }

.va-gallery a:focus-visible { outline: 2px solid var(--va-accent); outline-offset: 5px; }

.va-gallery figcaption { display: none; }

/* Mesmo ampliador editorial utilizado em /trekking/ */
  body.tk-lb-open { overflow: hidden !important; }

.tk-lightbox[hidden] { display: none !important; }

.tk-lightbox { position: fixed; inset: 0; z-index: 100500; display: flex; align-items: center; justify-content: center; color: #fff; background: #02080d; font-family: 'Open Sans', Arial, sans-serif; }

.tk-lightbox::before { content: ''; position: fixed; inset: 0; background: linear-gradient(180deg, rgba(2,8,13,.72), rgba(2,8,13,0) 22%), linear-gradient(0deg, rgba(2,8,13,.88), rgba(2,8,13,0) 34%); pointer-events: none; }

.tk-lb-stage { position: relative; z-index: 1; width: 100vw; height: 100dvh; margin: 0; display: flex; align-items: center; justify-content: center; }

.tk-lb-image { display: block; width: auto; height: auto; max-width: min(86vw, 1680px); max-height: calc(100dvh - 160px); object-fit: contain; box-shadow: 0 26px 70px rgba(0,0,0,.45); }

.tk-lightbox.is-expanded .tk-lb-image, .tk-lightbox:fullscreen .tk-lb-image, .tk-lightbox:-webkit-full-screen .tk-lb-image { max-width: 100vw; max-height: 100dvh; box-shadow: none; }

.tk-lb-meta { position: fixed; left: 42px; right: 42px; bottom: 34px; z-index: 4; max-width: 820px; text-align: left; pointer-events: none; }

.tk-lb-counter { display: block; margin-bottom: 12px; color: #8795a3; font: 900 11px/1 'Raleway', Arial, sans-serif; letter-spacing: 1.6px; text-transform: uppercase; }

.tk-lb-caption { display: block; max-width: 760px; color: #fff; font-size: 14px; line-height: 1.45; font-weight: 800; }

.tk-lb-credit { display: block; margin-top: 6px; color: #98a5b3; font-size: 11px; line-height: 1.35; font-weight: 700; }

.tk-lb-btn, .tk-lb-arrow { position: fixed; z-index: 5; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.2); background: rgba(255,255,255,.06); border-radius: 50%; cursor: pointer; transition: background .18s ease, transform .18s ease, border-color .18s ease; }

.tk-lb-btn:hover, .tk-lb-arrow:hover { background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.34); transform: scale(1.04); }

.tk-lb-btn:focus-visible, .tk-lb-arrow:focus-visible { outline: 2px solid #d8b34a; outline-offset: 3px; }

.tk-lb-close, .tk-lb-full { top: 24px; width: 44px; height: 44px; }

.tk-lb-close { right: 26px; }

.tk-lb-full { right: 82px; }

.tk-lb-close::before, .tk-lb-close::after { content: ''; position: absolute; left: 13px; top: 20px; width: 18px; height: 2px; background: #fff; border-radius: 2px; }

.tk-lb-close::before { transform: rotate(45deg); }

.tk-lb-close::after { transform: rotate(-45deg); }

.tk-lb-full::before, .tk-lb-full::after { content: ''; position: absolute; width: 10px; height: 10px; border-color: #fff; border-style: solid; }

.tk-lb-full::before { top: 11px; right: 11px; border-width: 2px 2px 0 0; }

.tk-lb-full::after { left: 11px; bottom: 11px; border-width: 0 0 2px 2px; }

.tk-lb-arrow { top: 50%; width: 48px; height: 48px; margin-top: -24px; }

.tk-lb-prev { left: 26px; }

.tk-lb-next { right: 26px; }

.tk-lb-arrow::before { content: ''; width: 11px; height: 11px; border-color: #fff; border-style: solid; }

.tk-lb-prev::before { border-width: 0 0 2px 2px; transform: translateX(2px) rotate(45deg); }

.tk-lb-next::before { border-width: 2px 2px 0 0; transform: translateX(-2px) rotate(45deg); }

.va-manifesto::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(6,21,35,.98), rgba(8,45,67,.64) 65%, rgba(6,21,35,.16)); }

.va-quote-panel::before { content: '“'; position: absolute; z-index: 0; left: clamp(18px, 3vw, 42px); top: clamp(-74px, -5vw, -44px); color: #f0cb65; font: 700 clamp(150px, 15vw, 240px)/1 Georgia, 'Times New Roman', serif; opacity: .3; pointer-events: none; text-shadow: 0 14px 34px rgba(3,24,36,.2); }

.va-quote-panel > * { position: relative; z-index: 1; }

.va-quote { max-width: 900px; margin: 30px 0; color: #fff; font: 400 clamp(38px, 5.3vw, 72px)/1.04 'Raleway', sans-serif; letter-spacing: -.045em; text-shadow: 0 4px 24px rgba(2,25,38,.34); }

.va-quote strong { color: var(--va-accent); font-weight: 800; }

.va-quote-credit { display: inline-flex; align-items: center; gap: 12px; color: #e0eff5; font: 800 10px/1 'Open Sans', sans-serif; letter-spacing: .2em; text-transform: uppercase; }

.va-quote-credit::before { content: ''; width: 42px; height: 2px; background: #f0cb65; }

.va-voices { padding: 130px 0; background: #08283b; }

.va-voice-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 45px; }

.va-voice { min-height: 430px; display: flex; flex-direction: column; padding: 34px; border: 1px solid rgba(255,255,255,.13); background: linear-gradient(160deg, rgba(255,255,255,.06), transparent); }

.va-voice::before { content: '“'; color: var(--va-accent); font: 300 80px/.7 Georgia, serif; }

.va-voice p { color: #d2e1e8; font-size: 15px; line-height: 1.85; }

.va-voice cite { margin-top: auto; padding-top: 28px; color: #fff; font: normal 800 11px/1.4 'Open Sans', sans-serif; letter-spacing: .08em; text-transform: uppercase; }

.va-voice cite span { display: block; margin-top: 5px; color: #84afc2; font-size: 9px; }

.va-podcast { padding: 120px 0; color: #102c3b; background: #dceef5; }

.va-podcast-grid { display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(45px, 8vw, 110px); align-items: center; }

.va-podcast .va-display { color: #102c3b; }

.va-podcast .va-copy p { color: #526e7d; }

.va-podcast-player { position: relative; padding: 26px 26px 26px 0px; border: 0px solid rgba(16,44,59,.15);  box-shadow: 1px 1px 0 #bad9e6; }

.va-podcast-player::before { content: '477'; position: absolute; right: 24px; top: -93px; color: rgba(16,87,117,.12); font: 900 120px/1 'Raleway', sans-serif; letter-spacing: -.08em; }

.va-podcast-player iframe { position: relative; z-index: 1; display: block; width: 100%; height: 175px; border: 0; border-radius: 12px; }

.va-buy { position: relative; isolation: isolate; overflow: hidden; padding: 130px 0; color: #102c3b; background: #f5f3ed; }

.va-buy::before { content: ''; position: absolute; inset: 0; z-index: -2; opacity: .42; background-image: linear-gradient(rgba(44,126,158,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(44,126,158,.08) 1px, transparent 1px); background-size: 38px 38px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); }

.va-buy .va-shell { position: relative; z-index: 1; }

.va-buy .va-display { color: #102c3b; }

.va-buy-head { max-width: 940px; margin-bottom: 50px; }

.va-buy-head p { max-width: 690px; margin: 0; color: #5a7480; font-size: 17px; line-height: 1.75; }

.va-ebook-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: clamp(20px, 2.7vw, 38px); align-items: start; }

.va-ebook-card { min-width: 0; display: flex; flex-direction: column; background: transparent; transition: transform .28s ease; }

.va-ebook-card:hover { transform: translateY(-9px); }

.va-ebook-cover-link { position: relative; display: block; background: transparent; }

.va-ebook-cover { display: block; width: 100%; aspect-ratio: 1774 / 2598; object-fit: cover; border-radius: 4px; box-shadow: 0 24px 48px rgba(25,67,84,.18), 0 3px 10px rgba(25,67,84,.12); transition: transform .45s ease, box-shadow .45s ease; }

.va-ebook-card:hover .va-ebook-cover { transform: scale(1.022); box-shadow: 0 30px 58px rgba(25,67,84,.23), 0 4px 12px rgba(25,67,84,.14); }

.va-ebook-language { padding: 22px 2px 14px; text-align: center; }

.va-ebook-language strong { display: block; color: #15394c; font: 800 17px/1.1 'Raleway', sans-serif; }

.va-ebook-language span { display: block; margin-top: 7px; color: #78919c; font: 800 8px/1 'Open Sans', sans-serif; letter-spacing: .14em; text-transform: uppercase; }

.va-ebook-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 15px; margin-top: auto; }

.va-store-button { position: relative; display: inline-flex; align-items: center; padding: 5px 0 7px; border: 0; border-bottom: 1px solid currentColor; background: transparent; font: 800 10px/1.15 'Open Sans', sans-serif; text-align: center; text-decoration: none; transition: transform .2s ease, color .2s ease; }

.va-store-button::after { content: '↗'; margin-left: 5px; font-size: 9px; }

.va-store-button:hover, .va-store-button:focus { transform: translateY(-2px); text-decoration: none; }

.va-store-button--apple { color: #1e6fa8; }

.va-store-button--apple:hover, .va-store-button--apple:focus { color: #0e4f79; }

.va-store-button--amazon { color: #a56f00; }

.va-store-button--amazon:hover, .va-store-button--amazon:focus { color: #725000; }

.va-buy-note { margin: 28px 0 0; color: #6a818b; font-size: 13px; text-align: center; }

.va-author { padding: 130px 0; }

.va-author-grid { display: grid; grid-template-columns: .8fr 1fr; gap: clamp(55px, 9vw, 125px); align-items: center; }

.va-author-photo { position: relative; min-height: 590px; margin: 0; overflow: hidden; background: #0d3b54 url('/livro/via-alpina/imagem/elias-luiz.jpg') center / cover no-repeat; box-shadow: 4px 4px 0 var(--va-accent); }

.va-author-photo::after { content: 'ELIAS LUIZ'; position: absolute; left: 24px; bottom: 20px; padding: 9px 12px; color: #173444; background: var(--va-accent); font: 800 10px/1 'Open Sans', sans-serif; letter-spacing: .18em; }

.va-author-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }

.va-author-links a { padding: 9px 12px; border: 1px solid rgba(255,255,255,.23); color: #bad0da; font: 700 9px/1 'Open Sans', sans-serif; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }

.va-author-links a:hover { color: #fff; border-color: var(--va-accent); background: var(--va-accent); }

.va-final { padding: 150px 0; text-align: center; background: radial-gradient(circle at 50% 100%, #116485 0, #061523 62%); }

.va-final .va-display { max-width: 900px; margin-left: auto; margin-right: auto; }

.va-final p { max-width: 660px; margin: 0 auto; color: #b2cad5; font-size: 17px; line-height: 1.8; }

.va-final .va-actions { justify-content: center; }

.va-isbn { display: block; margin-top: 36px; color: #74877f; font: 700 10px/1 monospace; letter-spacing: .16em; }

.site-footer.footer-primary { padding-top: 0 !important; background: #061523; }

.site-footer.footer-primary .top-footer { padding-top: 80px; background: linear-gradient(180deg, #08283b, #040e17) !important; border-top: 1px solid rgba(255,255,255,.12); }

.site-footer.footer-primary .buttom-footer { background: #02090f !important; }

.site-footer.footer-primary .widget-title { color: #fff; }

.site-footer.footer-primary .widget-text, .site-footer.footer-primary .widget-text a, .site-footer.footer-primary .copy-right, .site-footer.footer-primary .footer-menu a { color: #aac1cc; }

.site-footer.footer-primary a:hover { color: var(--va-accent); }

.site-footer.footer-primary input[type='submit'] { background: var(--va-accent); color: #173444; border-color: var(--va-accent); }

.va-whatsapp-float { position: fixed; right: 18px; bottom: 18px; z-index: 1000; display: flex; align-items: center; gap: 10px; padding: 8px 14px 8px 8px; color: #fff; border-radius: 40px; background: #20b95a; box-shadow: 0 10px 35px rgba(0,0,0,.32); font: 700 11px/1 'Open Sans', sans-serif; text-decoration: none; }

.va-whatsapp-float:hover { color: #fff; transform: translateY(-3px); }

.va-whatsapp-float span { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; font-weight: 800; }

/* Tema claro: céu alpino, neve e mostarda */
  body.home { background: #f3f8fa; color: #173444; }

.va-main { background: #f3f8fa; }

.va-kicker { color: #a9780b; }

.va-intro { background: #f7fbfc; }

.va-intro .va-display,
  .va-author .va-display { color: #15394c; }

.va-intro .va-copy p,
  .va-author .va-copy p { color: #506f7e; }

.va-detail { background: #e5f2f7; }

.va-detail strong { color: #15394c; }

.va-detail span { color: #668c9e; }

.va-details { border-color: #c8e0ea; background: #c8e0ea; }

.va-book-stage::before { border: 0; background-image: radial-gradient(circle, rgba(54,151,190,.3) 1.2px, transparent 1.4px); box-shadow: none; }

.va-elevation { color: #15394c; background: linear-gradient(145deg, #e9f7fb 0%, #bfe6f3 58%, #75c3df 100%); }

.va-elevation::before { opacity: .34; background-image: linear-gradient(120deg, transparent 49.7%, rgba(255,255,255,.65) 50%, transparent 50.3%); }

.va-elevation .va-display { color: #12394d; }

.va-elevation-summary { border-color: rgba(17,95,128,.17); background: rgba(17,95,128,.17); }

.va-elevation-summary div { background: rgba(255,255,255,.7); }

.va-elevation-summary strong { color: #12394d; }

.va-elevation-summary span { color: #3d7892; }

.va-elevation-help { color: #acd2e1; }

.va-elevation-help a { color: #fff; }

.va-experience { background: #f6fafb; }

.va-experience .va-section-head { border-bottom-color: #c5dde6; }

.va-experience .va-section-head h2 { color: #15394c; }

.va-experience .va-section-code { color: #a9780b; }

.va-manifesto::before { background: linear-gradient(90deg, rgba(7,45,65,.82), rgba(21,115,149,.34) 65%, rgba(82,165,193,.08)); }

.va-quote strong { color: #f0cb65; }

.va-voices { background: #e3f2f7; }

.va-voices .va-section-head { border-bottom-color: #bdd9e4; }

.va-voices .va-section-head h2 { color: #15394c; }

.va-voice { border-color: #c4dde7; background: rgba(255,255,255,.84); box-shadow: 0 16px 45px rgba(28,91,116,.08); }

.va-voice p { color: #466876; }

.va-voice cite { color: #15394c; }

.va-voice cite span { color: #668da0; }

.va-author { background: #f1f8fa; }

.va-author-links a { border-color: #afccd8; color: #3a6375; }

.va-author-links a:hover { color: #173444; border-color: var(--va-accent); background: var(--va-accent); }

.va-final { background: radial-gradient(circle at 50% 100%, #7cc5df 0, #dff2f8 64%, #f6fbfc 100%); }

.va-final .va-display { color: #15394c; }

.va-final p { color: #4e7180; }

.va-final .va-button--ghost { color: #174d67; border-color: #3485a7; background: rgba(255,255,255,.38); }

.va-final .va-button--ghost:hover { color: #fff; background: #1c7fa6; border-color: #1c7fa6; }

.va-final .va-isbn { color: #568196; }

@media (max-width: 991px) {
    .va-intro-grid, .va-route-grid, .va-author-grid, .va-podcast-grid { grid-template-columns: 1fr; }
    .va-elevation-head { grid-template-columns: 1fr; }
    .va-book-stage { width: min(100%, 620px); margin: 0 auto; }
    .va-map { max-width: 720px; }
    .va-voice-grid { grid-template-columns: 1fr; }
    .va-voice { min-height: auto; }
    .va-ebook-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .va-author-photo { width: min(100%, 600px); }
  }

@media (max-width: 767px) {
    .va-shell { width: min(100% - 28px, 1180px); }
    .va-hero { min-height: 790px; background-position: 60% center; }
    .va-hero-content { padding: 160px 0 76px; }
    .va-hero h1 { font-size: clamp(58px, 18vw, 92px); }
    .va-hero h2 { letter-spacing: .13em; }
    .va-trail-tag { display: none; }
    .va-stats-grid { grid-template-columns: repeat(2, 1fr); }
    .va-stat:last-child { grid-column: 1 / -1; }
    .va-intro, .va-route, .va-elevation, .va-experience, .va-voices, .va-podcast, .va-buy, .va-author, .va-final { padding: 88px 0; }
    .va-altimeter { padding: 18px 10px 14px; }
    .va-altimeter canvas { height: 320px; }
    .va-elevation-help { flex-direction: column; gap: 6px; }
    .va-book-stage { min-height: 590px; }
    .va-book-stamp { width: 122px; right: auto; bottom: auto; margin: 14px 16px 12px 0; padding: 15px 9px; }
    .va-book-stamp::before { transform: scale(.78); }
    .va-book-stamp small, .va-book-stamp em { font-size: 10px; }
    .va-book-stamp strong { margin: 6px 0 5px; font-size: 29px; }
    .va-section-head { align-items: start; flex-direction: column; }
    .va-gallery { left: auto; width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; transform: none; }
    .va-gallery-row { display: contents; }
    .tk-lb-image { max-width: 100vw; max-height: calc(100dvh - 168px); box-shadow: none; }
    .tk-lb-meta { left: 18px; right: 18px; bottom: 22px; max-width: none; }
    .tk-lb-close, .tk-lb-full { top: 14px; width: 38px; height: 38px; }
    .tk-lb-close { right: 14px; }
    .tk-lb-full { right: 60px; }
    .tk-lb-arrow { width: 38px; height: 38px; margin-top: -19px; background: rgba(255,255,255,.08); }
    .tk-lb-prev { left: 12px; }
    .tk-lb-next { right: 12px; }
    .va-manifesto { min-height: 620px; padding: 92px 0 64px; background-position: 45% center; }
    .va-manifesto::before { background: linear-gradient(90deg, rgba(7,45,65,.9), rgba(21,115,149,.42) 72%, rgba(82,165,193,.12)); }
    .va-quote-panel { max-width: 600px; padding: 12px 20px 36px 28px; border-left-width: 3px; }
    .va-quote-panel::before { left: 20px; top: -58px; font-size: clamp(128px, 32vw, 160px); opacity: .3; }
    .va-quote { max-width: 560px; margin: 42px 0 24px; font-size: clamp(34px, 10vw, 48px); line-height: 1.04; }
    .va-quote-credit { gap: 9px; font-size: 8px; letter-spacing: .14em; }
    .va-quote-credit::before { width: 30px; height: 1px; }
    .va-ebook-grid { display: flex; gap: 14px; margin-right: calc((100vw - 100%) / -2); padding: 4px calc((100vw - 100%) / 2) 28px 0; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-color: #65aeca #d9ebf1; }
    .va-ebook-card { flex: 0 0 min(72vw, 285px); scroll-snap-align: start; }
    .va-author-photo { min-height: 500px; }
    .va-whatsapp-float { padding-right: 8px; }
    .va-whatsapp-float b { display: none; }
  }

@media (max-width: 479px) {
    .va-actions { flex-direction: column; }
    .va-button { width: 100%; text-align: center; }
    .va-details { grid-template-columns: 1fr; }
    .va-book-stage img { width: 112%; }
    .va-gallery { grid-template-columns: 1fr; gap: 10px; }
    .va-gallery-row { display: contents; }
    .va-manifesto { min-height: 560px; padding: 86px 0 52px; background-position: 42% center; }
    .va-quote-panel { padding: 8px 12px 28px 20px; }
    .va-quote-panel::before { left: 14px; top: -50px; font-size: 122px; }
    .va-quote { margin: 38px 0 21px; font-size: clamp(32px, 10.5vw, 42px); }
    .va-quote-credit { font-size: 7px; letter-spacing: .11em; }
    .va-quote-credit::before { width: 24px; }
    .va-elevation-summary { grid-template-columns: 1fr 1fr; }
    .va-elevation-summary div { min-width: 0; padding: 14px; }
    .va-altimeter canvas { height: 280px; }
    .va-ebook-card { flex-basis: min(78vw, 275px); }
  }

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .va-button, .va-gallery img { transition: none; }
  }

.pa-audio-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(45px, 8vw, 110px); align-items: center; }

.pa-audio-card audio { position: relative; display: block; width: 100%; min-height: 54px; }

/* compartilhamento discreto dos livros */
  .book-share-button { position: fixed; right: 18px; bottom: 82px; z-index: 1001; width: 46px; height: 46px; display: grid; place-items: center; padding: 0; border: 1px solid rgba(255,255,255,.42); border-radius: 50%; color: #fff; background: rgba(12,31,44,.88); box-shadow: 0 10px 28px rgba(0,0,0,.2); cursor: pointer; transition: transform .2s ease, color .2s ease, background .2s ease, border-color .2s ease; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }

.book-share-button svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 2.25; stroke-linecap: round; stroke-linejoin: round; }

.book-share-button:hover, .book-share-button:focus-visible { color: #173444; background: var(--va-accent); border-color: var(--va-accent); transform: translateY(-3px); outline: 0; }

.book-share-button.is-shared { color: #173444; background: #fff; border-color: var(--va-accent); }

.book-share-feedback { position: fixed; right: 74px; bottom: 91px; z-index: 1001; padding: 8px 11px; border-radius: 3px; color: #fff; background: rgba(12,31,44,.92); font: 700 10px/1 'Open Sans', sans-serif; letter-spacing: .05em; opacity: 0; pointer-events: none; transform: translateX(8px); transition: opacity .2s ease, transform .2s ease; }

.book-share-feedback.is-visible { opacity: 1; transform: translateX(0); }

@media (max-width: 767px) { .book-share-button { right: 16px; bottom: 78px; width: 44px; height: 44px; } .book-share-feedback { right: 68px; bottom: 87px; } }

/* pilha dos controles flutuantes */
  .to-top-icon {
    right: 20px;
    bottom: 140px;
    z-index: 1001;
    width: 42px;
    height: 42px;
    line-height: 42px;
    border: 1px solid rgba(255,255,255,.36);
    color: #fff;
    background: rgba(12,31,44,.76);
    box-shadow: 0 9px 24px rgba(0,0,0,.16);
    font-size: 15px;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }

.to-top-icon:hover, .to-top-icon:focus-visible {
    color: #173444;
    background: var(--va-accent);
    border-color: var(--va-accent);
    outline: 0;
  }

@media screen and (max-width: 767px) {
    .to-top-icon {
      right: 19px;
      bottom: 132px;
      width: 38px;
      height: 38px;
      line-height: 38px;
      font-size: 13px;
    }
  }

/* controles móveis compactos 2026 */
  @media (max-width: 767px) {
    .to-top-icon { display: none !important; }
    .book-share-button { right: 16px; bottom: 64px; width: 40px; height: 40px; }
    .book-share-button svg { width: 17px; height: 17px; }
    .book-share-feedback { right: 64px; bottom: 75px; }
    .va-whatsapp-float { right: 16px; bottom: 16px; width: 40px; height: 40px; display: grid; place-items: center; gap: 0; padding: 0; border-radius: 50%; }
    .va-whatsapp-float span { width: 28px; height: 28px; }
    .va-whatsapp-float b { display: none; }
  }
/* Identidade cromática usada somente pelo overlay fotográfico. */
.book-tmb { --book-hero-deep: 10,34,52; --book-hero-mid: 24,62,84; --book-hero-soft: 68,103,119; }
.book-kungsleden { --book-hero-deep: 3,29,46; --book-hero-mid: 17,58,74; --book-hero-soft: 55,112,116; }
.book-rockies { --book-hero-deep: 8,31,25; --book-hero-mid: 24,62,49; --book-hero-soft: 45,88,66; }
.book-everest { --book-hero-deep: 8,38,58; --book-hero-mid: 21,76,105; --book-hero-soft: 63,134,163; }
.book-patagonia { --book-hero-deep: 7,30,31; --book-hero-mid: 18,58,59; --book-hero-soft: 44,91,87; }
.book-via-alpina { --book-hero-deep: 3,29,46; --book-hero-mid: 4,39,58; --book-hero-soft: 5,55,74; }

/* Overlay suave: protege o texto sem esconder a fotografia. */
.book-page .va-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg,
    rgba(var(--book-hero-deep),.56) 0%,
    rgba(var(--book-hero-mid),.36) 40%,
    rgba(var(--book-hero-soft),.14) 70%,
    rgba(var(--book-hero-soft),.02) 100%);
}
.book-page .va-hero::after { content: none; }

@media (max-width: 767px) {
  .book-page .va-hero::before {
    background: linear-gradient(90deg,
      rgba(var(--book-hero-deep),.72) 0%,
      rgba(var(--book-hero-mid),.46) 54%,
      rgba(var(--book-hero-soft),.16) 86%,
      rgba(var(--book-hero-soft),.03) 100%);
  }
}
