/* ============================================================
   KRONO — folha compartilhada das páginas internas
   Tokens e componentes replicados fielmente do index.html.
   O index continua com CSS inline próprio — não referencia este arquivo.
   ============================================================ */

/* ============ TOKENS ============ */
:root{
  --ink:        #04070f;   /* fundo da página */
  --navy:       #071329;   /* navy oficial Krono */
  --navy-2:     #0d1c36;   /* navy elevado */
  --graphite:   #10141d;   /* cartões */
  --paper:      #f0e6dd;   /* creme oficial */
  --paper-dim:  #a9a296;   /* texto secundário */
  --paper-soft: #cfc7ba;   /* secundário enfatizado */
  --gold:       #c38d51;   /* dourado oficial */
  --gold-deep:  #a87436;
  --gold-glow:  rgba(195,141,81,.32);
  --gold-soft:  rgba(195,141,81,.08);
  --line:       rgba(240,230,221,.08);
  --glass:      rgba(240,230,221,.03);
  --display: 'Archivo', -apple-system, sans-serif;
  --mono: 'IBM Plex Mono', 'SF Mono', monospace;
}

*{ margin:0; padding:0; box-sizing:border-box; }
html{ scroll-behavior:smooth; }
html,body{ background:var(--ink); }
body{
  font-family:var(--display);
  font-weight:300;
  color:var(--paper);
  letter-spacing:.01em;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
::selection{ background:var(--gold); color:var(--ink); }
a{ color:inherit; text-decoration:none; }
img{ max-width:100%; display:block; }

/* ============ AMBIENT ============ */
.grain{
  position:fixed; inset:0; z-index:100; pointer-events:none; opacity:.035;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:256px 256px;
}
.vignette{
  position:fixed; inset:0; z-index:99; pointer-events:none;
  background:radial-gradient(ellipse at center, transparent 48%, rgba(4,7,15,.5) 100%);
}

/* ============ NAV ============ */
nav{
  position:fixed; top:0; left:0; right:0; z-index:200;
  display:flex; align-items:center; justify-content:space-between;
  padding:22px clamp(20px, 4.5vw, 64px);
  transition:background .5s ease, backdrop-filter .5s ease, border-color .5s ease, padding .5s ease;
  border-bottom:1px solid transparent;
}
nav.scrolled{
  background:rgba(4,7,15,.92);
  border-bottom-color:var(--line);
  padding-top:14px; padding-bottom:14px;
}
.nav-brand{ font-weight:600; font-stretch:112%; font-size:19px; letter-spacing:.34em; color:var(--paper); }
.nav-brand em{ font-style:normal; color:var(--gold); }
.nav-links{ display:flex; gap:38px; align-items:center; }
.nav-links a{
  font-family:var(--mono); font-size:10px; letter-spacing:.24em; text-transform:uppercase;
  color:var(--paper-dim); transition:color .3s ease;
}
.nav-links a:hover{ color:var(--paper); }
.nav-links a.active{
  color:var(--paper);
  border-bottom:1px solid var(--gold);
  padding-bottom:4px;
}
.nav-cta{
  font-family:var(--mono); font-size:10px; letter-spacing:.22em; text-transform:uppercase;
  color:var(--paper) !important; border:1px solid rgba(195,141,81,.55); padding:11px 20px;
  transition:background .35s ease, color .35s ease, box-shadow .35s ease;
}
.nav-cta:hover{ background:var(--gold); color:var(--ink) !important; box-shadow:0 0 28px var(--gold-glow); }
@media (max-width:820px){ .nav-links a:not(.nav-cta){ display:none; } }
@media (max-width:480px){
  .nav-brand{ font-size:16px; letter-spacing:.26em; }
  .nav-cta{ font-size:8.5px; letter-spacing:.14em; padding:9px 13px; white-space:nowrap; }
}

/* ============ LAYOUT ============ */
.container{ max-width:1240px; margin:0 auto; padding:0 clamp(22px,4.5vw,64px); }
main{ position:relative; z-index:20; background:var(--ink); }

section.static{ position:relative; z-index:20; background:var(--ink); }
.sec-pad{ padding-bottom:clamp(90px,12vh,150px); }

/* cabeçalho de página interna */
.page-head{ padding-top:clamp(150px,22vh,230px); margin-bottom:clamp(44px,6vh,72px); }
.page-head .lead{
  font-size:clamp(15px,1.2vw,17.5px); line-height:1.75; color:var(--paper-soft);
  font-weight:300; max-width:600px; margin-top:24px;
}
.sec-head{ padding-top:clamp(90px,12vh,150px); margin-bottom:clamp(44px,6vh,72px); }
.sec-title{
  font-weight:500; font-stretch:106%; letter-spacing:-.024em; line-height:1.05;
  font-size:clamp(32px,4.2vw,60px); color:var(--paper); max-width:800px;
}
.sec-title em{ font-style:italic; font-weight:300; color:var(--gold); }
h1.sec-title{ font-size:clamp(36px,4.8vw,66px); }

.overline{
  font-family:var(--mono); font-size:9.5px; letter-spacing:.34em; text-transform:uppercase;
  color:var(--gold); display:flex; align-items:center; gap:14px; margin-bottom:26px;
}
.overline::before{ content:''; width:34px; height:1px; background:var(--gold); opacity:.6; }

.st-body{
  font-size:clamp(15px, 1.15vw, 17px); line-height:1.75; color:var(--paper-soft);
  font-weight:300; max-width:520px;
}

/* ============ BOTÕES ============ */
.cta-row{ display:flex; gap:16px; flex-wrap:wrap; }
.btn{
  display:inline-flex; align-items:center; gap:12px;
  font-family:var(--mono); font-size:11px; letter-spacing:.22em; text-transform:uppercase;
  padding:17px 30px; cursor:pointer; transition:all .35s ease; border:1px solid transparent;
}
.btn .arr{ transition:transform .35s ease; }
.btn:hover .arr{ transform:translateX(5px); }
.btn-primary{ background:var(--gold); color:var(--ink); font-weight:500; }
.btn-primary:hover{ background:var(--paper); box-shadow:0 0 40px var(--gold-glow); }
.btn-ghost{ border-color:rgba(240,230,221,.28); color:var(--paper); }
.btn-ghost:hover{ border-color:var(--gold); color:var(--gold); }

/* ============ LISTAS ============ */
.f-list{ margin-top:34px; border-top:1px solid var(--line); max-width:540px; }
.f-item{ display:flex; align-items:baseline; gap:20px; padding:15px 0; border-bottom:1px solid var(--line); }
.f-item .n{ font-family:var(--mono); font-size:10px; color:var(--gold); letter-spacing:.1em; flex-shrink:0; }
.f-item .t{ font-size:14.5px; color:var(--paper-soft); line-height:1.55; }
.f-item .t b{ font-weight:500; color:var(--paper); }

/* ============ CARDS LEVES ============ */
.card-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(16px,2vw,28px); }
.card{
  background:var(--glass); border:1px solid var(--line);
  padding:clamp(26px,3vw,40px); transition:border-color .4s ease, background .4s ease;
}
.card:hover{ border-color:rgba(195,141,81,.35); background:var(--gold-soft); }
.card .c-num{
  font-family:var(--mono); font-size:11px; color:var(--gold); letter-spacing:.2em; margin-bottom:22px;
  display:flex; align-items:center; gap:14px;
}
.card .c-num::after{ content:''; height:1px; flex:1; background:var(--line); }
.card h3{ font-size:20px; font-weight:500; letter-spacing:-.01em; margin-bottom:14px; color:var(--paper); }
.card p{ font-size:14.5px; line-height:1.75; color:var(--paper-dim); }
.card p b{ color:var(--paper-soft); font-weight:400; }
@media (max-width:820px){ .card-grid{ grid-template-columns:1fr; } }

/* ============ ETAPAS (método) ============ */
.step{
  display:grid; grid-template-columns:120px 1fr; gap:clamp(24px,4vw,64px);
  padding:clamp(36px,5vh,56px) 0; border-top:1px solid var(--line);
}
.step:last-of-type{ border-bottom:1px solid var(--line); }
.step .s-num{
  font-family:var(--mono); font-size:12px; color:var(--gold); letter-spacing:.2em;
  display:flex; align-items:baseline; gap:14px;
}
.step h3{ font-size:clamp(20px,2vw,26px); font-weight:500; letter-spacing:-.015em; color:var(--paper); margin-bottom:14px; }
.step h3 em{ font-style:italic; font-weight:300; color:var(--gold); }
.step p{ font-size:15px; line-height:1.8; color:var(--paper-dim); max-width:640px; }
.step p b{ color:var(--paper-soft); font-weight:400; }
@media (max-width:820px){ .step{ grid-template-columns:1fr; gap:14px; } }

/* ============ PLANOS ============ */
.plan-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(16px,2vw,28px); align-items:stretch; }
.plan{
  display:flex; flex-direction:column;
  background:var(--glass); border:1px solid var(--line);
  padding:clamp(28px,3vw,44px) clamp(24px,2.6vw,38px);
  transition:border-color .4s ease, background .4s ease;
}
.plan:hover{ border-color:rgba(195,141,81,.35); }
.plan.featured{ background:var(--navy); border-color:rgba(195,141,81,.4); position:relative; }
.plan.featured::before{
  content:'Núcleo da oferta'; position:absolute; top:-1px; right:-1px;
  font-family:var(--mono); font-size:8.5px; letter-spacing:.24em; text-transform:uppercase;
  color:var(--ink); background:var(--gold); padding:7px 14px;
}
.plan .p-kicker{
  font-family:var(--mono); font-size:9.5px; letter-spacing:.3em; text-transform:uppercase;
  color:var(--gold); margin-bottom:18px;
}
.plan h3{ font-size:clamp(20px,1.9vw,25px); font-weight:500; letter-spacing:-.015em; color:var(--paper); margin-bottom:16px; }
.plan .p-price{
  font-family:var(--mono); font-variant-numeric:tabular-nums;
  font-size:clamp(24px,2.2vw,32px); font-weight:500; color:var(--paper); margin-bottom:4px;
}
.plan .p-price small{ font-size:12px; font-weight:400; color:var(--paper-dim); letter-spacing:.06em; }
.plan .p-terms{ font-family:var(--mono); font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:var(--paper-dim); margin-bottom:22px; }
.plan .p-desc{ font-size:14.5px; line-height:1.75; color:var(--paper-soft); margin-bottom:8px; }
.plan .f-list{ margin-top:18px; margin-bottom:30px; max-width:none; }
.plan .p-foot{ margin-top:auto; }
.plan .p-fallback{
  display:block; margin-top:14px; font-family:var(--mono); font-size:10px;
  letter-spacing:.16em; text-transform:uppercase; color:var(--paper-dim); transition:color .3s ease;
}
.plan .p-fallback:hover{ color:var(--gold); }
.plan .highlight{
  border:1px solid rgba(195,141,81,.35); background:var(--gold-soft);
  padding:14px 16px; margin-top:18px;
  font-size:13px; line-height:1.6; color:var(--paper-soft);
}
.plan .highlight b{ color:var(--gold); font-weight:500; }
.plan-note{
  margin-top:clamp(28px,4vh,44px);
  font-family:var(--mono); font-size:10px; letter-spacing:.18em; text-transform:uppercase;
  color:var(--paper-dim); text-align:center;
}
@media (max-width:980px){ .plan-grid{ grid-template-columns:1fr; max-width:560px; margin:0 auto; } }

/* ============ FAQ ============ */
.faq-list{ border-top:1px solid var(--line); max-width:860px; }
.faq-list details{ border-bottom:1px solid var(--line); }
.faq-list summary{
  list-style:none; cursor:pointer;
  display:grid; grid-template-columns:56px 1fr auto; align-items:baseline; gap:20px;
  padding:clamp(20px,2.6vh,28px) 0;
  transition:padding-left .4s ease, background .4s ease;
}
.faq-list summary::-webkit-details-marker{ display:none; }
.faq-list summary:hover{ padding-left:16px; background:rgba(240,230,221,.015); }
.faq-list summary .q-num{ font-family:var(--mono); font-size:11px; color:var(--gold); letter-spacing:.15em; }
.faq-list summary .q-text{ font-size:clamp(16px,1.5vw,20px); font-weight:400; letter-spacing:-.01em; color:var(--paper); }
.faq-list summary .q-mark{
  font-family:var(--mono); font-size:14px; color:var(--gold);
  transition:transform .35s ease; transform-origin:center;
}
.faq-list details[open] summary .q-mark{ transform:rotate(45deg); }
.faq-list .a{
  padding:0 0 clamp(22px,3vh,30px) 76px;
  font-size:15px; line-height:1.8; color:var(--paper-dim); max-width:680px;
}
.faq-list .a b{ color:var(--paper-soft); font-weight:400; }
@media (max-width:820px){
  .faq-list summary{ grid-template-columns:36px 1fr auto; gap:12px; }
  .faq-list .a{ padding-left:48px; }
}

/* ============ PROSA (sobre, termos, privacidade) ============ */
.prose{ max-width:720px; }
.prose h2{
  font-size:clamp(20px,2vw,26px); font-weight:500; letter-spacing:-.015em; color:var(--paper);
  margin:clamp(40px,6vh,60px) 0 16px;
}
.prose h2 em{ font-style:italic; font-weight:300; color:var(--gold); }
.prose p{ font-size:15.5px; line-height:1.85; color:var(--paper-dim); margin-bottom:18px; }
.prose p b, .prose li b{ color:var(--paper-soft); font-weight:400; }
.prose p.lede{ font-size:clamp(17px,1.5vw,20px); line-height:1.75; color:var(--paper-soft); }
.prose ul{ list-style:none; margin:0 0 22px; border-top:1px solid var(--line); }
.prose ul li{
  padding:13px 0 13px 30px; border-bottom:1px solid var(--line); position:relative;
  font-size:14.5px; line-height:1.65; color:var(--paper-dim);
}
.prose ul li::before{
  content:'—'; position:absolute; left:0; top:13px;
  font-family:var(--mono); font-size:11px; color:var(--gold);
}
.prose a{ color:var(--gold); transition:color .3s ease; }
.prose a:hover{ color:var(--paper); }
.prose .updated{
  font-family:var(--mono); font-size:10px; letter-spacing:.2em; text-transform:uppercase;
  color:var(--paper-dim); margin-bottom:8px;
}
.pull{
  border-left:1px solid var(--gold); padding:6px 0 6px clamp(20px,2.6vw,34px);
  margin:clamp(34px,5vh,52px) 0;
  font-size:clamp(19px,2vw,25px); font-weight:300; font-style:italic; line-height:1.55; color:var(--paper);
  max-width:640px;
}
.pull em{ font-style:italic; color:var(--gold); }

/* ============ CTA FINAL DE PÁGINA ============ */
.page-cta{ border-top:1px solid var(--line); text-align:center; }
.page-cta .container{ padding-top:clamp(90px,13vh,150px); padding-bottom:clamp(90px,13vh,150px); }
.page-cta .overline{ justify-content:center; }
.page-cta .overline::before{ display:none; }
.page-cta h2{
  font-weight:500; font-stretch:106%; letter-spacing:-.026em; line-height:1.05;
  font-size:clamp(30px,4vw,56px); color:var(--paper); max-width:820px; margin:0 auto 26px;
}
.page-cta h2 em{ font-style:italic; font-weight:300; color:var(--gold); }
.page-cta .c-body{ font-size:clamp(15px,1.2vw,17.5px); line-height:1.75; color:var(--paper-soft); max-width:560px; margin:0 auto 46px; }
.page-cta .cta-row{ justify-content:center; margin-bottom:40px; }
.page-cta .c-mail{ font-family:var(--mono); font-size:11px; letter-spacing:.2em; color:var(--paper-dim); }
.page-cta .c-mail a{ color:var(--gold); transition:color .3s ease; }
.page-cta .c-mail a:hover{ color:var(--paper); }

/* ============ REVEAL ============ */
.reveal{ opacity:0; transform:translateY(34px); transition:opacity 1s ease, transform 1s cubic-bezier(.19,1,.22,1); }
.reveal.in{ opacity:1; transform:translateY(0); }

/* ============ FOOTER ============ */
footer{
  background:#030510; border-top:1px solid var(--line);
  padding:44px clamp(22px,4.5vw,64px);
  display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
}
footer .f-brand{ font-weight:600; font-stretch:112%; font-size:15px; letter-spacing:.34em; color:var(--paper); }
footer .f-brand em{ font-style:normal; color:var(--gold); }
footer .f-note{ font-family:var(--mono); font-size:9.5px; letter-spacing:.18em; color:var(--paper-dim); text-transform:uppercase; }
footer .f-note a{ transition:color .3s ease; }
footer .f-note a:hover{ color:var(--gold); }

/* ============ RESPONSIVE / MOTION ============ */
@media (max-width:820px){
  .f-list{ margin-top:22px; }
  .f-item{ padding:11px 0; }
  .st-body{ font-size:14px; }
}
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  .reveal{ transition-duration:.01s; }
}
