:root{
    --navy:#0F2E46; --lime:#C7D52F; --evergreen:#042725; --white:#fff;
    --ink:#33434c; --muted:#6a7b84; --line:#e2e8ea; --bg:#f6f8f4; --navy-2:#16405d;
    --display:"Clash Display","Montserrat",-apple-system,system-ui,sans-serif;
    --body:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:var(--body);color:var(--ink);background:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased}
  .hero h1,h2.title,.pagehead h1,.band h2,.brand b,.mbox h3,.buybox .p,.kpi b{font-family:var(--display);letter-spacing:-.5px}
  a{color:inherit;text-decoration:none}
  img{max-width:100%}
  .wrap{max-width:1160px;margin:0 auto;padding:0 24px}
  .btn{display:inline-flex;align-items:center;gap:8px;border:none;cursor:pointer;font-weight:700;
    font-size:14.5px;padding:12px 22px;border-radius:999px;transition:.18s;font-family:inherit}
  .btn.lime{background:var(--lime);color:var(--navy)}
  .btn.lime:hover{filter:brightness(1.05);transform:translateY(-1px)}
  .btn.navy{background:var(--navy);color:#fff}
  .btn.navy:hover{background:var(--navy-2)}
  .btn.ghost{background:transparent;border:2px solid var(--navy);color:var(--navy);padding:10px 20px}
  .btn.ghost:hover{background:var(--navy);color:#fff}
  .btn.wa{background:#128C7E;color:#fff}
  .btn.wa:hover{filter:brightness(1.06)}
  .btn.sm{padding:8px 14px;font-size:13px}
  .muted{color:var(--muted)}

  /* NAV */
  header{position:sticky;top:0;z-index:50;background:rgba(15,46,70,.98);backdrop-filter:blur(6px);
    box-shadow:0 1px 0 rgba(255,255,255,.06)}
  .nav{display:flex;align-items:center;justify-content:space-between;height:68px}
  .brand{display:flex;align-items:center;gap:11px;cursor:pointer}
  .mark{width:34px;height:34px;flex:none}
  .brand b{color:#fff;font-size:20px;font-weight:800;letter-spacing:.5px}
  .brand span{color:var(--lime);font-size:10px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;display:block;margin-top:-3px}
  nav.links{display:flex;align-items:center;gap:4px}
  nav.links a{color:#cdd9e0;font-weight:600;font-size:14.5px;padding:9px 14px;border-radius:8px;cursor:pointer;transition:.15s}
  nav.links a:hover{color:#fff;background:rgba(255,255,255,.07)}
  nav.links a.active{color:var(--lime)}
  .navcta{display:flex;align-items:center;gap:10px}
  .burger{display:none;background:none;border:none;color:#fff;font-size:24px;cursor:pointer}
  @media(max-width:860px){
    nav.links{position:fixed;inset:68px 0 auto 0;background:var(--navy);flex-direction:column;
      align-items:stretch;padding:10px 16px;gap:2px;border-top:1px solid rgba(255,255,255,.08);display:none}
    nav.links.open{display:flex}
    .burger{display:block}
    .navcta .btn:not(.login){display:none}
  }

  /* PAGE system */
  .page{display:none;animation:fade .3s ease}
  .page.active{display:block}
  @keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

  /* HERO */
  .hero{background:linear-gradient(160deg,var(--navy) 0%,#0b2233 100%);color:#fff;position:relative;overflow:hidden}
  .hero::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;
    background:radial-gradient(circle,rgba(199,213,47,.16),transparent 70%)}
  .hero .wrap{padding:84px 24px 92px;position:relative;z-index:1}
  .kick{display:inline-block;color:var(--lime);font-weight:700;letter-spacing:2px;text-transform:uppercase;font-size:12.5px;margin-bottom:16px}
  .hero h1{font-size:clamp(32px,5vw,52px);line-height:1.1;font-weight:800;max-width:760px;letter-spacing:-.5px}
  .hero h1 em{color:var(--lime);font-style:normal}
  .hero p{color:#b9c8d0;font-size:18px;max-width:600px;margin:20px 0 30px}
  .hero .row{display:flex;gap:14px;flex-wrap:wrap}
  .stats{display:flex;gap:40px;flex-wrap:wrap;margin-top:52px}
  .stats div b{display:block;font-size:30px;color:var(--lime);font-weight:800}
  .stats div span{font-size:13px;color:#9fb2bc}

  section{padding:72px 0}
  .sec-kick{color:var(--lime);font-weight:700;letter-spacing:2px;text-transform:uppercase;font-size:12px}
  h2.title{color:var(--navy);font-size:clamp(26px,3.6vw,36px);font-weight:800;margin:8px 0 6px;letter-spacing:-.3px}
  .lead{color:var(--muted);font-size:16.5px;max-width:640px}
  .center{text-align:center}
  .center .lead{margin:0 auto}

  /* founder */
  .founder{background:var(--bg)}
  .fgrid{display:grid;grid-template-columns:280px 1fr;gap:44px;align-items:center}
  @media(max-width:760px){.fgrid{grid-template-columns:1fr}}
  .fphoto{background:var(--navy);border-radius:18px;aspect-ratio:4/5;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
  .fphoto .mono{width:120px;height:120px;opacity:.9}
  .fphoto .cap{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(4,39,37,.85));padding:22px 18px 16px;color:#fff}
  .fphoto .cap b{font-size:18px}.fphoto .cap span{font-size:12.5px;color:var(--lime)}
  .chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
  .chip{background:#fff;border:1px solid var(--line);color:var(--navy);font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:999px}

  /* partners */
  .partners{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
  .plogos{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;align-items:center;margin-top:26px}
  .plogo{height:56px;min-width:150px;border:1.5px dashed var(--line);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#9aa8b0;font-weight:700;font-size:14px;background:#fafbf8}

  /* course cards */
  .cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
  @media(max-width:860px){.cgrid{grid-template-columns:1fr 1fr}}
  @media(max-width:560px){.cgrid{grid-template-columns:1fr}}
  .ccard{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:.18s;cursor:pointer}
  .ccard:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(15,46,70,.10)}
  .ctop{height:120px;background:var(--navy);position:relative;display:flex;align-items:center;justify-content:center}
  .ctop.g2{background:#123a20}.ctop.g3{background:#3a3410}
  .ctop .mono{width:64px;height:64px;opacity:.85}
  .cbadge{position:absolute;top:12px;left:12px;background:var(--lime);color:var(--navy);font-size:11px;font-weight:800;padding:4px 10px;border-radius:999px;letter-spacing:.5px}
  .cbody{padding:18px;flex:1;display:flex;flex-direction:column}
  .cbody h3{color:var(--navy);font-size:17.5px;margin-bottom:6px}
  .cmeta{font-size:12.5px;color:var(--muted);display:flex;gap:14px;margin-bottom:10px;flex-wrap:wrap}
  .cmeta span{display:flex;align-items:center;gap:5px}
  .cbody p{font-size:13.5px;color:var(--ink);flex:1}
  .cfoot{display:flex;align-items:center;justify-content:space-between;margin-top:16px}
  .price{color:var(--navy);font-weight:800;font-size:18px}
  .price small{color:var(--muted);font-weight:600;font-size:12px}

  /* testimonials */
  .tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
  @media(max-width:860px){.tgrid{grid-template-columns:1fr}}
  .tcard{background:var(--bg);border-radius:16px;padding:26px;border:1px solid var(--line)}
  .tcard .q{color:var(--navy);font-size:15px;font-style:italic}
  .tcard .who{display:flex;align-items:center;gap:12px;margin-top:18px}
  .tcard .av{width:40px;height:40px;border-radius:50%;background:var(--lime);color:var(--navy);font-weight:800;display:flex;align-items:center;justify-content:center}
  .tcard .who b{display:block;color:var(--navy);font-size:14px}
  .tcard .who span{font-size:12px;color:var(--muted)}

  /* CTA band */
  .band{background:var(--lime);color:var(--navy);border-radius:22px;padding:48px;text-align:center;margin:8px 0}
  .band h2{font-size:30px;font-weight:800}
  .band p{max-width:520px;margin:10px auto 22px;color:#2b3a1c}

  /* generic section box for inner pages */
  .pagehead{background:var(--navy);color:#fff;padding:56px 0}
  .pagehead h1{font-size:36px;font-weight:800}
  .pagehead p{color:#b9c8d0;margin-top:8px;max-width:640px}
  .backlink{color:var(--muted);font-weight:600;font-size:13.5px;cursor:pointer;display:inline-flex;gap:6px;align-items:center;margin-bottom:18px}
  .backlink:hover{color:var(--navy)}

  /* course detail */
  .dgrid{display:grid;grid-template-columns:1fr 340px;gap:36px;align-items:start}
  @media(max-width:860px){.dgrid{grid-template-columns:1fr}}
  .syllabus{list-style:none}
  .syllabus li{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
  .syllabus .ln{width:26px;height:26px;flex:none;border-radius:8px;background:var(--bg);color:var(--navy);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
  .syllabus b{color:var(--navy);font-size:14.5px}
  .syllabus small{color:var(--muted);font-size:12.5px}
  .buybox{border:1px solid var(--line);border-radius:16px;padding:22px;position:sticky;top:88px;background:#fff}
  .buybox .p{color:var(--navy);font-weight:800;font-size:30px}
  .buybox .p small{font-size:13px;color:var(--muted);font-weight:600}
  .divider{height:1px;background:var(--line);margin:18px 0}
  .codebox{margin-top:14px}
  .codebox label{font-size:12.5px;font-weight:700;color:var(--navy);display:block;margin-bottom:6px}
  .codebox .in{display:flex;gap:8px}
  .codebox input{flex:1;border:1.5px solid var(--line);border-radius:10px;padding:11px 12px;font-size:14px;font-family:inherit;text-transform:uppercase}
  .codebox input:focus{outline:none;border-color:var(--navy)}
  .hint{font-size:11.5px;color:var(--muted);margin-top:8px}
  .msg{font-size:13px;font-weight:600;margin-top:10px;padding:9px 12px;border-radius:8px;display:none}
  .msg.ok{display:block;background:#eef6da;color:#4a6b0e}
  .msg.err{display:block;background:#fdecec;color:#b23b3b}

  /* member area / player */
  .lockwrap{display:grid;grid-template-columns:1fr 320px;gap:30px;align-items:start}
  @media(max-width:860px){.lockwrap{grid-template-columns:1fr}}
  .video{aspect-ratio:16/9;background:#0b1a24;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center;padding:24px;position:relative;overflow:hidden}
  .video .lock{font-size:40px;margin-bottom:10px}
  .video.play{background:linear-gradient(135deg,#0f2e46,#123a20)}
  .video .ptri{width:0;height:0;border-left:26px solid var(--lime);border-top:16px solid transparent;border-bottom:16px solid transparent;margin-bottom:12px}
  .video .badge2{position:absolute;top:14px;right:14px;background:rgba(199,213,47,.9);color:var(--navy);font-size:11px;font-weight:800;padding:4px 10px;border-radius:999px}
  .lessons{list-style:none;border:1px solid var(--line);border-radius:14px;overflow:hidden}
  .lessons li{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line);font-size:14px}
  .lessons li:last-child{border-bottom:none}
  .lessons .ic{width:22px;text-align:center}
  .lessons b{color:var(--navy);font-size:14px}
  .lessons small{color:var(--muted);font-size:12px;display:block}

  /* my courses */
  .mgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
  @media(max-width:680px){.mgrid{grid-template-columns:1fr}}
  .mcard{border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;gap:16px;align-items:center}
  .mcard .th{width:70px;height:70px;border-radius:12px;background:var(--navy);flex:none;display:flex;align-items:center;justify-content:center}
  .mcard .th.g2{background:#123a20}.mcard .th.g3{background:#3a3410}
  .mcard h4{color:var(--navy);font-size:15.5px}
  .prog{height:7px;background:var(--line);border-radius:99px;margin:8px 0 4px;overflow:hidden}
  .prog i{display:block;height:100%;background:var(--lime)}
  .pill{font-size:11px;font-weight:800;padding:3px 9px;border-radius:999px}
  .pill.on{background:#eef6da;color:#4a6b0e}
  .pill.off{background:#eef2f4;color:var(--muted)}

  /* admin */
  .adm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}
  @media(max-width:760px){.adm-grid{grid-template-columns:1fr 1fr}}
  .kpi{border:1px solid var(--line);border-radius:14px;padding:18px}
  .kpi b{display:block;color:var(--navy);font-size:26px;font-weight:800}
  .kpi span{font-size:12.5px;color:var(--muted)}
  .panel{border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:22px}
  .panel h3{color:var(--navy);font-size:17px;margin-bottom:4px}
  table{width:100%;border-collapse:collapse;margin-top:14px;font-size:13.5px}
  th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}
  th{color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.5px}
  td code{background:var(--bg);padding:3px 8px;border-radius:6px;color:var(--navy);font-weight:700}
  .codegen{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:6px}
  .codegen select{border:1.5px solid var(--line);border-radius:10px;padding:10px;font-family:inherit;font-size:14px}
  .genout{font-family:ui-monospace,monospace;font-size:16px;font-weight:800;color:var(--evergreen);background:#f2f7e4;border:1px dashed var(--lime);padding:8px 14px;border-radius:8px;display:none}

  /* modal */
  .modal{position:fixed;inset:0;background:rgba(6,20,30,.55);display:none;align-items:center;justify-content:center;z-index:100;padding:20px}
  .modal.open{display:flex}
  .mbox{background:#fff;border-radius:18px;padding:32px;max-width:400px;width:100%;position:relative}
  .mbox h3{color:var(--navy);font-size:22px}
  .mbox p{color:var(--muted);font-size:14px;margin:6px 0 18px}
  .field{margin-bottom:14px}
  .field label{font-size:12.5px;font-weight:700;color:var(--navy);display:block;margin-bottom:6px}
  .field input{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:12px;font-size:14px;font-family:inherit}
  .field input:focus{outline:none;border-color:var(--navy)}
  .mclose{position:absolute;top:16px;right:18px;background:none;border:none;font-size:22px;color:var(--muted);cursor:pointer}
  .demo-tip{background:#f2f7e4;border:1px solid var(--lime);border-radius:8px;padding:10px 12px;font-size:12px;color:#4a6b0e;margin-top:10px}

  footer.foot{background:var(--evergreen);color:#cfe0d0;padding:52px 0 30px;margin-top:20px}
  .fcols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
  @media(max-width:680px){.fcols{grid-template-columns:1fr}}
  footer.foot b{color:#fff}
  footer.foot a{color:#cfe0d0;display:block;padding:4px 0;font-size:13.5px;cursor:pointer}
  footer.foot a:hover{color:var(--lime)}
  .fbar{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:20px;font-size:12.5px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}

  .demo-banner{background:var(--lime);color:var(--navy);text-align:center;font-size:12.5px;font-weight:700;padding:7px 16px}

/* ===== Premium upgrade: hero video, marquee, stat band, cards ===== */
.hero{position:relative;overflow:hidden;background:radial-gradient(1000px 500px at 85% -10%,rgba(199,213,47,.16),transparent 60%),linear-gradient(155deg,#0F2E46 0%,#0a2030 100%)}
.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:46px 46px;-webkit-mask:radial-gradient(720px 420px at 18% 30%,#000,transparent 75%);mask:radial-gradient(720px 420px at 18% 30%,#000,transparent 75%)}
.hero .wrap{position:relative}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}
.kick{display:inline-flex;align-items:center;gap:8px;background:rgba(199,213,47,.10);border:1px solid rgba(199,213,47,.30);padding:6px 12px;border-radius:999px}
.trust{margin-top:28px;display:flex;gap:12px;flex-wrap:wrap;color:#8ea3ae;font-size:12px}
.trust span{font-weight:700;color:#c9d6dd;border:1px solid rgba(255,255,255,.14);padding:5px 11px;border-radius:8px;background:rgba(255,255,255,.04)}
.video{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:16/10;background:linear-gradient(135deg,#123a20,#0F2E46);box-shadow:0 30px 60px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.12);cursor:pointer}
.video::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(199,213,47,.14),transparent 60%)}
.vlabel{position:absolute;top:14px;left:14px;z-index:3;background:rgba(4,39,37,.7);color:#fff;font-size:11px;font-weight:700;padding:5px 11px;border-radius:999px;letter-spacing:.5px}
.play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2;gap:12px}
.pbtn{width:74px;height:74px;border-radius:50%;background:var(--lime);display:flex;align-items:center;justify-content:center;animation:ppulse 2.2s infinite}
@keyframes ppulse{0%{box-shadow:0 0 0 0 rgba(199,213,47,.45)}70%{box-shadow:0 0 0 22px rgba(199,213,47,0)}100%{box-shadow:0 0 0 0 rgba(199,213,47,0)}}
.pbtn i{border-left:22px solid var(--navy);border-top:13px solid transparent;border-bottom:13px solid transparent;margin-left:6px}
.play small{color:#dbe7c9;font-size:12.5px;font-weight:600}
.mq{background:var(--navy);border-top:1px solid rgba(255,255,255,.08);overflow:hidden;padding:14px 0}
.mqt{display:flex;gap:40px;white-space:nowrap;width:max-content;animation:mqmove 30s linear infinite;color:#7f97a4;font-weight:700;font-size:14px;letter-spacing:.5px}
@keyframes mqmove{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.statband{background:var(--navy);color:#fff;border-radius:20px;padding:32px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.statband b{display:block;font-size:30px;color:var(--lime);font-weight:800;font-family:'Clash Display','Montserrat',sans-serif}
.statband span{font-size:12.5px;color:#9fb2bc}
.btn{box-shadow:0 6px 18px rgba(15,46,70,.10)} .btn.ghost{box-shadow:none} .btn:hover{transform:translateY(-2px)}
.ccard:hover{box-shadow:0 16px 34px rgba(15,46,70,.10)}
.band{background:linear-gradient(135deg,#C7D52F,#b3c020)}
.plogo{transition:.15s} .plogo:hover{color:var(--navy);border-color:var(--lime)}
@media(max-width:760px){.hero-grid,.statband{grid-template-columns:1fr}.video{margin-top:8px}}

/* ===== Blog ===== */
.blogfilter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.blogfilter button{border:1.5px solid var(--line);background:#fff;color:var(--navy);font-weight:600;padding:7px 14px;border-radius:999px;cursor:pointer;font-size:13px;font-family:inherit;transition:.15s}
.blogfilter button:hover{border-color:var(--navy)} .blogfilter button.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.bloggrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:860px){.bloggrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.bloggrid{grid-template-columns:1fr}}
.bpost{border:1px solid var(--line);border-radius:16px;overflow:hidden;cursor:pointer;background:#fff;display:flex;flex-direction:column;transition:.18s}
.bpost:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(15,46,70,.10)}
.bthumb{height:150px;position:relative;display:flex;align-items:flex-end;padding:14px}
.bthumb span{position:relative;z-index:1;background:var(--lime);color:var(--navy);font-size:10.5px;font-weight:800;padding:4px 10px;border-radius:999px;letter-spacing:.5px}
.bbody{padding:18px;flex:1;display:flex;flex-direction:column}
.bbody h3{color:var(--navy);font-size:17px;margin-bottom:8px;line-height:1.3}
.bbody p{font-size:13.5px;color:var(--ink);flex:1}
.bdate{font-size:12px;color:var(--muted);margin-top:12px;display:flex;align-items:center;gap:8px}
.postmeta{font-size:12.5px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.posthero{height:240px;border-radius:16px;margin:14px 0 22px}
.postbody{color:var(--ink);font-size:15.5px} .postbody p{margin-bottom:16px} .postbody h3{color:var(--navy);font-size:20px;margin:22px 0 8px}
.postbody ul{margin:0 0 16px 20px} .postbody li{margin-bottom:6px}
/* gradient thumbnails */
.gr1{background:linear-gradient(135deg,#0F2E46,#16405d)} .gr2{background:linear-gradient(135deg,#123a20,#042725)}
.gr3{background:linear-gradient(135deg,#0F2E46,#3a3410)} .gr4{background:linear-gradient(135deg,#16405d,#0a2030)}
.gr5{background:linear-gradient(135deg,#042725,#0F2E46)} .gr6{background:linear-gradient(135deg,#2a3a12,#123a20)}
.bthumb::after,.gtile::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,rgba(199,213,47,.18),transparent 55%)}
/* ===== Gallery ===== */
.galgrid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:150px;gap:14px}
@media(max-width:860px){.galgrid{grid-template-columns:1fr 1fr}}
.gtile{border-radius:14px;position:relative;overflow:hidden;cursor:pointer;display:flex;align-items:flex-end;padding:14px;transition:.18s}
.gtile:hover{transform:scale(1.02)} .gtile.big{grid-column:span 2;grid-row:span 2}
.gtile.wide{grid-column:span 2}
.gtile b{position:relative;z-index:2;color:#fff;font-size:14px;font-weight:700;text-shadow:0 1px 6px rgba(0,0,0,.4)}
.gtile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lightbox{position:fixed;inset:0;background:rgba(6,20,30,.8);display:none;align-items:center;justify-content:center;z-index:200;padding:30px}
.lightbox.open{display:flex} .lbinner{max-width:600px;text-align:center;color:#fff} .lbcap{font-size:18px;font-weight:700}

/* real brand logomark on card tops */
.ctop img.markimg{height:54px;width:auto;opacity:.95;filter:drop-shadow(0 3px 8px rgba(0,0,0,.22))}

/* ===== About page: sub-nav + timeline ===== */
.subnav{position:sticky;top:64px;z-index:10;background:#fff;border-bottom:1px solid var(--line)}
.subnav .wrap{display:flex;gap:6px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}
.subnav a{color:var(--navy);font-weight:600;font-size:13px;padding:7px 14px;border-radius:999px;cursor:pointer;transition:.15s}
.subnav a:hover{background:var(--bg)}
.timeline{list-style:none;margin-top:20px;position:relative;padding-left:26px}
.timeline::before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--line)}
.timeline li{position:relative;display:flex;gap:18px;padding:12px 0}
.timeline li::before{content:"";position:absolute;left:-23px;top:18px;width:12px;height:12px;border-radius:50%;background:var(--lime);border:2px solid #fff;box-shadow:0 0 0 2px var(--line)}
.timeline .yr{flex:none;width:54px;color:var(--navy);font-weight:800;font-family:'Clash Display','Montserrat',sans-serif}
.timeline b{color:var(--navy);font-size:15px} .timeline small{color:var(--muted);font-size:12.5px}
@media(max-width:760px){.subnav{top:60px}.subnav .wrap{overflow-x:auto;flex-wrap:nowrap}}

/* ===== Certificates, carousel, FAQ, industries ===== */
.cert{position:relative;border-radius:14px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 10px 26px rgba(15,46,70,.08);cursor:pointer;transition:.18s}
.cert:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(15,46,70,.14)}
.certinner{margin:12px;border:2px solid var(--navy);border-radius:10px;padding:22px 18px;text-align:center;position:relative;aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,#fff, #fbfdf6)}
.certinner::before{content:"";position:absolute;inset:5px;border:1px solid var(--lime);border-radius:7px;pointer-events:none}
.cert .cmark{height:26px;margin-bottom:8px}
.cert .ct-k{font-size:9.5px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);font-weight:700}
.cert .ct-t{font-family:'Clash Display','Montserrat',sans-serif;color:var(--navy);font-size:16px;font-weight:800;margin:8px 4px;line-height:1.2}
.cert .ct-n{font-size:11px;color:var(--ink)}
.cert .seal{position:absolute;bottom:14px;right:16px;width:44px;height:44px;border-radius:50%;background:var(--lime);color:var(--navy);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;box-shadow:0 3px 8px rgba(0,0,0,.15)}
.cert .sig{margin-top:14px;font-size:10.5px;color:var(--muted)} .cert .sig b{color:var(--navy);font-size:12px}
.carousel{display:flex;gap:18px;overflow-x:auto;scroll-behavior:smooth;padding:22px 2px 6px;scroll-snap-type:x mandatory}
.carousel::-webkit-scrollbar{height:8px} .carousel::-webkit-scrollbar-thumb{background:var(--line);border-radius:8px}
.carousel > *{flex:0 0 300px;scroll-snap-align:start}
.carnav{display:flex;gap:8px} .carnav button{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--line);background:#fff;color:var(--navy);font-size:20px;cursor:pointer;transition:.15s} .carnav button:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.faq{display:flex;flex-direction:column;gap:10px}
.faq .qa{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.faq .q{padding:15px 18px;font-weight:700;color:var(--navy);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:15px}
.faq .q span{color:var(--lime);font-size:22px;flex:none;transition:.2s}
.faq .qa.open .q span{transform:rotate(45deg)}
.faq .a{max-height:0;overflow:hidden;transition:max-height .25s ease;color:var(--ink);font-size:14px}
.faq .qa.open .a{max-height:300px} .faq .a p{padding:0 18px 16px}

/* ===================== 2026 revision ===================== */
/* Preloader */
#preloader{position:fixed;inset:0;z-index:9999;background:#0F2E46;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;transition:opacity .5s ease,visibility .5s}
#preloader.done{opacity:0;visibility:hidden}
.pl-markwrap{width:96px;height:96px;display:flex;align-items:center;justify-content:center}
.pl-img{width:78px;height:auto;animation:plreveal 1s ease forwards;filter:drop-shadow(0 6px 16px rgba(0,0,0,.35))}
@keyframes plreveal{0%{clip-path:inset(100% 0 0 0);transform:translateY(8px)}100%{clip-path:inset(0 0 0 0);transform:none}}
.pl-bar{width:190px;height:5px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden}
.pl-bar i{display:block;height:100%;width:0;background:var(--lime);border-radius:99px;animation:plfill 1.5s ease forwards}
@keyframes plfill{to{width:100%}}
.pl-word{color:#8ea3ae;font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase}
/* Industries — dark band + icon tiles */
.indsec{background:radial-gradient(700px 320px at 12% 0,rgba(199,213,47,.14),transparent 60%),var(--navy);color:#fff}
.indgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-top:30px}
@media(max-width:900px){.indgrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.indgrid{grid-template-columns:1fr 1fr}}
.indtile{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.10);border-radius:14px;padding:18px 12px;text-align:center;transition:.18s;cursor:default}
.indtile:hover{background:rgba(199,213,47,.10);border-color:rgba(199,213,47,.4);transform:translateY(-4px)}
.indtile .ii{font-size:26px;display:block;margin-bottom:8px}
.indtile b{color:#eaf1f4;font-size:12.5px;font-weight:600;line-height:1.3;display:block}
/* Dual audience cards */
.audience{border-radius:18px;padding:30px;position:relative;overflow:hidden}
.audience h3{font-size:22px;font-weight:800;font-family:'Clash Display','Montserrat',sans-serif;margin:10px 0 8px}
.audience p{font-size:14.5px;margin-bottom:12px}
.audience ul{list-style:none;margin-bottom:18px} .audience li{padding:5px 0 5px 22px;position:relative;font-size:13.5px}
.audience li::before{content:"✓";position:absolute;left:0;font-weight:800}
.atag{font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;padding:5px 11px;border-radius:999px;display:inline-block}
.aud-org{background:var(--navy);color:#fff} .aud-org .atag{background:var(--lime);color:var(--navy)} .aud-org li::before{color:var(--lime)}
.aud-ind{background:var(--bg);color:var(--ink);border:1px solid var(--line)} .aud-ind h3{color:var(--navy)} .aud-ind .atag{background:var(--navy);color:#fff} .aud-ind li::before{color:var(--navy)}
/* Marketing page */
.mkt-hero{background:radial-gradient(900px 440px at 82% -10%,rgba(199,213,47,.18),transparent 55%),linear-gradient(150deg,#123a20,#0F2E46);color:#fff;padding:64px 0 70px;position:relative;overflow:hidden}
.mkt-hero .wrap{position:relative} .mkt-hero h1{font-size:clamp(30px,4.4vw,48px);font-weight:800;max-width:680px;margin-top:14px}
.mkt-hero p{color:#cfe0d0;font-size:16.5px;max-width:560px;margin:16px 0 24px}
.mktgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}
@media(max-width:860px){.mktgrid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.mktgrid{grid-template-columns:1fr}}
.mktcard{border:1px solid var(--line);border-radius:16px;padding:24px;background:#fff;transition:.18s;position:relative;overflow:hidden}
.mktcard::before{content:"";position:absolute;left:0;top:0;height:100%;width:4px;background:var(--lime);transform:scaleY(0);transform-origin:top;transition:.2s}
.mktcard:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(15,46,70,.12)} .mktcard:hover::before{transform:scaleY(1)}
.mktcard h3{color:var(--navy);font-size:17px;margin-bottom:6px} .mktcard p{font-size:13.5px;color:var(--ink)}
.mktcard .tags{display:block;margin-top:12px;font-size:11.5px;color:var(--muted);font-weight:600}
.workgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px}
@media(max-width:860px){.workgrid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.workgrid{grid-template-columns:1fr}}
.worktile{border-radius:14px;overflow:hidden;position:relative;cursor:pointer;border:1px solid var(--line);transition:.18s}
.worktile:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(15,46,70,.12)}
.worktile img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.worktile .wcap{padding:12px 14px;display:flex;justify-content:space-between;align-items:center}
.worktile .wcap b{color:var(--navy);font-size:13.5px} .worktile .wcap span{font-size:11px;color:var(--muted)}
.worktile.ph{aspect-ratio:16/10;display:flex;align-items:flex-end;padding:14px} .worktile.ph b{position:relative;z-index:2;color:#fff;font-size:14px}
/* scroll reveal */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}
.reveal.in{opacity:1;transform:none}

/* Industries auto-revolving carousel */
.indcarousel{overflow:hidden;margin-top:30px;-webkit-mask:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.indtrack{display:flex;gap:18px;width:max-content;animation:indmove 48s linear infinite}
.indcarousel:hover .indtrack{animation-play-state:paused}
@keyframes indmove{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.indcard{flex:0 0 300px;border-radius:16px;overflow:hidden;position:relative;border:1px solid rgba(255,255,255,.10);box-shadow:0 12px 30px rgba(0,0,0,.3)}
.indcard img{width:100%;height:196px;object-fit:cover;display:block;transition:transform .5s ease}
.indcard:hover img{transform:scale(1.06)}
.indcard .cap{position:absolute;left:0;right:0;bottom:0;padding:16px 16px 14px;background:linear-gradient(transparent,rgba(6,20,30,.9))}
.indcard .cap b{font-size:15px;font-weight:700;color:#fff;display:block;font-family:'Clash Display','Montserrat',sans-serif}
.indcard .cap i{display:block;width:28px;height:3px;background:var(--lime);border-radius:2px;margin-top:8px}
@media(max-width:560px){.indcard{flex-basis:240px}}

/* ===================== UNIQUE 2026 REFRESH ===================== */
:root{--indigo:#2e2a7a;--orange:#e8823c}
#scrollbar{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--lime),#9fb016);z-index:9998;transition:width .1s linear}
/* Bigger, tighter display type */
.hero h1{font-size:clamp(34px,5.4vw,60px);line-height:1.02;letter-spacing:-1.5px}
h2.title{font-size:clamp(26px,3.6vw,42px);letter-spacing:-1px;line-height:1.05}
/* Highlighter accent on hero keyword */
.hero h1 em{color:#fff;font-style:normal;position:relative;white-space:nowrap;padding:0 .06em}
.hero h1 em::after{content:"";position:absolute;left:-.04em;right:-.04em;bottom:.08em;height:.34em;background:var(--lime);z-index:-1;border-radius:3px;transform:rotate(-1deg)}
/* Eyebrows with lime lead line */
.sec-kick{display:inline-flex;align-items:center;gap:10px;font-size:11.5px;letter-spacing:2.5px}
.sec-kick::before{content:"";width:22px;height:2px;background:var(--lime);display:inline-block}
.cen .sec-kick{justify-content:center}
/* Cards: bigger radius, lime top-accent on hover, cleaner border */
.ccard,.card,.mktcard,.bpost,.cert,.cc{border-radius:20px;border-color:#eef1f0}
.ccard,.cc{position:relative}
.ccard::after,.cc::after{content:"";position:absolute;top:0;left:24px;right:24px;height:3px;background:var(--lime);border-radius:0 0 4px 4px;transform:scaleX(0);transform-origin:left;transition:.25s}
.ccard:hover::after,.cc:hover::after{transform:scaleX(1)}
/* Buttons: crisper */
.btn{letter-spacing:.2px}
/* Section rhythm */
section{padding:74px 0}
/* Big statement band */
.stmt{background:var(--navy);color:#fff;border-radius:26px;padding:56px 48px;position:relative;overflow:hidden}
.stmt::before{content:"";position:absolute;right:-60px;bottom:-60px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(199,213,47,.18),transparent 70%)}
.stmt h2{font-family:'Clash Display','Montserrat',sans-serif;font-size:clamp(26px,4vw,44px);font-weight:800;letter-spacing:-1px;line-height:1.08;max-width:900px}
.stmt h2 span{color:var(--lime)}
.stmt p{color:#b9c8d0;max-width:620px;margin-top:16px;font-size:16px}
/* Double Bond co-brand */
.cobrand{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.cobrand img{height:26px;width:auto;display:block}
.cobrand .x{color:#8ea3ae;font-weight:800;font-size:18px}
.dbtag{display:inline-flex;align-items:center;gap:8px;background:rgba(46,42,122,.14);border:1px solid rgba(46,42,122,.3);color:#cfd3f5;font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;padding:6px 12px;border-radius:999px}
.mkt-hero{background:radial-gradient(900px 440px at 82% -10%,rgba(232,130,60,.22),transparent 55%),linear-gradient(150deg,#1a1750,#0F2E46)}
.mktcard::before{background:var(--orange)}
.mkt-hero .btn.lime{background:var(--orange);color:#fff}
.worktile.ph{position:relative} .worktile .vplay{position:absolute;top:50%;left:50%;transform:translate(-50%,-60%);z-index:3;width:52px;height:52px;border-radius:50%;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;box-shadow:0 6px 18px rgba(0,0,0,.3)}
.dblogo{display:inline-flex;align-items:center;gap:9px;color:#fff;font-family:'Clash Display','Montserrat',sans-serif;font-size:20px;letter-spacing:-.5px;line-height:1}
.dblogo>span{font-weight:500} .dblogo>span b{font-weight:800}

/* ===== Double Bond — ACTUAL brand palette ===== */
:root{--db-deep:#201040;--db-purple:#403090;--db-orange:#F08030;--db-violet:#7070A0;--db-lav:#C0C0E0;--indigo:#403090;--orange:#F08030}
.mkt-hero{background:radial-gradient(900px 460px at 82% -12%,rgba(240,128,48,.28),transparent 55%),linear-gradient(150deg,#201040 0%,#2c1a63 55%,#403090 100%)}
.mkt-hero .btn.lime{background:var(--db-orange);color:#fff;box-shadow:0 8px 22px rgba(240,128,48,.35)}
.mktcard::before{background:var(--db-orange)}
.mktcard:hover{box-shadow:0 18px 38px rgba(64,48,144,.16)}
.dbtag{background:rgba(64,48,144,.16);border-color:rgba(64,48,144,.45);color:#c9c3f2}
.cobrand .x{color:var(--db-violet)}
.worktile .vplay{background:var(--db-orange)}
/* marketing "what we create" heading accent */
#page-marketing .sec-kick::before{background:var(--db-orange)}

/* ==================================================================
   EDITORIAL DESIGN SYSTEM (light) — full-site revamp
   ================================================================== */
:root{--paper:#F7F5EF;--line:#e7e3d8;--ink:#2b3a42;--muted:#6b7a82}
body{background:#fff;color:var(--ink)}
.wrap{max-width:1180px}
section{padding:88px 0}
/* Header → light, hairline */
header{background:rgba(255,255,255,.92);backdrop-filter:blur(10px);box-shadow:inset 0 -1px 0 var(--line)}
.nav{height:74px}
nav.links a{color:#3c4a52;font-weight:600}
nav.links a:hover{color:var(--navy);background:#f1efe7}
nav.links a.active{color:var(--navy);background:transparent;box-shadow:inset 0 -2px 0 var(--lime)}
.burger{color:var(--navy)}
@media(max-width:860px){nav.links{background:#fff;border-top:1px solid var(--line)}nav.links a{color:#3c4a52}}
/* Type — oversized editorial */
h2.title{font-size:clamp(30px,4.4vw,52px);letter-spacing:-1.4px;line-height:1;color:var(--navy);font-weight:700}
.lead{color:var(--muted);font-size:17px;font-weight:400}
.sec-kick{color:var(--navy);font-weight:700;font-size:11px;letter-spacing:3px}
.sec-kick::before{background:var(--lime);width:26px;height:2px}
/* Hero → light editorial */
.hero{background:radial-gradient(760px 380px at 88% -12%,rgba(199,213,47,.20),transparent 62%),var(--paper)}
.hero::before{background-image:linear-gradient(rgba(15,46,70,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(15,46,70,.05) 1px,transparent 1px)}
.hero .wrap{padding:92px 24px 100px}
.hero h1{color:var(--navy);font-size:clamp(38px,6vw,72px);letter-spacing:-2px;line-height:.98;font-weight:700}
.hero h1 em{color:var(--navy)}
.hero p{color:var(--muted);font-size:18px}
.kick{color:var(--navy);background:rgba(199,213,47,.16);border:1px solid rgba(199,213,47,.55)}
.trust{color:var(--muted)}.trust span{color:var(--navy);border:1px solid var(--line);background:#fff}
/* Page headers → light editorial with rule */
.pagehead,.ph{background:radial-gradient(560px 220px at 84% -10%,rgba(199,213,47,.16),transparent 60%),var(--paper);color:var(--navy);border-bottom:1px solid var(--line);padding:70px 0 60px}
.pagehead h1,.ph h1{color:var(--navy);font-size:clamp(34px,5vw,60px);letter-spacing:-1.5px;line-height:1}
.pagehead p,.ph p{color:var(--muted);font-size:17px}
.subnav{top:74px;box-shadow:inset 0 -1px 0 var(--line)}
/* Marquee → light hairline */
.mq{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}.mqt{color:#9aa5ab}
/* Stat band → light, hairline, big numerals */
.statband{background:transparent;color:var(--navy);border:1px solid var(--line);border-radius:18px;padding:34px 24px}
.statband>div{border-right:1px solid var(--line)}.statband>div:last-child{border-right:none}
.statband b{color:var(--navy);font-size:38px}.statband span{color:var(--muted)}
@media(max-width:760px){.statband>div{border-right:none;border-bottom:1px solid var(--line);padding-bottom:14px}}
/* Cards → white, crisp hairline, restrained shadow */
.ccard,.card,.mktcard,.bpost,.cert,.cc,.kpi,.buy,.audience{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:none}
.ccard:hover,.cc:hover,.mktcard:hover,.bpost:hover{box-shadow:0 20px 44px rgba(15,46,70,.08)}
.ic{background:rgba(199,213,47,.18)}
/* Industries → light editorial */
.indsec{background:var(--paper);color:var(--navy)}
/* Founder / bg tints use paper */
.founder{background:var(--paper)}
/* Buttons → flatter editorial */
.btn{box-shadow:none;border-radius:999px}
.btn:hover{transform:translateY(-2px)}
.btn.navy{background:var(--navy);color:#fff}
.btn.lime{background:var(--lime);color:var(--navy)}
.btn.ghost{border:1.5px solid var(--navy);color:var(--navy);background:transparent}
.btn.ghost:hover{background:var(--navy);color:#fff}
/* CTA band stays lime (accent) */
.band{background:var(--lime)}.band h2{color:var(--navy)}
/* Blog thumbs keep dark gradients (image stand-ins) — fine on light */

/* ==================================================================
   BOLD / DYNAMIC v4 — animated hero, glass, 3D, glow, gradients
   ================================================================== */
header{background:rgba(8,19,28,.72);backdrop-filter:blur(12px);box-shadow:inset 0 -1px 0 rgba(255,255,255,.08)}
nav.links a{color:#c7d5dd}nav.links a:hover{color:#fff;background:rgba(255,255,255,.08)}
nav.links a.active{color:var(--lime);box-shadow:none}
.burger{color:#fff}
.demo-banner{background:linear-gradient(90deg,#C7D52F,#8fd14f)}
/* HERO 3D */
.hero3d{position:relative;min-height:92vh;display:flex;align-items:center;overflow:hidden;
  background:radial-gradient(1200px 700px at 78% -10%,#123a3a 0%,transparent 55%),radial-gradient(900px 600px at 5% 110%,#1a2b6b 0%,transparent 55%),linear-gradient(160deg,#08131c 0%,#0b1f2b 60%,#06131a 100%);color:#fff}
#heroCanvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;opacity:.55}
.hero-grid-dots{position:absolute;inset:0;z-index:1;background-image:radial-gradient(rgba(255,255,255,.10) 1px,transparent 1px);background-size:26px 26px;mask:radial-gradient(700px 500px at 30% 40%,#000,transparent 70%);opacity:.5}
.blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;z-index:0;animation:floaty 14s ease-in-out infinite}
.blob.b1{width:420px;height:420px;background:#C7D52F;top:-80px;right:8%;opacity:.34;animation-delay:0s}
.blob.b2{width:360px;height:360px;background:#18b6a6;bottom:-60px;left:10%;opacity:.30;animation-delay:-4s}
.blob.b3{width:300px;height:300px;background:#4b53d8;top:30%;left:44%;opacity:.26;animation-delay:-8s}
@keyframes floaty{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(30px,-30px) scale(1.08)}66%{transform:translate(-20px,20px) scale(.95)}}
.h3grid{position:relative;z-index:3;display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;padding:60px 24px}
@media(max-width:860px){.h3grid{grid-template-columns:1fr;gap:30px}}
.pillglow{display:inline-flex;align-items:center;gap:9px;background:rgba(199,213,47,.10);border:1px solid rgba(199,213,47,.35);color:#eaf3c8;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:8px 14px;border-radius:999px;backdrop-filter:blur(6px)}
.pillglow .dot{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 0 rgba(199,213,47,.6);animation:ppulse 2s infinite}
.hero3d h1{font-family:'Clash Display','Montserrat',sans-serif;font-size:clamp(46px,8vw,104px);line-height:.92;letter-spacing:-3px;font-weight:700;margin:18px 0 0;color:#fff}
.hero3d h1 .grad{background:linear-gradient(100deg,#C7D52F 0%,#7fe3c0 55%,#8ab6ff 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero3d h1 em{display:none}
.hero3d p{color:#aebfc9;font-size:18px;max-width:520px;margin:22px 0 30px}
.hero3d p b{color:#fff}
.btn.glow{background:linear-gradient(100deg,#C7D52F,#a9c327);color:#0b1f14;box-shadow:0 10px 34px rgba(199,213,47,.4);border:none;font-weight:800}
.btn.glow:hover{box-shadow:0 14px 44px rgba(199,213,47,.55);transform:translateY(-3px)}
.btn.glass{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);color:#fff;backdrop-filter:blur(8px)}
.btn.glass:hover{background:rgba(255,255,255,.16)}
.floatchips{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.floatchips span{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#cfe0d0;font-weight:700;font-size:13px;padding:9px 15px;border-radius:12px;backdrop-filter:blur(6px)}
/* Hero visual: glass showreel card + floating metric cards + orb */
.h3visual{position:relative;min-height:420px}
.orb{position:absolute;width:300px;height:300px;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);
  background:conic-gradient(from 0deg,#C7D52F,#18b6a6,#4b53d8,#C7D52F);filter:blur(30px);opacity:.35;animation:spin 18s linear infinite}
@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.gcard{position:relative;z-index:2;border-radius:22px;overflow:hidden;background:linear-gradient(150deg,rgba(18,58,58,.7),rgba(11,31,43,.75));border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(14px);box-shadow:0 40px 80px rgba(0,0,0,.5);aspect-ratio:16/12;cursor:pointer;transition:transform .2s ease}
.gcard-top{display:flex;justify-content:space-between;align-items:center;padding:16px 18px}
.gcard .live{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:1px;color:#fff}
.gcard .live span{width:8px;height:8px;border-radius:50%;background:#ff5c5c;box-shadow:0 0 10px #ff5c5c;animation:ppulse 1.6s infinite}
.gcard .gmark img{height:22px;opacity:.95}
.gplay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.gplay .pbtn{width:76px;height:76px;border-radius:50%;background:var(--lime);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 0 rgba(199,213,47,.5);animation:ppulse 2.2s infinite}
.gplay .pbtn i{border-left:22px solid #0b1f14;border-top:13px solid transparent;border-bottom:13px solid transparent;margin-left:6px}
.gcard-bot{position:absolute;left:0;right:0;bottom:0;padding:16px 18px;background:linear-gradient(transparent,rgba(4,20,26,.85))}
.gcard-bot b{display:block;color:#fff;font-size:16px}.gcard-bot span{color:#aebfc9;font-size:12.5px}
.fcard{position:absolute;z-index:4;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(12px);border-radius:16px;padding:14px 18px;box-shadow:0 20px 40px rgba(0,0,0,.4)}
.fcard b{display:block;font-family:'Clash Display',sans-serif;font-size:26px;color:var(--lime);line-height:1}.fcard span{font-size:12px;color:#cfe0d0}
.fcard.fc1{top:-6px;left:-26px;animation:bob 5s ease-in-out infinite}
.fcard.fc2{bottom:6px;right:-20px;animation:bob 6s ease-in-out infinite reverse}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.scrollcue{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:3;width:24px;height:40px;border:2px solid rgba(255,255,255,.35);border-radius:14px;display:flex;justify-content:center;padding-top:7px}
.scrollcue span{width:4px;height:8px;border-radius:2px;background:var(--lime);animation:scrolldot 1.6s infinite}
@keyframes scrolldot{0%{opacity:0;transform:translateY(-4px)}40%{opacity:1}100%{opacity:0;transform:translateY(10px)}}
@media(max-width:860px){.hero3d{min-height:auto;padding:40px 0}.fcard.fc1{left:0}.fcard.fc2{right:0}}

/* ===== Client logos (real) + audience fix ===== */
.audience.aud-org{background:var(--navy);color:#fff}
.audience.aud-org h3{color:#fff}
.audience.aud-ind{background:#fff;color:var(--ink)}
#clientLogos{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-top:28px}
@media(max-width:900px){#clientLogos{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){#clientLogos{grid-template-columns:repeat(2,1fr)}}
.clogo{background:#fff;border:1px solid var(--line);border-radius:14px;height:92px;display:flex;align-items:center;justify-content:center;padding:16px;transition:.2s}
.clogo img{max-height:52px;max-width:100%;object-fit:contain;filter:grayscale(1);opacity:.7;transition:.2s}
.clogo:hover{border-color:var(--lime);box-shadow:0 10px 26px rgba(15,46,70,.08);transform:translateY(-3px)}
.clogo:hover img{filter:grayscale(0);opacity:1}
.mqlogo{display:inline-flex;align-items:center;height:34px}
.mqlogo img{height:26px;width:auto;filter:grayscale(1);opacity:.55}
.mq{background:#fff}

/* ===================== MOBILE MENU (revamped) ===================== */
.burger{display:none;width:42px;height:42px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);border-radius:12px;position:relative;cursor:pointer;z-index:120;padding:0}
.burger span{position:absolute;left:11px;right:11px;height:2px;background:#fff;border-radius:2px;transition:.28s;transform-origin:center}
.burger span:nth-child(1){top:14px}.burger span:nth-child(2){top:20px}.burger span:nth-child(3){top:26px}
body.menuon .burger{position:fixed;right:24px;top:auto;margin-top:0}
body.menuon .burger span{background:#fff}
body.menuon .burger span:nth-child(1){top:20px;transform:rotate(45deg)}
body.menuon .burger span:nth-child(2){opacity:0}
body.menuon .burger span:nth-child(3){top:20px;transform:rotate(-45deg)}
@media(max-width:860px){
  .burger{display:block}
  .navcta .btn.login{display:none}
  nav.links{position:fixed;inset:0;z-index:110;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:90px 24px 40px;
    background:radial-gradient(700px 500px at 80% 10%,rgba(199,213,47,.16),transparent 60%),linear-gradient(160deg,#0b1f2b,#06131a);
    transform:translateY(-100%);opacity:0;visibility:hidden;transition:transform .45s cubic-bezier(.7,0,.2,1),opacity .35s;overflow-y:auto}
  nav.links.open{transform:translateY(0);opacity:1;visibility:visible}
  nav.links a{color:#fff;font-family:'Clash Display','Montserrat',sans-serif;font-size:30px;font-weight:600;letter-spacing:-.5px;padding:12px 8px;width:100%;max-width:420px;text-align:center;border-bottom:1px solid rgba(255,255,255,.09);background:transparent;border-radius:0;
    opacity:0;transform:translateY(14px)}
  nav.links.open a{opacity:1;transform:none;transition:opacity .4s ease,transform .4s ease}
  nav.links.open a:nth-child(1){transition-delay:.06s}nav.links.open a:nth-child(2){transition-delay:.10s}
  nav.links.open a:nth-child(3){transition-delay:.14s}nav.links.open a:nth-child(4){transition-delay:.18s}
  nav.links.open a:nth-child(5){transition-delay:.22s}nav.links.open a:nth-child(6){transition-delay:.26s}
  nav.links.open a:nth-child(7){transition-delay:.30s}nav.links.open a:nth-child(8){transition-delay:.34s}
  nav.links.open a:nth-child(9){transition-delay:.38s}
  nav.links a:hover,nav.links a.active{color:var(--lime);background:transparent;box-shadow:none}
  nav.links::after{content:"Built to Grow";color:#6f8794;font-size:12px;letter-spacing:3px;text-transform:uppercase;margin-top:26px}
  body.menuon{overflow:hidden}
}

/* Mobile menu containing-block + polish fixes */
body.menuon .burger{position:fixed;top:22px;right:24px}
@media(max-width:860px){
  header{backdrop-filter:none;-webkit-backdrop-filter:none}
  nav.links a{font-size:26px;padding:11px 8px}
  nav.links::after{margin-top:20px}
}

/* ===================== LANGUAGE TOGGLE + RTL ===================== */
.langbtn{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.22);color:#fff;font-weight:700;font-size:13px;padding:8px 12px;border-radius:999px;cursor:pointer;font-family:inherit;transition:.15s}
.langbtn:hover{background:rgba(255,255,255,.16)}
html[dir=rtl]{direction:rtl}
html[dir=rtl] body,html[dir=rtl] .disp,html[dir=rtl] h1,html[dir=rtl] h2,html[dir=rtl] h3,html[dir=rtl] h4,html[dir=rtl] p,html[dir=rtl] .btn,html[dir=rtl] nav.links a,html[dir=rtl] .kick,html[dir=rtl] .pillglow,html[dir=rtl] .sec-kick,html[dir=rtl] .chip,html[dir=rtl] .lead,html[dir=rtl] input,html[dir=rtl] select,html[dir=rtl] .statband b,html[dir=rtl] .fcard b,html[dir=rtl] .cert .ct-t{font-family:'Cairo','Montserrat',sans-serif !important}
html[dir=rtl] .hero3d h1{letter-spacing:0;line-height:1.15}
html[dir=rtl] h2.title,html[dir=rtl] .pagehead h1,html[dir=rtl] .ph h1{letter-spacing:0;line-height:1.25}
html[dir=rtl] .sec-kick::before{margin-left:0}
/* keep latin brand bits LTR */
html[dir=rtl] .dblogo,html[dir=rtl] .cobrand,html[dir=rtl] .floatchips,html[dir=rtl] .trust,html[dir=rtl] .cmeta,html[dir=rtl] .bdate,html[dir=rtl] .price{direction:ltr}
html[dir=rtl] .h3copy .floatchips{direction:rtl}
/* mirror specifics */
html[dir=rtl] .timeline{padding-left:0;padding-right:26px}
html[dir=rtl] .timeline::before{left:auto;right:7px}
html[dir=rtl] .timeline li::before{left:auto;right:-23px}
html[dir=rtl] .audience li{padding:5px 22px 5px 0}
html[dir=rtl] .audience li::before{left:auto;right:0}
html[dir=rtl] .fcard.fc1{left:auto;right:-26px}
html[dir=rtl] .fcard.fc2{right:auto;left:-20px}
html[dir=rtl] .mktcard::before{left:auto;right:0}
html[dir=rtl] .ccard::after,html[dir=rtl] .cc::after{left:auto;right:24px}
html[dir=rtl] nav.links a{border-bottom:1px solid rgba(255,255,255,.09)}
html[dir=rtl] .subnav .wrap{direction:rtl}

/* ===================== RTL / HEADER FIXES ===================== */
header .wrap.nav{max-width:1280px}
nav.links a{white-space:nowrap}
@media(min-width:861px){
  .nav{gap:14px}
  nav.links{gap:0;flex-wrap:nowrap}
  nav.links a{padding:8px 11px;font-size:14px}
  html[dir=rtl] nav.links a{font-size:14px;padding:8px 9px;font-family:'Cairo',sans-serif}
}
/* mobile header tidy */
@media(max-width:860px){
  .nav{height:64px}
  .brand img{height:26px}
  .navcta{gap:8px}
  .langbtn{padding:7px 9px;font-size:12px}
  .langbtn svg{width:14px;height:14px}
}
/* hero floating cards: stop overlap + don't mirror in RTL */
.gcard .live{max-width:56%;overflow:hidden}
.fcard.fc1{top:6px;left:-34px;right:auto}
.fcard.fc2{bottom:14px;right:-22px;left:auto}
html[dir=rtl] .fcard.fc1{left:-34px;right:auto}
html[dir=rtl] .fcard.fc2{right:-22px;left:auto}
@media(max-width:860px){
  .fcard.fc1{left:4px;top:4px}
  .fcard.fc2{right:4px;bottom:4px}
  html[dir=rtl] .fcard.fc1{left:auto;right:4px}
  html[dir=rtl] .fcard.fc2{right:auto;left:4px}
}
/* RTL: keep hero visual card content readable */
html[dir=rtl] .gcard-top,html[dir=rtl] .gcard-bot{direction:ltr}
/* RTL numbers/dates inline correctness inside Arabic paragraphs */
html[dir=rtl] .statband b,html[dir=rtl] .fcard b,html[dir=rtl] .kpi b,html[dir=rtl] .price{direction:ltr;unicode-bidi:isolate}

/* ================= SENIOR PASS: bold headers + infographic components ================= */
/* Bold dark page headers */
.pagehead,.ph{position:relative;overflow:hidden;color:#fff;border-bottom:none;padding:110px 0 66px;
  background:radial-gradient(900px 460px at 82% -20%,rgba(199,213,47,.20),transparent 55%),radial-gradient(700px 500px at 6% 120%,rgba(24,182,166,.18),transparent 55%),linear-gradient(160deg,#08131c,#0b1f2b 60%,#06131a)}
.pagehead::before,.ph::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:26px 26px;-webkit-mask:radial-gradient(600px 400px at 25% 30%,#000,transparent 72%);mask:radial-gradient(600px 400px at 25% 30%,#000,transparent 72%);opacity:.5}
.pagehead .wrap,.ph .wrap{position:relative;z-index:2}
.pagehead h1,.ph h1{color:#fff;font-size:clamp(38px,5.5vw,68px);letter-spacing:-2px;line-height:1;font-weight:700}
.pagehead p,.ph p{color:#aebfc9;font-size:18px;max-width:640px;margin-top:14px}
.pagehead .peyebrow{display:inline-flex;align-items:center;gap:9px;background:rgba(199,213,47,.10);border:1px solid rgba(199,213,47,.35);color:#eaf3c8;font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:7px 13px;border-radius:999px;margin-bottom:16px}
.pagehead .phmark,.ph .phmark{position:absolute;right:-40px;bottom:-40px;width:280px;opacity:.06;z-index:1}
html[dir=rtl] .pagehead .phmark{right:auto;left:-40px}
.subnav{top:74px;background:#fff;box-shadow:inset 0 -1px 0 var(--line)}
/* Infographic: stat rings */
.rings{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:760px){.rings{grid-template-columns:1fr 1fr}}
.ring{text-align:center}
.ring .dial{--p:75;width:120px;height:120px;border-radius:50%;margin:0 auto 12px;display:grid;place-items:center;
  background:conic-gradient(var(--lime) calc(var(--p)*1%),#e9ece0 0);position:relative}
.ring .dial::before{content:"";position:absolute;inset:10px;border-radius:50%;background:#fff}
.ring .dial b{position:relative;font-family:'Clash Display',sans-serif;font-size:26px;color:var(--navy);font-weight:800}
.ring span{font-size:13px;color:var(--muted);font-weight:600}
/* Gradient feature cards */
.gfeat{border-radius:22px;padding:30px;color:#fff;position:relative;overflow:hidden;min-height:200px;display:flex;flex-direction:column;justify-content:flex-end}
.gfeat::after{content:"";position:absolute;right:-40px;top:-40px;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18),transparent 70%)}
.gfeat.g-navy{background:linear-gradient(150deg,#123a3a,#0f2e46)}
.gfeat.g-lime{background:linear-gradient(150deg,#7fae2a,#516f14);color:#0b1f14}
.gfeat .gi{font-size:30px;position:absolute;top:26px;left:30px}
html[dir=rtl] .gfeat .gi{left:auto;right:30px}
.gfeat h3{font-size:22px;font-weight:800;font-family:'Clash Display',sans-serif;margin-bottom:6px}
.gfeat.g-lime h3{color:#0b1f14}
.gfeat p{font-size:14.5px;opacity:.92;max-width:420px}
/* Value tiles with big number + icon */
.vtile{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;position:relative;overflow:hidden;transition:.2s}
.vtile:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(15,46,70,.10);border-color:var(--lime)}
.vtile .vn{position:absolute;top:14px;right:18px;font-family:'Clash Display',sans-serif;font-size:44px;font-weight:800;color:#eef1ea;line-height:1}
html[dir=rtl] .vtile .vn{right:auto;left:18px}
.vtile .vi{width:52px;height:52px;border-radius:14px;background:rgba(199,213,47,.18);display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:14px}
.vtile h3{color:var(--navy);font-size:17px;margin-bottom:6px}.vtile p{font-size:13.5px;color:var(--muted)}
/* Connected stepper */
.stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;margin-top:34px}
@media(max-width:760px){.stepper{grid-template-columns:1fr}}
.step{position:relative;padding:0 18px;text-align:center}
.step .sc{width:64px;height:64px;border-radius:50%;margin:0 auto 14px;display:grid;place-items:center;font-size:26px;color:#fff;background:linear-gradient(150deg,#F08030,#c9631f);box-shadow:0 12px 28px rgba(240,128,48,.3);position:relative;z-index:2}
.stepper .step:not(:last-child)::after{content:"";position:absolute;top:32px;left:calc(50% + 40px);right:calc(-50% + 40px);height:2px;background:linear-gradient(90deg,#F08030,rgba(240,128,48,.2))}
@media(max-width:760px){.stepper .step::after{display:none}.step{margin-bottom:22px}}
.step h4{color:var(--navy);font-size:16px;margin-bottom:4px}.step p{font-size:13px;color:var(--muted)}
html[dir=rtl] .stepper .step:not(:last-child)::after{left:auto;right:calc(50% + 40px)}
/* Founder profile card */
.profcard{display:grid;grid-template-columns:300px 1fr;gap:0;border-radius:24px;overflow:hidden;border:1px solid var(--line);background:#fff;box-shadow:0 30px 60px rgba(15,46,70,.10)}
@media(max-width:760px){.profcard{grid-template-columns:1fr}}
.profcard .pph{position:relative;background:linear-gradient(160deg,#0f2e46,#123a3a);min-height:340px}
.profcard .pph img{width:100%;height:100%;object-fit:cover;object-position:top center;position:absolute;inset:0}
.profcard .pbody{padding:32px}
.profcard .pbody .role{color:var(--lime);font-weight:800;font-size:12px;letter-spacing:1.5px;text-transform:uppercase}
.profcard .pbody h2{color:var(--navy);font-size:30px;font-weight:800;font-family:'Clash Display',sans-serif;margin:6px 0 10px}
.credrow{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.cred{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:10px 14px;text-align:center;min-width:96px}
.cred b{display:block;color:var(--navy);font-family:'Clash Display',sans-serif;font-size:20px}.cred span{font-size:11px;color:var(--muted)}
/* Portfolio bento */
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:16px;margin-top:28px}
@media(max-width:860px){.bento{grid-template-columns:1fr 1fr;grid-auto-rows:170px}}
.bento .bt{position:relative;border-radius:18px;overflow:hidden;cursor:pointer;border:1px solid var(--line)}
.bento .bt img{width:100%;height:100%;object-fit:cover;transition:.4s}
.bento .bt:hover img{transform:scale(1.07)}
.bento .bt.big{grid-column:span 2;grid-row:span 2}
.bento .bt.wide{grid-column:span 2}
.bento .bt .ov{position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(4,20,26,.82));display:flex;flex-direction:column;justify-content:flex-end;padding:16px}
.bento .bt .ov b{color:#fff;font-size:15px}.bento .bt .ov span{color:var(--lime);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}
.bento .bt.ph2{display:flex;align-items:flex-end;padding:16px}
.bento .bt.ph2 .vplay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;background:#F08030;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 8px 22px rgba(240,128,48,.4)}
.bento .bt.ph2 b{position:relative;z-index:2;color:#fff}

/* Header → on-brand Midnight Navy (was grey) */
header{background:rgba(15,46,70,.88);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 -1px 0 rgba(199,213,47,.18)}
@media(max-width:860px){header{background:#0F2E46;backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Gallery tiles with real images */
.gtile{overflow:hidden}
.gtile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.4s}
.gtile:hover img{transform:scale(1.06)}
.gtile::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(transparent 45%,rgba(4,20,26,.82))}
.gtile b{position:relative;z-index:2}

/* Enhanced footer */
.foot .fcta{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding-bottom:30px;margin-bottom:30px;border-bottom:1px solid rgba(255,255,255,.12)}
.foot .fcta h2{font-family:'Clash Display','Montserrat',sans-serif;color:#fff;font-size:clamp(26px,3.4vw,40px);font-weight:800;letter-spacing:-1px;line-height:1.05;margin-top:6px}
.foot .fcta h2 span{color:var(--lime)}
.fcols{grid-template-columns:2fr 1fr 1fr 1fr}
@media(max-width:680px){.fcols{grid-template-columns:1fr 1fr}}
.fsoc{display:flex;gap:10px;margin-top:16px}
.fsoc a{width:38px;height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;color:#cfe0d0;font-weight:800;transition:.15s;padding:0}
.fsoc a:hover{background:var(--lime);color:var(--navy);border-color:var(--lime);transform:translateY(-2px)}
html[dir=rtl] .foot .fcta{flex-direction:row}

/* Blog thumb illustrative icon */
.bthumb{overflow:hidden}
.bthumb .bicon{position:absolute;right:12px;top:8px;font-size:56px;opacity:.16;z-index:0;line-height:1;filter:grayscale(.2)}
html[dir=rtl] .bthumb .bicon{right:auto;left:12px}
.bthumb span{z-index:2}

/* ===================== BRAND LINE ICONS (replace emoji) ===================== */
.ci{width:1em;height:1em;display:inline-block;vertical-align:-.14em;flex:none}
.ic .ci,.vi .ci{width:26px;height:26px;color:var(--navy)}
.gi .ci{width:30px;height:30px;color:#fff}
.gfeat.g-lime .gi .ci{color:#0b1f14}
.sc .ci{width:26px;height:26px;color:#fff}
.mktcard .ic .ci{color:var(--db-purple)}
h3 .ci,h4 .ci{width:1.05em;height:1.05em;color:var(--navy);margin-inline-end:6px;vertical-align:-.16em}
.btn .ci{width:1.05em;height:1.05em;margin-inline-end:4px;vertical-align:-.14em}
.gcard-bot .ci,.cmeta .ci{width:14px;height:14px;vertical-align:-.15em;margin-inline-end:4px}
.bthumb .bicon .ci{width:58px;height:58px;color:#fff}
.gfeat h3 .ci{color:inherit}
/* footer social icons */
.fsoc a{width:40px;height:40px} .fsoc a svg{width:18px;height:18px}

/* Fix: footer social icons (beat footer.foot a specificity) */
footer.foot .fsoc{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}
footer.foot .fsoc a{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.04);color:#cfe0d0;transition:.15s}
footer.foot .fsoc a:hover{background:var(--lime);color:var(--navy);border-color:var(--lime);transform:translateY(-2px)}
footer.foot .fsoc a svg{width:19px;height:19px;display:block}

/* Branded images in course cards + blog thumbs */
.ctop.img{background-size:cover;background-position:center;height:150px;position:relative}
.ctop.img::before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(8,19,28,.55),rgba(8,19,28,.15))}
.ctop.img .cbadge{position:relative;z-index:2}
.ccard:hover .ctop.img{filter:saturate(1.05)}
.bthumb.img{background-size:cover;background-position:center}
.bthumb.img::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(8,19,28,.45),rgba(8,19,28,.55))}
.bthumb.img span{position:relative;z-index:2}

/* ===================== WORDPRESS COMPAT OVERRIDES ===================== */
/* The original site was an SPA that toggled .page visibility. In WordPress each
   page is a real URL and <body> receives a "page" class, so neutralise the SPA
   show/hide rules to avoid hiding real content. */
.page{display:block !important;animation:none !important}
.page.active{display:block !important}
/* WP admin bar spacing for the sticky header */
body.admin-bar header{top:32px}
@media(max-width:782px){body.admin-bar header{top:46px}}
/* Elementor container should not fight the design system max-width where the
   theme wrap is used inside a full-width section. */
.yanmu .wrap{margin-left:auto;margin-right:auto}

/* ===== v2: accessibility helpers ===== */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:-9999px;z-index:100000;top:8px;left:8px;background:var(--lime,#C7D52F);color:#0b1f14;padding:10px 16px;border-radius:999px;font-weight:800;transform:translateY(-200%);transition:transform .2s}
.skip-link:focus{transform:translateY(0);left:8px;outline:2px solid #0F2E46}
:focus-visible{outline:2px solid var(--lime,#C7D52F);outline-offset:2px}

/* ===================================================================
   v2.2 — MOBILE & HEADER/FOOTER/PRELOADER FIXES
   =================================================================== */
html,body{max-width:100%;overflow-x:hidden}

/* Preloader: use the crisp wordmark logo, sized responsively */
#preloader .pl-markwrap{width:auto;height:auto}
#preloader .pl-img{width:min(210px,54vw);height:auto;filter:drop-shadow(0 6px 16px rgba(0,0,0,.35))}

@media(max-width:860px){
  /* Always show the burger; make the nav a clean full-screen overlay */
  header .burger,.burger{display:block !important}
  header nav.links{position:fixed;inset:0;z-index:110;display:flex;flex-direction:column;
    align-items:center;justify-content:center;gap:0;padding:88px 24px 40px;background:#0F2E46;
    transform:translateY(-6px);opacity:0;visibility:hidden;transition:opacity .3s ease,transform .3s ease}
  header nav.links.open{transform:none;opacity:1;visibility:visible}
  header nav.links a{color:#fff !important;font-family:'Clash Display','Montserrat',sans-serif;
    font-size:26px;font-weight:600;width:100%;max-width:420px;text-align:center;padding:13px 8px;
    border-bottom:1px solid rgba(255,255,255,.09);background:transparent !important;border-radius:0;box-shadow:none}
  header nav.links a.active{color:var(--lime) !important}
  .navcta .btn.login{display:none}
  body.menuon{overflow:hidden}

  /* Footer: stack the CTA band and columns cleanly */
  footer.foot .fcta{flex-direction:column;align-items:flex-start;gap:16px;text-align:left}
  footer.foot .fcta .row{width:100%;display:flex;gap:10px}
  footer.foot .fcta .row .btn{flex:1;text-align:center;justify-content:center}
  .fcols{grid-template-columns:1fr 1fr !important;gap:22px}
  .fbar{flex-direction:column;text-align:center;gap:6px}
}
@media(max-width:520px){
  .fcols{grid-template-columns:1fr !important}
  footer.foot .fcta .row{flex-direction:column}
  footer.foot .fcta .row .btn{width:100%}
}
