*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}body.cp-dash{font-family:system-ui,sans-serif;background:#f1f5f9;color:#0f172a;line-height:1.6;overflow-x:hidden}
img{max-width:100%;display:block}a{color:#65a30d}
.cp-layout{display:grid;grid-template-columns:220px 1fr;min-height:100vh}
.cp-rail{background:#1e293b;color:#e2e8f0;padding:1.25rem 1rem;display:flex;flex-direction:column;gap:1.5rem;position:sticky;top:0;height:100vh}
.cp-brand{font-weight:800;color:#a3e635;text-decoration:none;font-size:1.05rem}
.cp-nav{display:flex;flex-direction:column;gap:.65rem}.cp-nav a{color:#cbd5e1;text-decoration:none;font-size:.88rem;font-weight:600}
.cp-burger{display:none}
.cp-main{padding:1.25rem}
.cp-home{position:relative;border-radius:16px;overflow:hidden;margin-bottom:1.5rem;min-height:320px;display:grid;align-items:end}
.cp-hero-img{position:absolute;inset:0}.cp-hero-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.3;z-index:0}
.cp-home-copy{position:relative;z-index:2;padding:2rem;background:linear-gradient(180deg,transparent,rgba(15,23,42,.85));color:#fff}
.cp-home h1{font-size:clamp(1.8rem,4vw,2.6rem);margin-bottom:.5rem}
.cp-lex{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;margin-bottom:1.5rem}
.cp-lex h2{margin-bottom:.4rem;color:#334155}
.cp-lex p{font-size:.88rem;color:#64748b;margin-bottom:.75rem}
.fin-lex{display:flex;flex-wrap:wrap;gap:.4rem}
.fin-lex span{background:#f7fee7;border:1px solid #84cc16;color:#3f6212;padding:.3rem .65rem;border-radius:999px;font-size:.75rem;font-weight:700}
.cp-widgets h2{margin-bottom:1rem;color:#334155}
.cp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.cp-grid article{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px rgba(15,23,42,.06)}
.cp-grid img{height:140px;width:100%;object-fit:cover}
.cp-grid h3{padding:.75rem 1rem 0;font-size:1rem}.cp-grid p{padding:0 1rem 1rem;font-size:.88rem;color:#64748b}
.cp-contact{max-width:480px;margin-top:2rem;padding-bottom:2rem}
.site-form{display:grid;gap:.55rem;margin-top:1rem}
.site-form label{font-size:.82rem;font-weight:600;color:#475569}
.site-form input,.site-form select,.site-form textarea{padding:.55rem;border:1px solid #cbd5e1;border-radius:8px;font:inherit}
.site-form button{padding:.7rem;background:#65a30d;color:#fff;border:0;border-radius:8px;font-weight:700;cursor:pointer}
.cp-foot{padding:1.25rem 1.25rem 2rem;font-size:.78rem;background:#1e293b;color:#94a3b8;text-align:center}
.cp-foot a{color:#a3e635}
.site-legal-note{max-width:42rem;margin:.75rem auto 0;font-size:.72rem;color:#64748b;line-height:1.5}
.sub-page{padding:4rem 1.25rem;max-width:680px;margin:0 auto}
.cp-backdrop{display:none}
.ck-banner{position:fixed;bottom:1rem;left:1rem;right:1rem;max-width:420px;margin:0 auto;background:#1e293b;color:#e2e8f0;padding:1rem;display:none;z-index:200;border-radius:10px;align-items:center;justify-content:space-between;gap:1rem;font-size:.85rem}
.ck-banner.on{display:flex}.ck-banner button{background:#65a30d;color:#fff;border:0;padding:.5rem 1rem;border-radius:8px;cursor:pointer}
.cp-hero-img video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.cp-hero-img img{opacity:.35}
.cp-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1.75rem}
.cp-kpis article{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1rem;text-align:center}
.cp-kpis strong{display:block;font-size:1.8rem;color:#65a30d;line-height:1.1}
.cp-kpis span{font-size:.75rem;color:#64748b}
.cp-split{display:grid;grid-template-columns:1.1fr .9fr;gap:1.25rem;align-items:center;margin:2rem 0}
.cp-split-vid{border-radius:16px;overflow:hidden;min-height:220px}
.cp-split-vid video{width:100%;height:280px;object-fit:cover;display:block}
.cp-split-copy ul{margin:.75rem 0 0 1.1rem;color:#475569}
.cp-feed{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;margin:1.5rem 0 2rem}
.cp-feed ol{list-style:none}.cp-feed li{display:flex;gap:.75rem;padding:.45rem 0;border-bottom:1px solid #f1f5f9;font-size:.9rem}
.cp-feed time{color:#65a30d;font-weight:700;font-variant-numeric:tabular-nums}
@media(max-width:900px){.cp-layout{grid-template-columns:1fr}.cp-rail{position:fixed;inset:0 auto 0 0;width:min(260px,85vw);z-index:50;transform:translateX(-100%);transition:.25s;height:100vh}
.cp-burger{display:block;position:fixed;top:1rem;left:1rem;z-index:60;width:44px;height:44px;border:0;background:#1e293b;cursor:pointer}
.cp-burger span{display:block;width:18px;height:2px;background:#a3e635;margin:0 auto;box-shadow:0 -5px 0 #a3e635,0 5px 0 #a3e635}
body.nav-open .cp-rail{transform:translateX(0)}body.nav-open .cp-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:45}
.cp-main{padding-top:4rem}.cp-grid{grid-template-columns:1fr}.cp-kpis{grid-template-columns:1fr 1fr}.cp-split{grid-template-columns:1fr}}

.kb-stage{position:relative;overflow:hidden;width:100%;height:100%;min-height:220px;background:#0a0a0a}
.kb-layer{position:absolute;inset:-14%;background-size:cover;background-position:center;will-change:transform,opacity}
.kb-a{animation:kbA var(--kb-d,22s) ease-in-out infinite}
.kb-b{animation:kbB var(--kb-d,22s) ease-in-out infinite}
@keyframes kbA{0%{opacity:1;transform:scale(1) translate(0,0)}40%{opacity:1;transform:scale(1.1) translate(-2%,1%)}50%,100%{opacity:0}}
@keyframes kbB{0%,40%{opacity:0}50%{opacity:1;transform:scale(1.05) translate(2%,-1%)}90%{opacity:1;transform:scale(1.16) translate(-1%,2%)}100%{opacity:0}}
.kb-grain{position:absolute;inset:0;pointer-events:none;opacity:.14;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}
.fl-hero-bg .kb-stage,.cp-hero-img .kb-stage,.nx-bg .kb-stage{position:absolute;inset:0;min-height:100%}
.fl-film-frame .kb-stage,.tk-crt .kb-stage,.tk-clip .kb-stage,.cp-split-vid .kb-stage,.ox-lead-vid .kb-stage,.ox-photo .kb-stage,.nx-why-vid .kb-stage,.pf-film .kb-stage,.pf-mod-vid .kb-stage{min-height:280px}
.pf-film .kb-stage{min-height:50vh}
@media(prefers-reduced-motion:reduce){.kb-a,.kb-b{animation:none!important}.kb-a{opacity:1;inset:0;transform:none}.kb-b{display:none}}

.fl-hero-bg > img, .cp-hero-img > img, .nx-bg > img { display:none }
.cp-hero-img > img.loop-fallback{display:block;z-index:0}
.cp-hero-img .loop-vid{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover}
.cp-split-vid .loop-vid{width:100%;height:280px;object-fit:cover;display:block}
@media(prefers-reduced-motion:reduce){.loop-vid{display:none!important}}
.sub-page h1{margin-bottom:.75rem}
.sub-page h2{margin:1.4rem 0 .4rem;font-size:1.15rem}
.sub-page p{margin:.5rem 0}
.b-burger{position:relative}
.b-burger::before{content:"";display:block;width:18px;height:2px;background:currentColor;box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor;margin:0 auto}
/* rwd-2026-08-12 */
html{overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}
.site-form input,.site-form select,.site-form textarea{font-size:16px;max-width:100%;width:100%}
.site-form button,.ck-banner button{min-height:44px}
.cp-nav a{display:inline-flex;align-items:center;min-height:44px}
.cp-main{padding-left:max(1.25rem,env(safe-area-inset-left));padding-right:max(1.25rem,env(safe-area-inset-right))}
.ck-banner{left:max(1rem,env(safe-area-inset-left));right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom))}
@media(max-width:1100px) and (min-width:901px){.cp-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){
  .cp-split-vid video,.cp-split-vid .loop-vid{height:200px}
  .cp-home{min-height:240px}
  .cp-home-copy{padding:1.25rem}
  .cp-burger{top:max(.75rem,env(safe-area-inset-top));left:max(.75rem,env(safe-area-inset-left))}
  .cp-kpis strong{font-size:1.4rem}
}
