/* Nova Elementor Suite - lightweight premium UI */
:root{--nes-radius:18px;--nes-shadow:0 18px 50px rgba(2,8,23,.12);--nes-shadow-hover:0 26px 80px rgba(2,8,23,.18);--nes-border:rgba(148,163,184,.35);--nes-bg:rgba(255,255,255,.75);--nes-blur:blur(10px);}
.nes-wrap *{box-sizing:border-box;}
.nes-btn{display:inline-flex;align-items:center;gap:.55rem;padding:.9rem 1.15rem;border-radius:999px;border:1px solid var(--nes-border);text-decoration:none;font-weight:600;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;will-change:transform;}
.nes-btn:hover{transform:translateY(-2px);box-shadow:var(--nes-shadow);filter:saturate(1.05);}
.nes-btn.nes-primary{border-color:transparent;color:#fff;}
.nes-hero{position:relative;overflow:hidden;border-radius:calc(var(--nes-radius) + 8px);border:1px solid var(--nes-border);background:var(--nes-bg);backdrop-filter:var(--nes-blur);box-shadow:var(--nes-shadow);}
.nes-hero__inner{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(18px,3vw,44px);padding:clamp(22px,4vw,52px);align-items:center;}
.nes-hero__kicker{display:inline-flex;gap:.5rem;align-items:center;font-weight:600;opacity:.9;}
.nes-hero__title{font-size:clamp(28px,3.4vw,54px);line-height:1.06;margin:.55rem 0;}
.nes-hero__sub{font-size:clamp(15px,1.25vw,18px);opacity:.88;max-width:60ch;}
.nes-hero__cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.2rem;}
.nes-hero__media{position:relative;border-radius:var(--nes-radius);overflow:hidden;border:1px solid var(--nes-border);min-height:260px;box-shadow:0 18px 60px rgba(2,8,23,.10);transform:translateZ(0);}
.nes-hero__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease;}
.nes-hero:hover .nes-hero__media img{transform:scale(1.06);}
.nes-hero__glow{position:absolute;inset:-120px;background:radial-gradient(circle at 20% 15%, rgba(99,102,241,.35), transparent 55%),radial-gradient(circle at 80% 40%, rgba(16,185,129,.22), transparent 60%),radial-gradient(circle at 45% 90%, rgba(236,72,153,.18), transparent 55%);filter:blur(22px);pointer-events:none;}
.nes-grid{display:grid;gap:clamp(14px,2.1vw,22px);}
.nes-grid.nes-cols-3{grid-template-columns:repeat(3,1fr);}
.nes-grid.nes-cols-4{grid-template-columns:repeat(4,1fr);}
.nes-card{position:relative;border-radius:var(--nes-radius);border:1px solid var(--nes-border);background:var(--nes-bg);backdrop-filter:var(--nes-blur);padding:20px;box-shadow:0 12px 40px rgba(2,8,23,.08);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;overflow:hidden;will-change:transform;}
.nes-card:hover{transform:translateY(-6px);box-shadow:var(--nes-shadow-hover);border-color:rgba(99,102,241,.38);}
.nes-card__icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;border:1px solid var(--nes-border);background:rgba(255,255,255,.55);margin-bottom:12px;}
.nes-card__title{font-size:18px;margin:0 0 6px;}
.nes-card__text{margin:0;opacity:.86;}
.nes-card__arrow{position:absolute;right:16px;bottom:16px;width:38px;height:38px;border-radius:999px;display:grid;place-items:center;border:1px solid var(--nes-border);background:rgba(255,255,255,.55);transition:transform .22s ease;}
.nes-card:hover .nes-card__arrow{transform:translateY(-2px);}
.nes-faq{border-radius:var(--nes-radius);border:1px solid var(--nes-border);background:var(--nes-bg);backdrop-filter:var(--nes-blur);box-shadow:0 12px 40px rgba(2,8,23,.08);overflow:hidden;}
.nes-faq__item + .nes-faq__item{border-top:1px solid rgba(148,163,184,.28);}
.nes-faq__q{width:100%;text-align:left;padding:16px 18px;background:transparent;border:0;display:flex;justify-content:space-between;align-items:center;font-weight:700;cursor:pointer;}
.nes-faq__a{padding:0 18px 16px;display:none;opacity:.9;}
.nes-faq__item.is-open .nes-faq__a{display:block;}
.nes-faq__chev{transition:transform .2s ease;}
.nes-faq__item.is-open .nes-faq__chev{transform:rotate(180deg);}
@media(max-width:1024px){.nes-hero__inner{grid-template-columns:1fr;}.nes-grid.nes-cols-4{grid-template-columns:repeat(2,1fr);}.nes-grid.nes-cols-3{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.nes-grid.nes-cols-4,.nes-grid.nes-cols-3{grid-template-columns:1fr;}.nes-card{padding:18px;}}
