:root{
  --bg:#f2fbff;
  --bg-soft:#ecf8ff;
  --bg-alt:#effff3;
  --surface:rgba(255,255,255,.84);
  --surface-strong:rgba(255,255,255,.96);
  --text:#17304c;
  --muted:#5f7892;
  --line:rgba(38,88,142,.14);
  --line-strong:rgba(38,88,142,.20);
  --blue:#2092ff;
  --blue-deep:#1964ff;
  --cyan:#3de1ff;
  --green:#8ce62e;
  --green-deep:#45c66d;
  --shadow:0 24px 64px rgba(20,54,92,.14);
  --shadow-soft:0 16px 38px rgba(20,54,92,.09);
  --radius:30px;
  --radius-md:22px;
  --radius-sm:18px;
  --max:1240px;
  --header-h:94px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Inter',system-ui,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 8% 10%, rgba(33,146,255,.20), transparent 22%),
    radial-gradient(circle at 92% 10%, rgba(140,230,46,.18), transparent 22%),
    radial-gradient(circle at 82% 44%, rgba(61,225,255,.16), transparent 30%),
    radial-gradient(circle at 35% 72%, rgba(255,214,72,.10), transparent 24%),
    linear-gradient(180deg,#f8fcff 0%,#f3fbff 46%,#eefaf2 100%);
  padding-top:var(--header-h);
}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
section{scroll-margin-top:calc(var(--header-h) + 20px)}

.page-glow{
  position:fixed; inset:0; pointer-events:none; z-index:-1;
  background:
    radial-gradient(circle at 5% 5%, rgba(32,146,255,.16), transparent 18%),
    radial-gradient(circle at 95% 8%, rgba(140,230,46,.16), transparent 18%),
    radial-gradient(circle at 80% 80%, rgba(61,225,255,.10), transparent 20%);
}

.container{width:min(var(--max), calc(100% - 40px)); margin:0 auto}
.section{padding:74px 0; position:relative}
.section.alt{background:linear-gradient(180deg, rgba(245,251,255,.15), rgba(237,251,241,.58))}
.section.blue{
  color:#fff;
  background:
    radial-gradient(circle at 5% 5%, rgba(255,255,255,.12), transparent 18%),
    radial-gradient(circle at 95% 15%, rgba(140,230,46,.18), transparent 18%),
    linear-gradient(135deg, #1566ff 0%, #1b8cfc 46%, #36c9d4 72%, #7fe32e 100%);
}

.site-header{
  position:fixed; inset:0 0 auto 0; z-index:60; min-height:var(--header-h);
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(23,48,76,.08);
  box-shadow:0 18px 42px rgba(20,54,92,.10);
}
.header-inner{
  display:flex; align-items:center; justify-content:space-between; gap:34px; min-height:var(--header-h); padding:4px 0;
}
.brand{display:flex; align-items:center; flex:0 0 auto; padding-right:10px}
.brand-logo{height:162px; width:auto; filter:drop-shadow(0 12px 22px rgba(22,104,255,.14)); transform:scale(1.2); transform-origin:left center;}
.footer-logo{height:196px; width:auto; filter:drop-shadow(0 16px 28px rgba(12,42,74,.22)); transform:scale(1.16); transform-origin:left center;}
.main-nav{display:flex; align-items:center; gap:18px; margin-left:auto; flex-wrap:nowrap}
.nav-link,.lang-trigger{
  display:inline-flex; align-items:center; gap:8px;
  border:0; background:transparent; color:rgba(23,48,76,.82);
  font-weight:800; font-size:.98rem; padding:10px 0; white-space:nowrap;
}
.nav-link:hover,.lang-trigger:hover{color:var(--blue-deep)}
.nav-item{position:relative}
.dropdown-toggle::after{
  content:'▾'; font-size:.78rem; opacity:.7;
}
.dropdown-menu{
  position:absolute; top:calc(100% + 10px); left:0;
  min-width:220px; padding:12px; border-radius:18px;
  background:rgba(255,255,255,.98);
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
  display:grid; gap:8px;
  opacity:0; visibility:hidden; transform:translateY(8px);
  transition:.2s ease;
}
.has-dropdown:hover .dropdown-menu,
.has-dropdown:focus-within .dropdown-menu{
  opacity:1; visibility:visible; transform:translateY(0);
}
.dropdown-menu a,.dropdown-menu button{
  text-align:left; border:0; background:rgba(245,251,255,.88);
  color:var(--text); font-weight:700; padding:12px 14px; border-radius:14px;
}
.dropdown-menu a:hover,.dropdown-menu button:hover{background:linear-gradient(90deg, rgba(32,146,255,.10), rgba(140,230,46,.16))}
.lang-menu{right:0; left:auto}
.lang-option.active{background:linear-gradient(90deg, rgba(32,146,255,.12), rgba(140,230,46,.18)); color:var(--blue-deep)}

.lang-trigger{padding:10px 4px 10px 6px}
.menu-toggle{
  display:none; width:46px; height:46px; border-radius:14px; border:1px solid var(--line);
  background:#fff; color:var(--text); font-size:1.2rem;
}

.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  border:0; border-radius:16px; padding:14px 20px; font-weight:800;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn-primary{
  color:#fff;
  background:linear-gradient(90deg, #1f71ff 0%, #35c5ff 40%, #8be52f 100%);
  box-shadow:0 16px 34px rgba(31,113,255,.24);
}
.btn-ghost{
  color:var(--text);
  background:rgba(255,255,255,.80);
  border:1px solid rgba(31,113,255,.14);
  box-shadow:var(--shadow-soft);
}
.btn-small{padding:12px 16px; border-radius:14px; font-size:.92rem}
.btn-full{width:100%}
.nav-cta{padding:13px 22px}
.nav-assistant{padding:9px 14px 9px 10px; white-space:nowrap; gap:10px; background:linear-gradient(135deg, rgba(255,255,255,.92), rgba(240,251,255,.94), rgba(243,255,240,.94)); border:1px solid rgba(32,146,255,.14); box-shadow:0 14px 30px rgba(20,54,92,.08);}
.nav-assistant:hover{border-color:rgba(32,146,255,.20); box-shadow:0 16px 32px rgba(20,54,92,.11);}
.nav-assistant-avatar{width:36px; height:36px; border-radius:13px; object-fit:cover; box-shadow:0 10px 20px rgba(20,54,92,.12); flex:0 0 auto; border:1px solid rgba(255,255,255,.75);}
.nav-assistant span{display:inline-flex; align-items:center; font-weight:800;}

.eyebrow{
  display:inline-flex; align-items:center;
  padding:10px 16px; border-radius:999px; margin-bottom:18px;
  font-weight:800; font-size:.9rem; color:var(--blue-deep);
  background:linear-gradient(90deg, rgba(32,146,255,.10), rgba(140,230,46,.12));
  border:1px solid rgba(32,146,255,.12);
  box-shadow:0 10px 22px rgba(20,54,92,.05);
}
.section.blue .eyebrow{
  color:#fff; background:rgba(255,255,255,.12); border-color:rgba(255,255,255,.18)
}

.section-heading.center{text-align:center}
.section-heading.narrow{max-width:860px; margin:0 auto 24px}
.section-heading h2,.split-copy h2,.faq-copy h2,.contact-copy h2{
  margin:0 0 18px; letter-spacing:-.045em; line-height:.98;
  font-size:clamp(2.15rem,4vw,4rem);
  background:linear-gradient(90deg, #1763ff 0%, #26cfff 46%, #7adf27 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.section.blue .section-heading h2{background:none; color:#fff}
.section-heading p,.split-copy p,.faq-copy p,.contact-copy p,
.feature-list li,.overview-card p,.segment-panel p,.module-card p,.tool-card p,.plan-card li,
.implementation-card p,.faq-response,.footer-links li,.footer-brand p,.contact-form label,.contact-form input,.contact-form select,.contact-form textarea{
  color:var(--muted); line-height:1.72;
}
.section.blue .section-heading p,.section.blue .plan-card li,.section.blue .plans-strip h3,.section.blue .plans-strip-list span{color:rgba(255,255,255,.92)}

.hero{padding-top:34px; overflow:hidden}
.hero-intro{
  display:flex; align-items:center; justify-content:flex-start; gap:24px; margin-bottom:18px;
}
.hero-actions-top{display:flex; gap:12px; flex-wrap:wrap}

.hero-carousel{
  position:relative; background:rgba(255,255,255,.62); border:1px solid var(--line);
  border-radius:34px; box-shadow:var(--shadow); overflow:hidden;
}
.hero-slides{display:flex; transition:transform .6s ease}
.hero-slide{
  min-width:100%; display:grid; grid-template-columns:1.03fr .97fr; gap:26px; align-items:center;
  padding:44px;
}
.hero-copy h1{
  margin:0 0 16px; letter-spacing:-.055em; line-height:.95;
  font-size:clamp(2.8rem,5vw,5.65rem);
  background:linear-gradient(90deg, #1765ff 0%, #26cfff 42%, #86e52f 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.hero-copy p{font-size:1.06rem; margin:0 0 22px}
.hero-kicker{
  margin-bottom:12px; font-weight:800; letter-spacing:.06em;
  text-transform:uppercase; color:#4b7da0; font-size:.84rem;
}
.hero-slide-actions{display:flex; gap:12px; flex-wrap:wrap}

.hero-visual{
  min-height:400px; height:100%; border-radius:28px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.74), rgba(255,255,255,.28)),
    radial-gradient(circle at 80% 20%, rgba(140,230,46,.20), transparent 28%),
    radial-gradient(circle at 15% 15%, rgba(32,146,255,.18), transparent 28%);
  border:1px solid var(--line);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
  padding:28px;
  display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden;
}
.hero-visual img.hero-logo{width:min(100%, 500px)}
.hero-visual img.hero-ali{width:min(100%, 420px); filter:drop-shadow(0 26px 44px rgba(21,102,255,.20))}
.hero-visual.hero-illustration-wrap{padding:14px 18px; background:linear-gradient(135deg, rgba(255,255,255,.78), rgba(255,255,255,.34)), radial-gradient(circle at 86% 16%, rgba(255,222,89,.18), transparent 24%), radial-gradient(circle at 16% 16%, rgba(38,207,255,.18), transparent 28%);}
.hero-visual img.hero-illustration{width:min(100%, 590px); max-height:360px; object-fit:contain; filter:drop-shadow(0 22px 36px rgba(20,54,92,.16));}
.hero-visual img.hero-illustration-growth{width:min(100%, 610px); max-height:350px;}
.hero-tools-image-wrap{padding:4px; background:radial-gradient(circle at 50% 46%, rgba(255,255,255,.18), transparent 54%), radial-gradient(circle at 82% 18%, rgba(140,230,46,.16), transparent 26%), radial-gradient(circle at 18% 18%, rgba(38,207,255,.18), transparent 28%), linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.02)); border-color:rgba(32,146,255,.08); box-shadow:inset 0 1px 0 rgba(255,255,255,.28);}
.hero-tools-image{width:min(100%, 760px) !important; max-height:420px !important; object-fit:contain; transform:translateY(6px) scale(1.08); transform-origin:center center; filter:drop-shadow(0 22px 36px rgba(20,54,92,.10)); mix-blend-mode:multiply; opacity:.98;}
.hero-tools-visual{padding:22px; background:linear-gradient(145deg, rgba(255,255,255,.78), rgba(255,255,255,.28)), radial-gradient(circle at 80% 20%, rgba(255,222,89,.20), transparent 28%), radial-gradient(circle at 20% 18%, rgba(38,207,255,.18), transparent 28%);}
.tool-orbit{position:relative; width:100%; min-height:330px; border-radius:28px; background:linear-gradient(145deg, rgba(226,250,255,.60), rgba(255,255,255,.18)); border:1px solid rgba(23,101,255,.10); overflow:hidden;}
.tool-orbit::before,.tool-orbit::after{content:''; position:absolute; border-radius:999px; border:1px dashed rgba(23,101,255,.12);}
.tool-orbit::before{width:240px; height:240px; left:50%; top:50%; transform:translate(-50%,-50%);}
.tool-orbit::after{width:320px; height:320px; left:50%; top:50%; transform:translate(-50%,-50%);}
.tool-core{position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:168px; height:168px; border-radius:36px; display:grid; place-items:center; text-align:center; background:linear-gradient(145deg, rgba(23,101,255,.94), rgba(38,207,255,.92), rgba(138,229,47,.92)); color:#fff; box-shadow:0 22px 38px rgba(23,101,255,.24); z-index:2;}
.tool-core span{display:block; font-size:.9rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; opacity:.94;}
.tool-core strong{display:block; font-size:1.9rem; letter-spacing:-.04em;}
.tool-node{position:absolute; width:126px; min-height:92px; border-radius:24px; padding:14px 12px; background:rgba(255,255,255,.92); border:1px solid var(--line); box-shadow:var(--shadow-soft); display:grid; align-content:start; gap:8px; z-index:2; transition:transform .22s ease, box-shadow .22s ease;}
.tool-node:hover{transform:translateY(-5px) scale(1.02); box-shadow:0 18px 32px rgba(17,72,134,.16);}
.tool-node em{font-style:normal; display:inline-grid; place-items:center; width:42px; height:42px; border-radius:14px; background:linear-gradient(135deg, rgba(23,101,255,.12), rgba(139,229,47,.20)); color:var(--blue-deep); font-weight:900;}
.tool-node strong{font-size:1rem; line-height:1.2;}
.tool-node-1{left:26px; top:28px;}
.tool-node-2{right:34px; top:38px;}
.tool-node-3{left:34px; bottom:34px;}
.tool-node-4{right:28px; bottom:42px;}
.tool-node-5{left:50%; top:16px; transform:translateX(-50%);}
.tool-node-5:hover{transform:translateX(-50%) translateY(-5px) scale(1.02);}
.visual-card-stack{display:grid; gap:14px; width:100%}
.visual-card{
  background:rgba(255,255,255,.88); border:1px solid var(--line); border-radius:22px;
  padding:18px; box-shadow:var(--shadow-soft);
}
.visual-card h3,.mini-card h3,.overview-card h3,.tool-card h3,.segment-panel h3,.module-card h3,.plan-card h3,.implementation-card h3{
  margin:0 0 10px; font-size:1.18rem; line-height:1.25
}
.visual-card p,.mini-card p{margin:0; color:var(--muted); line-height:1.6}
.visual-pillars{display:flex; flex-wrap:wrap; gap:10px}
.visual-pillars span,.mini-chip,.plans-strip-list span{
  padding:10px 14px; border-radius:999px; font-weight:800;
  background:rgba(255,255,255,.86); border:1px solid var(--line); color:#345676;
}
.mini-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:14px; width:100%}
.mini-card{
  background:rgba(255,255,255,.88); border:1px solid var(--line); border-radius:22px;
  padding:18px; min-height:144px; box-shadow:var(--shadow-soft)
}
.audience-cards{display:grid; grid-template-columns:repeat(3,1fr); gap:14px; width:100%}
.audience-card{
  background:rgba(255,255,255,.88); border:1px solid var(--line);
  border-radius:22px; padding:18px; box-shadow:var(--shadow-soft)
}
.audience-card span{display:block; margin-bottom:8px; font-size:.82rem; font-weight:800; text-transform:uppercase; color:#467ea5}
.audience-card h3{margin:0; font-size:1.06rem; line-height:1.35}
.plan-visual{display:grid; gap:14px; width:100%}
.plan-step{
  background:rgba(255,255,255,.88); border:1px solid var(--line); border-radius:22px; padding:18px;
}
.plan-step strong{display:block; margin-bottom:8px; font-size:1rem}
.plan-step p{margin:0; color:var(--muted)}
.carousel-arrow{
  position:absolute; top:50%; transform:translateY(-50%); z-index:2;
  width:54px; height:54px; border-radius:18px; border:1px solid rgba(255,255,255,.48);
  background:rgba(255,255,255,.78); box-shadow:var(--shadow-soft); color:var(--blue-deep); font-size:2rem;
}
.carousel-arrow.prev{left:18px}
.carousel-arrow.next{right:18px}

.hero-bottom{
  display:flex; align-items:center; justify-content:space-between; gap:22px; margin-top:18px
}
.hero-dots{display:flex; gap:10px}
.hero-dots button{
  width:12px; height:12px; border-radius:999px; border:0; padding:0; background:rgba(23,48,76,.18)
}
.hero-dots button.active{width:40px; background:linear-gradient(90deg, #1765ff, #8be52f)}
.audience-strip{
  display:grid; grid-template-columns:repeat(3,1fr); gap:14px; width:100%;
}
.audience-strip .audience-card{background:rgba(255,255,255,.80)}

.overview-grid,.tools-grid,.plans-grid,.implementation-grid{
  display:grid; gap:18px;
}
.overview-grid{grid-template-columns:repeat(3,1fr)}
.overview-card,.tool-card,.implementation-card,.plan-card,.segment-panel,.faq-card,.contact-form{
  background:rgba(255,255,255,.84); border:1px solid var(--line); border-radius:28px; box-shadow:var(--shadow);
}
.overview-card,.tool-card,.implementation-card,.plan-card{padding:26px}
.icon-badge{
  width:56px; height:56px; border-radius:18px; display:grid; place-items:center; margin-bottom:16px;
  background:linear-gradient(135deg, rgba(23,101,255,.14), rgba(139,229,47,.18));
  color:var(--blue-deep); font-weight:900; font-size:1.15rem;
}
.overview-card h3,.tool-card h3,.implementation-card h3,.plan-card h3{font-size:1.22rem}

.segment-tabs,.context-switcher{display:flex; justify-content:center; flex-wrap:wrap; gap:10px; margin:0 0 18px}
.segment-tabs button,.context-switcher button{
  border:1px solid var(--line); background:rgba(255,255,255,.82);
  color:#41647f; padding:12px 18px; border-radius:999px; font-weight:800;
}
.segment-tabs button.active,.context-switcher button.active{
  background:linear-gradient(90deg, rgba(23,101,255,.12), rgba(139,229,47,.22)); color:var(--blue-deep);
}
.segment-panel{
  padding:30px; display:grid; grid-template-columns:1.1fr .9fr; gap:24px; align-items:start
}
.segment-panel h3{font-size:2rem; margin:0 0 12px}
.segment-panel ul{margin:18px 0 0 18px; padding:0; color:var(--text); line-height:1.72}
.segment-side{
  padding:24px; border-radius:24px; border:1px solid var(--line);
  background:linear-gradient(135deg, rgba(32,146,255,.08), rgba(140,230,46,.12))
}
.segment-side h4{margin:0 0 12px; font-size:1.5rem}

.module-groups{display:grid; gap:28px}
.module-group{
  position:relative; overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.44), rgba(255,255,255,.30));
  backdrop-filter:blur(12px);
  border:1px solid rgba(38,88,142,.10);
  border-radius:34px; padding:26px 24px 24px;
  box-shadow:0 14px 34px rgba(20,54,92,.06), inset 0 1px 0 rgba(255,255,255,.55);
}
.module-group::before{
  content:''; position:absolute; left:22px; right:22px; top:0; height:4px; border-radius:999px;
  background:linear-gradient(90deg, rgba(23,101,255,.92), rgba(38,207,255,.88), rgba(139,229,47,.82));
}
.module-group::after{
  content:''; position:absolute; width:220px; height:220px; right:-70px; top:-90px; border-radius:50%;
  background:radial-gradient(circle, rgba(38,207,255,.16), transparent 68%); pointer-events:none;
}
.module-group-1{background:linear-gradient(180deg, rgba(239,248,255,.92), rgba(255,255,255,.58)); border-color:rgba(32,146,255,.14);}
.module-group-1::before{background:linear-gradient(90deg, rgba(23,101,255,.96), rgba(38,207,255,.88), rgba(97,228,255,.72));}
.module-group-1 .module-group-tag{background:linear-gradient(90deg, rgba(23,101,255,.12), rgba(38,207,255,.16));}
.module-group-1 .module-group-count{background:rgba(245,251,255,.84);}
.module-group-1 .module-card::before{background:linear-gradient(90deg, rgba(23,101,255,.88), rgba(38,207,255,.78));}
.module-group-1 .module-card .module-label{background:linear-gradient(90deg, rgba(23,101,255,.10), rgba(38,207,255,.16));}

.module-group-2{background:linear-gradient(180deg, rgba(246,255,243,.92), rgba(255,255,255,.60)); border-color:rgba(123,209,86,.16);}
.module-group-2::before{background:linear-gradient(90deg, rgba(76,190,118,.88), rgba(140,230,46,.82), rgba(38,207,255,.58));}
.module-group-2::after{background:radial-gradient(circle, rgba(139,229,47,.18), transparent 68%)}
.module-group-2 .module-group-tag{background:linear-gradient(90deg, rgba(76,190,118,.12), rgba(140,230,46,.18)); border-color:rgba(76,190,118,.10);}
.module-group-2 .module-group-count{background:rgba(248,255,244,.84);}
.module-group-2 .module-card{background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,255,244,.92)); border-color:rgba(76,190,118,.10);}
.module-group-2 .module-card::before{background:linear-gradient(90deg, rgba(76,190,118,.82), rgba(140,230,46,.78), rgba(38,207,255,.56));}
.module-group-2 .module-card .module-label{background:linear-gradient(90deg, rgba(76,190,118,.10), rgba(140,230,46,.18));}

.module-group-3{background:linear-gradient(180deg, rgba(244,248,255,.94), rgba(252,255,251,.62)); border-color:rgba(78,122,181,.16);}
.module-group-3::before{background:linear-gradient(90deg, rgba(41,94,180,.92), rgba(59,159,235,.78), rgba(140,230,46,.58));}
.module-group-3::after{background:radial-gradient(circle, rgba(23,101,255,.12), transparent 68%)}
.module-group-3 .module-group-tag{background:linear-gradient(90deg, rgba(41,94,180,.10), rgba(59,159,235,.12), rgba(140,230,46,.16));}
.module-group-3 .module-group-count{background:rgba(248,251,255,.84);}
.module-group-3 .module-card{background:linear-gradient(180deg, rgba(255,255,255,.97), rgba(246,250,255,.93)); border-style:dashed; border-color:rgba(41,94,180,.14);}
.module-group-3 .module-card::before{background:linear-gradient(90deg, rgba(41,94,180,.84), rgba(59,159,235,.72), rgba(140,230,46,.56));}
.module-group-3 .module-card .module-label{background:linear-gradient(90deg, rgba(41,94,180,.10), rgba(59,159,235,.12), rgba(140,230,46,.16));}
.module-group-head{display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:18px; position:relative; z-index:1}
.module-group-copy{max-width:760px}
.module-group-tag{
  display:inline-flex; align-items:center; padding:8px 12px; border-radius:999px; margin-bottom:12px;
  font-size:.78rem; font-weight:800; letter-spacing:.02em; color:var(--blue-deep);
  background:linear-gradient(90deg, rgba(23,101,255,.10), rgba(139,229,47,.18));
  border:1px solid rgba(23,101,255,.10);
}
.module-group-count{
  flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center;
  min-width:94px; padding:10px 14px; border-radius:999px; font-weight:800; font-size:.88rem;
  color:#49708f; background:rgba(255,255,255,.70); border:1px solid rgba(38,88,142,.12);
  box-shadow:0 8px 18px rgba(20,54,92,.05);
}
.module-group h3{margin:0; font-size:clamp(1.8rem, 2vw, 2.45rem); line-height:1.05; letter-spacing:-.03em}
.module-group p{margin:0; color:var(--muted)}
.module-cards{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:18px; align-items:stretch; position:relative; z-index:1}
.module-cards.count-4{grid-template-columns:repeat(4,minmax(0,1fr));}
.module-card{
  position:relative; overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,253,255,.90));
  border:1px solid rgba(38,88,142,.10); border-radius:26px; padding:20px 20px 18px;
  box-shadow:0 14px 28px rgba(20,54,92,.08);
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease, background .24s ease; cursor:default;
}
.module-card::before{
  content:''; position:absolute; inset:0 0 auto 0; height:6px;
  background:linear-gradient(90deg, rgba(23,101,255,.88), rgba(38,207,255,.74), rgba(139,229,47,.72));
  opacity:.85;
}
.module-card::after{
  content:''; position:absolute; right:-28px; bottom:-42px; width:112px; height:112px; border-radius:50%;
  background:radial-gradient(circle, rgba(38,207,255,.12), transparent 68%);
  pointer-events:none;
}
.module-card:hover{
  transform:translateY(-7px);
  box-shadow:0 22px 42px rgba(20,54,92,.14);
  border-color:rgba(23,101,255,.18);
  background:linear-gradient(160deg, rgba(255,255,255,.99), rgba(238,250,255,.96));
}
.module-card-top{display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px}
.module-spark{
  width:14px; height:14px; border-radius:50%;
  background:radial-gradient(circle at 30% 30%, rgba(255,255,255,.95), rgba(38,207,255,.62) 42%, rgba(139,229,47,.55) 76%, rgba(139,229,47,0) 78%);
  box-shadow:0 0 0 5px rgba(38,207,255,.08);
  flex:0 0 auto;
}
.module-card:hover .module-label{
  background:linear-gradient(90deg, rgba(23,101,255,.16), rgba(139,229,47,.28));
  color:var(--blue-deep);
}
.module-card .module-label{
  display:inline-flex; padding:8px 12px; border-radius:999px;
  background:linear-gradient(90deg, rgba(23,101,255,.10), rgba(139,229,47,.18));
  font-size:.78rem; font-weight:800; color:#4b7294; letter-spacing:.01em;
}
.module-card h3{margin:0 0 10px; font-size:clamp(1.2rem,1.55vw,1.7rem); line-height:1.08; letter-spacing:-.03em}
.module-card p{margin:0; font-size:.98rem; line-height:1.64; max-width:34ch}

.tools-grid{grid-template-columns:repeat(3,1fr)}
.tool-card{position:relative; overflow:hidden}
.tool-card::after{
  content:''; position:absolute; width:140px; height:140px; right:-30px; top:-40px;
  background:radial-gradient(circle, rgba(32,146,255,.16), transparent 68%);
  pointer-events:none;
}

.split-layout{
  display:grid; grid-template-columns:1fr 1fr; gap:28px; align-items:center
}
.feature-list{margin:24px 0 0 18px; padding:0}
.feature-list li{margin-bottom:12px}
.split-visual{display:flex; justify-content:center}
.ali-chat-card{
  width:min(100%, 560px); background:rgba(255,255,255,.84); border:1px solid var(--line); border-radius:32px;
  box-shadow:var(--shadow); padding:26px; position:relative;
}
.ali-chat-avatar{
  width:160px; height:160px; margin:0 auto 8px; border-radius:30px;
  background:linear-gradient(135deg, rgba(23,101,255,.10), rgba(139,229,47,.18));
  display:grid; place-items:center; overflow:hidden; border:1px solid var(--line)
}
.ali-chat-avatar img{width:100%; height:100%; object-fit:contain}
.ali-chat-flow{display:grid; gap:14px; margin-top:20px}
.chat-bubble{
  max-width:88%; padding:18px 20px; border-radius:24px; border:1px solid var(--line);
  background:rgba(255,255,255,.90); box-shadow:var(--shadow-soft)
}
.chat-bubble strong{display:block; margin-bottom:8px}
.chat-bubble.teacher{justify-self:start}
.chat-bubble.ali{
  justify-self:end;
  background:linear-gradient(135deg, rgba(23,101,255,.08), rgba(139,229,47,.16))
}

.plans-grid{grid-template-columns:repeat(5,minmax(0,1fr)); align-items:stretch}
.plan-card{
  background:rgba(255,255,255,.14); border-color:rgba(255,255,255,.20); box-shadow:none; color:#fff;
  display:flex; flex-direction:column; height:100%;
}
.plan-card.featured{
  background:rgba(255,255,255,.20);
  border-color:rgba(255,255,255,.34);
  box-shadow:0 16px 34px rgba(9,36,84,.18);
}
.plan-range{display:block; margin-bottom:14px; text-transform:none; letter-spacing:0; color:#fff}
.plan-card ul{margin:16px 0 0 18px; padding:0; flex:1}
.plan-card li{margin-bottom:10px}
.plans-strip{
  margin-top:26px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.18);
  border-radius:28px; padding:24px;
}
.plans-strip h3{margin:0 0 16px; font-size:1.35rem}
.plans-strip-list{display:flex; flex-wrap:wrap; gap:12px}
.plans-strip-list span{background:rgba(255,255,255,.18); border-color:rgba(255,255,255,.18); color:#fff}

.implementation-grid{grid-template-columns:repeat(3,1fr)}
.implementation-card{min-height:250px}
.implementation-card .icon-badge{margin-bottom:20px}

.faq-layout,.contact-layout{
  display:grid; grid-template-columns:.9fr 1.1fr; gap:22px; align-items:start
}
.faq-card{padding:24px}
.faq-head,.ali-panel-head{display:flex; align-items:center; gap:14px; margin-bottom:16px}
.faq-head-avatar,.ali-panel-avatar{
  width:68px; height:68px; border-radius:20px; overflow:hidden; background:linear-gradient(135deg, rgba(23,101,255,.10), rgba(139,229,47,.18)); border:1px solid var(--line)
}
.faq-head-avatar img,.ali-panel-avatar img{width:100%; height:100%; object-fit:cover}
.faq-head p,.ali-panel-head p{margin:4px 0 0; color:var(--muted)}
.faq-quick{display:flex; flex-wrap:wrap; gap:10px; margin-bottom:16px}
.faq-quick button{
  border:1px solid var(--line); background:rgba(245,251,255,.86); color:var(--text);
  font-weight:700; padding:12px 14px; border-radius:16px;
}
.faq-quick button:hover{background:linear-gradient(90deg, rgba(23,101,255,.10), rgba(139,229,47,.16))}
.faq-response{
  min-height:170px; padding:20px; border-radius:22px; border:1px solid var(--line);
  background:linear-gradient(135deg, rgba(23,101,255,.06), rgba(139,229,47,.10))
}

.contact-form{
  padding:26px; display:grid; grid-template-columns:1fr 1fr; gap:16px
}
.contact-form label{
  display:grid; gap:8px; font-size:.92rem; font-weight:700
}
.contact-form label:nth-last-child(2),
.contact-form label:last-of-type,
.contact-form button{grid-column:1 / -1}
.contact-form input,.contact-form select,.contact-form textarea{
  width:100%; border-radius:16px; border:1px solid var(--line); padding:14px 16px; background:rgba(255,255,255,.92); color:var(--text)
}
.contact-form textarea{resize:vertical}

.ali-floating{
  position:fixed; right:24px; bottom:24px; z-index:72;
}
.ali-bubble{
  position:relative; width:88px; height:88px; border-radius:30px; border:1px solid rgba(255,255,255,.40);
  background:linear-gradient(135deg, rgba(255,255,255,.96), rgba(255,255,255,.84));
  box-shadow:0 26px 48px rgba(20,54,92,.24); padding:0; overflow:hidden; isolation:isolate;
}
.ali-bubble::after{content:''; position:absolute; inset:-18px; background:radial-gradient(circle, rgba(61,225,255,.18), transparent 58%); z-index:-1; animation:aliGlow 3.6s ease-in-out infinite;}
.ali-pulse{position:absolute; inset:auto 10px 10px auto; width:14px; height:14px; border-radius:999px; background:linear-gradient(135deg, #26cfff, #8ce62e); box-shadow:0 0 0 0 rgba(38,207,255,.50); animation:aliPulse 2.2s infinite;}
.ali-bubble img{width:100%; height:100%; object-fit:cover}
.ali-modal-overlay{position:fixed; inset:0; z-index:71; display:grid; place-items:center; padding:24px; opacity:0; visibility:hidden; transition:.28s ease;}
.ali-modal-overlay.open{opacity:1; visibility:visible;}
.ali-modal-backdrop{position:absolute; inset:0; background:rgba(12,28,48,.42); backdrop-filter:blur(8px);}
.ali-panel{background:rgba(255,255,255,.98); border:1px solid var(--line); border-radius:32px; box-shadow:0 40px 90px rgba(20,54,92,.30);}
.ali-modal-window{
  position:relative; width:min(920px, calc(100vw - 28px)); height:min(84vh, 820px);
  transform:translateY(18px) scale(.98); transition:.28s ease; overflow:hidden;
  display:flex; flex-direction:column; padding:0;
}
.ali-modal-window.is-expanded{
  width:min(1180px, calc(100vw - 18px)); height:calc(100vh - 18px); border-radius:24px;
}
.ali-modal-overlay.open .ali-modal-window{transform:translateY(0) scale(1);}
.ali-modal-topbar{
  display:flex; align-items:center; justify-content:space-between; gap:18px; padding:20px 22px;
  border-bottom:1px solid rgba(23,101,255,.10); background:linear-gradient(135deg, rgba(255,255,255,.95), rgba(240,249,255,.98));
}
.ali-panel-head-large{margin:0; min-width:0;}
.ali-panel-head-large strong{font-size:1.18rem;}
.ali-panel-head-large p{font-size:.98rem;}
.ali-modal-toolbar{display:flex; align-items:center; gap:10px; flex-shrink:0;}
.ali-modal-expand,.ali-modal-close{
  width:46px; height:46px; border-radius:15px; border:1px solid var(--line); background:rgba(255,255,255,.92);
  color:var(--text); box-shadow:var(--shadow-soft); font-weight:800; transition:.2s ease;
}
.ali-modal-expand{font-size:1.1rem;}
.ali-modal-close{font-size:1.55rem; line-height:1;}
.ali-modal-expand:hover,.ali-modal-close:hover{transform:translateY(-2px); box-shadow:0 16px 32px rgba(20,54,92,.12);}
.ali-modal-scroll{
  flex:1; overflow-y:auto; padding:22px; display:grid; gap:18px; scroll-behavior:smooth;
  background:linear-gradient(180deg, rgba(248,252,255,.9), rgba(242,250,248,.9));
}
.ali-modal-hero{display:grid; grid-template-columns:1.3fr .9fr; gap:16px; align-items:stretch;}
.ali-modal-note{margin:0; padding:18px 18px; border-radius:22px; background:linear-gradient(135deg, rgba(23,101,255,.06), rgba(139,229,47,.12)); border:1px solid var(--line);}
.ali-modal-note-hero{min-height:100%; display:flex; flex-direction:column; justify-content:center;}
.ali-modal-note p{margin:10px 0 0; color:var(--muted); line-height:1.7;}
.ali-modal-chip{display:inline-flex; padding:8px 12px; border-radius:999px; font-size:.78rem; font-weight:800; color:var(--blue-deep); background:rgba(255,255,255,.86); border:1px solid var(--line);}
.ali-modal-mini-card{
  border-radius:22px; border:1px solid rgba(23,101,255,.10); padding:18px 18px; background:rgba(255,255,255,.84);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);
}
.ali-modal-mini-card h4{margin:0 0 12px; font-size:1rem;}
.ali-modal-mini-card ul{margin:0; padding-left:18px; color:var(--muted); line-height:1.7;}
.ali-modal-block{
  border-radius:24px; border:1px solid rgba(23,101,255,.10); padding:18px; background:rgba(255,255,255,.86);
  box-shadow:0 18px 34px rgba(20,54,92,.06);
}
.ali-modal-answer-block{background:linear-gradient(135deg, rgba(255,255,255,.92), rgba(247,252,243,.92));}
.ali-modal-block-head{display:grid; gap:6px; margin-bottom:14px;}
.ali-modal-section-kicker{display:inline-flex; width:max-content; padding:8px 12px; border-radius:999px; background:rgba(23,101,255,.08); color:var(--blue-deep); font-size:.78rem; font-weight:800; border:1px solid rgba(23,101,255,.10);}
.ali-modal-block-head h3{margin:0; font-size:1.12rem;}
.context-switcher.compact{justify-content:flex-start; margin-bottom:0; gap:10px;}
.faq-quick.compact{justify-content:flex-start; gap:12px;}
.ali-modal-quick button{padding:14px 16px; min-height:54px;}
.ali-modal-response{min-height:220px; font-size:1rem; line-height:1.8;}
.ali-thread{display:grid; gap:12px; max-height:300px; overflow-y:auto; padding-right:6px; margin-bottom:14px;}
.ali-msg{display:flex; width:100%;}
.ali-msg.user{justify-content:flex-end;}
.ali-msg-bubble{max-width:min(100%, 720px); padding:14px 16px; border-radius:18px; border:1px solid rgba(23,101,255,.10); box-shadow:0 12px 24px rgba(20,54,92,.06);}
.ali-msg.assistant .ali-msg-bubble{background:linear-gradient(135deg, rgba(255,255,255,.96), rgba(246,252,241,.96));}
.ali-msg.user .ali-msg-bubble{background:linear-gradient(135deg, rgba(23,101,255,.10), rgba(139,229,47,.16));}
.ali-msg-role{display:block; margin-bottom:6px; font-size:.78rem; font-weight:800; color:var(--blue-deep);}
.ali-msg-bubble p{margin:0; color:var(--text); line-height:1.75;}
.ali-msg-bubble p.is-typing::after{content:'▍'; display:inline-block; margin-left:2px; color:var(--brand-blue); animation:aliBlink 0.9s steps(1,end) infinite;}
@keyframes aliBlink{50%{opacity:0;}}
.ali-chat-form{display:grid; gap:12px;}
#aliPrompt{width:100%; min-height:96px; padding:16px 18px; border-radius:18px; border:1px solid var(--line); font:inherit; color:var(--text); background:rgba(255,255,255,.96); resize:vertical; box-shadow:inset 0 1px 0 rgba(255,255,255,.7), 0 10px 20px rgba(20,54,92,.04);}
#aliPrompt:focus{outline:none; border-color:rgba(23,101,255,.26); box-shadow:0 0 0 5px rgba(23,101,255,.10), inset 0 1px 0 rgba(255,255,255,.75);}
.ali-chat-actions{display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap;}
.ali-chat-status{font-size:.92rem; color:var(--muted); min-height:20px;}
.ali-chat-status.loading{color:var(--blue-deep);}
.ali-chat-status.error{color:#b42318;}
.sr-only{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;}
.ali-panel-actions{display:flex; gap:10px; flex-wrap:wrap; margin-top:16px}
.ali-panel-actions-large{position:sticky; bottom:0; z-index:2; padding-top:6px; background:linear-gradient(180deg, rgba(242,250,248,0), rgba(242,250,248,.98) 26%);}
body.modal-open{overflow:hidden;}


.cta-section{padding:28px 0 20px;}
.cta-band{
  display:grid; grid-template-columns:1.3fr auto; gap:20px; align-items:center;
  padding:26px 28px; border-radius:30px;
  background:linear-gradient(135deg, rgba(255,255,255,.94), rgba(241,251,255,.90), rgba(245,252,238,.92));
  border:1px solid rgba(32,146,255,.14);
  box-shadow:0 18px 40px rgba(20,54,92,.08);
}
.cta-band-inline{margin-top:24px;}
.cta-band-copy h3{margin:0 0 10px; font-size:clamp(1.4rem,2vw,2rem); line-height:1.05; letter-spacing:-.03em; color:var(--text);}
.cta-band-copy p{margin:0; color:var(--muted); line-height:1.7; max-width:760px;}
.cta-kicker{margin-bottom:12px;}
.cta-band-actions{display:flex; align-items:center; gap:12px; flex-wrap:wrap; justify-content:flex-end;}

.section.blue .cta-band .eyebrow,
.cta-band .eyebrow{
  color:var(--blue-deep);
  background:linear-gradient(90deg, rgba(23,101,255,.14), rgba(38,207,255,.12), rgba(140,230,46,.16));
  border-color:rgba(23,101,255,.18);
  box-shadow:0 10px 22px rgba(20,54,92,.06);
}

.site-footer{
  padding:54px 0 26px; background:linear-gradient(135deg,#0f2c49 0%, #12355c 56%, #11486a 100%); color:#fff;
}
.footer-grid{
  display:grid; grid-template-columns:minmax(360px, 1fr) minmax(540px, 1.1fr); gap:34px; align-items:center
}
.footer-brand{display:flex; flex-direction:column; align-items:flex-start; gap:12px}
.footer-tagline{margin:0; color:rgba(255,255,255,.78); font-weight:600; line-height:1.55; max-width:500px; text-wrap:balance}
.footer-meta{justify-self:end; max-width:760px; text-align:right}
.footer-statement{margin:0 0 14px; color:rgba(255,255,255,.88); font-weight:600; line-height:1.68; max-width:680px; margin-left:auto; text-wrap:balance}
.footer-contact-line{display:flex; justify-content:flex-end; gap:14px; flex-wrap:wrap}
.footer-contact-link{color:#ffffff; font-weight:700; opacity:.94; display:inline-flex; align-items:center; gap:10px; padding:10px 14px; border-radius:999px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.10)}
.footer-contact-icon{display:inline-grid; place-items:center; width:24px; height:24px; border-radius:999px; background:rgba(255,255,255,.14); font-size:.82rem}
.footer-contact-link:hover{color:#8ce62e; border-color:rgba(140,230,46,.22)}
.footer-legal{padding-top:24px; margin-top:24px; border-top:1px solid rgba(255,255,255,.10); text-align:center}
.footer-legal p{margin:0; color:rgba(255,255,255,.72); font-size:.94rem; font-weight:600; letter-spacing:.01em}

@media (max-width: 1180px){
  .plans-grid{grid-template-columns:repeat(3,1fr)}
  .module-cards.count-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero-slide{grid-template-columns:1fr; padding:34px 34px 40px}
  .hero-visual{min-height:320px}
  .overview-grid,.tools-grid,.module-cards,.implementation-grid{grid-template-columns:repeat(2,1fr)}
  .tool-orbit{min-height:300px}
  .tool-node{width:118px}
  .faq-layout,.contact-layout,.split-layout{grid-template-columns:1fr}
  .brand-logo{height:148px}
  .footer-logo{height:170px}
}
@media (max-width: 920px){
  .cta-band{grid-template-columns:1fr; align-items:flex-start;}
  .cta-band-actions{justify-content:flex-start;}
  .lang-trigger{padding:10px 4px 10px 6px}
.menu-toggle{display:grid; place-items:center}
  .ali-modal-hero{grid-template-columns:1fr;}
  .main-nav{
    position:absolute; left:20px; right:20px; top:calc(100% + 10px); display:none;
    flex-direction:column; align-items:stretch; gap:12px; padding:18px;
    background:rgba(255,255,255,.98); border:1px solid var(--line); border-radius:24px; box-shadow:var(--shadow);
  }
  .main-nav.open{display:flex}
  .dropdown-menu{position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; background:#f7fbff}
  .has-dropdown:hover .dropdown-menu,.has-dropdown:focus-within .dropdown-menu{transform:none}
  .header-inner{gap:16px}
  .hero-intro,.hero-bottom{flex-direction:column; align-items:flex-start}
  .hero-copy h1{font-size:clamp(2.5rem,10vw,4.8rem)}
  .tool-orbit{min-height:280px}
  .tool-core{width:148px; height:148px}
  .tool-node{width:108px; min-height:84px; padding:12px 10px}
  .segment-panel{grid-template-columns:1fr}
  .plans-grid{grid-template-columns:repeat(2,1fr)}
  .module-cards.count-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-grid{grid-template-columns:1fr}
}
@media (max-width: 640px){
  .section{padding:62px 0}
  .ali-modal-window{width:min(100vw - 10px, 100%); height:calc(100vh - 10px); border-radius:20px;}
  .ali-modal-window.is-expanded{width:min(100vw - 10px, 100%); height:calc(100vh - 10px); border-radius:20px;}
  .ali-modal-topbar{padding:16px 16px; gap:12px; align-items:flex-start;}
  .ali-modal-scroll{padding:16px; gap:14px;}
  .ali-panel-head-large .ali-panel-avatar{width:58px; height:58px; border-radius:18px;}
  .ali-modal-toolbar{gap:8px;}
  .ali-modal-expand,.ali-modal-close{width:42px; height:42px; border-radius:14px;}
  .container{width:min(var(--max), calc(100% - 26px))}
  .brand-logo{height:124px}
  .footer-logo{height:142px}
  .hero-slide{padding:26px 22px 34px}
  .carousel-arrow{display:none}
  .overview-grid,.tools-grid,.module-cards,.module-cards.count-4,.plans-grid,.implementation-grid,.audience-strip,.audience-cards,.mini-grid{grid-template-columns:1fr}
  .hero-visual img.hero-illustration,.hero-visual img.hero-illustration-growth{max-height:300px}
  .tool-orbit{min-height:340px}
  .tool-node-1{left:12px; top:18px}
  .tool-node-2{right:12px; top:18px}
  .tool-node-3{left:12px; bottom:18px}
  .tool-node-4{right:12px; bottom:18px}
  .tool-node-5{left:50%; top:14px; transform:translateX(-50%)}
  .tool-node-5:hover{transform:translateX(-50%) translateY(-5px) scale(1.02);}
  .contact-form{grid-template-columns:1fr}
  .hero-actions-top,.hero-slide-actions,.plans-strip-list,.faq-quick,.ali-panel-actions{width:100%}
  .btn,.nav-cta{width:100%}
  .nav-assistant{width:100%; justify-content:center;}
  .cta-band-actions .btn{width:100%;}
  .ali-floating{right:14px; bottom:14px}
  .ali-bubble{width:74px; height:74px}
  .ali-modal-overlay{padding:14px}
}


/* Visual refinements */
.overview-card,.tool-card,.plan-card,.implementation-card,.module-card,.faq-card,.contact-form,.segment-panel,.ali-chat-card,.module-group{
  position:relative; overflow:hidden;
}
.overview-card::before,.tool-card::before,.plan-card::before,.implementation-card::before,.module-card::before,.faq-card::before,.contact-form::before,.segment-panel::before,.ali-chat-card::before,.module-group::before{
  content:''; position:absolute; inset:-1px auto auto -30%; width:46%; height:160%;
  background:linear-gradient(120deg, transparent 0%, rgba(255,255,255,.10) 40%, rgba(255,255,255,.46) 50%, transparent 60%);
  transform:translateX(-160%) rotate(16deg); transition:transform .9s ease; pointer-events:none;
}
.overview-card:hover::before,.tool-card:hover::before,.plan-card:hover::before,.implementation-card:hover::before,.module-card:hover::before,.faq-card:hover::before,.contact-form:hover::before,.segment-panel:hover::before,.ali-chat-card:hover::before,.module-group:hover::before{
  transform:translateX(360%) rotate(16deg);
}
.overview-card,.tool-card,.implementation-card,.segment-panel,.faq-card,.contact-form,.ali-chat-card,.module-group{transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease, background .24s ease;}
.overview-card:hover,.tool-card:hover,.implementation-card:hover,.segment-panel:hover,.faq-card:hover,.contact-form:hover,.ali-chat-card:hover,.module-group:hover{
  transform:translateY(-6px); box-shadow:0 26px 54px rgba(20,54,92,.14); border-color:rgba(23,101,255,.18);
}
.reveal-card{opacity:0; transform:translateY(26px) scale(.985); transition:opacity .66s ease var(--delay, 0ms), transform .66s ease var(--delay, 0ms);}
.reveal-card.is-visible{opacity:1; transform:translateY(0) scale(1);}
.form-status{grid-column:1 / -1; min-height:24px; margin-top:2px; font-weight:700; color:var(--muted);}
.form-status.success{color:#248d48;}
.form-status.error{color:#cc3c3c;}
.contact-form button[disabled]{opacity:.7; pointer-events:none;}
.hero-carousel,.module-group,.segment-panel,.faq-card,.contact-form,.ali-chat-card,.plans-strip{backdrop-filter:blur(10px);}

.site-footer{position:relative; overflow:hidden;}
.site-footer::before{content:''; position:absolute; inset:auto -15% 55% auto; width:320px; height:320px; background:radial-gradient(circle, rgba(61,225,255,.18), transparent 60%); pointer-events:none;}
@keyframes aliPulse{0%{box-shadow:0 0 0 0 rgba(38,207,255,.48)}70%{box-shadow:0 0 0 12px rgba(38,207,255,0)}100%{box-shadow:0 0 0 0 rgba(38,207,255,0)}}
@keyframes aliGlow{0%,100%{transform:scale(.95); opacity:.8;}50%{transform:scale(1.05); opacity:1;}}


/* v9 restored sections */
.context-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.context-card,.curriculum-card,.network-card,.unique-item{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.16);border-radius:24px;padding:28px 24px;box-shadow:var(--shadow-soft);backdrop-filter:blur(6px)}
.context-card h3,.curriculum-card h3,.network-card h3,.unique-item h3{margin:12px 0 10px;font-size:1.12rem;line-height:1.2}
.context-card p,.network-card p{color:rgba(255,255,255,.92);margin:0;line-height:1.65}
.context-card .icon-badge{width:62px;height:62px;border-radius:20px;background:rgba(255,255,255,.12);color:#b7f533;font-size:1.6rem;font-weight:900;border:1px solid rgba(255,255,255,.16)}
.how-pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:18px}
.how-card{position:relative;background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(240,251,255,.92));border:1px solid rgba(32,146,255,.14);border-radius:26px;padding:28px 22px 24px;text-align:left;box-shadow:0 18px 34px rgba(20,54,92,.08);transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;overflow:hidden}
.how-card::before{content:'';position:absolute;inset:0 auto auto 0;width:100%;height:5px;background:linear-gradient(90deg,#1e78ff,#26cfff,#8ce62e);opacity:.92}
.how-card:hover,.curriculum-card:hover,.context-card:hover,.network-card:hover,.unique-item:hover{transform:translateY(-6px);box-shadow:0 22px 38px rgba(20,54,92,.14)}
.how-card:hover{border-color:rgba(32,146,255,.24)}
.how-card .pillar-icon{width:72px;height:72px;border-radius:22px;margin:0 0 18px;background:linear-gradient(135deg, rgba(30,120,255,.18), rgba(38,207,255,.18), rgba(140,230,46,.24));display:grid;place-items:center;color:var(--blue-deep);font-size:1.75rem;font-weight:900;box-shadow:inset 0 1px 0 rgba(255,255,255,.6), 0 14px 28px rgba(32,146,255,.10)}
.how-card h3{margin:0 0 10px;font-size:1.16rem}
.how-card p{margin:0;color:var(--muted);line-height:1.68}
.how-pillars{margin-top:18px}
.how-footnote{max-width:980px;margin:28px auto 0;text-align:center;color:#4d6784;font-style:normal;padding:20px 24px;border-radius:24px;background:linear-gradient(135deg, rgba(244,251,255,.96), rgba(247,255,247,.94));border:1px solid rgba(32,146,255,.12);box-shadow:0 12px 28px rgba(20,54,92,.05)}
.curriculum-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.curriculum-card{background:linear-gradient(145deg, rgba(238,248,255,.98), rgba(245,252,239,.98));border:1px solid rgba(32,146,255,.16);display:grid;grid-template-columns:58px 1fr;gap:16px;align-items:flex-start;box-shadow:0 16px 32px rgba(20,54,92,.07)}
.curriculum-card .curriculum-icon{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,#2192ff,#26cfff,#8ce62e);display:grid;place-items:center;color:#fff;font-size:1.35rem;font-weight:900;box-shadow:0 12px 24px rgba(33,146,255,.18)}
.curriculum-card p,.unique-item p{margin:0;color:var(--muted);line-height:1.66}
.unique-quote,.network-quote{color:#fff;border-radius:24px;padding:30px 34px;box-shadow:0 20px 40px rgba(20,54,92,.14);font-size:1.08rem;line-height:1.68;font-style:italic;border:1px solid rgba(255,255,255,.12);position:relative;overflow:hidden}
.unique-quote::before,.network-quote::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg, rgba(23,101,255,.94), rgba(40,102,218,.94) 42%, rgba(38,207,255,.82) 80%, rgba(140,230,46,.70) 130%);z-index:-2;}
.unique-quote::after,.network-quote::after{content:'';position:absolute;inset:-20% auto auto -10%;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle, rgba(255,255,255,.18), transparent 68%);z-index:-1;}
.unique-list{display:grid;gap:14px;margin-top:22px}
.unique-item{background:linear-gradient(90deg, rgba(233,245,255,.96), rgba(245,251,230,.96));border:1px solid rgba(140,230,46,.14);display:grid;grid-template-columns:18px 1fr;gap:18px;align-items:start;padding:24px 22px}
.unique-item::before{content:'';width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#2192ff,#8ce62e);margin-top:10px;box-shadow:0 0 0 4px rgba(33,146,255,.08)}
.network-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:22px 0}
.network-card{background:rgba(255,255,255,.12);text-align:center;padding:30px 24px}
.network-card .icon-badge{width:62px;height:62px;border-radius:18px;margin:0 auto 14px;background:rgba(255,255,255,.12);color:#b7f533;font-size:1.35rem}
.network-card h3{color:#fff}
.network-quote{background:rgba(255,255,255,.12);margin-top:6px}
.network-closing{margin:26px auto 0;max-width:760px;text-align:center;font-size:1.18rem;line-height:1.52;font-weight:800;color:#d7ff84 !important;text-wrap:balance}
.faq-card .faq-quick button{cursor:pointer}
@media (max-width: 1100px){.context-grid,.how-pillars,.network-grid{grid-template-columns:repeat(2,1fr)}.curriculum-grid{grid-template-columns:1fr}}
@media (max-width: 700px){.context-grid,.how-pillars,.network-grid,.curriculum-grid{grid-template-columns:1fr}.unique-quote,.network-quote{padding:24px 22px}.curriculum-card{grid-template-columns:52px 1fr}}


@media (max-width: 1100px){
  .module-cards.count-4{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 820px){
  .module-group{padding:22px 18px 18px; border-radius:28px}
  .module-group-head{flex-direction:column; align-items:flex-start}
  .module-group-count{min-width:auto}
}
@media (max-width: 680px){
  .module-cards,.module-cards.count-4{grid-template-columns:1fr;}
  .module-card p{max-width:none}
}

.hero-tools-image-wrap{padding:4px;background:radial-gradient(circle at 50% 46%, rgba(255,255,255,.18), transparent 54%), radial-gradient(circle at 82% 18%, rgba(140,230,46,.16), transparent 26%), radial-gradient(circle at 18% 18%, rgba(38,207,255,.18), transparent 28%), linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.02)); border-color:rgba(32,146,255,.08); box-shadow:inset 0 1px 0 rgba(255,255,255,.28);}
.hero-tools-image{width:min(100%, 760px);max-height:420px;object-fit:contain;transform:translateY(6px) scale(1.08);transform-origin:center center;filter:drop-shadow(0 22px 36px rgba(20,54,92,.10));mix-blend-mode:multiply;opacity:.98;}

@media (max-width: 768px){.brand-logo{height:128px}.footer-logo{height:146px}.nav-assistant-avatar{width:32px;height:32px}.hero-tools-image{width:min(100%, 660px);max-height:360px;transform:translateY(4px) scale(1.03);}}

@media (max-width: 540px){
  .footer-meta{text-align:left; justify-self:start;}
  .footer-contact-line{justify-content:flex-start;}
}


.header-inner .nav-cta{padding-inline:24px}
.lang-dropdown{margin-left:2px}
.main-nav .nav-link{position:relative}
.main-nav .nav-link::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:2px; border-radius:999px; background:linear-gradient(90deg,#1f71ff,#8be52f); transform:scaleX(0); transform-origin:left; transition:transform .22s ease;}
.main-nav .nav-link:hover::after{transform:scaleX(1);}

.unique-quote{max-width:980px; margin:0 auto 20px; border-left:0;}
.unique-quote p,.network-quote p{margin:0}
.unique-list{margin-top:18px}

@media (max-width: 1100px){
  .footer-grid{grid-template-columns:1fr; gap:22px}
  .footer-meta{justify-self:start; text-align:left; max-width:none}
  .footer-statement{margin-left:0}
  .footer-contact-line{justify-content:flex-start}
}
@media (max-width: 920px){
  .header-inner{padding:6px 0}
}
@media (max-width: 768px){
  .footer-brand{align-items:center; text-align:center}
  .footer-meta{text-align:center !important; justify-self:center}
  .footer-statement{margin-left:auto; margin-right:auto}
  .footer-contact-line{justify-content:center}
}
