:root{color-scheme:light;--card:#fff;--topbg:rgba(255,255,255,.88);--input:#fffdf9;--head:#0a3d4d;--soft:#fff4d6;--disc:#f4eee2;--ph2:#ffe9e4;--teal:#0e8a8a;--deep:#0a3d4d;--coral:#ff6b57;--sun:#ffb703;--sky:#e8f7f6;--bg:#fffaf3;--ink:#1c2733;--mut:#5f6b7a;--line:#eadfce;--r:18px;--serif:Charter,'Iowan Old Style','Palatino Linotype',Georgia,'Times New Roman',serif;--ui:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif}
[data-theme=dark]{color-scheme:dark;--card:#14252f;--topbg:rgba(13,26,34,.88);--input:#0f1f28;--head:#e6f4f5;--soft:#3a3115;--disc:#1b2b34;--ph2:#2a2230;--sky:#12313a;--bg:#0c1820;--ink:#e6edf1;--mut:#9fb0bc;--line:#26414e;--teal:#3cc4c0}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.8 var(--serif);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%}a{color:var(--teal)}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}
.ic{width:1.15em;height:1.15em;vertical-align:-.2em;flex:none}
/* topo */
.top{position:sticky;top:0;z-index:50;background:var(--topbg);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:10px;padding-bottom:10px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--head)}
.logo{width:46px;height:46px;border-radius:50%;box-shadow:0 2px 10px rgba(10,61,77,.3);transition:transform .4s}.brand:hover .logo{transform:rotate(-8deg) scale(1.06)}
.foot-logo{display:block;width:64px;height:64px;border-radius:50%;margin-bottom:10px}
.bn{font:800 20px/1 system-ui,sans-serif;display:flex;flex-direction:column}.bn small{font:600 11px/1.3 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--coral)}
.bar-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
#auth-slot{display:flex;align-items:center;gap:8px}
.who{display:flex;align-items:center;gap:6px;font:600 14px system-ui,sans-serif}.who img{width:28px;height:28px;border-radius:50%}
.pill{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:99px;background:var(--deep);color:#fff;text-decoration:none;font:600 14px system-ui,sans-serif;transition:transform .2s,background .2s}
.pill:hover{transform:translateY(-2px);background:var(--teal)}.pill.ghost{background:transparent;color:var(--head);border:1px solid var(--line)}
.socials{display:flex;gap:10px}.socials a{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;color:#fff;transition:transform .25s}
.socials a:hover{transform:translateY(-4px) rotate(-6deg)}.socials .ic{width:22px;height:22px}
.s-wa{background:#25a244}.s-ig{background:linear-gradient(45deg,#f9a03f,#e1306c,#7a3fd0)}.s-mail{background:var(--deep)}
.socials.mini a{width:34px;height:34px}.socials.mini .ic{width:18px;height:18px}
.cats{border-top:1px solid var(--line);background:var(--card);overflow-x:auto;white-space:nowrap}
.cats .wrap{display:flex;gap:6px;padding-top:6px;padding-bottom:6px}
.cats a{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:99px;color:var(--ink);text-decoration:none;font:600 14px system-ui,sans-serif;transition:background .2s,color .2s}
.cats a:hover{background:var(--sky);color:var(--teal)}.cats a.cta{margin-left:auto;background:var(--coral);color:#fff}.cats a.cta:hover{background:#e5543f;color:#fff}
/* herói */
.hero{position:relative;overflow:hidden;color:#fff;background:linear-gradient(120deg,#0a3d4d,#0e8a8a,#2bb3a3,#0e8a8a);background-size:300% 300%;animation:flow 16s ease infinite;padding:84px 0 96px}
.hero-in{position:relative;z-index:2}
.kicker{display:inline-flex;gap:8px;align-items:center;margin:0 0 12px;padding:6px 14px;border-radius:99px;background:rgba(255,255,255,.16);font:700 13px system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.hero h1{font:800 clamp(34px,6vw,60px)/1.08 system-ui,sans-serif;margin:0 0 14px;max-width:16em}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,var(--sun),var(--coral));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .lead{max-width:34em;font-size:19px;color:#e9fbfa}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}
.hero-soc{margin-top:8px}
.blob{position:absolute;border-radius:50%;filter:blur(2px);opacity:.35;animation:float 9s ease-in-out infinite}
.b1{width:280px;height:280px;background:var(--sun);right:-60px;top:-70px}.b2{width:180px;height:180px;background:var(--coral);right:22%;bottom:-70px;animation-delay:-3s}.b3{width:120px;height:120px;background:#fff;left:-30px;bottom:30px;opacity:.15;animation-delay:-6s}
.plane-fly{position:absolute;z-index:1;top:22%;left:-80px;color:#fff;opacity:.85;animation:fly 14s linear infinite}.plane-fly .ic{width:46px;height:46px}
/* botões */
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:99px;border:0;cursor:pointer;background:var(--coral);color:#fff;text-decoration:none;font:700 16px system-ui,sans-serif;box-shadow:0 8px 20px rgba(255,107,87,.35);transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(255,107,87,.45)}.btn:disabled{opacity:.6;cursor:wait}
.btn-alt{background:#fff;color:var(--head);box-shadow:0 8px 20px rgba(0,0,0,.15)}.btn-light{background:#fff;color:var(--coral);box-shadow:none}
.btn-sm{padding:8px 16px;font-size:14px}
/* seções */
.sec{padding:40px 20px}.sec-t{font:800 28px/1.2 system-ui,sans-serif;margin:0 0 20px;color:var(--head)}
.more{text-align:right}.empty{color:var(--mut);padding:20px;border:2px dashed var(--line);border-radius:var(--r);background:var(--card)}
.tiles{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.tile{display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:var(--r);text-decoration:none;color:var(--head);background:var(--card);border:1px solid var(--line);transition:transform .25s,box-shadow .25s}
.tile .ic{width:30px;height:30px;color:var(--teal)}.tile strong{font:800 18px system-ui,sans-serif}.tile span{color:var(--mut);font-size:15px;line-height:1.4}
.tile:hover{transform:translateY(-6px) rotate(-.6deg);box-shadow:0 14px 30px rgba(10,61,77,.12)}
.t0 .ic{color:var(--coral)}.t2 .ic{color:var(--sun)}.t4 .ic{color:#7a3fd0}
.grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px;transition:transform .25s,box-shadow .25s;border-top:5px solid var(--teal)}
.card:nth-child(3n+2){border-top-color:var(--coral)}.card:nth-child(3n){border-top-color:var(--sun)}
.card:hover{transform:translateY(-5px);box-shadow:0 14px 30px rgba(10,61,77,.12)}
.card h3{margin:4px 0 8px;font:800 20px/1.3 system-ui,sans-serif}.card a{color:var(--head);text-decoration:none}.card a:hover{color:var(--teal)}
.cat{font:800 12px system-ui,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--coral);margin:0}.date{font:14px system-ui,sans-serif;color:var(--mut);margin:0}
.cat-h{font:800 clamp(30px,5vw,44px)/1.1 system-ui,sans-serif;color:var(--head);margin:0 0 6px}.cat-h .ic{color:var(--coral)}
.lead{color:var(--mut);font-size:19px}
/* livros */
.shelf{display:grid;gap:18px}
.book{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:18px;margin:22px 0;background:var(--card);border:1px solid var(--line);border-radius:var(--r);transition:box-shadow .25s,transform .25s}
.book:hover{box-shadow:0 14px 30px rgba(10,61,77,.12);transform:translateY(-3px)}
.cover{position:relative;aspect-ratio:2/3;border-radius:10px;overflow:hidden;background:linear-gradient(160deg,var(--sky),var(--card));box-shadow:0 10px 24px rgba(0,0,0,.18)}
.cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2}
.ph{position:absolute;inset:0;display:none;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px;text-align:center;font:700 14px/1.3 system-ui,sans-serif;color:var(--teal);background:linear-gradient(160deg,var(--sky),var(--ph2))}
.ph .ic{width:34px;height:34px}.book.nocover .ph{display:flex}.book.nocover .cover img{display:none}
.info h3{margin:0 0 4px;font:800 21px/1.25 system-ui,sans-serif;color:var(--head)}.by{margin:0 0 8px;color:var(--mut);font:600 14px system-ui,sans-serif}
.info p{margin:0 0 10px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.tag{padding:4px 12px;border-radius:99px;background:var(--sky);color:var(--teal);font:700 13px system-ui,sans-serif}
@media(max-width:560px){.book{grid-template-columns:104px 1fr;gap:14px}.info h3{font-size:18px}}
/* vídeo */
.video{margin:26px 0}.vframe,.video video{position:relative;display:block;width:100%;aspect-ratio:16/9;border-radius:var(--r);overflow:hidden;background:#000;box-shadow:0 14px 34px rgba(0,0,0,.2)}
.vframe iframe,.vframe img{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover}
.vplay{display:block;position:absolute;inset:0}.play{position:absolute;left:50%;top:50%;width:76px;height:76px;margin:-38px 0 0 -38px;border-radius:50%;background:rgba(255,107,87,.95);box-shadow:0 0 0 0 rgba(255,107,87,.6);animation:pulse 2.2s infinite}
.play::after{content:"";position:absolute;left:30px;top:22px;border-left:26px solid #fff;border-top:16px solid transparent;border-bottom:16px solid transparent}
.video figcaption{margin-top:8px;color:var(--mut);font-size:15px;text-align:center}
/* faixa */
.band{background:linear-gradient(120deg,var(--coral),#ff9a5a);color:#fff;margin-top:30px}
.band-in{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding-top:34px;padding-bottom:34px}
.band h2{margin:0 0 6px;font:800 28px system-ui,sans-serif}.band p{margin:0;max-width:32em}.band-btns{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.band .socials a{background:#fff;color:var(--coral)}
/* post */
.post{max-width:720px;margin:0 auto;padding:30px 0 20px}.post h1{font:800 clamp(30px,5vw,44px)/1.15 system-ui,sans-serif;color:var(--head);margin:6px 0}
.post h2{font:800 26px/1.25 system-ui,sans-serif;color:var(--head);margin-top:34px}.post blockquote{margin:18px 0;padding:12px 18px;border-left:5px solid var(--sun);background:var(--soft);border-radius:0 12px 12px 0}
.disclosure{font:14px system-ui,sans-serif;color:var(--mut);background:var(--disc);border-radius:10px;padding:8px 12px}
.post .book,.post .video{max-width:100%}
/* comentários e formulários */
.comments{max-width:720px;margin:20px auto 50px;padding:24px;background:var(--card);border:1px solid var(--line);border-radius:var(--r)}
.comments h2{margin:0 0 14px;font:800 24px system-ui,sans-serif;color:var(--head)}.comments h2 .ic{color:var(--coral)}
.c-item{padding:12px 0;border-top:1px solid var(--line)}.c-item .date{margin-left:8px}.c-item p{margin:4px 0 0}
.form{display:grid;gap:12px;margin-top:14px}.form label{display:grid;gap:4px;font:700 14px system-ui,sans-serif;color:var(--head)}
.form input,.form select,.form textarea{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;font:16px system-ui,sans-serif;background:var(--input);color:var(--ink)}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(14,138,138,.18)}
.quote{display:none;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.msg{margin:0;font:600 15px system-ui,sans-serif}.msg.ok{color:#1b7f3b}.msg.err{color:#c0392b}
.login-box{padding:22px;border-radius:var(--r);background:var(--sky);text-align:center}.login-box p{margin:0 0 12px}
.small{font:14px system-ui,sans-serif;color:var(--mut)}.note{background:var(--soft);padding:10px 14px;border-radius:12px;font:15px system-ui,sans-serif}
.channels{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:22px 0 30px}
.chan{display:flex;flex-direction:column;gap:2px;padding:20px;border-radius:var(--r);color:#fff;text-decoration:none;transition:transform .25s}.chan:hover{transform:translateY(-5px)}
.chan .ic{width:32px;height:32px;margin-bottom:6px}.chan strong{font:800 19px system-ui,sans-serif}.chan span{opacity:.92}
.chan.wa{background:#25a244}.chan.ig{background:linear-gradient(45deg,#f9a03f,#e1306c,#7a3fd0)}.chan.ml{background:var(--deep)}
/* rodapé e WhatsApp flutuante */
footer{background:var(--deep);color:#cfe3e6;margin-top:50px;padding-top:36px}footer a{color:#fff}
.foot{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.foot p{margin:4px 0;font-size:15px}.foot strong{color:#fff;font:800 17px system-ui,sans-serif}
.copy{padding-top:22px;padding-bottom:22px;font-size:14px;opacity:.8}
.wa-float{position:fixed;right:18px;bottom:18px;z-index:60;display:flex;align-items:center;gap:8px;padding:14px;border-radius:99px;background:#25a244;color:#fff;text-decoration:none;font:700 15px system-ui,sans-serif;box-shadow:0 10px 26px rgba(37,162,68,.5);animation:ring 2.6s infinite}
.wa-float .ic{width:28px;height:28px}.wa-float span{max-width:0;overflow:hidden;white-space:nowrap;transition:max-width .3s}.wa-float:hover span{max-width:110px;margin-right:6px}
/* entrada suave */
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.js .reveal.in{opacity:1;transform:none}
@keyframes flow{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@keyframes float{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-22px) scale(1.06)}}
@keyframes fly{0%{transform:translate(0,40px) rotate(-8deg)}50%{transform:translate(55vw,-30px) rotate(-8deg)}100%{transform:translate(115vw,30px) rotate(-8deg)}}
@keyframes pulse{70%{box-shadow:0 0 0 22px rgba(255,107,87,0)}100%{box-shadow:0 0 0 0 rgba(255,107,87,0)}}
@keyframes ring{0%,100%{box-shadow:0 10px 26px rgba(37,162,68,.5),0 0 0 0 rgba(37,162,68,.5)}60%{box-shadow:0 10px 26px rgba(37,162,68,.5),0 0 0 16px rgba(37,162,68,0)}}
@keyframes wob{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(5deg)}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}

.ytlink{font-size:14px;white-space:nowrap}

/* tema */
.theme{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--head);cursor:pointer;transition:transform .25s}
.theme:hover{transform:rotate(18deg) scale(1.08)}.theme .ic{width:19px;height:19px}.theme .t-sun{display:none}
[data-theme=dark] .theme .t-sun{display:block}[data-theme=dark] .theme .t-moon{display:none}
[data-theme=dark] .pill{background:var(--teal);color:#06242a}[data-theme=dark] .pill.ghost{background:transparent;color:var(--head)}
[data-theme=dark] .cats a:hover{color:var(--teal)}[data-theme=dark] .post blockquote{color:var(--ink)}
[data-theme=dark] .btn-alt{color:#0a3d4d}[data-theme=dark] img.cv{opacity:.95}
/* capa com vídeo */
.hero-vid{position:absolute;inset:0;z-index:0;overflow:hidden;opacity:0;transition:opacity 1.2s}
.hero.has-vid .hero-vid{opacity:1}
.hv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.4s ease}.hv.on{opacity:1}
.hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,rgba(6,30,40,.78),rgba(6,30,40,.35) 60%,rgba(6,30,40,.5))}
.hero.has-vid .blob{opacity:.12}.hero .plane-fly{z-index:1}
.hero-credit{margin:14px 0 0;font:600 13px system-ui,sans-serif;color:#d6eef0}.hero-credit a{color:#fff}
.hero-credit .pl{display:inline-flex;align-items:center;gap:6px;margin-right:10px;padding:3px 12px;border-radius:99px;background:rgba(255,255,255,.18)}

/* tipografia: texto em serifa formal e confortável; menus e botões em sans limpa */
.hero h1,.sec-t,.card h3,.cat-h,.info h3,.post h1,.post h2,.band h2,.comments h2,.bn,.tile strong,.foot strong,.chan strong{font-family:var(--serif);font-weight:700;letter-spacing:-.005em}
.hero h1,.post h1,.cat-h{line-height:1.15}.post h2{line-height:1.3}
.post p,.post li{font-size:19px;line-height:1.85;max-width:68ch}
.lead,.card p,.info p,.tile span{font-family:var(--serif)}
.bn small,.kicker,.cat,.date,.by,.tag,.btn,.pill,.cats a,.form label,.form input,.form select,.form textarea,.small,.msg,.note,.disclosure,.hero-credit,.wa-float,.who,.theme,.ytlink{font-family:var(--ui)}
/* vídeos de lugares (Pexels) nos posts */
.vframe video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#000}
.pxcred a{color:var(--teal)}

.vcta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:12px 16px;border-radius:var(--r);background:linear-gradient(120deg,var(--teal),#e8505b);color:#fff}
.vcta p{margin:0;display:flex;gap:8px;align-items:center;font-family:var(--ui);font-weight:600;line-height:1.35}
.vcta .ic{width:20px;height:20px;flex:none}
.vcta-b{display:flex;gap:8px;flex-wrap:wrap}
.vcta .btn{background:#fff;color:#0b5f5f;border-color:#fff}
.vcta .btn-alt{background:transparent;color:#fff;border-color:#fff}

.announce{background:linear-gradient(90deg,#e8505b,#ff9a5a);color:#fff;text-align:center;font:600 14px/1.3 var(--ui);padding:9px 12px}
.announce a{color:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}.announce a:hover{text-decoration:underline}.announce .ic{width:18px;height:18px}
.cats a.cta{background:#e8505b;color:#fff;border-radius:99px;padding:6px 14px;font-weight:700}
.cta-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:space-between;margin:14px 0 20px;padding:10px 14px;border-radius:var(--r);background:var(--soft);border:1px solid var(--line,rgba(0,0,0,.1));font-family:var(--ui)}
.cta-top .ic{width:20px;height:20px;color:#e8505b;flex:none}.cta-top span{flex:1;min-width:200px}
.cta-mid{margin:30px 0;padding:22px;border-radius:var(--r);background:linear-gradient(120deg,var(--teal),#e8505b);color:#fff}
.cta-mid h3{margin:0 0 6px;font-family:var(--serif);font-size:22px;color:#fff}.cta-mid p{margin:0 0 14px;color:#fff}
.cta-end{margin:40px 0 10px;padding:30px 24px;border-radius:var(--r);text-align:center;background:linear-gradient(120deg,#e8505b,#ff9a5a);color:#fff}
.cta-end h2{margin:0 0 8px;color:#fff;font-family:var(--serif)}.cta-end p{margin:0 auto 16px;max-width:34em;color:#fff}
.cta-end .vcta-b,.cta-mid .vcta-b{justify-content:center}.cta-mid .vcta-b{justify-content:flex-start}
.cta-mid .btn,.cta-end .btn{background:#fff;color:#a8323c}.cta-mid .btn-alt,.cta-end .btn-alt{background:transparent;color:#fff;border:2px solid #fff}
.steps{list-style:none;margin:0 0 22px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.steps li{padding:20px;border-radius:var(--r);background:var(--card);box-shadow:0 8px 22px rgba(0,0,0,.08);display:flex;flex-direction:column;gap:6px}
.steps b{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#e8505b;color:#fff;font-family:var(--ui)}
.steps strong{font-family:var(--serif);font-size:19px}.steps span{font-family:var(--ui);font-size:15px;opacity:.85}
.sec .more{text-align:center}

.dest-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.chip{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:99px;background:var(--card);border:2px solid #25a244;color:var(--head);font:600 15px var(--ui);text-decoration:none;box-shadow:0 6px 16px rgba(0,0,0,.07);transition:transform .15s,background .15s}
.chip .ic{width:18px;height:18px;color:#25a244}.chip:hover{transform:translateY(-2px);background:#25a244;color:#fff}.chip:hover .ic{color:#fff}
.chip-o{border-color:var(--teal)}.chip-o .ic{color:var(--teal)}

.wa-inline{display:inline-flex;align-items:center;gap:6px;margin:6px 4px 2px 0;padding:6px 12px;border-radius:99px;background:#25a244;color:#fff!important;font:600 14px var(--ui);text-decoration:none!important;line-height:1.2}
.wa-inline .ic{width:16px;height:16px}.wa-inline:hover{background:#1c8a37}

.syn-more{background:none;border:0;padding:0;margin:0;color:var(--coral,#e8505b);font:700 14px var(--ui);cursor:pointer;text-decoration:underline}
.syn-more:hover{color:var(--teal)}
