/*
 * Lucky premium visual language, shared by Lucky-Web and LuckyWork.
 * Explicit body scopes keep product demos, forms and existing JS independent.
 * No external fonts, JS or network dependencies. The four-leaf icon remains the brand.
 */
body.lw-premium-site,
body.lw-premium-work{
  --lw-accent:#5af59a;
  --lw-accent-strong:#42e785;
  --lw-accent-light:#c5ffdd;
  --lw-ink:#f4fff8;
  --lw-muted:#b3cdbf;
  --lw-stroke:rgba(126,248,165,.20);
  --lw-surface:#0b1912;
  --lw-surface-deep:#07100d;
  --lw-glow:0 0 0 1px rgba(83,246,145,.13),0 18px 56px rgba(0,0,0,.36),0 0 38px rgba(56,225,112,.08);
  color-scheme:dark;
  color:var(--lw-ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  background:radial-gradient(ellipse 70% 650px at 52% -180px,rgba(41,161,87,.20),transparent 70%),#030907;
  -webkit-font-smoothing:antialiased;
}
body.lw-premium-site :is(a,button,input,select,textarea):focus-visible,
body.lw-premium-work :is(a,button,input,select,textarea):focus-visible{
  outline:2px solid #93ffc1;
  outline-offset:4px;
}
body.lw-premium-site .shell{
  border-color:rgba(105,239,149,.20);
  background:linear-gradient(180deg,#0c2016,#09180f 45%,#0a1912);
  box-shadow:0 42px 130px rgba(0,0,0,.63),0 0 76px rgba(57,199,105,.06);
}
body.lw-premium-site .header{
  border-bottom:1px solid rgba(123,246,161,.19);
  background:rgba(4,13,9,.91);
  -webkit-backdrop-filter:blur(22px) saturate(130%);
  backdrop-filter:blur(22px) saturate(130%);
  box-shadow:0 15px 35px rgba(0,0,0,.17);
}
body.lw-premium-site .nav-links a{
  transition:color .2s ease,text-shadow .2s ease;
}
body.lw-premium-site .nav-links a:hover,
body.lw-premium-site .nav-links a:focus-visible{
  color:#9effc5;
  text-shadow:0 0 17px rgba(108,255,164,.27);
}
body.lw-premium-site .lang-switch{
  border-color:rgba(105,238,149,.22);
  background:rgba(5,23,12,.65);
}
body.lw-premium-site .hero{
  isolation:isolate;
  position:relative;
  overflow:hidden;
  padding-block:clamp(54px,7vw,114px) clamp(44px,5.8vw,80px);
  border-bottom:1px solid var(--lw-stroke);
  background:radial-gradient(ellipse 62% 92% at 86% 15%,rgba(42,164,97,.25),transparent 80%),
    radial-gradient(ellipse 60% 60% at 1% 100%,rgba(25,117,78,.13),transparent 70%),
    linear-gradient(135deg,#10281c,#0b1f16 66%,#091a12);
}
body.lw-premium-site .hero::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.19;
  background-image:linear-gradient(rgba(110,237,149,.14) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(110,237,149,.14) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:linear-gradient(to right,transparent 15%,#000 85%);
  mask-image:linear-gradient(to right,transparent 15%,#000 85%);
}
body.lw-premium-site .hero-grid{gap:clamp(22px,4.5vw,75px);align-items:center}
body.lw-premium-site .hero h1{
  font-size:clamp(44px,5.6vw,78px);
  line-height:1.01;
  letter-spacing:-.075em;
  color:#f6fff8;
  text-wrap:balance;
}
body.lw-premium-site .hero h1 span,
body.lw-premium-site .lw-software-promo h2 span{
  color:#6affaa;
  text-shadow:0 0 38px rgba(72,241,127,.19);
}
body.lw-premium-site .hero .lead{
  color:#c6d9cc;
  font-size:clamp(17px,1.6vw,23px);
  line-height:1.6;
}
body.lw-premium-site .eyebrow{
  color:#87ffb3;
  font-size:12px;
  letter-spacing:.2em;
}
body.lw-premium-site .hero-visual{
  min-width:0;
  padding:14px;
  border:1px solid rgba(113,251,167,.21);
  border-radius:28px;
  background:radial-gradient(circle at 65% 7%,rgba(105,255,172,.16),transparent 60%),rgba(10,29,19,.58);
  box-shadow:var(--lw-glow),inset 0 1px 0 rgba(255,255,255,.08);
}
body.lw-premium-site .hero-visual img{
  display:block;
  max-width:100%;
  height:auto;
  border-radius:18px;
  filter:saturate(1.08) contrast(1.02);
}
body.lw-premium-site .hero-visual .note-scribble{
  color:#ebfff3;
  text-shadow:0 2px 12px #06140c;
}
body.lw-premium-site :is(.cta:not(.secondary),.header-cta){
  color:#06200f;
  border:1px solid #a6ffcb;
  border-radius:13px;
  background:linear-gradient(120deg,#81ffb5,#41e987 72%,#5af89b);
  box-shadow:0 12px 30px rgba(58,233,119,.18),inset 0 1px 0 rgba(255,255,255,.52);
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
body.lw-premium-site :is(.cta:not(.secondary),.header-cta):hover{
  transform:translateY(-2px);
  filter:brightness(1.04);
  box-shadow:0 16px 38px rgba(58,233,119,.26),0 0 28px rgba(82,255,154,.19);
}
body.lw-premium-site .cta.secondary{
  border:1px solid rgba(119,252,161,.32);
  border-radius:13px;
  color:#e3ffee;
  background:rgba(13,45,26,.38);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
body.lw-premium-site .section:not(.lw-software-promo){
  border-bottom-color:rgba(118,245,156,.10);
}
body.lw-premium-site :is(.card,.project,.lw39-card,.price-card){
  border-color:rgba(120,246,164,.17);
  background:linear-gradient(150deg,rgba(18,40,26,.96),rgba(8,18,13,.98) 67%);
  box-shadow:inset 0 1px 0 rgba(183,255,209,.04),0 12px 42px rgba(0,0,0,.17);
}
body.lw-premium-site :is(.card,.project,.lw39-card,.price-card):hover{
  border-color:rgba(113,249,165,.42);
  box-shadow:inset 0 1px 0 rgba(183,255,209,.07),0 18px 46px rgba(0,0,0,.26),0 0 29px rgba(42,210,101,.08);
}
body.lw-premium-site :is(.service-card,.problem-wrap .card) .icon{
  color:#78ffae;
  border-color:rgba(109,251,165,.22);
  background:linear-gradient(145deg,rgba(94,242,139,.13),rgba(94,242,139,.025));
}
body.lw-premium-site #portfolio .project{
  overflow:hidden;
  border-radius:19px;
}
body.lw-premium-site #portfolio .project-body{
  background:linear-gradient(180deg,rgba(8,21,14,.98),rgba(6,14,10,.98));
}
body.lw-premium-site .lw-software-promo{
  border-block:1px solid rgba(101,247,159,.20);
  background:radial-gradient(ellipse 45% 70% at 87% 19%,rgba(55,205,116,.20),transparent 75%),
    linear-gradient(148deg,#081b10,#06120d 60%,#07110c);
}
body.lw-premium-site .lw-promo-dashboard{
  border:1px solid rgba(114,252,165,.26);
  border-radius:22px;
  background:linear-gradient(155deg,rgba(18,49,30,.95),rgba(7,18,13,.99));
  box-shadow:var(--lw-glow);
}
body.lw-premium-site .luckywork-promo-figure{
  border-color:rgba(125,248,159,.36);
  border-radius:23px;
  box-shadow:var(--lw-glow);
}
body.lw-premium-site .luckywork-promo-figure img{display:block;width:100%;height:auto;object-fit:contain}
body.lw-premium-site #cenik .lw39-card.is-active{
  border-color:#62f49e;
  background:linear-gradient(157deg,#173821,#08190f 82%);
  box-shadow:0 0 0 1px rgba(93,248,146,.20),0 0 45px rgba(81,233,124,.15),0 22px 50px rgba(0,0,0,.34);
}
body.lw-premium-site #cenik .lw39-head h2 span{color:#79ffad}
body.lw-premium-site .footer-cta{
  background:radial-gradient(ellipse at 82% 30%,rgba(62,231,115,.19),transparent 50%),#081810;
}
/* Same visual language for the dedicated LuckyWork software landing. */
body.lw-premium-work{
  --green:var(--lw-accent);
  --ink:var(--lw-ink);
  --mut:var(--lw-muted);
  --line:var(--lw-stroke);
  background:radial-gradient(ellipse 65% 600px at 50% -110px,rgba(50,221,113,.15),transparent 76%),#030907;
}
body.lw-premium-work .wrap{max-width:1280px}
body.lw-premium-work .premium-work-nav{
  display:flex;align-items:center;gap:24px;min-height:86px;height:auto;
  padding-block:16px;border-bottom:1px solid var(--lw-stroke);
}
body.lw-premium-work .premium-work-nav .brand{
  display:flex;align-items:center;gap:13px;white-space:nowrap;
  font-size:clamp(19px,2vw,27px);font-weight:900;letter-spacing:-.05em;
}
body.lw-premium-work .premium-work-nav .brand img{
  width:37px;height:37px;filter:drop-shadow(0 0 12px rgba(65,247,136,.28));
}
body.lw-premium-work .premium-work-links{
  display:flex;align-items:center;flex-wrap:wrap;gap:clamp(12px,2.2vw,32px);
  margin-left:auto;font-size:14px;font-weight:680;color:#c2dbcc;
}
body.lw-premium-work .premium-work-links a:hover{color:#90ffc2}
body.lw-premium-work .premium-work-nav .nav-cta{
  flex:none;display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:10px 16px;border-radius:12px;
  border:1px solid rgba(135,255,180,.55);
  color:#082014;background:linear-gradient(120deg,#8bffc1,#48ed91);
  font-size:13px;font-weight:850;white-space:nowrap;
  box-shadow:0 12px 32px rgba(55,213,113,.15);
}
body.lw-premium-work .hero{
  max-width:none;padding:clamp(54px,7vw,94px) 0 40px;
  border-bottom:1px solid rgba(125,250,167,.12);
}
body.lw-premium-work .hero h1{
  max-width:1000px;font-size:clamp(43px,6.8vw,86px);
  line-height:1.01;letter-spacing:-.074em;text-wrap:balance;
}
body.lw-premium-work .hero h1 em{color:#70ffad;text-shadow:0 0 45px rgba(67,238,128,.17)}
body.lw-premium-work .hero .lead{max-width:760px;color:#bbd2c3;font-size:clamp(17px,1.6vw,21px)}
body.lw-premium-work .hero .stage{
  padding:6px 11px;border:1px solid rgba(245,208,131,.32);background:rgba(148,116,31,.08);
}
body.lw-premium-work .btn{
  min-height:46px;display:inline-flex;align-items:center;justify-content:center;
  padding:12px 18px;border:1px solid rgba(123,252,169,.26);
  border-radius:12px;background:rgba(14,44,26,.51);color:#d8fce6;
  font-size:14px;font-weight:760;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
body.lw-premium-work .btn:hover{
  transform:translateY(-2px);border-color:rgba(134,255,177,.65);
  box-shadow:0 0 25px rgba(50,227,120,.12);
}
body.lw-premium-work .btn.primary{
  background:linear-gradient(120deg,#8affbd,#49ed90);
  border-color:#b0ffcf;color:#07200f;
  box-shadow:0 13px 30px rgba(47,218,102,.19);
}
body.lw-premium-work #promo{
  border-radius:25px;border:1px solid rgba(115,251,164,.32);
  background:linear-gradient(125deg,#0c2416,#06110c);
  box-shadow:var(--lw-glow);
  margin-block:22px 54px;
}
body.lw-premium-work #promo img{display:block;width:100%;height:auto;object-fit:contain}
body.lw-premium-work #promo figcaption{color:#adcdb9}
body.lw-premium-work .ecosystem-story{
  background:radial-gradient(ellipse at 70% 10%,rgba(55,200,107,.15),transparent 48%),
    linear-gradient(145deg,#0d2215,#06120d 70%);
  border-color:rgba(129,251,169,.29);box-shadow:var(--lw-glow);
}
body.lw-premium-work .ecosystem-story__core{
  border-color:rgba(120,255,168,.52);
  background:radial-gradient(ellipse at 70% 15%,rgba(72,223,115,.16),transparent 64%),#0d2b17;
}
body.lw-premium-work :is(.ecosystem-story__module,.ecosystem-story__step,.principle,.card,.lw-core-option,.lw-module){
  border-color:rgba(119,242,160,.18);
  border-radius:18px;
  background:linear-gradient(155deg,rgba(19,43,27,.95),rgba(8,20,13,.97));
  box-shadow:inset 0 1px 0 rgba(168,255,199,.05),0 12px 30px rgba(0,0,0,.15);
}
body.lw-premium-work :is(.ecosystem-story__module,.ecosystem-story__step,.principle,.card):hover{
  border-color:rgba(124,250,169,.44);
  box-shadow:0 18px 38px rgba(0,0,0,.25),0 0 28px rgba(65,228,116,.09);
}
body.lw-premium-work #moduly .card{min-height:285px}
body.lw-premium-work #moduly .card .num{color:#9dfac0}
body.lw-premium-work #moduly .card a{color:#84ffb7}
body.lw-premium-work .lw-pricing{
  border-color:rgba(112,249,162,.24);
  border-radius:24px;
  background:radial-gradient(ellipse at 81% 0%,rgba(54,227,123,.17),transparent 54%),
    linear-gradient(150deg,#0a1e13,#06110c);
}
body.lw-premium-work .lw-summary{
  border-color:rgba(120,248,170,.45);
  border-radius:21px;background:linear-gradient(158deg,#132f1e,#07180f);
  box-shadow:var(--lw-glow);
}
body.lw-premium-work .lw-core-option:has(input:checked),
body.lw-premium-work .lw-module:has(input:checked){
  border-color:#74f7a3;background:rgba(35,147,72,.19);
}
body.lw-premium-work .cta:not(.btn){
  border-color:rgba(113,246,168,.35);
  border-radius:20px;background:linear-gradient(145deg,#153820,#08190e);
}
body.lw-premium-work footer{border-top-color:rgba(112,249,163,.16)}
@media(max-width:900px){
  body.lw-premium-work .premium-work-nav{gap:13px;flex-wrap:wrap}
  body.lw-premium-work .premium-work-links{order:3;width:100%;margin-left:0;justify-content:space-between;gap:12px;padding-top:6px}
  body.lw-premium-work .premium-work-nav .nav-cta{margin-left:auto}
}
@media(max-width:720px){
  body.lw-premium-site .hero{padding:35px 0 24px}
  body.lw-premium-site .hero h1{font-size:clamp(36px,9vw,54px)}
  body.lw-premium-site .hero .lead{font-size:17px;line-height:1.5}
  body.lw-premium-site .hero-visual{margin-top:14px;padding:8px;border-radius:18px;min-height:0}
  body.lw-premium-site .hero-visual img{max-width:100%;border-radius:12px}
  body.lw-premium-site .hero::before{background-size:42px 42px}
  body.lw-premium-site .luckywork-promo-figure{border-radius:17px}
  body.lw-premium-work .wrap{padding-inline:17px}
  body.lw-premium-work .hero{padding:45px 0 26px}
  body.lw-premium-work .hero h1{font-size:clamp(40px,10vw,58px)}
  body.lw-premium-work .premium-work-links{font-size:12px}
  body.lw-premium-work .premium-work-nav .nav-cta{min-height:40px;padding:9px 12px;font-size:12px}
  body.lw-premium-work #promo{border-radius:18px;margin-bottom:35px}
  body.lw-premium-work #moduly .card{min-height:0}
  body.lw-premium-work .lw-summary{position:static}
}
@media(max-width:420px){
  body.lw-premium-work .premium-work-nav .brand{font-size:20px}
  body.lw-premium-work .premium-work-nav .brand img{width:29px;height:29px}
  body.lw-premium-work .premium-work-links{justify-content:flex-start;gap:14px}
  body.lw-premium-work .hero .actions .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
  body.lw-premium-site :is(.cta,.nav-links a),
  body.lw-premium-work .btn{transition:none!important}
  body.lw-premium-site .cta:hover,
  body.lw-premium-work .btn:hover{transform:none!important}
}
