@font-face{font-family:'Articulat CF';src:url(/fonts/articulat-regular.otf) format('opentype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Articulat CF';src:url(/fonts/articulat-bold.otf) format('opentype');font-weight:700;font-style:normal;font-display:swap}

:root{
  --bg:#070a08; --bg-soft:#0d120d; --card:#101410;
  --surface:rgba(255,255,255,.035); --surface-border:rgba(255,255,255,.09);
  --text:#eef7f1; --muted:#93a89c; --muted-2:#5d6f64;
  --accent:#abff13; --accent-soft:#d9ffa0; --accent-ink:#0a1102;
  --accent-grad:linear-gradient(135deg,var(--accent-soft),var(--accent));
  --radius:20px; --maxw:1180px;
  color-scheme:dark;
}
[data-theme="light"]{
  --bg:#faf9f4; --bg-soft:#f1f1e9; --card:#ffffff;
  --surface:rgba(0,0,0,.03); --surface-border:rgba(0,0,0,.09);
  --text:#0a0f08; --muted:#4c5850; --muted-2:#7c887f;
  color-scheme:light;
}
@media (prefers-color-scheme:light){
  :root:not([data-theme="dark"]){
    --bg:#faf9f4; --bg-soft:#f1f1e9; --card:#ffffff;
    --surface:rgba(0,0,0,.03); --surface-border:rgba(0,0,0,.09);
    --text:#0a0f08; --muted:#4c5850; --muted-2:#7c887f;
    color-scheme:light;
  }
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;padding:0;background:var(--bg)}
body{font-family:'Articulat CF',system-ui,sans-serif;color:var(--text);overflow-x:hidden;transition:background .4s ease,color .4s ease}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,p,ul{margin:0}
.wrap{max-width:var(--maxw);margin:0 auto;padding-left:5%;padding-right:5%}

/* menu */
header.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 5%;background:var(--bg);border-bottom:1px solid var(--surface-border)}
.nav-links{display:flex;align-items:center;gap:32px;font-size:16px;color:var(--muted)}
.nav-links a:hover{color:var(--text)}
.nav-right{display:flex;align-items:center;gap:12px}
.icon-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;background:var(--card);border:1px solid var(--surface-border);color:var(--text);cursor:pointer}
.icon-btn:hover{background:var(--bg-soft)}
.menu-btn{display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--surface-border);padding:10px 18px;border-radius:999px;font:inherit;font-size:13px;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;color:var(--text)}
.menu-btn:hover{background:var(--bg-soft)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 26px;border-radius:10px;font:inherit;font-size:16px;font-weight:600;border:none;cursor:pointer}
.btn-primary{background:var(--accent-grad);color:var(--accent-ink)}
.btn-primary:hover{filter:brightness(1.06)}
.btn-secondary{background:transparent;color:var(--text);border:1px solid var(--surface-border)}
.btn-secondary:hover{border-color:color-mix(in srgb,var(--text) 30%,transparent);background:var(--surface)}
.nav-overlay{position:fixed;inset:0;z-index:200;background:var(--bg);display:none;flex-direction:column;align-items:flex-start;justify-content:center;gap:18px;padding:0 8%;font-size:34px}
.nav-overlay.open{display:flex}
.nav-overlay a:hover{color:var(--accent)}
.nav-overlay-close{position:absolute;top:22px;right:5%}

/* páginas */
main{padding-top:140px}
.back{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--muted);margin-bottom:28px}
.back:hover{color:var(--accent)}
.eyebrow{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.title{font-size:clamp(40px,7vw,84px);font-weight:700;line-height:1.02;letter-spacing:-.02em;margin:14px 0 22px}
.lead{max-width:640px;font-size:clamp(16px,1.5vw,19px);line-height:1.6;color:var(--muted)}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.tag{border:1px solid var(--surface-border);border-radius:999px;padding:7px 14px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

.meta{display:grid;grid-template-columns:repeat(4,1fr);margin-top:44px;border:1px solid var(--surface-border);border-radius:var(--radius);background:var(--surface)}
.meta div{padding:20px 22px;border-left:1px solid var(--surface-border)}
.meta div:first-child{border-left:none}
.meta small{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);margin-bottom:8px}
.meta span{font-size:16px}

.preview-wrap{margin-top:32px}
.preview{position:relative;border:1px solid var(--surface-border);border-radius:var(--radius);overflow:hidden;background:var(--bg-soft);aspect-ratio:16/10;max-height:78vh}
.preview img{width:100%;height:auto;will-change:transform}
.preview-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;font-size:13px;color:var(--muted);letter-spacing:.05em;text-transform:uppercase}
.preview-bar a{color:var(--text)}
.preview-bar a:hover{color:var(--accent)}

.cols{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin-top:80px}
.cols h2{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.cols p,.cols li{font-size:17px;line-height:1.65;color:var(--muted)}
.cols p+p{margin-top:16px}
.cols ul{margin-top:16px;padding-left:20px;display:grid;gap:10px}
.cols li::marker{color:var(--accent)}
.result{margin-top:56px;padding:32px;border:1px solid var(--surface-border);border-radius:var(--radius);background:var(--surface);font-size:clamp(18px,2vw,24px);line-height:1.5}

.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:96px 0 24px}
.section-head h2{font-size:clamp(26px,3.4vw,40px);line-height:1.1}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{display:block;border:1px solid var(--surface-border);border-radius:var(--radius);overflow:hidden;background:var(--card);transition:border-color .25s ease,transform .25s ease}
.card:hover{border-color:var(--accent);transform:translateY(-3px)}
.card .img{aspect-ratio:16/10;background:var(--bg-soft);overflow:hidden}
.card .img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.card:hover .img img{transform:scale(1.04)}
.card .body{padding:20px 22px 24px}
.card .meta-line{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2)}
.card h3{font-size:22px;margin:8px 0 12px}
.card .tags{margin-top:0}

.cta{margin:96px 0 0;padding:56px 5%;text-align:center;border-top:1px solid var(--surface-border)}
.cta h2{font-size:clamp(28px,4vw,48px);line-height:1.1;margin-bottom:12px}
.cta p{color:var(--muted);margin-bottom:26px}

footer{padding:28px 5%;border-top:1px solid var(--surface-border);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--muted-2)}

@media (max-width:880px){
  .nav-links{display:none}
  .meta{grid-template-columns:1fr 1fr}
  .meta div:nth-child(3){border-left:none}
  .meta div:nth-child(n+3){border-top:1px solid var(--surface-border)}
  .cols{grid-template-columns:1fr;gap:40px;margin-top:56px}
  .grid{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  header.nav{padding:16px 5%}
  .menu-btn{width:36px;height:36px;padding:0;justify-content:center;font-size:0;gap:0}
  .menu-btn::before{content:"\2630";font-size:16px}
  .nav-right .btn-primary{padding:10px 14px;font-size:13px;white-space:nowrap}
  .icon-btn{width:36px;height:36px;flex:none}
  .grid{grid-template-columns:1fr}
  .result{padding:22px}
}
@media (prefers-reduced-motion:reduce){.card,.card .img img{transition:none}}
