:root{--red:#ca143e;--red-hover:#ae1035;--green:#176b4b;--green-soft:rgba(23,107,75,.08);--ink:#111116;--body:#3a3a42;--muted:#70717a;--paper:#f7f7f9;--line:#e5e5ea;--dark:#08090c;--ease:220ms cubic-bezier(.2,.7,.2,1);--max:1200px;--shadow:0 18px 48px rgba(20,22,32,.07)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.65 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}.wrap{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.skip{position:absolute;left:12px;top:-60px;padding:12px;background:#fff;color:#111;z-index:999;border-radius:8px}.skip:focus{top:12px}
.header{height:84px;position:sticky;top:0;z-index:100;background:rgba(8,9,12,.95);color:#fff;border-bottom:1px solid rgba(255,255,255,.1);backdrop-filter:blur(18px)}.header-row{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{width:194px;display:inline-flex;flex:0 0 auto}.brand img{width:100%;height:auto}.nav{display:flex;align-items:center;gap:clamp(18px,3vw,38px)}.nav a{font-size:13px;font-weight:550;color:rgba(255,255,255,.76);transition:color var(--ease),background var(--ease),border-color var(--ease)}.nav a:hover{color:#fff}.nav .nav-cta{display:flex;align-items:center;gap:16px;padding:11px 17px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(255,255,255,.06);color:#fff}.nav .nav-cta:hover{background:var(--red);border-color:var(--red);transform:translateY(-1px)}.menu-button{display:none}
.hero{position:relative;overflow:hidden;isolation:isolate;background:var(--dark);color:#fff;padding:100px 0 92px}.hero:before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 73% 47%,rgba(41,47,61,.48),transparent 44%),linear-gradient(115deg,#08090c,#10131a)}.glow{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:-1}.glow-red{width:300px;height:300px;right:4%;top:-140px;background:rgba(202,20,62,.15)}.glow-green{width:230px;height:230px;left:40%;bottom:-200px;background:rgba(23,107,75,.08)}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:72px}.eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:700;letter-spacing:.16em;color:#777984;line-height:1.4}.eyebrow>b{width:23px;height:2px;background:var(--red);border-radius:2px}.eyebrow.light{color:rgba(255,255,255,.58)}.eyebrow.light>b{width:7px;height:7px;border-radius:50%;box-shadow:0 0 0 4px rgba(202,20,62,.12)}.eyebrow i{width:3px;height:3px;background:var(--red);border-radius:50%}.hero h1{font-size:clamp(46px,6.2vw,76px);font-weight:750;letter-spacing:-.065em;line-height:1.04;margin:27px 0 23px}.hero h1 em,.section-title h2 em,.approach-intro h2 em,.ecosystem-intro h2 em,.about-panel h2 em,.closing h2 em{font-style:normal;color:rgba(255,255,255,.52)}.hero-lead{max-width:610px;color:rgba(255,255,255,.73);font-size:17px;line-height:1.75;margin:0}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:34px}.button{min-height:50px;padding:0 21px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:20px;font-size:13px;font-weight:650;transition:transform var(--ease),background var(--ease),box-shadow var(--ease),border-color var(--ease)}.button span{font-size:17px;transition:transform var(--ease)}.button:hover span{transform:translate(2px,-2px)}.primary{color:#fff;background:var(--red);box-shadow:0 7px 22px rgba(202,20,62,.23)}.primary:hover{background:var(--red-hover);transform:translateY(-2px);box-shadow:0 12px 28px rgba(202,20,62,.29)}.underlink{font-size:13px;font-weight:650;color:rgba(255,255,255,.78);display:flex;gap:10px;align-items:center;transition:gap var(--ease),color var(--ease)}.underlink:hover{gap:15px;color:#fff}.hero-foot{font-size:11px;color:rgba(255,255,255,.4);margin-top:22px;letter-spacing:.02em}
.hero-art{position:relative;min-height:440px;display:grid;place-items:center}.orbit{position:absolute;border:1px solid rgba(255,255,255,.075);border-radius:50%}.orbit-a{width:430px;height:430px}.orbit-b{width:340px;height:340px;border-color:rgba(202,20,62,.14)}.glass-box{position:relative;width:min(100%,390px);padding:22px;border:1px solid rgba(255,255,255,.17);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.045));box-shadow:0 30px 90px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.14);backdrop-filter:blur(22px)}.box-meta{display:flex;justify-content:space-between;font-size:8px;font-weight:700;letter-spacing:.13em;color:rgba(255,255,255,.48)}.live{display:flex;align-items:center;gap:6px;color:rgba(255,255,255,.68)}.live b{height:5px;width:5px;border-radius:50%;background:var(--green);box-shadow:0 0 10px rgba(23,107,75,.8)}.core{text-align:center;padding:34px 0 31px}.core-icon{width:62px;height:62px;display:grid;place-items:center;margin:0 auto 15px;border-radius:19px;transform:rotate(45deg);background:rgba(202,20,62,.13);border:1px solid rgba(202,20,62,.25)}.core-icon b{width:18px;height:18px;border-radius:50%;background:var(--red);box-shadow:0 0 30px rgba(202,20,62,.7)}.core strong{font-size:26px;font-weight:650;line-height:1.18;letter-spacing:-.045em}.core small{display:block;margin-top:10px;color:rgba(255,255,255,.47);font-size:10px}.mini-list{border-top:1px solid rgba(255,255,255,.12)}.mini-list div{display:flex;align-items:center;gap:14px;padding:13px 1px;border-bottom:1px solid rgba(255,255,255,.08);font-size:11px;color:rgba(255,255,255,.8)}.mini-list div:last-child{border:0;padding-bottom:2px}.mini-list i{font-size:9px;font-style:normal;font-weight:700;color:var(--red)}.mini-list b{margin-left:auto;color:rgba(255,255,255,.4);font-weight:400}.float-tag{position:absolute;z-index:2;padding:10px 13px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:rgba(20,23,30,.78);backdrop-filter:blur(16px);font-size:10px;color:rgba(255,255,255,.82);box-shadow:0 12px 35px rgba(0,0,0,.2)}.tag-a{top:75px;right:-7px}.tag-b{bottom:60px;left:-17px}.red-dot,.green-dot{display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:var(--red)}.green-dot{background:var(--green)}
.numbers{background:white;border-bottom:1px solid var(--line)}.numbers-grid{min-height:126px;display:grid;grid-template-columns:1fr 1px 1fr 1px 1fr 1.2fr;align-items:center;gap:30px}.number{display:flex;flex-direction:column}.number strong{font-size:31px;line-height:1.15;letter-spacing:-.06em;font-weight:750}.number strong span{color:var(--red)}.number small{font-size:11px;color:var(--muted)}.vline{height:42px;background:var(--line)}.numbers-grid>p{font-size:10px;line-height:1.6;text-align:right;color:var(--muted)}
.section{padding:108px 0;background:var(--paper)}.soft{background:#f0f1f4}.section-title{max-width:720px;margin-bottom:44px}.section-title h2,.approach-intro h2,.ecosystem-intro h2,.about-panel h2,.closing h2{font-size:clamp(34px,4.4vw,52px);line-height:1.1;letter-spacing:-.055em;font-weight:730;margin:20px 0 17px}.section-title h2 em,.approach-intro h2 em,.ecosystem-intro h2 em,.about-panel h2 em{color:#8b8d96}.section-title>p,.approach-intro>p,.ecosystem-intro>p,.about-panel p{max-width:630px;margin:0;color:var(--muted);font-size:14px;line-height:1.8}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{min-height:350px;padding:26px;border-radius:22px;border:1px solid rgba(255,255,255,.9);background:rgba(255,255,255,.79);box-shadow:0 12px 38px rgba(20,22,32,.045);backdrop-filter:blur(16px);transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(202,20,62,.2)}.card-label{display:flex;justify-content:space-between;color:#92939b;font-size:9px;font-weight:700;letter-spacing:.12em}.card-label span{color:var(--red);font-size:15px}.icon{width:45px;height:45px;display:grid;place-items:center;border-radius:14px;margin:30px 0 20px}.icon svg{width:22px;height:22px}.red-icon{color:var(--red);background:rgba(202,20,62,.09)}.green-icon{color:var(--green);background:var(--green-soft)}.card h3,.aud-card h3{font-size:19px;font-weight:680;letter-spacing:-.035em;margin:0 0 10px}.card p,.aud-card p{font-size:12px;line-height:1.75;color:var(--muted);margin:0}.card ul{list-style:none;padding:17px 0 0;margin:18px 0 0;border-top:1px solid var(--line);display:grid;gap:8px}.card li{font-size:11px;color:#555660}.card li:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--red);margin:0 9px 1px 0}
.approach{display:grid;grid-template-columns:.85fr 1.15fr;gap:95px;align-items:start}.approach-intro{position:sticky;top:120px}.approach-intro .button{margin-top:27px}.secondary{background:rgba(255,255,255,.72);border:1px solid #dcdde3;color:var(--ink);box-shadow:0 4px 15px rgba(18,20,30,.035)}.secondary:hover{transform:translateY(-2px);background:white;border-color:rgba(202,20,62,.3);box-shadow:var(--shadow)}.steps{border-top:1px solid #d9dae0}.step{display:grid;grid-template-columns:46px 1fr 20px;gap:20px;align-items:start;padding:27px 0;border-bottom:1px solid #d9dae0}.step>b{color:var(--red);font-size:11px;padding-top:4px}.step h3{font-size:17px;margin:0 0 8px;font-weight:680;letter-spacing:-.025em}.step p{max-width:570px;font-size:12px;line-height:1.8;color:var(--muted);margin:0}.step>span{color:#a0a1a9;transition:color var(--ease),transform var(--ease)}.step:hover>span{color:var(--red);transform:translate(2px,-2px)}
.centered{text-align:center;margin-inline:auto}.centered .eyebrow{justify-content:center}.centered>p{margin-inline:auto}.audience{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:45px}.aud-card{padding:26px;border-radius:18px;background:white;border:1px solid var(--line);transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease)}.aud-card:hover{transform:translateY(-3px);border-color:rgba(23,107,75,.25);box-shadow:var(--shadow)}.aud-card>b{display:inline-block;color:var(--green);font-size:10px;margin-bottom:24px}
.ecosystem{background:white}.ecosystem-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:center}.projects{display:grid;grid-template-columns:1fr 1fr;gap:14px}.project{min-height:320px;padding:24px;border:1px solid var(--line);border-radius:20px;background:#f8f8fa;display:flex;flex-direction:column;transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease)}.project:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(202,20,62,.22)}.project-dark{color:white;background:linear-gradient(145deg,#12151d,#08090c);border-color:rgba(255,255,255,.1)}.project-dark:hover{border-color:rgba(202,20,62,.42)}.project-label{display:flex;justify-content:space-between;color:#858791;font-size:8px;letter-spacing:.14em;font-weight:700}.project-label b{color:var(--red);font-size:17px}.notx{font-size:42px;letter-spacing:-.08em;margin:40px 0 18px}.notx span,.community span{color:var(--red)}.community{font-size:27px;line-height:.95;letter-spacing:-.06em;margin:40px 0 18px}.project h3{font-size:16px;margin:0 0 8px}.project p{font-size:11px;color:var(--muted);line-height:1.75;margin:0 0 22px}.project-dark p{color:rgba(255,255,255,.57)}.project small{margin-top:auto;padding-top:14px;border-top:1px solid var(--line);font-size:10px;font-weight:700;display:flex;justify-content:space-between}.project-dark small{border-color:rgba(255,255,255,.13);color:rgba(255,255,255,.85)}
.about{padding-top:25px;background:#fff}.about-panel{display:grid;grid-template-columns:.35fr 1fr;gap:55px;padding:clamp(30px,5vw,64px);border:1px solid rgba(255,255,255,.9);border-radius:26px;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(245,245,248,.84));box-shadow:var(--shadow)}.about-symbol{min-height:220px;display:grid;place-items:center;border-radius:19px;background:radial-gradient(circle at 50% 45%,rgba(202,20,62,.12),transparent 42%),#f0f1f4;border:1px solid #e7e7eb}.about-symbol b{width:74px;height:74px;border:1px solid rgba(202,20,62,.25);border-radius:23px;transform:rotate(45deg);position:relative}.about-symbol b:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:var(--red);top:27px;left:27px;box-shadow:0 0 28px rgba(202,20,62,.35)}.about-panel h2{font-size:clamp(30px,4vw,44px);margin-top:15px}.facts{display:flex;gap:44px;margin:27px 0 25px}.facts div{display:flex;flex-direction:column}.facts strong{font-size:27px;line-height:1.2;letter-spacing:-.05em}.facts small{font-size:10px;color:var(--muted)}.text-link{display:inline-flex;gap:10px;font-size:13px;font-weight:650;transition:gap var(--ease),color var(--ease)}.text-link:hover{gap:15px;color:var(--red)}
.closing{position:relative;overflow:hidden;isolation:isolate;text-align:center;color:white;background:#08090c;padding:100px 0}.closing:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 0%,rgba(202,20,62,.13),transparent 55%),linear-gradient(120deg,#08090c,#12151c)}.closing-inner{max-width:720px;margin:auto}.closing .eyebrow{justify-content:center}.closing h2{font-size:clamp(38px,5vw,58px)}.closing h2 em{color:rgba(255,255,255,.5)}.closing p{max-width:540px;margin:0 auto 28px;color:rgba(255,255,255,.63);font-size:14px}.large{min-height:56px;padding-inline:26px}.closing small{display:block;color:rgba(255,255,255,.36);font-size:10px;margin-top:16px}
.footer{background:#08090c;color:rgba(255,255,255,.72);border-top:1px solid rgba(255,255,255,.1)}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:45px;padding-top:58px;padding-bottom:52px}.footer-brand{width:170px}.footer-brand>img{width:100%}.footer-grid p{color:rgba(255,255,255,.4);font-size:10px;margin-top:12px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-grid>div>b{font-size:9px;letter-spacing:.14em;color:rgba(255,255,255,.35);margin-bottom:5px}.footer-grid>div>a:not(.brand){font-size:11px;color:rgba(255,255,255,.65);transition:color var(--ease)}.footer-grid>div>a:hover{color:white}.footer-bottom{display:flex;justify-content:space-between;gap:18px;border-top:1px solid rgba(255,255,255,.1);padding-top:17px;padding-bottom:20px;color:rgba(255,255,255,.35);font-size:9px}
body:not(.reveal-ready) .reveal{opacity:1;transform:none}.reveal{opacity:0;transform:translateY(14px);transition:opacity 650ms ease,transform 650ms ease}.reveal.visible{opacity:1;transform:translateY(0)}.delay{transition-delay:110ms}
a:focus-visible,button:focus-visible{outline:3px solid rgba(202,20,62,.5);outline-offset:3px}
@media(max-width:980px){.hero-grid{gap:34px;grid-template-columns:1fr .85fr}.hero-art{min-height:380px}.orbit-a{width:350px;height:350px}.orbit-b{width:285px;height:285px}.glass-box{padding:18px}.approach,.ecosystem-grid{gap:44px}.footer-grid{gap:28px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.header{height:72px}.brand{width:164px}.menu-button{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;border:1px solid rgba(255,255,255,.17);border-radius:12px;background:rgba(255,255,255,.06);cursor:pointer}.menu-button i{width:17px;height:1.5px;margin:auto;background:#fff;transition:transform var(--ease)}.menu-button[aria-expanded=true] i:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-button[aria-expanded=true] i:last-child{transform:translateY(-3.75px) rotate(-45deg)}.nav{display:none;position:absolute;top:71px;left:12px;right:12px;flex-direction:column;align-items:stretch;gap:4px;padding:14px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(8,9,12,.985);box-shadow:0 20px 48px rgba(0,0,0,.35);backdrop-filter:blur(18px)}.nav.open{display:flex}.nav a{padding:13px 12px;border-radius:9px}.nav a:hover{background:rgba(255,255,255,.07)}.nav .nav-cta{justify-content:space-between;margin-top:6px;background:rgba(202,20,62,.12);border-color:rgba(202,20,62,.5)}.hero{padding:72px 0 58px}.hero-grid{grid-template-columns:1fr;gap:35px}.hero h1{font-size:clamp(43px,12vw,60px);margin:23px 0 18px}.hero-lead{font-size:15px}.actions{gap:18px;margin-top:26px}.hero-art{min-height:370px;width:100%;max-width:440px;margin:auto}.glass-box{width:min(100%,350px)}.orbit-a{width:340px;height:340px}.orbit-b{width:270px;height:270px}.tag-a{top:48px;right:0}.tag-b{bottom:38px;left:0}.numbers-grid{grid-template-columns:repeat(3,1fr);gap:14px;padding-block:26px}.number strong{font-size:26px}.number small{font-size:9px}.vline{height:38px}.numbers-grid>p{grid-column:1/-1;text-align:left;padding-top:12px;border-top:1px solid var(--line)}.section{padding:76px 0}.section-title{margin-bottom:30px}.section-title h2,.approach-intro h2,.ecosystem-intro h2{font-size:clamp(33px,9vw,44px)}.cards,.audience{grid-template-columns:1fr;gap:12px}.card{min-height:unset;padding:23px}.icon{margin:24px 0 16px}.approach,.ecosystem-grid{grid-template-columns:1fr;gap:34px}.approach-intro{position:static}.step{grid-template-columns:32px 1fr 16px;gap:12px;padding:22px 0}.step h3{font-size:15px}.step p{font-size:11px}.centered>p{margin-inline:auto}.audience{margin-top:30px}.aud-card{padding:22px}.aud-card>b{margin-bottom:14px}.projects{grid-template-columns:1fr}.project{min-height:275px}.about{padding-top:0}.about-panel{grid-template-columns:1fr;gap:25px;padding:25px}.about-symbol{min-height:150px}.facts{gap:35px}.closing{padding:76px 0}.closing h2{font-size:clamp(36px,9vw,48px)}.footer-grid{grid-template-columns:1fr 1fr;gap:32px 20px;padding-top:42px;padding-bottom:38px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:6px}}
@media(max-width:380px){.wrap{width:calc(100% - 30px)}.brand{width:148px}.hero h1{font-size:40px}.eyebrow{font-size:9px;letter-spacing:.12em}.actions{align-items:stretch;flex-direction:column}.actions .button{width:100%}.glass-box{padding:16px}.float-tag{font-size:9px}.numbers-grid{gap:8px}.number strong{font-size:23px}.number small{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}


/* ==========================================================
   ANALITYKUS — ULTRA PREMIUM LIGHT GLASS
   LIGHT MODE ONLY — navigation and mega menu refinement
   ========================================================== */
:root {
  color-scheme: light;
  --red: #CA143E;
  --red-hover: #AE1035;
  --red-soft: rgba(202,20,62,.08);
  --red-border: rgba(202,20,62,.22);
  --green: #176B4B;
  --green-hover: #12573D;
  --green-soft: rgba(23,107,75,.08);
  --paper: #F7F7F9;
  --surface: #FFFFFF;
  --surface-soft: #F5F5F7;
  --ink: #111111;
  --body: #3A3A3C;
  --muted: #6E6E73;
  --line: #E5E5EA;
  --shadow: 0 12px 40px rgba(17,24,39,.055);
}
html { color-scheme: light !important; scroll-padding-top: 100px; }
body {
  background: var(--paper) !important;
  color: var(--ink) !important;
}

/* Keep the header light in all browser/system color preferences. */
.header {
  height: 78px;
  position: sticky;
  top: 0;
  z-index: 100;
  overflow: visible;
  color: var(--ink) !important;
  background: rgba(255,255,255,.88) !important;
  border-bottom: 1px solid rgba(17,24,39,.075) !important;
  box-shadow: 0 6px 24px rgba(17,24,39,.035);
  -webkit-backdrop-filter: blur(22px) saturate(150%);
  backdrop-filter: blur(22px) saturate(150%);
}
.header-row { position: relative; gap: 24px; }
.brand { width: 178px; flex: 0 0 auto; }
.brand img {
  width: 100%;
  height: auto;
  max-height: 45px;
  object-fit: contain;
  object-position: left center;
}
.nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(14px,2.05vw,28px);
  min-width: 0;
}
.nav-link,
.nav-service-trigger {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 44px;
  padding: 7px 2px;
  border: 0;
  background: transparent;
  color: #30323A !important;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  cursor: pointer;
  transition: color .2s ease, opacity .2s ease;
}
.nav-link:hover,
.nav-service-trigger:hover,
.nav-link:focus-visible,
.nav-service-trigger:focus-visible {
  color: var(--green) !important;
}
.nav-chevron {
  width: 14px;
  height: 14px;
  transition: transform .2s ease;
}
.nav-service-wrap.is-open .nav-chevron { transform: rotate(180deg); }
.nav-cta {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 0 17px;
  border: 1px solid var(--red);
  border-radius: 11px;
  background: var(--red);
  color: #fff !important;
  font-size: 12px;
  font-weight: 700;
  box-shadow: 0 6px 16px rgba(202,20,62,.16);
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
  white-space: nowrap;
}
.nav-cta:hover {
  background: var(--red-hover);
  border-color: var(--red-hover);
  transform: translateY(-1px);
  box-shadow: 0 9px 21px rgba(202,20,62,.2);
}
.menu-button { display: none; }

.nav-service-wrap { position: static; display: flex; align-items: center; }
.mega-menu[hidden] { display: none !important; }
.mega-menu {
  position: absolute;
  top: calc(100% + 10px);
  left: 50%;
  z-index: 150;
  width: min(1040px, calc(100vw - 48px));
  padding: 27px 28px 18px;
  border: 1px solid rgba(255,255,255,.97);
  border-radius: 23px;
  background: rgba(255,255,255,.965);
  box-shadow: 0 26px 75px rgba(17,24,39,.13), 0 4px 15px rgba(17,24,39,.055), inset 0 1px 0 rgba(255,255,255,.98);
  -webkit-backdrop-filter: blur(24px) saturate(145%);
  backdrop-filter: blur(24px) saturate(145%);
  transform: translate(-50%, 7px);
  opacity: 0;
  animation: mega-enter .19s ease forwards;
}
@keyframes mega-enter {
  to { transform: translate(-50%,0); opacity: 1; }
}
.mega-menu-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 0 2px 20px;
  border-bottom: 1px solid var(--line);
}
.mega-eyebrow {
  display: inline-block;
  color: var(--red);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .15em;
}
.mega-menu-head h2 {
  margin: 7px 0 0;
  color: var(--ink);
  font-size: 21px;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.25;
}
.mega-menu-mark {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border: 1px solid rgba(202,20,62,.16);
  border-radius: 14px;
  background: rgba(202,20,62,.055);
}
.mega-menu-mark i {
  width: 12px; height: 12px; border-radius: 50%;
  background: var(--red); box-shadow: 0 0 0 6px rgba(202,20,62,.09);
}
.mega-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 14px;
  padding: 19px 0;
}
.mega-column {
  min-width: 0;
  padding: 16px 15px 13px;
  border: 1px solid rgba(229,229,234,.88);
  border-radius: 16px;
  background: linear-gradient(145deg,rgba(255,255,255,.98),rgba(248,248,250,.92));
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.mega-column:hover {
  border-color: rgba(23,107,75,.22);
  box-shadow: 0 8px 24px rgba(17,24,39,.045);
  transform: translateY(-1px);
}
.mega-category { min-width: 0; }
.mega-category summary {
  display: grid;
  grid-template-columns: 39px minmax(0,1fr) 14px;
  align-items: start;
  gap: 11px;
  list-style: none;
  cursor: pointer;
  outline-offset: 4px;
}
.mega-category summary::-webkit-details-marker { display: none; }
.mega-category-icon {
  width: 39px; height: 39px;
  display: grid; place-items: center;
  border-radius: 12px;
}
.mega-category-icon svg { width: 20px; height: 20px; }
.mega-category-copy { min-width: 0; display: flex; flex-direction: column; gap: 7px; }
.mega-category-copy strong {
  color: var(--ink);
  font-size: 12px;
  font-weight: 750;
  line-height: 1.35;
}
.mega-category-copy small {
  color: #6E6E73;
  font-size: 10.5px;
  line-height: 1.55;
  font-weight: 450;
}
.mega-summary-chevron {
  width: 13px; height: 13px;
  color: #8B8D96;
  margin-top: 4px;
  transition: transform .18s ease;
}
.mega-category[open] .mega-summary-chevron { transform: rotate(180deg); }
.mega-items {
  display: grid;
  gap: 5px;
  margin-top: 15px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}
.mega-item {
  min-height: 39px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 9px;
  border-radius: 9px;
  color: #3A3A3C;
  font-size: 10.5px;
  font-weight: 600;
  line-height: 1.4;
  transition: color .18s ease, background .18s ease, transform .18s ease;
}
.mega-item b {
  flex: 0 0 auto;
  color: #92939B;
  font-size: 13px;
  font-weight: 500;
}
.mega-item:hover {
  color: var(--green);
  background: rgba(23,107,75,.065);
  transform: translateX(2px);
}
.mega-item:hover b { color: var(--green); }
.mega-menu-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 2px 0;
  border-top: 1px solid var(--line);
  color: var(--muted);
  font-size: 10.5px;
}
.mega-menu-foot a {
  color: var(--green);
  font-weight: 700;
  transition: color .18s ease;
}
.mega-menu-foot a:hover { color: var(--green-hover); }
.mega-menu-foot b { margin-left: 5px; }

/* Light-only visual treatment for the existing hero and dark-looking surfaces. */
.hero {
  color: var(--ink) !important;
  background: #F7F7F9 !important;
  padding-top: 90px;
  padding-bottom: 82px;
}
.hero:before {
  background:
    radial-gradient(ellipse at 78% 36%,rgba(202,20,62,.055),transparent 36%),
    radial-gradient(ellipse at 10% 85%,rgba(23,107,75,.035),transparent 32%),
    linear-gradient(135deg,#FFFFFF 0%,#F7F7F9 68%,#F4F4F7 100%) !important;
}
.glow-red { background: rgba(202,20,62,.045) !important; }
.glow-green { background: rgba(23,107,75,.035) !important; }
.eyebrow.light { color: #656873 !important; }
.hero h1 { color: var(--ink) !important; }
.hero h1 em { color: #777A84 !important; }
.hero-lead { color: #4B4D55 !important; }
.hero-foot { color: #777A84 !important; }
.underlink { color: #4A4D56 !important; }
.underlink:hover { color: var(--green) !important; }
.hero-art .orbit { border-color: rgba(31,42,60,.085) !important; }
.hero-art .orbit-b { border-color: rgba(202,20,62,.12) !important; }
.glass-box {
  background: rgba(255,255,255,.82) !important;
  border: 1px solid rgba(255,255,255,.98) !important;
  box-shadow: 0 22px 60px rgba(17,24,39,.085), inset 0 1px 0 #fff !important;
  -webkit-backdrop-filter: blur(22px) saturate(135%);
  backdrop-filter: blur(22px) saturate(135%);
}
.box-meta { color: #7C808B !important; }
.live { color: #606570 !important; }
.core strong { color: #171920 !important; }
.core small { color: #777C87 !important; }
.mini-list { border-top-color: rgba(17,24,39,.09) !important; }
.mini-list div { color: #41444D !important; border-bottom-color: rgba(17,24,39,.07) !important; }
.mini-list b { color: #90949D !important; }
.float-tag {
  background: rgba(255,255,255,.94) !important;
  border-color: rgba(255,255,255,.98) !important;
  color: #343741 !important;
  box-shadow: 0 9px 28px rgba(17,24,39,.09) !important;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}
.proof-strip, .numbers { background: #FFFFFF !important; }
.section, .section-light { background: #F7F7F9 !important; }
.section-soft, .soft { background: #F1F2F4 !important; }
.ecosystem-section, .ecosystem { background: #FFFFFF !important; }
.about-section, .about { background: #FFFFFF !important; }
.project-card-dark, .project-dark {
  color: var(--ink) !important;
  background: linear-gradient(145deg,#FFFFFF,#F5F6F8) !important;
  border-color: var(--line) !important;
}
.project-card-dark p, .project-dark p { color: var(--muted) !important; }
.project-card-dark .project-link, .project-dark small {
  color: var(--ink) !important;
  border-color: var(--line) !important;
}
.wordmark-light { color: var(--ink) !important; }
.wordmark-light span { color: var(--red) !important; }
.final-cta, .closing {
  color: var(--ink) !important;
  background: #F4F5F7 !important;
}
.final-cta:before, .closing:before {
  background:
    radial-gradient(ellipse at 50% 0%,rgba(202,20,62,.06),transparent 52%),
    linear-gradient(120deg,#FFFFFF,#F2F3F6) !important;
}
.final-cta h2, .closing h2 { color: var(--ink) !important; }
.final-cta h2 span, .closing h2 em { color: #777A84 !important; }
.final-cta p, .closing p { color: #5C606B !important; }
.cta-caption, .closing small { color: #777C87 !important; }
.site-footer, .footer {
  color: #555963 !important;
  background: #FFFFFF !important;
  border-top: 1px solid var(--line) !important;
}
.footer-grid p { color: #777C87 !important; }
.footer-grid > div > b { color: #777C87 !important; }
.footer-grid > div > a:not(.brand) { color: #555963 !important; }
.footer-grid > div > a:hover { color: var(--green) !important; }
.footer-bottom {
  border-top-color: var(--line) !important;
  color: #777C87 !important;
}

/* Cards, links and focus states: green is secondary, red remains primary CTA. */
.card, .aud-card, .project {
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.card:hover, .aud-card:hover, .project:hover {
  border-color: rgba(23,107,75,.22);
}
.card li:before { background: var(--green); }
.step-number, .step > b { color: var(--green); }
.text-link:hover, .footer-col a:hover { color: var(--green); }
:focus-visible {
  outline: 3px solid rgba(23,107,75,.46) !important;
  outline-offset: 3px;
}
.btn-primary, .button.primary, .nav-cta {
  background: var(--red) !important;
  color: #fff !important;
}
.btn-primary:hover, .button.primary:hover, .nav-cta:hover {
  background: var(--red-hover) !important;
}
.btn-secondary:hover, .button.secondary:hover {
  border-color: rgba(23,107,75,.32) !important;
  color: var(--green) !important;
}
:target { scroll-margin-top: 104px; }

/* Tablet and mobile: large opaque light panel, categorized services accordion. */
@media (max-width: 1024px) {
  .header { height: 76px; }
  .header-row { gap: 14px; }
  .brand { width: 158px; }
  .menu-button {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 6px;
    width: 46px;
    height: 46px;
    margin-left: auto;
    border: 1px solid rgba(17,24,39,.12);
    border-radius: 13px;
    background: rgba(255,255,255,.9);
    box-shadow: 0 3px 12px rgba(17,24,39,.045);
    cursor: pointer;
  }
  .menu-button i {
    display: block;
    width: 18px;
    height: 1.7px;
    margin-inline: auto;
    border-radius: 2px;
    background: #282B33;
    transition: transform .18s ease;
  }
  .menu-button[aria-expanded="true"] i:first-child { transform: translateY(3.85px) rotate(45deg); }
  .menu-button[aria-expanded="true"] i:last-child { transform: translateY(-3.85px) rotate(-45deg); }
  .nav {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    max-height: calc(100dvh - 94px);
    overflow-y: auto;
    overscroll-behavior: contain;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 3px;
    padding: 13px;
    border: 1px solid rgba(255,255,255,.98);
    border-radius: 19px;
    background: rgba(255,255,255,.985);
    box-shadow: 0 22px 65px rgba(17,24,39,.16), 0 3px 12px rgba(17,24,39,.045);
    -webkit-backdrop-filter: blur(24px) saturate(145%);
    backdrop-filter: blur(24px) saturate(145%);
  }
  .nav.open { display: flex; }
  .nav-link, .nav-service-trigger {
    width: 100%;
    min-height: 48px;
    justify-content: space-between;
    padding: 11px 12px;
    border-radius: 10px;
    font-size: 14px;
    text-align: left;
    white-space: normal;
  }
  .nav-link:hover, .nav-service-trigger:hover {
    background: rgba(23,107,75,.055);
  }
  .nav-service-wrap { display: block; }
  .mega-menu {
    position: static;
    width: 100%;
    margin: 4px 0 8px;
    padding: 15px;
    border-radius: 15px;
    background: rgba(248,249,251,.98);
    border-color: rgba(225,227,232,.9);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.95);
    transform: none;
    animation: none;
    opacity: 1;
  }
  .mega-menu-head { padding-bottom: 12px; }
  .mega-menu-head h2 { font-size: 16px; }
  .mega-menu-mark { width: 36px; height: 36px; border-radius: 11px; }
  .mega-grid { display: grid; grid-template-columns: 1fr; gap: 8px; padding: 11px 0; }
  .mega-column {
    padding: 0;
    border: 1px solid #E5E5EA;
    border-radius: 12px;
    background: rgba(255,255,255,.97);
    box-shadow: 0 2px 8px rgba(17,24,39,.025);
  }
  .mega-column:hover { transform: none; }
  .mega-category summary {
    grid-template-columns: 36px minmax(0,1fr) 14px;
    align-items: center;
    padding: 12px;
    gap: 10px;
  }
  .mega-category-icon { width: 36px; height: 36px; }
  .mega-category-copy strong { font-size: 12px; }
  .mega-category-copy small { font-size: 10px; }
  .mega-items { margin: 0 12px 10px 58px; padding-top: 7px; }
  .mega-item { min-height: 40px; padding: 8px 8px; font-size: 11px; }
  .mega-menu-foot {
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
    padding-top: 11px;
  }
  .nav-cta {
    min-height: 49px;
    margin-top: 6px;
    justify-content: center;
    font-size: 13px;
  }
  body.menu-open { overflow: hidden; }
}
@media (max-width: 600px) {
  .header { height: 70px; }
  .wrap { width: calc(100% - 36px); }
  .brand { width: 142px; }
  .brand img { max-height: 38px; }
  .nav { top: calc(100% + 6px); max-height: calc(100dvh - 82px); }
  .hero {
    padding-top: 64px;
    padding-bottom: 56px;
  }
  .hero:before {
    background:
      radial-gradient(ellipse at 85% 8%,rgba(202,20,62,.045),transparent 35%),
      linear-gradient(145deg,#FFFFFF,#F7F7F9) !important;
  }
  .hero-art { min-height: 350px; }
  .glass-box { width: min(100%,350px); }
  .float-tag { font-size: 9px; }
  .section { padding-top: 76px; padding-bottom: 76px; }
  .mega-menu-head h2 { font-size: 15px; }
  .mega-menu-foot a { line-height: 1.45; }
}
@media (max-width: 380px) {
  .wrap { width: calc(100% - 30px); }
  .brand { width: 128px; }
  .hero h1 { font-size: 40px; }
  .mega-menu { padding: 12px; }
  .mega-category summary { grid-template-columns: 32px minmax(0,1fr) 12px; padding: 10px; }
  .mega-category-icon { width: 32px; height: 32px; }
  .mega-items { margin-left: 51px; }
}
@media (prefers-color-scheme: dark) {
  :root, html { color-scheme: light !important; }
  body { background: #F7F7F9 !important; color: #111111 !important; }
  .header { background: rgba(255,255,255,.88) !important; color: #111 !important; }
  .hero { background: #F7F7F9 !important; color: #111 !important; }
  .hero:before { background: linear-gradient(135deg,#FFFFFF,#F7F7F9) !important; }
  .glass-box, .float-tag, .mega-menu, .nav {
    background-color: rgba(255,255,255,.965) !important;
    color: #111 !important;
  }
  .closing, .final-cta, .footer, .site-footer {
    color: #111 !important;
    background: #FFFFFF !important;
  }
  .project-dark { color: #111 !important; background: #F5F6F8 !important; }
}
@media (prefers-reduced-motion: reduce) {
  .mega-menu { animation: none !important; transition: none !important; }
  .mega-column, .mega-item, .nav-cta, .nav-link, .nav-service-trigger { transition: none !important; }
}


/* Final readability refinements for the light interface. */
.section-title h2 em,
.approach-intro h2 em,
.ecosystem-intro h2 em,
.about-panel h2 em,
.closing h2 em {
  color: #777A84 !important;
}
.mega-category-copy strong { font-size: 13px; }
.mega-category-copy small { font-size: 11px; color: #62656F; }
.mega-item { font-size: 11.5px; }
.mega-menu-foot { font-size: 11px; }
@media (max-width: 1024px) {
  body.menu-open::before {
    content: "";
    position: fixed;
    z-index: 90;
    inset: 76px 0 0;
    background: rgba(17,24,39,.10);
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
    pointer-events: none;
  }
  .mega-category-copy strong { font-size: 13px; }
  .mega-category-copy small { font-size: 11px; }
  .mega-item { font-size: 12px; }
}
@media (max-width: 600px) {
  body.menu-open::before { inset-block-start: 70px; }
  .mega-category-copy small { font-size: 10.5px; }
}
