/* Fikii Intelligence Lab — final visual system */
:root{
  --fil-ink:#0b1711;
  --fil-dark:#03100a;
  --fil-green:#20d66f;
  --fil-green-dark:#07994b;
  --fil-soft:#f5faf7;
  --fil-line:#d4e2da;
  --fil-muted:#607168;
  --fil-white:#fff;
  --fil-max:1180px;
}
.fil-page{font-family:inherit;color:var(--fil-ink);background:#fff;overflow:hidden}
.fil-page *{box-sizing:border-box}
.fil-container{width:min(var(--fil-max),calc(100% - 48px));margin:auto}
.fil-eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#07994b;font-weight:700;margin-bottom:24px}
.fil-eyebrow-dark{color:#70f39e}
.fil-eyebrow span{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--fil-green);margin-right:8px}

/* HERO — intentionally follows the dark/grid language of the Fikii homepage */
.fil-hero{position:relative;min-height:700px;background:#03100a;color:#fff;display:flex;align-items:center}
.fil-hero-grid{position:absolute;inset:0;opacity:.42;background-image:linear-gradient(rgba(38,110,70,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(38,110,70,.18) 1px,transparent 1px);background-size:56px 56px}
.fil-hero-glow{position:absolute;width:620px;height:620px;right:-80px;top:40px;background:radial-gradient(circle,rgba(20,214,105,.23),rgba(20,214,105,0) 68%);filter:blur(10px)}
.fil-hero-inner{position:relative;z-index:2;width:min(1180px,calc(100% - 48px));margin:auto;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);gap:64px;align-items:center;padding:34px 0}
.fil-hero h1{font-size:clamp(58px,7.2vw,104px);line-height:.91;letter-spacing:-.055em;margin:0 0 30px;font-weight:800;max-width:760px}
.fil-hero h1 em{font-style:normal;color:var(--fil-green)}
.fil-hero-lead{max-width:690px;color:#c5d4cc;font-size:18px;line-height:1.65;margin:0 0 34px}
.fil-actions{display:flex;gap:12px;flex-wrap:wrap}
.fil-btn{display:inline-flex;align-items:center;gap:18px;border-radius:999px;padding:15px 22px;text-decoration:none;font-weight:700;transition:.2s ease}
.fil-btn:hover{transform:translateY(-2px)}
.fil-btn-primary{background:var(--fil-green);color:#04130a!important}
.fil-btn-ghost{border:1px solid rgba(255,255,255,.25);color:#fff!important;background:rgba(255,255,255,.04)}
.fil-btn-light{background:#fff;color:#06120b!important}
.fil-btn-dark-outline{border:1px solid rgba(255,255,255,.35);color:#fff!important}

.fil-hero-system{height:500px;border:1px solid rgba(151,235,183,.3);border-radius:30px;background:rgba(12,35,24,.62);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.28)}
.fil-system-label{position:absolute;left:28px;top:28px;font-size:11px;letter-spacing:.13em;color:#73e99d;font-weight:700}
.fil-orbit{position:absolute;border:1px solid rgba(58,220,125,.25);border-radius:50%;aspect-ratio:1}
.fil-orbit-1{width:300px}.fil-orbit-2{width:410px}.fil-orbit-3{width:520px;border-style:dashed;opacity:.6}
.fil-core{width:170px;height:170px;border-radius:50%;background:#020c07;border:10px solid rgba(31,214,109,.14);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;font-weight:800;font-size:25px;z-index:2;box-shadow:0 0 80px rgba(30,214,109,.13)}
.fil-core small{font-size:10px;line-height:1.3;letter-spacing:.1em;color:var(--fil-green);margin-top:5px}
.fil-system-pills{position:absolute;left:22px;right:22px;bottom:22px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;z-index:3}
.fil-system-pills span{border:1px solid rgba(154,221,179,.2);background:rgba(2,15,9,.76);border-radius:999px;padding:10px 8px;text-align:center;font-size:11px;color:#d9e9df}

/* SECTIONS */
.fil-section{padding:112px 0}
.fil-alt{background:var(--fil-soft)}
.fil-dark{background:#03100a;color:#fff}
.fil-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:88px;align-items:start}
.fil-section h2{font-size:clamp(38px,5vw,68px);line-height:.98;letter-spacing:-.045em;margin:0;font-weight:800}
.fil-large-copy{font-size:21px;line-height:1.7;color:#53655b;margin:0;max-width:610px}

/* PROCESS */
.fil-section-head{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);gap:72px;align-items:start;margin-bottom:56px}
.fil-section-head p{font-size:17px;line-height:1.7;color:var(--fil-muted);margin:7px 0 0;max-width:560px}
.fil-dark .fil-section-head p,.fil-ai-human p{color:#b9c9c0}
.fil-process{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--fil-line);border-radius:24px;overflow:hidden;background:#fff}
.fil-process>div{padding:30px 24px;min-height:205px;border-right:1px solid var(--fil-line);position:relative}
.fil-process>div:last-child{border-right:0}
.fil-process b{display:block;color:#0aa653;font-size:10px;letter-spacing:.14em;margin-bottom:34px;white-space:nowrap}
.fil-process strong{display:block;font-size:19px;line-height:1.2;margin-bottom:11px}
.fil-process span{display:block;color:#66766d;line-height:1.5;font-size:14px}

/* CAPABILITIES */
.fil-cap-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--fil-line)}
.fil-cap{padding:38px 32px 42px;border-right:1px solid var(--fil-line);border-bottom:1px solid var(--fil-line);min-height:285px}
.fil-cap:nth-child(2n){border-right:0}
.fil-cap-label{display:block;font-size:10px;color:#0aa653;letter-spacing:.14em;font-weight:700;line-height:1.3}
.fil-cap h3{font-size:24px;margin:16px 0 12px;line-height:1.18;letter-spacing:-.02em}
.fil-cap p{color:#5c6b63;line-height:1.65;margin:0 0 22px;max-width:570px}
.fil-cap a{color:#078e48;text-decoration:none;font-weight:700;font-size:14px}
.fil-cap a:hover{text-decoration:underline}

/* QUESTIONS */
.fil-question-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--fil-line);border-left:1px solid var(--fil-line)}
.fil-question-grid div{padding:25px;border-right:1px solid var(--fil-line);border-bottom:1px solid var(--fil-line);font-size:18px;font-weight:700;line-height:1.35;background:#fff}


/* AUDIENCE / USE CASES */
.fil-audience-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--fil-line);border-left:1px solid var(--fil-line)}
.fil-audience-grid article{padding:32px 28px 36px;min-height:250px;background:#fff;border-right:1px solid var(--fil-line);border-bottom:1px solid var(--fil-line)}
.fil-audience-grid span{display:block;color:#0aa653;font-size:10px;letter-spacing:.14em;font-weight:700;margin-bottom:34px}
.fil-audience-grid h3{font-size:21px;line-height:1.2;letter-spacing:-.02em;margin:0 0 12px}
.fil-audience-grid p{color:#5c6b63;line-height:1.6;font-size:14px;margin:0}

/* OUTPUT */
.fil-output-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--fil-line);border-radius:24px;overflow:hidden}
.fil-output-grid>div{padding:32px 24px;min-height:225px;border-right:1px solid var(--fil-line)}
.fil-output-grid>div:last-child{border-right:0}
.fil-output-grid b{color:#0aa653;font-size:12px}
.fil-output-grid h3{margin:42px 0 10px;font-size:19px;line-height:1.25}
.fil-output-grid p{color:#64736b;line-height:1.5;font-size:14px}

/* AI/HUMAN */
.fil-ai-human{align-items:center}
.fil-ai-human h2{max-width:640px}
.fil-ai-human p{font-size:18px;line-height:1.7;margin:0 0 25px}
.fil-ai-points{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fil-ai-points span{border:1px solid rgba(143,220,173,.2);border-radius:12px;padding:14px;color:#d9e7df;font-size:14px}

/* FAQ — same visual direction as homepage: white, two-column rounded cards */
.fil-faq-head{margin-bottom:48px}
.fil-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}
.fil-faq{border:1px solid var(--fil-line);border-radius:18px;background:#fff;overflow:hidden}
.fil-faq summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 24px;font-size:16px;font-weight:700;min-height:76px}
.fil-faq summary::-webkit-details-marker{display:none}
.fil-faq summary b{color:#08a653;font-size:22px;font-weight:500;line-height:1;transition:.2s}
.fil-faq[open] summary b{transform:rotate(45deg)}
.fil-faq-answer{padding:0 24px 24px;color:#5d6c64;line-height:1.65;font-size:15px}
.fil-faq-answer p{margin:0}

/* CTA */
.fil-cta{background:linear-gradient(110deg,#07994b 0%,#20d66f 100%);color:#fff;padding:110px 0}
.fil-cta h2{font-size:clamp(48px,6vw,82px);line-height:.96;letter-spacing:-.05em;margin:0 0 25px}
.fil-cta p{max-width:760px;color:rgba(255,255,255,.92);font-size:18px;line-height:1.7;margin:0 0 30px}
.fil-cta .fil-btn-primary{background:#fff;color:#06120b!important;border-color:#fff}
.fil-cta .fil-btn-ghost{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.65)}
.fil-cta .fil-btn-primary:hover{background:#f4fff8}
.fil-cta .fil-btn-ghost:hover{background:rgba(255,255,255,.1)}

/* RESPONSIVE */
@media (max-width:1000px){
  .fil-hero{padding:82px 0}
  .fil-hero-inner{grid-template-columns:1fr;gap:48px;padding:0}
  .fil-two-col,.fil-section-head{grid-template-columns:1fr;gap:42px}
  .fil-hero-system{height:440px}
  .fil-process{grid-template-columns:1fr 1fr}
  .fil-process>div:nth-child(2n){border-right:0}
  .fil-process>div{border-bottom:1px solid var(--fil-line)}
  .fil-output-grid,.fil-audience-grid{grid-template-columns:1fr 1fr}
  .fil-output-grid>div:nth-child(2n){border-right:0}
  .fil-output-grid>div{border-bottom:1px solid var(--fil-line)}
  .fil-audience-grid article:nth-child(2n){border-right:0}
}
@media (max-width:700px){
  .fil-container,.fil-hero-inner{width:min(100% - 32px,1180px)}
  .fil-section{padding:72px 0}
  .fil-hero{min-height:auto;padding:75px 0}
  .fil-hero h1{font-size:clamp(48px,14vw,76px)}
  .fil-hero-lead{font-size:16px}
  .fil-hero-system{height:390px}
  .fil-orbit-1{width:220px}.fil-orbit-2{width:300px}.fil-orbit-3{width:380px}
  .fil-core{width:135px;height:135px;font-size:20px}
  .fil-system-pills{grid-template-columns:repeat(2,1fr)}
  .fil-cap-grid,.fil-question-grid,.fil-faq-grid{grid-template-columns:1fr}
  .fil-cap{min-height:auto;padding:32px 24px 36px}
  .fil-cap:nth-child(2n){border-right:1px solid var(--fil-line)}
  .fil-process,.fil-output-grid,.fil-audience-grid{grid-template-columns:1fr}
  .fil-process>div,.fil-output-grid>div{border-right:0!important}
  .fil-process>div:last-child,.fil-output-grid>div:last-child,.fil-audience-grid article:last-child{border-bottom:0}
  .fil-audience-grid article{border-right:0!important;min-height:auto;padding:30px 24px 34px}
  .fil-ai-points{grid-template-columns:1fr}
  .fil-cta{padding:80px 0}
}
