/* Oftlessons Blog — mesmo DNA visual da landing (navy + dourado, Nunito Sans, placas de madeira, cenário noturno). */
:root{
  --navy-900:#050a18; --navy-800:#070d1f; --navy-700:#0b1630; --navy-600:#13224a; --navy-500:#1d3266;
  --gold:#f4b73b; --gold-2:#ffd36b; --gold-ink:#3a2508; --cream:#fff1cf;
  --wood-1:#b07a40; --wood-2:#8a5a2c; --wood-3:#6a4220; --wood-ink:#2b170a; --nail:#e0b980;
  --green:#22a35a; --red:#e25b4a; --sky:#e3eaf0;
  --bg:var(--navy-800); --bg-2:var(--navy-700); --surface:rgba(16,28,60,.72); --surface-solid:#111d3d;
  --line:rgba(255,255,255,.10); --text:#e6edf7; --muted:#a9b6cf; --heading:#ffffff; --accent:var(--gold);
  --paper:#f6ecd4; --paper-ink:#3b2a12; --paper-line:#d9c6a0;
  --shadow:0 18px 40px rgba(0,0,0,.35);
  --r:18px; --maxw:1120px; --nav-h:58px;
  --font:"Nunito Sans","Segoe UI",Roboto,Arial,sans-serif; --font-h:Roboto,"Helvetica Neue",Arial,sans-serif;
  color-scheme:dark;
}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]){
  --bg:#e3eaf0; --bg-2:#d6e1ea; --surface:rgba(255,255,255,.82); --surface-solid:#ffffff;
  --line:rgba(11,22,48,.12); --text:#1b2540; --muted:#4e5b78; --heading:#0b1630; --accent:#b37806;
  --shadow:0 14px 30px rgba(11,22,48,.14); color-scheme:light;
}}
:root[data-theme="light"]{
  --bg:#e3eaf0; --bg-2:#d6e1ea; --surface:rgba(255,255,255,.82); --surface-solid:#ffffff;
  --line:rgba(11,22,48,.12); --text:#1b2540; --muted:#4e5b78; --heading:#0b1630; --accent:#b37806;
  --shadow:0 14px 30px rgba(11,22,48,.14); color-scheme:light;
}
:root[data-theme="dark"]{color-scheme:dark}

*{box-sizing:border-box} html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font);font-size:15px;line-height:1.6;color:var(--text);background:var(--bg);overflow-x:hidden}
img,svg{max-width:100%;display:block} a{color:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:6px}
.skip{position:absolute;left:-999px;top:8px;background:var(--gold);color:var(--gold-ink);padding:8px 14px;border-radius:8px;z-index:99}
.skip:focus{left:12px}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 16px}
h1,h2,h3{font-family:var(--font-h);color:var(--heading);line-height:1.15;margin:0}
h1{font-weight:800;font-size:clamp(30px,5.4vw,48px);letter-spacing:-.5px}
h3{font-size:18px;font-weight:800}
p{margin:0 0 .8em}
.muted{color:var(--muted)} .gold{color:var(--accent)}

/* ---------- cenário (céu noturno / dia) ---------- */
.sky{position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:
   radial-gradient(1200px 600px at 80% -10%,rgba(80,110,200,.35),transparent 60%),
   radial-gradient(900px 500px at 10% 10%,rgba(40,70,150,.30),transparent 60%),
   linear-gradient(180deg,#081022 0%,#0a1530 45%,#070d1f 100%)}
.sky::before{content:"";position:absolute;inset:0;opacity:.75;
  background-image:radial-gradient(1.2px 1.2px at 12% 18%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 33% 8%,#fff 50%,transparent 51%),radial-gradient(1.4px 1.4px at 58% 22%,#ffe9b0 50%,transparent 51%),radial-gradient(1px 1px at 77% 12%,#fff 50%,transparent 51%),radial-gradient(1.2px 1.2px at 90% 30%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 22% 40%,#cfe0ff 50%,transparent 51%),radial-gradient(1px 1px at 66% 44%,#fff 50%,transparent 51%),radial-gradient(1.3px 1.3px at 45% 60%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 8% 70%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 86% 66%,#ffe9b0 50%,transparent 51%);
  background-size:520px 520px;animation:twinkle 9s ease-in-out infinite alternate}
@keyframes twinkle{from{opacity:.45}to{opacity:.85}}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]) .sky{background:linear-gradient(180deg,#bfd6ea 0%,#e3eaf0 55%,#e9eef3 100%)}:root:not([data-theme="dark"]) .sky::before{opacity:0;animation:none}}
:root[data-theme="light"] .sky{background:linear-gradient(180deg,#bfd6ea 0%,#e3eaf0 55%,#e9eef3 100%)}
:root[data-theme="light"] .sky::before{opacity:0;animation:none}

/* ---------- cabeçalho (réplica da LP) ---------- */
.topbar{position:sticky;top:0;z-index:50;background:rgba(7,13,31,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08);color:#e6edf7}
.topbar .row{display:flex;align-items:center;gap:18px;height:var(--nav-h)}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:#fff;font-weight:800;letter-spacing:.4px;font-size:14px;white-space:nowrap}
.brand img{height:22px;width:auto}
.brand .tag{font-size:10px;font-weight:800;letter-spacing:1.4px;color:var(--gold-ink);background:var(--gold);padding:2px 7px;border-radius:5px;margin-left:2px}
.lp-links{display:flex;gap:18px;margin:0 auto;font-size:13px;text-transform:uppercase}
.lp-links a{color:#e6edf7;text-decoration:none;opacity:.86}
.lp-links a:hover{color:var(--gold);opacity:1}
.btn-login{border:1px solid var(--gold);color:var(--gold);border-radius:999px;padding:7px 14px;font-size:12.5px;text-decoration:none;text-transform:uppercase;white-space:nowrap}
.btn-login:hover{background:var(--gold);color:var(--gold-ink)}
.theme-tg{background:none;border:1px solid rgba(255,255,255,.18);color:#e6edf7;border-radius:999px;width:34px;height:34px;display:grid;place-items:center;cursor:pointer;flex:none}
.theme-tg svg{width:16px;height:16px}
/* menu das seções — fica no topo, abaixo da barra principal */
.secnav{background:rgba(11,22,48,.92);border-top:1px solid rgba(255,255,255,.06)}
.secnav ul{list-style:none;margin:0 auto;padding:0 16px;max-width:var(--maxw);display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.secnav ul::-webkit-scrollbar{display:none}
.secnav a{display:block;padding:10px 12px;font-size:12.5px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:#c9d4ea;text-decoration:none;white-space:nowrap;border-bottom:3px solid transparent}
.secnav a:hover{color:#fff}
.secnav a[aria-current="page"]{color:var(--gold);border-bottom-color:var(--gold)}
@media (max-width:900px){.lp-links{display:none}.topbar .row{justify-content:space-between}}
@media (max-width:420px){.btn-login{padding:6px 10px;font-size:11px}.brand .tag{display:none}}

/* ---------- placa de madeira (idêntica à .lp-placa da landing) ---------- */
.placa-wrap{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;margin:0 auto 26px}
.placa-wrap.left{align-items:flex-start;text-align:left}
.lp-placa{position:relative;display:inline-block;color:#fff1cf;font-family:var(--font-h);font-weight:800;font-size:clamp(24px,4.2vw,40px);line-height:1.1;padding:13.6px 50px 16px;
  border:2.78px solid var(--wood-ink);border-radius:16px 9px 14px 10px/10px 15px 9px 14px;text-shadow:0 2px 0 #3a200c,0 0 1px #3a200c;
  background:radial-gradient(circle at 15px 50%,#2b170a 0,#2b170a 2.6px,#e0b980 3px,#e0b980 3.8px,transparent 4.4px),radial-gradient(circle at calc(100% - 15px) 50%,#2b170a 0,#2b170a 2.6px,#e0b980 3px,#e0b980 3.8px,transparent 4.4px),radial-gradient(9% 22% at 74% 36%,rgba(60,32,12,.45) 0,rgba(60,32,12,.45) 45%,transparent 50%),repeating-linear-gradient(176deg,transparent 0,transparent 9px,rgba(58,30,10,.22) 9px,rgba(58,30,10,.22) 10.5px,transparent 10.5px,transparent 19px),linear-gradient(#b07a40 0%,#8a5a2c 52%,#6a4220 100%);
  box-shadow:inset 0 3px 0 rgba(255,230,180,.25),inset 0 -4px 0 rgba(0,0,0,.28),0 5px 0 #2b170a,0 14px 24px rgba(0,0,0,.35)}
.lp-placa.sm{font-size:clamp(18px,3vw,24px);padding:9px 38px 11px}
.lp-placa .leaf{position:absolute;top:50%;width:46px;height:22px;transform:translateY(-50%)}
.lp-placa .leaf.l{left:-40px}.lp-placa .leaf.r{right:-40px;transform:translateY(-50%) scaleX(-1)}
.lp-placa{max-width:calc(100% - 70px)}
@media (max-width:560px){.lp-placa{padding:11px 34px 13px}.lp-placa .leaf{width:30px;height:16px}.lp-placa .leaf.l{left:-26px}.lp-placa .leaf.r{right:-26px}}
.placa-post{width:10px;height:26px;margin-top:-14px;background:linear-gradient(90deg,#5a3818,#8a5a2c,#5a3818);border-radius:0 0 3px 3px}
.sec-lead{max-width:680px;color:var(--muted);font-size:16px}
.swing{transform-origin:50% -20px}
.js .reveal .swing{animation:swing 1.1s cubic-bezier(.2,.9,.3,1.2) both}
@keyframes swing{0%{transform:rotate(-7deg) translateY(-12px);opacity:0}55%{transform:rotate(3deg);opacity:1}100%{transform:rotate(0)}}

/* ---------- placa de direção (mini sinalização) ---------- */
.signpost{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(#a06c36,#7a4c24);color:#fff1cf;font-weight:800;font-size:12px;letter-spacing:.5px;text-transform:uppercase;padding:5px 14px 5px 10px;border:2px solid var(--wood-ink);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%);text-decoration:none;text-shadow:0 1px 0 #3a200c}
.signpost.back{clip-path:polygon(12px 0,100% 0,100% 100%,12px 100%,0 50%);padding:5px 10px 5px 14px}

/* ---------- seções e transições ---------- */
main{position:relative;overflow-x:clip}
.grid>*,.hero-grid>*{min-width:0}
dd,td,.note,.brands span{overflow-wrap:anywhere}
.sec{position:relative;padding:72px 0 64px}
.sec.tight{padding:40px 0}
.divider{display:block;width:100%;height:70px;margin:-1px 0;color:var(--bg-2)}
.band{background:var(--bg-2)}
.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none}.js .reveal .swing,.sky::before{animation:none}html{scroll-behavior:auto}}

/* trilha vertical (home): caminho tracejado que costura as paradas */
.trail{position:absolute;left:calc(50% - 560px - 46px);top:0;bottom:0;width:60px;pointer-events:none}
.trail path{stroke:var(--gold);stroke-width:3;stroke-dasharray:2 12;stroke-linecap:round;fill:none;opacity:.55}
@media (max-width:1260px){.trail{display:none}}
.stop{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--accent)}
.stop i{width:26px;height:26px;border-radius:50%;background:var(--gold);color:var(--gold-ink);display:grid;place-items:center;font-style:normal;font-size:12px;box-shadow:0 0 0 5px rgba(244,183,59,.18)}

/* ---------- hero da home: mapa de trilha, não o hero genérico ---------- */
.hero{padding:42px 0 10px}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center}
.hero h1 em{font-style:normal;color:var(--gold)}
.hero p.lead{font-size:17px;color:var(--muted);max-width:560px}
.hero-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:var(--shadow)}
.ticker{display:flex;flex-direction:column;gap:10px}
.ticker a{display:grid;grid-template-columns:54px 1fr;gap:10px;align-items:center;text-decoration:none;padding:10px;border-radius:12px;background:rgba(255,255,255,.03);border:1px dashed var(--line)}
.ticker a:hover{border-color:var(--gold)}
.ticker .d{font-family:var(--font-h);font-weight:800;text-align:center;line-height:1;color:var(--accent)}
.ticker .d b{display:block;font-size:22px}
.ticker .d small{font-size:11px;text-transform:uppercase;letter-spacing:1px}
.ticker strong{display:block;font-size:14px;color:var(--heading);line-height:1.25}
.ticker span{font-size:12.5px;color:var(--muted)}
.speech{position:absolute;top:-18px;right:18px;background:#fff;color:#0b1630;font-weight:900;font-size:12px;line-height:1.15;padding:8px 12px;border-radius:12px;border:2px solid #0b1630;box-shadow:3px 3px 0 #0b1630;text-transform:uppercase;transform:rotate(3deg)}
.cta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.btn{display:inline-flex;align-items:center;gap:8px;font-weight:900;font-size:14px;text-decoration:none;border-radius:999px;padding:11px 20px;border:0;cursor:pointer;font-family:var(--font)}
.btn-gold{background:var(--gold);color:var(--gold-ink);box-shadow:0 4px 0 #b27b0e}
.btn-gold:hover{transform:translateY(-1px)}
.btn-ghost{border:1px solid var(--line);color:var(--text);background:transparent}
.btn-green{background:var(--green);color:#fff;box-shadow:0 4px 0 #157a40}
@media (max-width:860px){.hero-grid{grid-template-columns:1fr}.hero-art{max-width:260px;margin:0 auto}}

/* ---------- quadro de avisos (fixados: submissões abertas) ---------- */
.board{position:relative;background:#6e4a2a;border:6px solid #4a2e16;border-radius:14px;padding:22px 18px 18px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.06),var(--shadow);
  background-image:radial-gradient(rgba(0,0,0,.18) 1px,transparent 1.5px),linear-gradient(#8b6238,#6e4a2a);background-size:6px 6px,auto}
.board h2{color:#fff1cf;font-size:20px;display:flex;align-items:center;gap:10px;margin-bottom:14px}
.notes{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.note{position:relative;background:#fff6c9;color:#2d2410;padding:16px 14px 12px;box-shadow:0 6px 14px rgba(0,0,0,.3);transform:rotate(var(--rot,-1deg));text-decoration:none;display:block}
.note:nth-child(2n){--rot:1.2deg;background:#ffe3d2}
.note:nth-child(3n){--rot:-.4deg;background:#dff3e4}
.note::before{content:"";position:absolute;top:-7px;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ff8a7a,#c0392b);box-shadow:0 2px 3px rgba(0,0,0,.4)}
.note b{display:block;font-size:15px;line-height:1.25;font-family:var(--font-h)}
.note .when{font-size:12px;font-weight:800;color:#8a2a1a;text-transform:uppercase;letter-spacing:.6px}
.note small{display:block;margin-top:6px;font-size:12.5px;color:#4a3d22}
.board-empty{color:#fff1cf;opacity:.85}

/* ---------- cartões/gavetas genéricos ---------- */
.grid{display:grid;gap:16px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:900px){.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.g2,.g3{grid-template-columns:1fr}}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:18px;box-shadow:var(--shadow)}
.chip{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:800;letter-spacing:.4px;padding:3px 9px;border-radius:999px;border:1px solid var(--line);color:var(--muted);text-transform:uppercase;white-space:nowrap}
.chip.ok{color:#fff;background:var(--green);border-color:transparent}
.chip.warn{color:var(--gold-ink);background:var(--gold);border-color:transparent}
.chip.off{opacity:.7}
.chip.miss{color:#ffb3a8;border-color:rgba(226,91,74,.5)}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chips .chip{white-space:normal}
.em-falta{color:#ffb3a8;font-weight:800;font-size:12px;letter-spacing:.4px}
:root[data-theme="light"] .em-falta,:root[data-theme="light"] .chip.miss{color:#b23a2a}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]) .em-falta,:root:not([data-theme="dark"]) .chip.miss{color:#b23a2a}}

/* ---------- filtros ---------- */
.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 18px}
.filters input,.filters select{font-family:var(--font);font-size:14px;color:var(--text);background:var(--surface-solid);border:1px solid var(--line);border-radius:10px;padding:9px 12px;min-width:0}
.filters input{flex:1 1 220px}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;flex-wrap:wrap}
.seg button{font-family:var(--font);background:none;border:0;color:var(--muted);padding:8px 13px;font-weight:800;font-size:12.5px;cursor:pointer;text-transform:uppercase;letter-spacing:.4px}
.seg button[aria-pressed="true"]{background:var(--gold);color:var(--gold-ink)}

/* ---------- linha do tempo de eventos (ingressos destacáveis) ---------- */
.month{margin:26px 0 10px;display:flex;align-items:center;gap:12px}
.month h3{font-size:15px;text-transform:uppercase;letter-spacing:1.6px;color:var(--accent)}
.month::after{content:"";flex:1;height:2px;background:repeating-linear-gradient(90deg,var(--line) 0 8px,transparent 8px 14px)}
.ticket{display:grid;grid-template-columns:96px 1fr auto;background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-bottom:12px;position:relative}
.ticket .stub{background:linear-gradient(180deg,var(--navy-600),var(--navy-700));color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 6px;border-right:2px dashed rgba(255,255,255,.25);text-align:center}
.ticket .stub b{font-family:var(--font-h);font-size:28px;line-height:1}
.ticket .stub span{font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--gold-2)}
.ticket .stub em{font-style:normal;font-size:10.5px;opacity:.8;margin-top:4px}
.ticket .body{padding:14px 16px;min-width:0}
.ticket h3{font-size:16.5px;margin-bottom:4px}
.ticket h3 a{text-decoration:none}
.ticket h3 a:hover{color:var(--accent)}
.ticket .meta{font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 14px}
.ticket .side{padding:14px;display:flex;flex-direction:column;gap:6px;align-items:flex-end;justify-content:center}
.ticket.pinned{border:2px solid var(--gold);box-shadow:0 0 0 4px rgba(244,183,59,.12)}
.ticket.past{opacity:.55}
.sub-box{margin-top:10px;font-size:13px;background:rgba(244,183,59,.08);border-left:3px solid var(--gold);padding:8px 10px;border-radius:0 8px 8px 0}
.sub-box b{color:var(--accent)}
@media (max-width:640px){.ticket{grid-template-columns:74px 1fr}.ticket .side{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;padding:0 14px 14px;align-items:center}.ticket .stub b{font-size:22px}}

/* ---------- tabela de residências (livro-razão) ---------- */
.ledger{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}
.ledger th{position:sticky;top:calc(var(--nav-h) + 40px);background:var(--surface-solid);text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);padding:10px;border-bottom:2px solid var(--gold);z-index:1}
.ledger td{padding:10px;border-bottom:1px solid var(--line);vertical-align:top}
.ledger tr:hover td{background:rgba(244,183,59,.05)}
.ledger .inst{font-weight:800;color:var(--heading)}
.uf{display:inline-grid;place-items:center;min-width:34px;height:24px;border-radius:6px;background:var(--navy-500);color:#fff;font-weight:900;font-size:12px}
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
@media (max-width:700px){
  .ledger thead{display:none}
  .ledger tr{display:block;border-bottom:1px solid var(--line);padding:10px 12px}
  .ledger td{display:block;border:0;padding:2px 0}
  .ledger td[data-l]::before{content:attr(data-l) ": ";font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);font-weight:800}
}

/* ---------- relatos (caderno de campo) ---------- */
.notebook{position:relative;background:var(--paper);color:var(--paper-ink);border-radius:6px 14px 14px 6px;padding:22px 20px 20px 46px;box-shadow:var(--shadow);
  background-image:linear-gradient(90deg,transparent 33px,rgba(214,82,70,.45) 33px,rgba(214,82,70,.45) 35px,transparent 35px),repeating-linear-gradient(180deg,transparent 0 27px,var(--paper-line) 27px 28px)}
.notebook::before{content:"";position:absolute;left:10px;top:18px;bottom:18px;width:12px;background:radial-gradient(circle,#6b5534 3px,transparent 3.5px) 0 0/12px 26px repeat-y}
.notebook h3{color:#2a1c08;font-size:19px;padding-right:84px}
.notebook .where{padding-right:84px}
.notebook .where{font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:#8a5a2c;margin-bottom:8px}
.notebook p{line-height:28px;margin:0 0 6px}
.notebook dl{margin:8px 0 0;display:grid;grid-template-columns:auto 1fr;gap:2px 12px;font-size:14px;line-height:28px}
.notebook dt{font-weight:900;color:#5a3a12}
.notebook dd{margin:0}
.notebook ul{margin:0;padding-left:18px;line-height:28px}
.stamp{position:absolute;top:14px;right:14px;transform:rotate(8deg);border:2px solid #b0392b;color:#b0392b;font-weight:900;font-size:11px;letter-spacing:1px;padding:3px 8px;border-radius:6px;text-transform:uppercase;opacity:.75}
.pm{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}
.pm div{background:rgba(255,255,255,.45);border-radius:8px;padding:8px 10px}
.pm b{font-size:12px;letter-spacing:.8px;text-transform:uppercase}
@media (max-width:640px){.pm{grid-template-columns:1fr}.notebook{padding-left:40px}}

/* ---------- estante de revistas (lombadas) ---------- */
.shelf{display:flex;align-items:flex-end;gap:6px;padding:16px 12px 0;overflow-x:auto;border-bottom:16px solid #6a4220;border-radius:8px 8px 4px 4px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.15));scrollbar-width:thin}
.spine{flex:none;width:58px;border-radius:4px 4px 0 0;display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;transform:rotate(180deg);text-decoration:none;color:#fff;font-weight:900;font-size:13px;letter-spacing:1px;box-shadow:inset -6px 0 0 rgba(0,0,0,.18),inset 3px 0 0 rgba(255,255,255,.18);padding:12px 0;transition:transform .2s}
.spine:hover{transform:rotate(180deg) translateY(8px)}
.spine small{font-weight:700;opacity:.8;font-size:10.5px;margin-top:6px}
.jlist{margin-top:22px}
.jrow{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px 0;border-bottom:1px dashed var(--line)}
.jrow h3{font-size:16px}
.jrow .if{font-family:var(--font-h);font-weight:900;font-size:20px;color:var(--accent);text-align:right;line-height:1}
.jrow .if small{display:block;font-size:10.5px;color:var(--muted);font-weight:700;letter-spacing:.6px}

/* ---------- radar de retina (fichas PICOTT) ---------- */
.paper-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px;position:relative;overflow:hidden}
.paper-card::after{content:"";position:absolute;right:-30px;top:-30px;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,#ff9f43 0,#c0392b 35%,#5a0f0a 70%,transparent 72%);opacity:.18}
.paper-card .jn{font-size:11.5px;font-weight:900;letter-spacing:1.2px;text-transform:uppercase;color:var(--accent)}
.paper-card h3{font-size:17px;margin:4px 0 6px}
.paper-card h3 a{text-decoration:none}
.paper-card .orig{font-size:12.5px;color:var(--muted);font-style:italic}
.picott{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:12px 0}
.picott div{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:10px;padding:8px;font-size:12.5px;line-height:1.4}
.picott b{display:block;font-family:var(--font-h);font-size:20px;color:var(--accent);line-height:1}
.picott i{font-style:normal;font-size:10px;letter-spacing:.8px;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:4px}
.picott.full{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:900px){.picott{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:520px){.picott,.picott.full{grid-template-columns:1fr 1fr}}
.ideas{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ideas li{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;font-size:14px}
.ideas .k{font-size:10.5px;font-weight:900;letter-spacing:.8px;text-transform:uppercase;background:var(--navy-500);color:#fff;padding:3px 8px;border-radius:6px;white-space:nowrap}
.archive{columns:3 180px;gap:18px}
.archive a{display:block;break-inside:avoid;padding:6px 0;text-decoration:none;color:var(--muted)}
.archive a:hover{color:var(--accent)}

/* ---------- lojas (toldos) e colírios (tampinhas) ---------- */
.shop{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.awning{height:26px;background:repeating-linear-gradient(90deg,var(--gold) 0 26px,#fff1cf 26px 52px);-webkit-mask:radial-gradient(13px at 13px 100%,transparent 98%,#000) -13px 0/26px 100%;mask:radial-gradient(13px at 13px 100%,transparent 98%,#000) -13px 0/26px 100%}
.shop .in{padding:12px 16px 16px}
.shop h3{font-size:16px}
.shop ul{margin:6px 0 0;padding-left:18px;font-size:13.5px;color:var(--muted)}
.lab{display:grid;grid-template-columns:62px minmax(0,1fr);gap:14px;align-items:start}
.cap{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;font-weight:900;color:#fff;font-size:14px;box-shadow:inset 0 -6px 0 rgba(0,0,0,.2),inset 0 0 0 4px rgba(255,255,255,.18),0 4px 10px rgba(0,0,0,.25);
  background:repeating-conic-gradient(from 0deg,rgba(255,255,255,.12) 0 6deg,transparent 6deg 12deg),var(--c,#1d6fe0)}
.brands{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.brands span{font-size:12.5px;background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:8px;padding:3px 8px}

/* ---------- fellows (mapa de quadras) ---------- */
.fellow h3{font-size:20px}
.fellow .subs{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.fellow .subs span{font-size:12.5px;background:rgba(244,183,59,.1);border:1px solid rgba(244,183,59,.35);border-radius:6px;padding:3px 8px}
.kv{display:grid;grid-template-columns:150px 1fr;gap:6px 14px;font-size:14px;margin:0}
.kv dt{color:var(--muted);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.6px;padding-top:2px}
.kv dd{margin:0}
@media (max-width:560px){.kv{grid-template-columns:1fr}.kv dt{padding-top:6px}}

/* ---------- notícias (jornal) ---------- */
.news-list{display:grid;gap:0}
.news-item{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
.news-item .src{font-size:11px;font-weight:900;letter-spacing:1.2px;text-transform:uppercase;color:var(--accent)}
.news-item time{display:block;font-size:12.5px;color:var(--muted)}
.news-item h3{font-size:18px;margin-bottom:4px}
.news-item h3 a{text-decoration:none}
.news-item h3 a:hover{color:var(--accent)}
@media (max-width:560px){.news-item{grid-template-columns:1fr;gap:4px}}
.article{max-width:740px}
.article p{font-size:16.5px;line-height:1.75}
.article .src-link{margin-top:20px;font-size:14px}
.crumbs{font-size:12.5px;color:var(--muted);margin:22px 0 10px;display:flex;gap:6px;flex-wrap:wrap}
.crumbs a{color:var(--muted)}

/* ---------- chamada para a plataforma ---------- */
.promo{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;background:linear-gradient(120deg,#0e1b3f,#16295c);color:#e6edf7;border:1px solid rgba(244,183,59,.35);border-radius:22px;padding:18px 22px;box-shadow:var(--shadow)}
.promo h3{color:#fff;font-size:19px}
.promo p{margin:2px 0 0;color:#c9d4ea;font-size:14px}
@media (max-width:720px){.promo{grid-template-columns:1fr;text-align:center}.promo svg{margin:0 auto}}

/* ---------- rodapé (réplica da LP, no padrão do cabeçalho) ---------- */
.foot{margin-top:60px;background:rgba(7,13,31,.96);color:#c9d4ea;border-top:1px solid rgba(255,255,255,.08);padding:42px 0 22px;font-size:13.5px}
.foot .cols{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:28px}
.foot h4{margin:0 0 10px;color:var(--gold);font-size:12.5px;letter-spacing:1.4px;text-transform:uppercase}
.foot a{color:#c9d4ea;text-decoration:none;display:block;padding:3px 0}
.foot a:hover{color:var(--gold)}
.foot .addr p{margin:0 0 4px}
.foot .social a{display:flex;align-items:center;gap:8px}
.foot .social img{width:18px;height:18px}
.foot .legal{border-top:1px solid rgba(255,255,255,.08);margin-top:28px;padding-top:16px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:12px;color:#8e9bb8}
@media (max-width:820px){.foot .cols{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.foot .cols{grid-template-columns:1fr}}

.wa{position:fixed;right:16px;bottom:16px;width:52px;height:52px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 8px 20px rgba(0,0,0,.35);z-index:40}
.wa svg{width:28px;height:28px}
.hide{display:none!important}
.count{font-size:13px;color:var(--muted);margin:-6px 0 12px}
.src-note{font-size:12px;color:var(--muted);margin-top:8px}
.src-note a{color:var(--muted)}
