/* ============================================================
   Sistema de marca Dellamarque - 3 cores, Inter, 2 temas
   Fonte unica de estilo da newsletter (home + todas as edicoes)
   3 cores: #0C0F14 escuro / #FCFCFC claro / #FD4900 laranja
   ============================================================ */

:root, [data-theme="light"]{
  --bg:#FCFCFC;
  --fg:#0C0F14;            /* titulo pleno */
  --text:#1D1D1F;          /* paragrafo (tinta suave) */
  --text-2:#5D5D5D;        /* secundario */
  --text-3:#8F8F8F;        /* terciario / placeholder */
  --surface:#F5F5F6;       /* bloco afundado */
  --elev:#FFFFFE;          /* card elevado / campo */
  --border:#DDDDDD;
  --border-subtle:#EFEFEF;
  --border-strong:#C5C5C5;
  --vivo:#FD4900;
  --vivo-dark:#D63D00;
  --badge-bg:#FDE5D9;
  --badge-fg:#D63D00;
  --focus-halo:rgba(253,73,0,0.15);
  --danger:#7A1A1A;
  /* ancora inversa: no claro, bloco escuro */
  --anchor-bg:#0C0F14;
  --anchor-fg:#FCFCFC;
  --anchor-text:#A8A8A8;
  --anchor-border:rgba(255,255,255,0.10);
  --shadow-anchor:0 12px 32px rgba(12,15,20,0.10);
  --hairline:rgba(12,15,20,0.08);
}
[data-theme="dark"]{
  --bg:#0C0F14;
  --fg:#FCFCFC;
  --text:#E6E6E9;
  --text-2:#A8A8A8;
  --text-3:#7C8088;
  --surface:#13171F;
  --elev:#171C25;
  --border:rgba(255,255,255,0.12);
  --border-subtle:rgba(255,255,255,0.07);
  --border-strong:rgba(255,255,255,0.20);
  --vivo:#FD4900;
  --vivo-dark:#FF6A33;
  --badge-bg:rgba(253,73,0,0.16);
  --badge-fg:#FF8052;
  --focus-halo:rgba(253,73,0,0.28);
  --danger:#E2756B;
  /* ancora inversa: no escuro, bloco claro */
  --anchor-bg:#FCFCFC;
  --anchor-fg:#0C0F14;
  --anchor-text:#5D5D5D;
  --anchor-border:rgba(12,15,20,0.08);
  --shadow-anchor:0 12px 32px rgba(0,0,0,0.45);
  --hairline:rgba(255,255,255,0.09);
}

*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  font-size:17px;
  line-height:1.5;
  letter-spacing:-0.008em;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  transition:background .4s cubic-bezier(.16,1,.3,1), color .4s cubic-bezier(.16,1,.3,1);
}
::selection{background:var(--vivo);color:#FCFCFC;}

.wrap{max-width:680px;margin:0 auto;padding:0 22px;}

/* ============================================================
   Bilingue: cada bloco aparece em PT e EN; o app.js mostra so
   o idioma ativo. Default PT (lang-en escondido ate o JS rodar).
   ============================================================ */
.lang-en{display:none;}
[lang="en"] .lang-pt{display:none;}
[lang="en"] .lang-en{display:inline;}
/* blocos (paragrafo, item, lista, secao) voltam ao display natural */
[lang="en"] p.lang-en,
[lang="en"] li.lang-en,
[lang="en"] div.lang-en,
[lang="en"] ol.lang-en,
[lang="en"] ul.lang-en,
[lang="en"] h1.lang-en,
[lang="en"] h2.lang-en,
[lang="en"] span.lang-en.block{display:block;}

/* ---------- Header ---------- */
header{
  display:flex;align-items:center;justify-content:space-between;
  gap:14px;
  padding:22px 0 18px;
}
.brand{
  font-weight:800;font-size:18px;letter-spacing:-0.02em;color:var(--fg);
  text-decoration:none;white-space:nowrap;
}
.hl{color:var(--vivo);}
.head-actions{display:flex;align-items:center;gap:10px;}

.back-link{
  display:inline-flex;align-items:center;gap:7px;
  font-size:14px;font-weight:600;letter-spacing:-0.01em;
  color:var(--text-2);text-decoration:none;
  margin-right:auto;
  transition:color .2s ease;
}
.back-link:hover{color:var(--vivo);}
.back-link svg{width:15px;height:15px;}

/* botao de tema */
.theme-btn{
  display:inline-grid;place-items:center;
  width:42px;height:42px;border-radius:9999px;
  background:var(--surface);border:1px solid var(--border-subtle);
  color:var(--fg);cursor:pointer;
  transition:background .25s ease, border-color .25s ease;
}
.theme-btn:hover{background:var(--elev);border-color:var(--border);}
.theme-btn svg{width:19px;height:19px;display:block;}
.theme-btn .moon{display:none;}
[data-theme="dark"] .theme-btn .sun{display:none;}
[data-theme="dark"] .theme-btn .moon{display:block;}

/* botao de idioma PT / EN */
.lang-btn{
  display:inline-flex;align-items:center;
  height:42px;padding:0 6px;border-radius:9999px;
  background:var(--surface);border:1px solid var(--border-subtle);
  cursor:pointer;font:inherit;
  transition:background .25s ease, border-color .25s ease;
}
.lang-btn:hover{border-color:var(--border);}
.lang-btn span{
  display:inline-grid;place-items:center;
  min-width:34px;height:30px;padding:0 4px;border-radius:9999px;
  font-size:12px;font-weight:700;letter-spacing:0.04em;
  color:var(--text-3);
  transition:color .2s ease, background .2s ease;
}
.lang-btn .on{
  color:#FCFCFC;background:var(--vivo);
}
[data-theme="dark"] .lang-btn .on{color:#0C0F14;}

/* ---------- Hero ---------- */
.hero{padding:18px 0 8px;}
.kicker{
  font-size:11px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--text-3);margin:0 0 18px;
}
h1{
  font-size:clamp(34px,8.5vw,54px);font-weight:800;line-height:1.04;
  letter-spacing:-0.025em;color:var(--fg);margin:0 0 18px;
}
.dek{
  font-size:clamp(17px,4.4vw,20px);line-height:1.45;color:var(--text-2);
  letter-spacing:-0.01em;max-width:38ch;margin:0 0 30px;
}

/* ---------- Form de cadastro ---------- */
.signup{margin:0 0 8px;}
.signup form{display:flex;flex-direction:column;gap:10px;}
.signup input[type="email"]{
  width:100%;padding:16px 18px;font:inherit;font-size:16px;
  color:var(--fg);background:var(--elev);
  border:1px solid var(--border);border-radius:10px;outline:none;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.signup input::placeholder{color:var(--text-3);}
.signup input:focus{border-color:var(--vivo);box-shadow:0 0 0 4px var(--focus-halo);}
.signup input.err{border-color:var(--danger);}
.btn{
  appearance:none;border:none;cursor:pointer;font:inherit;
  font-weight:600;font-size:16px;letter-spacing:-0.01em;
  background:var(--vivo);color:#FCFCFC;
  padding:16px 28px;border-radius:10px;min-height:52px;
  transition:background .2s ease;
}
.btn:hover{background:var(--vivo-dark);}
[data-theme="dark"] .btn{color:#0C0F14;}
[data-theme="dark"] .btn:hover{color:#0C0F14;}
.micro{font-size:13px;color:var(--text-3);margin:12px 0 0;}
.signup .msg{
  font-size:15px;font-weight:600;color:var(--vivo);
  padding:14px 0 2px;margin:0;display:none;
}
.signup.done form{display:none;}
.signup.done .micro{display:none;}
.signup.done .msg{display:block;}
.signup .errmsg{display:none;font-size:13px;color:var(--danger);margin:8px 0 0;}
.signup.invalid .errmsg{display:block;}

/* ---------- Divisor ---------- */
.rule{height:1px;background:var(--hairline);border:0;margin:42px 0;}

/* ============================================================
   Lista de edicoes (home) - linhas elegantes, numero grande,
   NAO grade de cards. Facil adicionar nova edicao: copiar <a>.
   ============================================================ */
.issues{padding:6px 0 4px;}
.issues-head{
  font-size:11px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--text-3);margin:0 0 6px;
}
.issue-list{margin:8px 0 0;border-top:1px solid var(--hairline);}
.issue{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:start;
  gap:16px;
  padding:22px 4px;
  border-bottom:1px solid var(--hairline);
  text-decoration:none;color:inherit;
  transition:padding-left .25s cubic-bezier(.16,1,.3,1);
}
.issue:hover{padding-left:10px;}
.issue-body{min-width:0;}
.issue-body .block{display:block;}
/* linha de marcacao: tipo da edicao + data */
.issue-tags{display:flex;align-items:center;gap:9px;margin:0 0 9px;flex-wrap:wrap;}
.issue-date{
  font-size:12px;font-weight:500;color:var(--text-3);
  letter-spacing:0.01em;font-variant-numeric:tabular-nums;
}
.issue-meta{
  font-size:11px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;
  color:var(--text-3);margin:0 0 5px;
}
.issue-title{
  font-size:clamp(17px,4.3vw,19px);font-weight:700;line-height:1.25;
  letter-spacing:-0.012em;color:var(--fg);margin:0 0 6px;
  transition:color .2s ease;
}
.issue:hover .issue-title{color:var(--vivo);}
.issue-sum{
  font-size:14px;line-height:1.4;color:var(--text-2);margin:0;
  max-width:48ch;
}
.issue-arrow{
  color:var(--text-3);display:grid;place-items:center;
  transition:transform .25s cubic-bezier(.16,1,.3,1), color .2s ease;
}
.issue:hover .issue-arrow{color:var(--vivo);transform:translateX(4px);}
.issue-arrow svg{width:20px;height:20px;display:block;}

/* ============================================================
   Marcacao de TIPO de edicao (as 3 categorias dos frameworks).
   Distincao visual usando so a paleta da marca (laranja + neutro):
   - pensar (Argumento): laranja suave preenchido
   - fazer (Processo): contorno laranja
   - radar (Mapa do Setor): neutro
   ============================================================ */
.tipo{
  display:inline-block;font-size:10px;font-weight:700;
  letter-spacing:0.07em;text-transform:uppercase;
  padding:4px 11px;border-radius:9999px;white-space:nowrap;
}
.tipo-pensar{background:var(--badge-bg);color:var(--badge-fg);}
.tipo-fazer{background:transparent;color:var(--badge-fg);box-shadow:inset 0 0 0 1.5px var(--vivo);}
.tipo-radar{background:var(--surface);color:var(--text-2);box-shadow:inset 0 0 0 1px var(--border);}

/* meta no topo de uma edicao: tipo + numero/data */
.ed-meta{display:flex;align-items:center;gap:11px;margin:0 0 18px;flex-wrap:wrap;}
.ed-meta-text{
  font-size:12px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;
  color:var(--text-3);font-variant-numeric:tabular-nums;
}

/* ---------- Corpo editorial ---------- */
article{padding-bottom:8px;}
article p{color:var(--text);margin:0 0 20px;max-width:66ch;}
/* lead sem destaque de tamanho: abre igual ao corpo (decisao do Della, 21-06-2026) */
article p.lead{color:var(--text);}
h2{
  font-size:clamp(24px,5.6vw,30px);font-weight:700;line-height:1.18;
  letter-spacing:-0.018em;color:var(--fg);margin:40px 0 16px;
}
article strong{font-weight:600;color:var(--fg);}

/* lista de topicos sem virar card */
ul.points{list-style:none;padding:0;margin:0 0 22px;}
ul.points li{
  position:relative;padding:13px 0 13px 30px;
  border-bottom:1px solid var(--hairline);color:var(--text);
}
ul.points li:last-child{border-bottom:0;}
ul.points li::before{
  content:"";position:absolute;left:4px;top:21px;
  width:7px;height:7px;border-radius:9999px;background:var(--vivo);
}
/* esconder o ponto laranja do item do idioma inativo */
[lang="en"] ul.points li.lang-pt::before{content:none;}

/* citacao ancora - bloco inverso, 1 por pagina */
.anchor{
  background:var(--anchor-bg);color:var(--anchor-fg);
  border:1px solid var(--anchor-border);border-radius:16px;
  padding:34px 30px;margin:36px 0;box-shadow:var(--shadow-anchor);
}
.anchor .q{
  font-size:clamp(21px,5vw,27px);font-weight:700;line-height:1.3;
  letter-spacing:-0.018em;margin:0;
  color:var(--anchor-fg);
}
/* o texto da ancora vence a cor de paragrafo do corpo (article p) nos 2 temas */
article .anchor p{color:var(--anchor-fg);}
.anchor .who{
  display:block;margin-top:18px;font-size:13px;font-weight:600;
  letter-spacing:0.04em;color:var(--anchor-text);text-transform:uppercase;
}

/* callout - superficie elevada com badge, sem borda lateral */
.callout{
  background:var(--elev);border:1px solid var(--border-subtle);
  border-radius:16px;padding:26px 24px;margin:30px 0;
}
.callout .tag{
  display:inline-block;background:var(--badge-bg);color:var(--badge-fg);
  font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;
  padding:5px 12px;border-radius:9999px;margin-bottom:14px;
}
.callout p{margin:0;color:var(--text);}

/* passo a passo - superficie afundada, numeros laranja */
.steps{
  background:var(--surface);border-radius:16px;padding:28px 24px 10px;margin:30px 0;
}
.steps .label{
  font-size:11px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;
  color:var(--text-3);margin:0 0 18px;
}
.steps ol{list-style:none;counter-reset:s;padding:0;margin:0;}
.steps li{
  counter-increment:s;position:relative;
  padding:0 0 22px 52px;color:var(--text);
}
.steps li::before{
  content:counter(s);position:absolute;left:0;top:-3px;
  width:34px;height:34px;border-radius:9999px;
  display:grid;place-items:center;
  font-size:15px;font-weight:800;color:var(--vivo);
  background:var(--badge-bg);
  font-variant-numeric:tabular-nums;
}
/* cada idioma tem seu proprio <ol>, entao o contador "s" reinicia
   sozinho no que estiver visivel (o oculto fica display:none) */

/* bloco final de cadastro */
.closer{margin:46px 0 10px;}
.closer h2{margin-top:0;}

/* ---------- Footer ---------- */
footer{
  margin-top:40px;padding:30px 0 46px;border-top:1px solid var(--hairline);
  color:var(--text-3);font-size:13px;
}
footer .fb{font-weight:800;color:var(--fg);letter-spacing:-0.02em;font-size:15px;}
footer p{margin:8px 0 0;}

@media (min-width:768px){
  .wrap{padding:0 24px;}
  .signup form{flex-direction:row;}
  .signup input[type="email"]{flex:1;}
  .btn{white-space:nowrap;}
  .hero{padding:28px 0 8px;}
  .anchor{padding:40px 38px;}
  .callout{padding:30px 30px;}
  .steps{padding:32px 32px 14px;}
  .issue{gap:26px;padding:28px 4px;}
}

@media (prefers-reduced-motion:reduce){
  *{transition:none !important;}
}
