
#opw2{
  --bg:#050914;
  --bg2:#081121;
  --panel:#0b1527;
  --panel2:#101d33;
  --line:rgba(137,181,255,.16);
  --line2:rgba(67,213,255,.42);
  --text:#edf6ff;
  --muted:#9dafce;
  --muted2:#6f82a1;
  --cyan:#43d5ff;
  --cyan2:#8cf0ff;
  --blue:#8ca7ff;
  --green:#64ffd2;
  --amber:#ffbd5b;
  --shadow:0 24px 80px rgba(0,0,0,.28);
  --radius:28px;
  --max:1240px;
}
#opw2 *{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body.opto-welcome-v2{
  min-height:100vh;
  font-family:'IBM Plex Sans',system-ui,sans-serif;
  background:
    radial-gradient(circle at 15% 10%,rgba(67,213,255,.12),transparent 25%),
    radial-gradient(circle at 82% 8%,rgba(140,167,255,.10),transparent 28%),
    linear-gradient(180deg,#050914 0%,#071021 45%,#050914 100%);
  color:var(--text);
  line-height:1.55;
  overflow-x:hidden;
}
body.opto-welcome-v2::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  opacity:.65;
  background:
    linear-gradient(rgba(180,211,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(180,211,255,.025) 1px,transparent 1px);
  background-size:48px 48px;
}
#opw2 a{color:inherit;text-decoration:none}
#opw2 main, #opw2 header, #opw2 footer{position:relative;z-index:1}
#opw2 .section{width:min(calc(100% - 40px),var(--max));margin:0 auto;padding:94px 0}
#opw2 .section.compact{padding:72px 0}
#opw2 .section.wide{width:min(calc(100% - 40px),1380px)}
#opw2 .eyebrow{
  display:inline-flex;align-items:center;gap:.55rem;
  padding:.5rem .78rem;border:1px solid rgba(67,213,255,.28);border-radius:999px;
  color:var(--cyan2);background:rgba(67,213,255,.07);
  font-family:'IBM Plex Mono',monospace;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;
}
#opw2 .eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 18px rgba(67,213,255,.75)}
#opw2 h1, #opw2 h2, #opw2 h3{line-height:1.04;letter-spacing:-.035em;font-weight:600}
#opw2 h1{font-size:clamp(3rem,6.8vw,6.3rem);max-width:960px;margin-top:1.1rem}
#opw2 h2{font-size:clamp(2rem,4.4vw,4.05rem);max-width:900px;margin-top:1rem}
#opw2 h3{font-size:1.16rem}
#opw2 .lede{font-size:1.08rem;color:var(--muted);max-width:720px;margin-top:1.1rem}
#opw2 .accent{color:var(--cyan)}
#opw2 .muted{color:var(--muted)}
#opw2 .kicker-line{height:1px;background:linear-gradient(90deg,transparent,rgba(67,213,255,.42),transparent);width:min(calc(100% - 40px),1240px);margin:0 auto;opacity:.8}
#opw2 .header{position:sticky;top:0;z-index:50;background:rgba(5,9,20,.70);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.06)}
#opw2 .nav{height:76px;width:min(calc(100% - 40px),1320px);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}
#opw2 .brand{display:flex;align-items:center;gap:.8rem}
#opw2 .brand-mark{width:32px;height:32px;border-radius:12px;border:1px solid rgba(67,213,255,.32);background:radial-gradient(circle at 35% 30%,rgba(138,240,255,.9),transparent 27%),linear-gradient(135deg,rgba(67,213,255,.20),rgba(140,167,255,.14));box-shadow:0 0 28px rgba(67,213,255,.12)}
#opw2 .brand-name{font-size:1.05rem;font-weight:700;letter-spacing:-.03em}#opw2 .brand-name span{color:var(--cyan)}
#opw2 .nav-links{display:flex;align-items:center;gap:1.35rem;list-style:none;flex-wrap:wrap}#opw2 .nav-links a{color:var(--muted);font-size:.92rem;transition:color .2s}#opw2 .nav-links a:hover{color:var(--text)}
#opw2 .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:999px;border:1px solid var(--line);font-weight:600;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}#opw2 .btn:hover{transform:translateY(-2px);border-color:var(--line2);box-shadow:0 14px 42px rgba(67,213,255,.13)}
#opw2 .btn.primary{background:linear-gradient(135deg,var(--cyan),var(--cyan2));color:#03101a;border:0}#opw2 .btn.secondary{background:rgba(255,255,255,.03);color:var(--text)}
#opw2 .nav-cta{min-height:42px;padding:0 17px;color:var(--cyan2);background:rgba(67,213,255,.08);border-color:rgba(67,213,255,.24)}
#opw2 .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}#opw2 .reveal.in{opacity:1;transform:none}#opw2 .delay1{transition-delay:.08s}#opw2 .delay2{transition-delay:.16s}#opw2 .delay3{transition-delay:.24s}
/* Hero */
#opw2 .hero{min-height:calc(100vh - 76px);display:grid;align-items:center;padding-top:36px;padding-bottom:74px}
#opw2 .hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);gap:2.2rem;align-items:center}
#opw2 .hero-actions{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:2rem}#opw2 .hero-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem;margin-top:2rem;max-width:810px}#opw2 .meta-card{border:1px solid var(--line);border-radius:20px;padding:1rem;background:rgba(255,255,255,.035);box-shadow:var(--shadow)}#opw2 .meta-card strong{display:block;font-size:1rem}#opw2 .meta-card span{display:block;margin-top:.18rem;color:var(--muted);font-size:.82rem}
#opw2 .hero-visual{position:relative;min-height:580px}#opw2 .hero-panel{position:relative;min-height:580px;border:1px solid var(--line);border-radius:34px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));box-shadow:var(--shadow);overflow:hidden;padding:1.35rem;display:flex;flex-direction:column;gap:1rem}#opw2 .hero-panel::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 43%,rgba(67,213,255,.13),transparent 24%),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:auto,30px 30px,30px 30px;pointer-events:none}#opw2 .panel-top{position:relative;z-index:2;display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}#opw2 .panel-title{font-weight:600;font-size:1.05rem}#opw2 .panel-note{color:var(--muted);font-size:.82rem;margin-top:.25rem;max-width:320px}#opw2 .panel-badge{font-family:'IBM Plex Mono',monospace;font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:var(--cyan);border:1px solid rgba(67,213,255,.24);background:rgba(67,213,255,.07);padding:.38rem .6rem;border-radius:999px;white-space:nowrap}
#opw2 .chip-map{position:relative;z-index:2;width:min(72%,390px);aspect-ratio:1/1;margin:1.15rem auto .4rem;border-radius:34px;border:1px solid rgba(67,213,255,.32);background:radial-gradient(circle at 38% 30%,rgba(67,213,255,.23),rgba(6,14,28,.96) 70%);box-shadow:0 0 0 1px rgba(255,255,255,.04) inset,0 0 70px rgba(67,213,255,.12)}
#opw2 .chip-map::before, #opw2 .chip-map::after{content:"";position:absolute;border-radius:50%;pointer-events:none}#opw2 .chip-map::before{inset:-36px;border:1px dashed rgba(67,213,255,.28);animation:spin 28s linear infinite}#opw2 .chip-map::after{inset:-82px;border:1px solid rgba(67,213,255,.08)}
#opw2 .pin-row, #opw2 .pin-col{position:absolute;display:flex;gap:8px}#opw2 .pin-row{left:9%;right:9%;justify-content:space-between}#opw2 .pin-row.top{top:-15px}#opw2 .pin-row.bottom{bottom:-15px}#opw2 .pin-col{top:9%;bottom:9%;flex-direction:column;justify-content:space-between}#opw2 .pin-col.left{left:-15px}#opw2 .pin-col.right{right:-15px}#opw2 .pin{width:10px;height:10px;border-radius:50%;background:rgba(67,213,255,.55);box-shadow:0 0 10px rgba(67,213,255,.3)}
#opw2 .chip-inner{position:absolute;inset:34px;border-radius:26px;border:1px solid rgba(67,213,255,.18);padding:1.1rem;display:grid;grid-template-rows:auto 1fr auto;gap:1rem}#opw2 .chip-name{font-family:'IBM Plex Mono',monospace;color:var(--cyan);font-size:.75rem;letter-spacing:.16em;text-transform:uppercase}#opw2 .fabric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;align-content:center}#opw2 .fabric-cell{min-height:54px;border:1px solid rgba(67,213,255,.18);border-radius:14px;background:linear-gradient(135deg,rgba(67,213,255,.16),rgba(140,167,255,.06));position:relative;overflow:hidden}#opw2 .fabric-cell::after{content:"";position:absolute;width:10px;height:10px;border-radius:50%;left:12px;top:12px;background:var(--cyan);box-shadow:18px 14px 0 rgba(67,213,255,.44);animation:fabricPulse 3.2s ease-in-out infinite}#opw2 .fabric-cell:nth-child(2)::after{animation-delay:.35s}#opw2 .fabric-cell:nth-child(3)::after{animation-delay:.7s}#opw2 .fabric-cell:nth-child(4)::after{animation-delay:1.05s}#opw2 .fabric-cell:nth-child(5)::after{animation-delay:1.4s}#opw2 .fabric-cell:nth-child(6)::after{animation-delay:1.75s}#opw2 .fabric-cell:nth-child(7)::after{animation-delay:2.1s}#opw2 .fabric-cell:nth-child(8)::after{animation-delay:2.45s}#opw2 .chip-strip{height:9px;border-radius:999px;background:linear-gradient(90deg,rgba(67,213,255,.08),rgba(67,213,255,.9),rgba(67,213,255,.08));position:relative;overflow:hidden}#opw2 .chip-strip::after{content:"";position:absolute;left:-40px;top:50%;width:40px;height:40px;border-radius:50%;background:radial-gradient(circle,rgba(138,240,255,.9),transparent 66%);transform:translateY(-50%);animation:move 3.8s linear infinite}
#opw2 .flow-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem;margin-top:.3rem}#opw2 .flow-label{display:flex;align-items:center;gap:.5rem;padding:.66rem .78rem;border:1px solid rgba(255,255,255,.08);background:rgba(7,15,30,.78);border-radius:16px;color:var(--muted);font-size:.78rem;min-width:0}#opw2 .flow-label strong{color:var(--text);font-size:.84rem}#opw2 .flow-dot{width:9px;height:9px;border-radius:50%;background:var(--cyan);box-shadow:0 0 14px rgba(67,213,255,.7)}
#opw2 .hero-metrics{position:relative;z-index:3;display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:auto}#opw2 .hero-metric{padding:.85rem;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035)}#opw2 .hero-metric strong{display:block;font-size:.86rem}#opw2 .hero-metric span{display:block;font-size:.74rem;color:var(--muted);margin-top:.18rem}
/* Generic Cards */
#opw2 .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}#opw2 .grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}#opw2 .card{border:1px solid var(--line);border-radius:24px;padding:1.3rem;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));box-shadow:var(--shadow);min-width:0}#opw2 .card h3{font-size:1.05rem;margin-top:.75rem}#opw2 .card p{margin-top:.45rem;color:var(--muted);font-size:.9rem}#opw2 .icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;border:1px solid rgba(67,213,255,.24);background:rgba(67,213,255,.08);color:var(--cyan);font-family:'IBM Plex Mono',monospace;font-size:.78rem}
/* Update strip */
#opw2 .update-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}#opw2 .update-card{position:relative;border:1px solid rgba(67,213,255,.24);border-radius:26px;padding:1.35rem;background:linear-gradient(180deg,rgba(67,213,255,.07),rgba(255,255,255,.018));box-shadow:var(--shadow);overflow:hidden}#opw2 .update-card::after{content:"";position:absolute;right:-44px;bottom:-48px;width:145px;height:145px;border-radius:50%;border:1px solid rgba(67,213,255,.12)}#opw2 .update-card .num{font-family:'IBM Plex Mono',monospace;color:var(--cyan);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}#opw2 .update-card h3{font-size:1.18rem;margin-top:.85rem}#opw2 .update-card p{margin-top:.5rem;color:var(--muted);font-size:.9rem}#opw2 .safe-note{margin-top:1.2rem;color:var(--muted2);font-size:.82rem;font-family:'IBM Plex Mono',monospace}
/* Why infographic */
#opw2 .problem-visual{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem}#opw2 .flow-board{border:1px solid var(--line);border-radius:28px;padding:1.3rem;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.018));box-shadow:var(--shadow);min-height:320px;overflow:hidden}#opw2 .flow-board h3{font-size:1.15rem}#opw2 .flow-board p{color:var(--muted);font-size:.9rem;margin-top:.35rem}#opw2 .flow-diagram{height:210px;margin-top:1rem;border-radius:22px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.025);position:relative;overflow:hidden}#opw2 .block{position:absolute;width:120px;height:72px;border-radius:18px;border:1px solid rgba(67,213,255,.24);display:grid;place-items:center;text-align:center;font-family:'IBM Plex Mono',monospace;font-size:.72rem;color:var(--text);background:rgba(67,213,255,.07)}#opw2 .block.mem{left:8%;top:50%;transform:translateY(-50%)}#opw2 .block.comp{right:8%;top:50%;transform:translateY(-50%);border-color:rgba(140,167,255,.28);background:rgba(140,167,255,.07)}#opw2 .lane{position:absolute;left:31%;right:31%;height:2px;background:linear-gradient(90deg,rgba(140,167,255,.08),rgba(140,167,255,.75),rgba(140,167,255,.08))}#opw2 .lane.a{top:42%}#opw2 .lane.b{top:58%}#opw2 .packet{position:absolute;top:calc(42% - 5px);left:31%;width:10px;height:10px;border-radius:50%;background:var(--blue);box-shadow:0 0 14px rgba(140,167,255,.55);animation:packetClassic 2.4s linear infinite}#opw2 .packet.two{top:calc(58% - 5px);animation:packetClassicBack 2.4s linear infinite}#opw2 .near-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:230px;height:150px;border-radius:24px;border:1px solid rgba(67,213,255,.34);background:radial-gradient(circle at 35% 35%,rgba(67,213,255,.17),rgba(8,16,30,.95));display:grid;place-items:center;text-align:center}#opw2 .near-core span{font-family:'IBM Plex Mono',monospace;color:var(--cyan);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase}#opw2 .near-grid{position:absolute;inset:22px;display:grid;grid-template-columns:repeat(5,1fr);gap:7px;opacity:.42}#opw2 .near-grid i{border-radius:8px;background:rgba(67,213,255,.13);border:1px solid rgba(67,213,255,.12)}#opw2 .short-lane{position:absolute;height:2px;width:80px;background:linear-gradient(90deg,transparent,var(--cyan),transparent)}#opw2 .short-lane.left{left:8%;top:50%}#opw2 .short-lane.right{right:8%;top:50%}#opw2 .short-dot{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--cyan);box-shadow:0 0 14px rgba(67,213,255,.65);top:calc(50% - 4px);left:8%;animation:shortMove 1.7s ease-in-out infinite}#opw2 .short-dot.right{left:auto;right:8%;animation:shortMoveR 1.7s ease-in-out infinite .5s}
/* Energy insight */
#opw2 .insight-band{display:grid;grid-template-columns:minmax(320px,.92fr) minmax(0,1.08fr);gap:1rem;margin-top:1.2rem}
#opw2 .insight-panel{border:1px solid var(--line);border-radius:28px;padding:1.35rem;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.018));box-shadow:var(--shadow);min-width:0}
#opw2 .insight-panel h3{font-size:1.12rem}
#opw2 .insight-panel p{margin-top:.5rem;color:var(--muted);font-size:.9rem}
#opw2 .pie-wrap{display:flex;align-items:center;justify-content:space-between;gap:1.4rem;flex-wrap:wrap;margin-top:.9rem}
#opw2 .energy-pie{position:relative;width:220px;height:220px;border-radius:50%;background:conic-gradient(var(--cyan) 0 72%, rgba(255,255,255,.08) 72% 100%);box-shadow:0 0 0 1px rgba(255,255,255,.04) inset,0 0 38px rgba(67,213,255,.12)}
#opw2 .energy-pie::before{content:"";position:absolute;inset:22px;border-radius:50%;background:linear-gradient(180deg,#081121,#06101f);border:1px solid rgba(255,255,255,.05);box-shadow:0 0 0 1px rgba(67,213,255,.08) inset}
#opw2 .energy-center{position:absolute;inset:0;display:grid;place-items:center;text-align:center;z-index:2;padding:1rem}
#opw2 .energy-center strong{display:block;font-size:2.35rem;line-height:1;color:var(--text)}
#opw2 .energy-center span{display:block;margin-top:.35rem;font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
#opw2 .energy-legend{display:grid;gap:.8rem;min-width:260px;flex:1}
#opw2 .legend-item{display:flex;gap:.85rem;align-items:flex-start;padding:.85rem .95rem;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.026)}
#opw2 .legend-dot{width:12px;height:12px;border-radius:50%;margin-top:.15rem;flex:0 0 auto}
#opw2 .legend-dot.cyan{background:var(--cyan);box-shadow:0 0 12px rgba(67,213,255,.45)}
#opw2 .legend-dot.gray{background:rgba(255,255,255,.25)}
#opw2 .legend-copy strong{display:block;font-size:.92rem}
#opw2 .legend-copy span{display:block;color:var(--muted);font-size:.82rem;margin-top:.18rem}
#opw2 .insight-note{margin-top:.9rem;font-size:.76rem;color:var(--muted2);font-family:'IBM Plex Mono',monospace;letter-spacing:.03em}
/* Platform stack */
#opw2 .stack-wrap{margin-top:2rem;border:1px solid var(--line);border-radius:32px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));box-shadow:var(--shadow);padding:1.4rem;overflow:hidden}#opw2 .stack-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:1.2rem;align-items:stretch}#opw2 .stack-copy{display:grid;gap:.85rem}#opw2 .stack-copy .mini{padding:1rem;border-radius:20px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.026)}#opw2 .stack-copy strong{display:block}#opw2 .stack-copy span{display:block;color:var(--muted);font-size:.86rem;margin-top:.2rem}#opw2 .layer-canvas{position:relative;min-height:450px;border-radius:26px;border:1px solid rgba(255,255,255,.07);background:radial-gradient(circle at 50% 38%,rgba(67,213,255,.11),transparent 30%),rgba(255,255,255,.02);overflow:hidden}#opw2 .platform-layer{position:absolute;left:8%;right:8%;height:70px;border-radius:20px;border:1px solid rgba(67,213,255,.22);background:linear-gradient(135deg,rgba(67,213,255,.12),rgba(140,167,255,.05));display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 1.2rem}#opw2 .platform-layer strong{font-size:1rem}#opw2 .platform-layer span{font-size:.78rem;color:var(--muted)}#opw2 .platform-layer.l1{top:50px}#opw2 .platform-layer.l2{top:145px}#opw2 .platform-layer.l3{top:240px}#opw2 .platform-layer.l4{top:335px}#opw2 .layer-line{position:absolute;left:50%;top:120px;bottom:95px;width:2px;background:linear-gradient(180deg,rgba(67,213,255,.05),rgba(67,213,255,.6),rgba(67,213,255,.05));overflow:hidden}#opw2 .layer-line::after{content:"";position:absolute;left:50%;top:-26px;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle,var(--cyan),transparent 68%);transform:translateX(-50%);animation:down 3.3s linear infinite}#opw2 .layer-tag{font-family:'IBM Plex Mono',monospace;font-size:.68rem;color:var(--cyan);letter-spacing:.08em;text-transform:uppercase}
/* Deployment */
#opw2 .deploy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}#opw2 .deploy-card{position:relative;border:1px solid var(--line);border-radius:28px;padding:1.3rem;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));box-shadow:var(--shadow);overflow:hidden}#opw2 .deploy-card::after{content:"";position:absolute;right:-40px;bottom:-40px;width:150px;height:150px;border-radius:50%;border:1px solid rgba(67,213,255,.12)}#opw2 .tier{display:inline-flex;align-items:center;gap:.5rem;padding:.42rem .68rem;border-radius:999px;border:1px solid rgba(67,213,255,.23);background:rgba(67,213,255,.07);font-family:'IBM Plex Mono',monospace;font-size:.68rem;color:var(--cyan);text-transform:uppercase;letter-spacing:.08em}#opw2 .deploy-card h3{font-size:1.3rem;margin-top:1rem}#opw2 .deploy-card p{font-size:.9rem;color:var(--muted);margin-top:.45rem}#opw2 .deploy-list{list-style:none;margin-top:1rem;display:grid;gap:.48rem}#opw2 .deploy-list li{font-size:.84rem;color:var(--muted);display:flex;gap:.45rem}#opw2 .deploy-list li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--cyan);margin-top:.55rem;flex:0 0 auto}#opw2 .mini-wave{height:72px;margin-top:1rem;border-radius:18px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.024);position:relative;overflow:hidden}#opw2 .mini-wave::before{content:"";position:absolute;left:-15%;right:-15%;top:50%;height:2px;background:linear-gradient(90deg,transparent,rgba(67,213,255,.10),rgba(67,213,255,.8),rgba(67,213,255,.10),transparent);animation:scanX 4.3s linear infinite}#opw2 .wave-node{position:absolute;width:11px;height:11px;border-radius:50%;background:var(--cyan);box-shadow:0 0 14px rgba(67,213,255,.6)}#opw2 .wave-node.a{left:18%;top:35%}#opw2 .wave-node.b{left:50%;top:58%;animation:pulse 2.5s infinite .8s}#opw2 .wave-node.c{right:18%;top:35%;animation:pulse 2.5s infinite 1.4s}
/* Applications */
#opw2 .app-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;margin-top:2rem}#opw2 .app-card{grid-column:span 2;border:1px solid var(--line);border-radius:24px;padding:1.15rem;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.018));box-shadow:var(--shadow);min-width:0}#opw2 .app-card.wide{grid-column:span 3}#opw2 .app-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}#opw2 .app-card h3{font-size:1.04rem;margin-top:.9rem}#opw2 .app-card p{font-size:.86rem;color:var(--muted);margin-top:.35rem}#opw2 .app-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.85rem;list-style:none}#opw2 .app-tags li{padding:.3rem .54rem;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);color:var(--muted);font-size:.7rem;font-family:'IBM Plex Mono',monospace}#opw2 .app-graphic{height:76px;margin-top:1rem;border-radius:16px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.024);position:relative;overflow:hidden}#opw2 .bars{position:absolute;left:12%;right:12%;bottom:12px;height:48px;display:flex;align-items:flex-end;gap:10px}#opw2 .bars span{flex:1;border-radius:10px 10px 4px 4px;background:linear-gradient(180deg,rgba(140,167,255,.35),rgba(67,213,255,.75));animation:bar 3.5s ease-in-out infinite}#opw2 .bars span:nth-child(2){height:60%;animation-delay:.3s}#opw2 .bars span:nth-child(3){height:84%;animation-delay:.6s}#opw2 .bars span:nth-child(4){height:48%;animation-delay:.9s}#opw2 .bars span:nth-child(5){height:70%;animation-delay:1.2s}#opw2 .node-graph svg{position:absolute;inset:0;width:100%;height:100%}#opw2 .scanbar{position:absolute;left:-20%;right:-20%;top:50%;height:2px;background:linear-gradient(90deg,transparent,rgba(67,213,255,.12),rgba(67,213,255,.84),rgba(67,213,255,.12),transparent);animation:scanX 4s linear infinite}#opw2 .orbit{position:absolute;left:50%;top:50%;width:62px;height:62px;border:1px dashed rgba(67,213,255,.35);border-radius:50%;transform:translate(-50%,-50%);animation:spin 13s linear infinite}#opw2 .orbit::before{content:"";position:absolute;left:50%;top:50%;width:14px;height:14px;border-radius:50%;background:var(--cyan);transform:translate(-50%,-50%);box-shadow:0 0 14px rgba(67,213,255,.6)}
/* Execution */
#opw2 .timeline{position:relative;margin-top:2rem;display:grid;gap:1rem}#opw2 .timeline::before{content:"";position:absolute;left:22px;top:12px;bottom:12px;width:1px;background:linear-gradient(180deg,var(--cyan),rgba(67,213,255,.04))}#opw2 .step-row{position:relative;display:grid;grid-template-columns:70px 1fr;gap:1rem;align-items:stretch}#opw2 .step-dot{width:44px;height:44px;border-radius:16px;border:1px solid rgba(67,213,255,.28);background:rgba(67,213,255,.08);display:grid;place-items:center;font-family:'IBM Plex Mono',monospace;color:var(--cyan);z-index:2}#opw2 .step-card{border:1px solid var(--line);border-radius:24px;padding:1.2rem;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.018));box-shadow:var(--shadow);display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center}#opw2 .step-card h3{font-size:1.06rem}#opw2 .step-card p{font-size:.88rem;color:var(--muted);margin-top:.28rem}#opw2 .status-pill{font-family:'IBM Plex Mono',monospace;font-size:.68rem;color:var(--cyan);padding:.38rem .62rem;border:1px solid rgba(67,213,255,.22);border-radius:999px;background:rgba(67,213,255,.06);white-space:nowrap}
/* Contact */
#opw2 .cta-panel{border:1px solid var(--line);border-radius:32px;padding:2rem;background:radial-gradient(circle at 12% 10%,rgba(67,213,255,.11),transparent 34%),linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));box-shadow:var(--shadow);display:flex;justify-content:space-between;gap:2rem;align-items:center}#opw2 .cta-panel h2{margin-top:.8rem}#opw2 .cta-panel p{color:var(--muted);margin-top:.6rem;max-width:620px}#opw2 .cta-actions{display:flex;gap:.8rem;flex-wrap:wrap;flex:0 0 auto}
#opw2 .footer{padding:34px 0 44px}#opw2 .footer-grid{width:min(calc(100% - 40px),var(--max));margin:0 auto;border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;gap:1.4rem;flex-wrap:wrap;color:var(--muted);font-size:.9rem}#opw2 .footer-grid strong{color:var(--text)}#opw2 .footer-links{display:flex;gap:1rem;flex-wrap:wrap}#opw2 .footer-links a{color:var(--muted)}
@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes fabricPulse{0%,100%{opacity:.35;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}
@keyframes move{from{left:-40px}to{left:calc(100% + 40px)}}
@keyframes packetClassic{from{left:31%}to{left:68%}}@keyframes packetClassicBack{from{left:68%}to{left:31%}}
@keyframes shortMove{0%,100%{left:8%}50%{left:24%}}@keyframes shortMoveR{0%,100%{right:8%}50%{right:24%}}
@keyframes down{from{top:-26px}to{top:100%}}@keyframes scanX{0%{transform:translateX(-20%)}100%{transform:translateX(20%)}}@keyframes pulse{0%,100%{opacity:.45;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}@keyframes bar{0%,100%{height:34%;opacity:.7}50%{height:82%;opacity:1}}
@media(max-width:1180px){#opw2 .hero-grid{grid-template-columns:1fr}#opw2 .hero-visual{min-height:auto}#opw2 .hero-panel{min-height:560px}#opw2 .stack-grid, #opw2 .problem-visual, #opw2 .insight-band{grid-template-columns:1fr}#opw2 .app-grid{grid-template-columns:repeat(2,1fr)}#opw2 .app-card, #opw2 .app-card.wide{grid-column:span 1}}
@media(max-width:980px){#opw2 .nav-links{display:none}#opw2 .grid-3, #opw2 .grid-2, #opw2 .deploy-grid, #opw2 .update-grid{grid-template-columns:1fr}#opw2 .hero-meta{grid-template-columns:1fr}#opw2 .section{padding:78px 0}#opw2 .step-card{grid-template-columns:1fr}#opw2 .status-pill{width:max-content}#opw2 .cta-panel{flex-direction:column;align-items:flex-start}#opw2 .hero-panel{min-height:auto}#opw2 .chip-map{width:min(86%,400px);margin:1rem auto}#opw2 .flow-grid{grid-template-columns:1fr}#opw2 .hero-metrics{grid-template-columns:1fr}}
@media(max-width:720px){#opw2 .section, #opw2 .section.wide, #opw2 .nav, #opw2 .footer-grid{width:min(calc(100% - 28px),var(--max))}#opw2 h1{font-size:clamp(2.55rem,13vw,4.4rem)}#opw2 h2{font-size:clamp(1.9rem,9vw,3rem)}#opw2 .hero{padding-top:24px}#opw2 .hero-actions, #opw2 .cta-actions{flex-direction:column;align-items:stretch;width:100%}#opw2 .btn{width:100%}#opw2 .chip-inner{inset:24px;padding:.9rem}#opw2 .fabric-grid{gap:.42rem}#opw2 .fabric-cell{min-height:42px}#opw2 .pin{width:7px;height:7px}#opw2 .app-grid{grid-template-columns:1fr}#opw2 .platform-layer{left:5%;right:5%;padding:0 .85rem}#opw2 .platform-layer strong{font-size:.88rem}#opw2 .platform-layer span{font-size:.7rem}#opw2 .timeline::before{display:none}#opw2 .step-row{grid-template-columns:1fr}#opw2 .step-dot{display:none}#opw2 .flow-diagram{height:190px}#opw2 .block{width:96px;height:62px}#opw2 .near-core{width:190px;height:130px}#opw2 .energy-pie{width:188px;height:188px}#opw2 .energy-pie::before{inset:18px}#opw2 .energy-center strong{font-size:2rem}}
@media(prefers-reduced-motion:reduce){#opw2 *, #opw2 *::before, #opw2 *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}#opw2 .reveal{opacity:1;transform:none}}

/* ======================================================
   OPW2 V16 LOCKED RESTORE — DO NOT REMOVE
   Brings back the dark /welcome work: background, spacing,
   readable fonts, centered product boxes, no A/D/01/02/03
   badges in Why row, no white breadcrumb strip.
   ====================================================== */

/* Page-level dark lock even if the theme body class is missing */
html:has(#opw2),
html:has(#opw2) body,
body.opto-welcome-v2,
body:has(#opw2),
body:has(#opw2) #page,
body:has(#opw2) .site,
body:has(#opw2) .site-content,
body:has(#opw2) .content-area,
body:has(#opw2) .main-content,
body:has(#opw2) .page-wrapper,
body:has(#opw2) .wrapper {
  background: #050914 !important;
  color: #edf6ff !important;
}

/* Remove TechZe breadcrumb / white title strips on welcome page */
body.opto-welcome-v2 header.page-header,
body.opto-welcome-v2 .page-header,
body.opto-welcome-v2 .breadcrumbs,
body.opto-welcome-v2 .breadcrumb,
body.opto-welcome-v2 .breadcrumb-area,
body.opto-welcome-v2 .breadcumb-area,
body.opto-welcome-v2 .breadcumb-wrapper,
body.opto-welcome-v2 .page-title,
body.opto-welcome-v2 .page-title-area,
body.opto-welcome-v2 .inner-banner,
body.opto-welcome-v2 .banner-area,
body.opto-welcome-v2 .header-hero,
body.opto-welcome-v2 .dsn-slider,
body:has(#opw2) header.page-header,
body:has(#opw2) .page-header,
body:has(#opw2) .breadcrumbs,
body:has(#opw2) .breadcrumb,
body:has(#opw2) .breadcrumb-area,
body:has(#opw2) .breadcumb-area,
body:has(#opw2) .breadcumb-wrapper,
body:has(#opw2) .page-title,
body:has(#opw2) .page-title-area,
body:has(#opw2) .inner-banner,
body:has(#opw2) .banner-area,
body:has(#opw2) .header-hero,
body:has(#opw2) .dsn-slider {
  display:none !important;
  visibility:hidden !important;
  height:0 !important;
  min-height:0 !important;
  max-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  overflow:hidden !important;
  opacity:0 !important;
}

/* Dark background locked directly on the welcome container */
#opw2.opw2-page,
#opw2 {
  --bg:#050914;
  --bg2:#081121;
  --panel:#0b1527;
  --panel2:#101d33;
  --line:rgba(137,181,255,.16);
  --line2:rgba(67,213,255,.42);
  --text:#edf6ff;
  --muted:#9dafce;
  --muted2:#6f82a1;
  --cyan:#43d5ff;
  --cyan2:#8cf0ff;
  --blue:#8ca7ff;
  --shadow:0 24px 80px rgba(0,0,0,.28);
  background:
    radial-gradient(circle at 15% 10%,rgba(67,213,255,.12),transparent 25%),
    radial-gradient(circle at 82% 8%,rgba(140,167,255,.10),transparent 28%),
    linear-gradient(180deg,#050914 0%,#071021 45%,#050914 100%) !important;
  color:var(--text) !important;
  font-family:'IBM Plex Sans',system-ui,sans-serif !important;
  line-height:1.55 !important;
  overflow:hidden !important;
  position:relative !important;
  z-index:2 !important;
  margin:0 !important;
  padding:0 !important;
}

#opw2::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  opacity:.55;
  background:
    linear-gradient(rgba(180,211,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(180,211,255,.025) 1px,transparent 1px);
  background-size:48px 48px;
}
#opw2 > * { position:relative; z-index:1; }

/* Consistent row rhythm and no giant gaps */
#opw2 .section,
#opw2 .section.wide,
#opw2 .section.compact {
  width:min(calc(100% - 40px),1240px) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-top:clamp(74px,5.4vw,96px) !important;
  padding-bottom:clamp(74px,5.4vw,96px) !important;
}
#opw2 .section.wide { width:min(calc(100% - 40px),1380px) !important; }
#opw2 .kicker-line { opacity:.75 !important; }

/* Headline and paragraph readability */
#opw2 h1,
#opw2 h2,
#opw2 h3 { color:var(--text) !important; text-wrap:balance; }
#opw2 h1 {
  font-size:clamp(58px,5.6vw,94px) !important;
  line-height:1.08 !important;
  letter-spacing:-.05em !important;
}
#opw2 h2 {
  font-size:clamp(38px,3.7vw,62px) !important;
  line-height:1.08 !important;
  letter-spacing:-.04em !important;
}
#opw2 h3 { font-size:clamp(19px,1.25vw,24px) !important; line-height:1.18 !important; }
#opw2 .lede,
#opw2 p { color:var(--muted) !important; }
#opw2 .lede {
  font-size:clamp(18px,1.15vw,21px) !important;
  line-height:1.58 !important;
  max-width:820px !important;
}
#opw2 .accent { color:var(--cyan) !important; }

/* Row 1 desktop: spacing from top and balanced left/right */
#opw2 #hero.hero {
  min-height:auto !important;
  padding-top:88px !important;
  padding-bottom:76px !important;
}
#opw2 #hero .hero-grid {
  display:grid !important;
  grid-template-columns:minmax(0,1.02fr) minmax(560px,.98fr) !important;
  gap:clamp(54px,5vw,84px) !important;
  align-items:center !important;
}
#opw2 #hero .hero-copy { max-width:850px !important; }
#opw2 #hero .hero-actions { margin-top:30px !important; gap:16px !important; }
#opw2 #hero .btn { min-height:54px !important; padding:0 26px !important; font-size:16px !important; }
#opw2 #hero .hero-meta { margin-top:32px !important; gap:18px !important; }
#opw2 #hero .meta-card {
  min-height:88px !important;
  padding:18px 20px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  background:rgba(255,255,255,.045) !important;
}
#opw2 #hero .meta-card strong { font-size:17px !important; line-height:1.2 !important; }
#opw2 #hero .meta-card span { font-size:14px !important; line-height:1.38 !important; }

/* Product view panel: dark, readable, centered like worked version */
#opw2 #hero .hero-panel {
  min-height:620px !important;
  padding:28px !important;
  border-radius:34px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.022)) !important;
}
#opw2 #hero .panel-top {
  display:grid !important;
  grid-template-columns:1fr auto !important;
  align-items:start !important;
  gap:20px !important;
}
#opw2 #hero .panel-title {
  font-size:22px !important;
  line-height:1.18 !important;
  text-align:left !important;
}
#opw2 #hero .panel-note {
  font-size:16px !important;
  line-height:1.45 !important;
  max-width:520px !important;
}
#opw2 #hero .panel-badge { font-size:12px !important; padding:8px 14px !important; }
#opw2 #hero .flow-grid { gap:16px !important; margin-top:14px !important; }
#opw2 #hero .flow-label {
  min-height:74px !important;
  padding:14px 18px !important;
  text-align:center !important;
  justify-content:center !important;
  background:rgba(7,15,30,.86) !important;
  border-radius:18px !important;
}
#opw2 #hero .flow-dot { display:none !important; }
#opw2 #hero .flow-label strong {
  display:block !important;
  font-size:19px !important;
  line-height:1.15 !important;
  margin-bottom:4px !important;
}
#opw2 #hero .flow-label div {
  font-size:15px !important;
  line-height:1.28 !important;
}
#opw2 #hero .chip-map { width:min(70%,430px) !important; margin:28px auto 14px !important; }
#opw2 #hero .chip-name { font-size:14px !important; }
#opw2 #hero .chip-inner .muted { font-size:20px !important; }
#opw2 #hero .hero-metrics { gap:16px !important; }
#opw2 #hero .hero-metric {
  min-height:78px !important;
  padding:16px !important;
  text-align:center !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
#opw2 #hero .hero-metric strong { font-size:16px !important; }
#opw2 #hero .hero-metric span { font-size:14px !important; line-height:1.32 !important; }

/* Row 2: preserve fixes, bigger internal text, no A/D/01/02/03 */
#opw2 #why .problem-visual,
#opw2 #why .insight-band { gap:20px !important; }
#opw2 #why .flow-board,
#opw2 #why .insight-panel {
  min-height:330px !important;
  padding:24px !important;
  border-radius:28px !important;
}
#opw2 #why .flow-board h3,
#opw2 #why .insight-panel h3 { font-size:21px !important; }
#opw2 #why .flow-board p,
#opw2 #why .insight-panel p { font-size:16px !important; line-height:1.52 !important; }
#opw2 #why .flow-diagram { height:235px !important; }
#opw2 #why .block,
#opw2 #why .near-core span { font-size:13px !important; }
#opw2 #why .icon,
#opw2 #why .step-dot { display:none !important; }
#opw2 #why .grid-2 .card,
#opw2 #why .grid-3 .card {
  padding:24px !important;
  min-height:150px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  text-align:center !important;
}
#opw2 #why .grid-2 .card h3,
#opw2 #why .grid-3 .card h3 { margin-top:0 !important; font-size:22px !important; }
#opw2 #why .grid-2 .card p,
#opw2 #why .grid-3 .card p { font-size:17px !important; line-height:1.45 !important; }
#opw2 #why .energy-pie { width:250px !important; height:250px !important; }
#opw2 #why .legend-copy strong { font-size:16px !important; }
#opw2 #why .legend-copy span { font-size:14px !important; line-height:1.35 !important; }

/* Row 3 architecture: two-line title/text feel, use box space */
#opw2 #architecture .stack-wrap { padding:28px !important; }
#opw2 #architecture .mini { padding:22px !important; min-height:106px !important; }
#opw2 #architecture .mini strong { font-size:20px !important; line-height:1.18 !important; }
#opw2 #architecture .mini span { font-size:16px !important; line-height:1.45 !important; }
#opw2 #architecture .platform-layer { min-height:76px !important; height:76px !important; }
#opw2 #architecture .platform-layer strong { font-size:19px !important; line-height:1.15 !important; }
#opw2 #architecture .platform-layer span { font-size:15px !important; line-height:1.25 !important; }
#opw2 #architecture .layer-tag { font-size:12px !important; }

/* Other sections: readable cards */
#opw2 .update-card,
#opw2 .deploy-card,
#opw2 .app-card,
#opw2 .step-card,
#opw2 .cta-panel {
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02)) !important;
}
#opw2 .update-card p,
#opw2 .deploy-card p,
#opw2 .app-card p,
#opw2 .step-card p { font-size:15px !important; line-height:1.48 !important; }
#opw2 .deploy-list li { font-size:15px !important; line-height:1.35 !important; }

/* Mobile is handled in opx-welcome-mobile.css, not here. */



/* ======================================================
   WELCOME ROW 1 — ALIGNMENT + SECTION TITLE FIX
   Scope: first hero row only
   ====================================================== */

/* Row 1 overall rhythm */
#opw2 #hero.section.wide.hero {
  min-height: calc(100vh - 96px) !important;
  padding-top: 72px !important;
  padding-bottom: 72px !important;
  display: grid !important;
  align-items: center !important;
}

/* Keep row balanced and use available height properly */
#opw2 #hero .hero-grid {
  align-items: center !important;
  gap: 56px !important;
}

/* Left column becomes a clean centered block */
#opw2 #hero .hero-copy {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

/* Section title / eyebrow: make it important and readable */
#opw2 #hero .eyebrow {
  font-size: 15px !important;
  line-height: 1.1 !important;
  letter-spacing: 0.13em !important;
  padding: 12px 20px !important;
  border-radius: 999px !important;
  margin-bottom: 24px !important;
  color: #8cf0ff !important;
  background: rgba(67, 213, 255, 0.11) !important;
  border-color: rgba(67, 213, 255, 0.38) !important;
  box-shadow: 0 0 34px rgba(67, 213, 255, 0.10) !important;
}

#opw2 #hero .eyebrow::before {
  width: 9px !important;
  height: 9px !important;
  box-shadow: 0 0 18px rgba(67, 213, 255, 0.9) !important;
}

/* Hero title: centered, strong, not oversized */
#opw2 #hero h1 {
  max-width: 720px !important;
  margin: 0 auto 26px !important;
  text-align: center !important;
  font-size: clamp(58px, 5.35vw, 88px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.045em !important;
}

/* Keep highlighted phrase visually controlled */
#opw2 #hero h1 .accent {
  display: inline !important;
  color: #43d5ff !important;
}

/* Paragraph centered under title */
#opw2 #hero .lede {
  max-width: 710px !important;
  margin: 0 auto !important;
  text-align: center !important;
  font-size: 18px !important;
  line-height: 1.58 !important;
  color: #9dafce !important;
}

/* Buttons centered with good gap */
#opw2 #hero .hero-actions {
  justify-content: center !important;
  align-items: center !important;
  margin-top: 32px !important;
  gap: 16px !important;
  width: 100% !important;
}

#opw2 #hero .hero-actions .btn {
  min-width: 190px !important;
  min-height: 54px !important;
  font-size: 16px !important;
  padding: 0 28px !important;
}

/* Bottom three cards centered and evenly spaced */
#opw2 #hero .hero-meta {
  width: 100% !important;
  max-width: 780px !important;
  margin: 34px auto 0 !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

#opw2 #hero .meta-card {
  min-height: 96px !important;
  padding: 18px 20px !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
}

#opw2 #hero .meta-card strong {
  font-size: 17px !important;
  line-height: 1.18 !important;
}

#opw2 #hero .meta-card span {
  margin-top: 6px !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

/* Right panel: leave existing design, only keep vertical match safe */
#opw2 #hero .hero-panel {
  min-height: 620px !important;
}

/* Reduce uncontrolled bottom dead space before next row */
#opw2 #hero + .kicker-line {
  margin-top: 0 !important;
}

/* Tablet safety */
@media (max-width: 1180px) {
  #opw2 #hero.section.wide.hero {
    min-height: auto !important;
    padding-top: 64px !important;
    padding-bottom: 58px !important;
  }

  #opw2 #hero .hero-grid {
    gap: 42px !important;
  }

  #opw2 #hero h1 {
    font-size: clamp(52px, 7.6vw, 76px) !important;
    max-width: 760px !important;
  }

  #opw2 #hero .hero-panel {
    min-height: auto !important;
  }
}

/* Mobile safety: keep readable, not huge */
@media (max-width: 760px) {
  #opw2 #hero.section.wide.hero {
    padding-top: 44px !important;
    padding-bottom: 46px !important;
  }

  #opw2 #hero .eyebrow {
    font-size: 12px !important;
    padding: 10px 14px !important;
    margin-bottom: 18px !important;
  }

  #opw2 #hero h1 {
    font-size: clamp(38px, 10.5vw, 54px) !important;
    line-height: 1.08 !important;
    margin-bottom: 18px !important;
  }

  #opw2 #hero .lede {
    font-size: 15.5px !important;
    line-height: 1.55 !important;
  }

  #opw2 #hero .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-top: 24px !important;
  }

  #opw2 #hero .hero-actions .btn {
    width: 100% !important;
    min-width: 0 !important;
  }

  #opw2 #hero .hero-meta {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    margin-top: 24px !important;
  }

  #opw2 #hero .meta-card {
    min-height: auto !important;
  }
}








/* ======================================================
   WELCOME ROW 2 — LOWER PANELS REARRANGE ONLY
   Scope: #why only. Row 1 untouched.
   ====================================================== */

/* Row 2 section title pill: match Row 1 size */
#opw2 #why > .eyebrow {
  font-size: 15px !important;
  line-height: 1.1 !important;
  letter-spacing: 0.13em !important;
  padding: 12px 20px !important;
  border-radius: 999px !important;
  margin-bottom: 22px !important;
  color: #8cf0ff !important;
  background: rgba(67, 213, 255, 0.11) !important;
  border-color: rgba(67, 213, 255, 0.38) !important;
  box-shadow: 0 0 34px rgba(67, 213, 255, 0.10) !important;
}

#opw2 #why > .eyebrow::before {
  width: 9px !important;
  height: 9px !important;
}

/* Heading / paragraph readable, no change to text */
#opw2 #why > h2 {
  max-width: 820px !important;
  font-size: clamp(44px, 3.75vw, 64px) !important;
  line-height: 1.08 !important;
  margin-top: 0 !important;
  margin-bottom: 18px !important;
}

#opw2 #why > .lede {
  max-width: 850px !important;
  font-size: 18px !important;
  line-height: 1.58 !important;
  margin-top: 0 !important;
}

/* Top two cards keep two columns, but improve diagram text */
#opw2 #why .problem-visual {
  gap: 22px !important;
  margin-top: 34px !important;
}

#opw2 #why .flow-board {
  min-height: 310px !important;
  padding: 24px !important;
  border-radius: 28px !important;
}

#opw2 #why .flow-board h3 {
  font-size: 20px !important;
  line-height: 1.18 !important;
}

#opw2 #why .flow-board p {
  font-size: 15px !important;
  line-height: 1.45 !important;
}

#opw2 #why .flow-diagram {
  height: 190px !important;
  margin-top: 18px !important;
}

/* Memory / Compute / Compute near data readable */
#opw2 #why .block {
  width: 136px !important;
  height: 74px !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  font-family: 'IBM Plex Sans', system-ui, sans-serif !important;
  color: #edf6ff !important;
}

#opw2 #why .block.mem {
  left: 9% !important;
}

#opw2 #why .block.comp {
  right: 9% !important;
}

#opw2 #why .near-core {
  width: 240px !important;
  height: 132px !important;
  border-radius: 24px !important;
}

#opw2 #why .near-core span {
  max-width: 150px !important;
  font-size: 15px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  font-family: 'IBM Plex Sans', system-ui, sans-serif !important;
  color: #43d5ff !important;
  white-space: normal !important;
}

/* ======================================================
   Main change: lower two panels become stacked full-width
   ====================================================== */

#opw2 #why .insight-band {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 24px !important;
  margin-top: 26px !important;
  align-items: stretch !important;
}

/* Base lower panel style */
#opw2 #why .insight-panel {
  width: 100% !important;
  min-height: 0 !important;
  padding: 26px 28px !important;
  border-radius: 28px !important;
  overflow: hidden !important;
}

#opw2 #why .insight-panel h3 {
  font-size: 22px !important;
  line-height: 1.18 !important;
}

#opw2 #why .insight-panel p {
  font-size: 16px !important;
  line-height: 1.5 !important;
}

/* First lower panel: Why this matters, wide layout */
#opw2 #why .insight-panel:first-child {
  min-height: 360px !important;
}

#opw2 #why .insight-panel:first-child > p {
  max-width: 760px !important;
}

/* Pie and legend side-by-side, using full box width */
#opw2 #why .pie-wrap {
  display: grid !important;
  grid-template-columns: 250px minmax(0, 1fr) !important;
  gap: 32px !important;
  align-items: center !important;
  margin-top: 20px !important;
}

#opw2 #why .energy-pie {
  width: 240px !important;
  height: 240px !important;
  flex: none !important;
}

#opw2 #why .energy-center strong {
  font-size: 40px !important;
}

#opw2 #why .energy-center span {
  font-size: 11px !important;
  line-height: 1.2 !important;
}

/* Legend becomes two horizontal boxes */
#opw2 #why .energy-legend {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
  min-width: 0 !important;
  width: 100% !important;
}

#opw2 #why .legend-item {
  min-height: 92px !important;
  padding: 16px 18px !important;
  border-radius: 18px !important;
  align-items: flex-start !important;
}

#opw2 #why .legend-copy strong {
  font-size: 16px !important;
  line-height: 1.18 !important;
}

#opw2 #why .legend-copy span {
  font-size: 13.5px !important;
  line-height: 1.38 !important;
}

#opw2 #why .insight-note {
  font-size: 11px !important;
  line-height: 1.35 !important;
  margin-top: 16px !important;
}

/* Second lower panel: Palani design response, wide layout */
#opw2 #why .insight-panel:nth-child(2) {
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(420px, 1.1fr) !important;
  gap: 28px !important;
  align-items: center !important;
  min-height: 290px !important;
}

/* Move title+paragraph into left side behavior */
#opw2 #why .insight-panel:nth-child(2) > h3,
#opw2 #why .insight-panel:nth-child(2) > p {
  max-width: 620px !important;
}

#opw2 #why .insight-panel:nth-child(2) > h3 {
  align-self: end !important;
}

#opw2 #why .insight-panel:nth-child(2) > p {
  align-self: start !important;
}

/* The internal grid becomes the right side */
#opw2 #why .insight-panel:nth-child(2) > .grid-2 {
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
  margin-top: 0 !important;
  align-self: stretch !important;
}

/* Remove A / D icon boxes only inside Palani design response */
#opw2 #why .insight-panel:nth-child(2) .icon {
  display: none !important;
}

/* Analog/Digital boxes: larger, readable, real boxes */
#opw2 #why .insight-panel:nth-child(2) .card {
  min-height: 170px !important;
  padding: 24px 26px !important;
  border-radius: 22px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  text-align: center !important;
  background: rgba(255,255,255,.035) !important;
}

#opw2 #why .insight-panel:nth-child(2) .card h3 {
  font-size: 22px !important;
  line-height: 1.18 !important;
  margin: 0 0 12px !important;
}

#opw2 #why .insight-panel:nth-child(2) .card p {
  font-size: 17px !important;
  line-height: 1.42 !important;
  margin: 0 !important;
}

/* Bottom three cards: remove 01/02/03 and keep clean */
#opw2 #why > .grid-3 {
  gap: 22px !important;
  margin-top: 28px !important;
}

#opw2 #why > .grid-3 .icon {
  display: none !important;
}

#opw2 #why > .grid-3 .card {
  min-height: 108px !important;
  padding: 22px 24px !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

#opw2 #why > .grid-3 .card h3 {
  font-size: 19px !important;
  line-height: 1.18 !important;
  margin: 0 0 8px !important;
}

#opw2 #why > .grid-3 .card p {
  font-size: 15px !important;
  line-height: 1.4 !important;
  margin: 0 !important;
}

/* Responsive safety */
@media (max-width: 1180px) {
  #opw2 #why .insight-panel:nth-child(2) {
    grid-template-columns: 1fr !important;
  }

  #opw2 #why .insight-panel:nth-child(2) > .grid-2 {
    grid-column: auto !important;
    grid-row: auto !important;
    margin-top: 18px !important;
  }

  #opw2 #why .pie-wrap {
    grid-template-columns: 220px minmax(0, 1fr) !important;
  }

  #opw2 #why .energy-pie {
    width: 210px !important;
    height: 210px !important;
  }
}

@media (max-width: 760px) {
  #opw2 #why > .eyebrow {
    font-size: 12px !important;
    padding: 10px 14px !important;
  }

  #opw2 #why > h2 {
    font-size: clamp(32px, 8.8vw, 44px) !important;
  }

  #opw2 #why > .lede {
    font-size: 15.5px !important;
  }

  #opw2 #why .problem-visual,
  #opw2 #why .pie-wrap,
  #opw2 #why .energy-legend,
  #opw2 #why .insight-panel:nth-child(2) > .grid-2,
  #opw2 #why > .grid-3 {
    grid-template-columns: 1fr !important;
  }

  #opw2 #why .flow-board,
  #opw2 #why .insight-panel {
    padding: 18px !important;
  }

  #opw2 #why .flow-diagram {
    height: 178px !important;
  }

  #opw2 #why .block {
    width: 100px !important;
    height: 60px !important;
    font-size: 13px !important;
  }

  #opw2 #why .near-core {
    width: 176px !important;
    height: 112px !important;
  }

  #opw2 #why .near-core span {
    font-size: 13px !important;
  }

  #opw2 #why .pie-wrap {
    justify-items: center !important;
  }

  #opw2 #why .energy-pie {
    width: 185px !important;
    height: 185px !important;
  }

  #opw2 #why .insight-panel:nth-child(2) .card {
    min-height: auto !important;
  }
}




/* ======================================================
   WELCOME ROW 2 — FINAL ALIGNMENT / READABILITY PASS
   Scope: #why only. Row 1 untouched.
   ====================================================== */

/* Row 2 top heading spacing */
#opw2 #why {
  padding-top: 64px !important;
}

#opw2 #why > .eyebrow {
  font-size: 15px !important;
  line-height: 1.1 !important;
  letter-spacing: 0.13em !important;
  padding: 12px 20px !important;
  border-radius: 999px !important;
  margin-bottom: 22px !important;
}

#opw2 #why > h2 {
  max-width: 860px !important;
  font-size: clamp(44px, 3.75vw, 64px) !important;
  line-height: 1.08 !important;
  margin: 0 0 18px !important;
}

#opw2 #why > .lede {
  max-width: 900px !important;
  font-size: 18px !important;
  line-height: 1.58 !important;
  margin: 0 0 34px !important;
}

/* ======================================================
   Top two diagram cards
   ====================================================== */

#opw2 #why .problem-visual {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
  margin-top: 0 !important;
}

#opw2 #why .flow-board {
  min-height: 310px !important;
  padding: 28px 30px !important;
  border-radius: 28px !important;
}

#opw2 #why .flow-board h3 {
  font-size: 22px !important;
  line-height: 1.16 !important;
  margin-bottom: 8px !important;
}

#opw2 #why .flow-board p {
  font-size: 15.5px !important;
  line-height: 1.45 !important;
}

#opw2 #why .flow-diagram {
  height: 190px !important;
  margin-top: 18px !important;
  border-radius: 22px !important;
}

/* Big readable Memory / Compute boxes */
#opw2 #why .block {
  width: 150px !important;
  height: 78px !important;
  border-radius: 18px !important;
  font-family: "IBM Plex Sans", system-ui, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  color: #f2f8ff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

#opw2 #why .block.mem {
  left: 9% !important;
}

#opw2 #why .block.comp {
  right: 9% !important;
}

/* Big readable Compute Near Data box */
#opw2 #why .near-core {
  width: 250px !important;
  height: 134px !important;
  border-radius: 24px !important;
}

#opw2 #why .near-core span {
  max-width: 170px !important;
  font-family: "IBM Plex Sans", system-ui, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
  letter-spacing: 0.02em !important;
  color: #43d5ff !important;
  white-space: normal !important;
  text-align: center !important;
}

/* ======================================================
   Lower panels stacked full width
   ====================================================== */

#opw2 #why .insight-band {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 24px !important;
  margin-top: 28px !important;
  align-items: stretch !important;
}

#opw2 #why .insight-panel {
  width: 100% !important;
  min-height: 0 !important;
  padding: 30px 34px !important;
  border-radius: 28px !important;
  overflow: hidden !important;
}

#opw2 #why .insight-panel h3 {
  font-size: 24px !important;
  line-height: 1.16 !important;
  margin: 0 0 10px !important;
}

#opw2 #why .insight-panel p {
  font-size: 16px !important;
  line-height: 1.5 !important;
}

/* ======================================================
   Why this matters: pie left, legend uses available space
   ====================================================== */

#opw2 #why .insight-panel:first-child {
  min-height: 390px !important;
}

#opw2 #why .insight-panel:first-child > p {
  max-width: 820px !important;
  margin-bottom: 24px !important;
}

#opw2 #why .pie-wrap {
  display: grid !important;
  grid-template-columns: 260px minmax(0, 1fr) !important;
  gap: 34px !important;
  align-items: center !important;
  margin-top: 8px !important;
}

#opw2 #why .energy-pie {
  width: 248px !important;
  height: 248px !important;
  flex: none !important;
}

#opw2 #why .energy-center strong {
  font-size: 42px !important;
  line-height: 1 !important;
}

#opw2 #why .energy-center span {
  font-size: 11px !important;
  line-height: 1.15 !important;
}

/* Legend: horizontal, readable, uses the wide space */
#opw2 #why .energy-legend {
  width: 100% !important;
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch !important;
}

#opw2 #why .legend-item {
  min-height: 118px !important;
  padding: 20px 22px !important;
  border-radius: 20px !important;
  align-items: flex-start !important;
  gap: 14px !important;
}

#opw2 #why .legend-dot {
  width: 15px !important;
  height: 15px !important;
  flex: 0 0 15px !important;
  margin-top: 4px !important;
}

#opw2 #why .legend-copy strong {
  font-size: 18px !important;
  line-height: 1.15 !important;
  margin-bottom: 7px !important;
}

#opw2 #why .legend-copy span {
  font-size: 14.5px !important;
  line-height: 1.4 !important;
}

/* Bottom note: big enough, readable, still subtle */
#opw2 #why .insight-note {
  margin-top: 18px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  letter-spacing: 0.02em !important;
  color: #8fa7c9 !important;
  opacity: 0.9 !important;
}

/* ======================================================
   Palani design response: text left, cards right
   ====================================================== */

#opw2 #why .insight-panel:nth-child(2) {
  display: grid !important;
  grid-template-columns: minmax(0, 0.92fr) minmax(460px, 1.08fr) !important;
  gap: 34px !important;
  align-items: center !important;
  min-height: 300px !important;
}

/* left text block */
#opw2 #why .insight-panel:nth-child(2) > h3,
#opw2 #why .insight-panel:nth-child(2) > p {
  grid-column: 1 !important;
  max-width: 650px !important;
  text-align: left !important;
}

#opw2 #why .insight-panel:nth-child(2) > h3 {
  align-self: end !important;
  font-size: 24px !important;
  margin-bottom: 12px !important;
}

#opw2 #why .insight-panel:nth-child(2) > p {
  align-self: start !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
}

/* cards on right */
#opw2 #why .insight-panel:nth-child(2) > .grid-2 {
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
  margin: 0 !important;
  align-self: center !important;
}

/* remove A/D boxes */
#opw2 #why .insight-panel:nth-child(2) .icon {
  display: none !important;
}

#opw2 #why .insight-panel:nth-child(2) .card {
  min-height: 180px !important;
  padding: 26px 28px !important;
  border-radius: 22px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  text-align: left !important;
  background: rgba(255,255,255,.035) !important;
}

#opw2 #why .insight-panel:nth-child(2) .card h3 {
  font-size: 23px !important;
  line-height: 1.16 !important;
  margin: 0 0 12px !important;
}

#opw2 #why .insight-panel:nth-child(2) .card p {
  font-size: 17px !important;
  line-height: 1.43 !important;
  margin: 0 !important;
}

/* ======================================================
   Bottom three cards: remove 01/02/03, all left aligned
   ====================================================== */

#opw2 #why > .grid-3 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
  margin-top: 28px !important;
}

#opw2 #why > .grid-3 .icon {
  display: none !important;
}

#opw2 #why > .grid-3 .card {
  min-height: 120px !important;
  padding: 24px 26px !important;
  text-align: left !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
}

#opw2 #why > .grid-3 .card h3 {
  font-size: 20px !important;
  line-height: 1.18 !important;
  margin: 0 0 9px !important;
}

#opw2 #why > .grid-3 .card p {
  font-size: 15.5px !important;
  line-height: 1.42 !important;
  margin: 0 !important;
}

/* ======================================================
   Responsive safety
   ====================================================== */

@media (max-width: 1180px) {
  #opw2 #why .problem-visual,
  #opw2 #why .insight-panel:nth-child(2),
  #opw2 #why > .grid-3 {
    grid-template-columns: 1fr !important;
  }

  #opw2 #why .insight-panel:nth-child(2) > h3,
  #opw2 #why .insight-panel:nth-child(2) > p,
  #opw2 #why .insight-panel:nth-child(2) > .grid-2 {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  #opw2 #why .insight-panel:nth-child(2) > .grid-2 {
    margin-top: 20px !important;
  }

  #opw2 #why .pie-wrap {
    grid-template-columns: 230px minmax(0, 1fr) !important;
  }

  #opw2 #why .energy-pie {
    width: 220px !important;
    height: 220px !important;
  }
}

@media (max-width: 760px) {
  #opw2 #why {
    padding-top: 46px !important;
  }

  #opw2 #why > .eyebrow {
    font-size: 12px !important;
    padding: 10px 14px !important;
  }

  #opw2 #why > h2 {
    font-size: clamp(32px, 8.8vw, 44px) !important;
  }

  #opw2 #why > .lede {
    font-size: 15.5px !important;
  }

  #opw2 #why .pie-wrap,
  #opw2 #why .energy-legend,
  #opw2 #why .insight-panel:nth-child(2) > .grid-2,
  #opw2 #why > .grid-3 {
    grid-template-columns: 1fr !important;
  }

  #opw2 #why .flow-board,
  #opw2 #why .insight-panel {
    padding: 18px !important;
  }

  #opw2 #why .flow-diagram {
    height: 178px !important;
  }

  #opw2 #why .block {
    width: 104px !important;
    height: 62px !important;
    font-size: 14px !important;
  }

  #opw2 #why .near-core {
    width: 180px !important;
    height: 112px !important;
  }

  #opw2 #why .near-core span {
    font-size: 13px !important;
  }

  #opw2 #why .pie-wrap {
    justify-items: center !important;
  }

  #opw2 #why .energy-pie {
    width: 185px !important;
    height: 185px !important;
  }

  #opw2 #why .legend-item,
  #opw2 #why .insight-panel:nth-child(2) .card,
  #opw2 #why > .grid-3 .card {
    min-height: auto !important;
  }

  #opw2 #why .insight-panel:nth-child(2) .card,
  #opw2 #why > .grid-3 .card {
    text-align: left !important;
    align-items: flex-start !important;
  }
}



/* ======================================================
   WELCOME ROW 2 — COMPACT FINAL TUNE
   Scope only: #opw2 #why
   ====================================================== */

/* Fix the paragraph line break / width at top */
#opw2 #why > .lede {
  max-width: 880px !important;
  font-size: 18px !important;
  line-height: 1.56 !important;
}

/* Top two boards: keep as-is, only improve text/box readability */
#opw2 #why .problem-visual {
  gap: 24px !important;
}

#opw2 #why .flow-board {
  padding: 28px 30px !important;
  border-radius: 28px !important;
}

#opw2 #why .flow-board h3 {
  font-size: 22px !important;
  line-height: 1.16 !important;
}

#opw2 #why .flow-board p {
  font-size: 15.5px !important;
  line-height: 1.45 !important;
}

/* Bigger Memory / Compute / Compute Near Data labels */
#opw2 #why .block {
  width: 150px !important;
  height: 78px !important;
  border-radius: 18px !important;
  font-size: 17px !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
  color: #f2f8ff !important;
  letter-spacing: -0.01em !important;
}

#opw2 #why .near-core {
  width: 250px !important;
  height: 134px !important;
  border-radius: 24px !important;
}

#opw2 #why .near-core span {
  max-width: 170px !important;
  font-size: 17px !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
  white-space: normal !important;
  text-align: center !important;
}

/* Make lower two panels full-width stacked */
#opw2 #why .insight-band {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 24px !important;
  margin-top: 28px !important;
}

#opw2 #why .insight-panel {
  width: 100% !important;
  padding: 30px 34px !important;
  border-radius: 28px !important;
}

/* Why this matters: use the space without huge empty gaps */
#opw2 #why .insight-panel:first-child {
  min-height: 380px !important;
}

#opw2 #why .insight-panel:first-child h3 {
  font-size: 24px !important;
}

#opw2 #why .insight-panel:first-child > p {
  max-width: 820px !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  margin-bottom: 22px !important;
}

/* Pie left, legend boxes across the open space */
#opw2 #why .pie-wrap {
  display: grid !important;
  grid-template-columns: 260px minmax(0, 1fr) !important;
  gap: 34px !important;
  align-items: center !important;
  margin-top: 8px !important;
}

#opw2 #why .energy-pie {
  width: 248px !important;
  height: 248px !important;
  flex: none !important;
}

#opw2 #why .energy-center strong {
  font-size: 42px !important;
}

#opw2 #why .energy-center span {
  font-size: 11px !important;
}

/* Legend boxes: wider, readable, use vertical space */
#opw2 #why .energy-legend {
  width: 100% !important;
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
}

#opw2 #why .legend-item {
  min-height: 118px !important;
  padding: 20px 22px !important;
  border-radius: 20px !important;
  align-items: flex-start !important;
  gap: 14px !important;
}

#opw2 #why .legend-dot {
  width: 15px !important;
  height: 15px !important;
  flex: 0 0 15px !important;
  margin-top: 4px !important;
}

#opw2 #why .legend-copy strong {
  font-size: 18px !important;
  line-height: 1.15 !important;
  margin-bottom: 7px !important;
}

#opw2 #why .legend-copy span {
  font-size: 14.5px !important;
  line-height: 1.4 !important;
}

/* Bottom note readable */
#opw2 #why .insight-note {
  margin-top: 18px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  color: #8fa7c9 !important;
  opacity: 0.9 !important;
}

/* Palani design response: text left, two boxes right */
#opw2 #why .insight-panel:nth-child(2) {
  display: grid !important;
  grid-template-columns: minmax(0, 0.92fr) minmax(460px, 1.08fr) !important;
  gap: 34px !important;
  align-items: center !important;
  min-height: 300px !important;
}

#opw2 #why .insight-panel:nth-child(2) > h3,
#opw2 #why .insight-panel:nth-child(2) > p {
  grid-column: 1 !important;
  max-width: 650px !important;
  text-align: left !important;
}

#opw2 #why .insight-panel:nth-child(2) > h3 {
  align-self: end !important;
  font-size: 24px !important;
  margin-bottom: 12px !important;
}

#opw2 #why .insight-panel:nth-child(2) > p {
  align-self: start !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
}

#opw2 #why .insight-panel:nth-child(2) > .grid-2 {
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
  margin: 0 !important;
  align-self: center !important;
}

/* Remove A/D icon blocks */
#opw2 #why .insight-panel:nth-child(2) .icon {
  display: none !important;
}

/* Left-align analog/digital cards as marked */
#opw2 #why .insight-panel:nth-child(2) .card {
  min-height: 180px !important;
  padding: 26px 28px !important;
  border-radius: 22px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  text-align: left !important;
  background: rgba(255,255,255,.035) !important;
}

#opw2 #why .insight-panel:nth-child(2) .card h3 {
  font-size: 23px !important;
  line-height: 1.16 !important;
  margin: 0 0 12px !important;
}

#opw2 #why .insight-panel:nth-child(2) .card p {
  font-size: 17px !important;
  line-height: 1.43 !important;
  margin: 0 !important;
}

/* Bottom 3 cards: all left aligned */
#opw2 #why > .grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
  margin-top: 28px !important;
}

#opw2 #why > .grid-3 .icon {
  display: none !important;
}

#opw2 #why > .grid-3 .card {
  min-height: 120px !important;
  padding: 24px 26px !important;
  text-align: left !important;
  align-items: flex-start !important;
  justify-content: center !important;
}

#opw2 #why > .grid-3 .card h3 {
  font-size: 20px !important;
  line-height: 1.18 !important;
  margin: 0 0 9px !important;
}

#opw2 #why > .grid-3 .card p {
  font-size: 15.5px !important;
  line-height: 1.42 !important;
  margin: 0 !important;
}

/* Responsive safety */
@media (max-width: 1180px) {
  #opw2 #why .problem-visual,
  #opw2 #why .insight-panel:nth-child(2),
  #opw2 #why > .grid-3 {
    grid-template-columns: 1fr !important;
  }

  #opw2 #why .insight-panel:nth-child(2) > h3,
  #opw2 #why .insight-panel:nth-child(2) > p,
  #opw2 #why .insight-panel:nth-child(2) > .grid-2 {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  #opw2 #why .insight-panel:nth-child(2) > .grid-2 {
    margin-top: 20px !important;
  }

  #opw2 #why .pie-wrap {
    grid-template-columns: 230px minmax(0, 1fr) !important;
  }

  #opw2 #why .energy-pie {
    width: 220px !important;
    height: 220px !important;
  }
}

@media (max-width: 760px) {
  #opw2 #why .pie-wrap,
  #opw2 #why .energy-legend,
  #opw2 #why .insight-panel:nth-child(2) > .grid-2,
  #opw2 #why > .grid-3 {
    grid-template-columns: 1fr !important;
  }

  #opw2 #why .insight-panel,
  #opw2 #why .flow-board {
    padding: 18px !important;
  }

  #opw2 #why .block {
    width: 104px !important;
    height: 62px !important;
    font-size: 14px !important;
  }

  #opw2 #why .near-core {
    width: 180px !important;
    height: 112px !important;
  }

  #opw2 #why .near-core span {
    font-size: 13px !important;
  }

  #opw2 #why .energy-pie {
    width: 185px !important;
    height: 185px !important;
  }

  #opw2 #why .legend-item,
  #opw2 #why .insight-panel:nth-child(2) .card,
  #opw2 #why > .grid-3 .card {
    min-height: auto !important;
  }
}



/* ======================================================
   WELCOME KEY UPDATES ROW — LABEL + CARD CLEANUP
   Scope: #updates only
   ====================================================== */

/* Section rhythm */
#opw2 #updates {
  padding-top: 68px !important;
  padding-bottom: 68px !important;
}

/* Main section pill: same size/style as previous row titles */
#opw2 #updates > .eyebrow {
  font-size: 15px !important;
  line-height: 1.1 !important;
  letter-spacing: 0.13em !important;
  padding: 12px 20px !important;
  border-radius: 999px !important;
  margin-bottom: 24px !important;
  color: #8cf0ff !important;
  background: rgba(67, 213, 255, 0.11) !important;
  border-color: rgba(67, 213, 255, 0.38) !important;
  box-shadow: 0 0 34px rgba(67, 213, 255, 0.10) !important;
}

#opw2 #updates > .eyebrow::before {
  width: 9px !important;
  height: 9px !important;
  box-shadow: 0 0 18px rgba(67, 213, 255, 0.9) !important;
}

/* Main heading */
#opw2 #updates > h2 {
  max-width: 920px !important;
  font-size: clamp(48px, 4.3vw, 74px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.04em !important;
  margin: 0 0 24px !important;
}

/* Section paragraph */
#opw2 #updates > .lede {
  max-width: 960px !important;
  font-size: 21px !important;
  line-height: 1.55 !important;
  margin: 0 0 38px !important;
}

/* Cards row */
#opw2 #updates .grid-3 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
  margin-top: 0 !important;
}

/* Remove UPDATE 01 / UPDATE 02 / UPDATE 03 labels inside cards */
#opw2 #updates .card .eyebrow,
#opw2 #updates .card .tier,
#opw2 #updates .card .status-pill,
#opw2 #updates .card .kicker,
#opw2 #updates .card .small-label,
#opw2 #updates .card .card-label,
#opw2 #updates .card .update-label {
  display: none !important;
}

/* Card sizing and spacing */
#opw2 #updates .card {
  min-height: 220px !important;
  padding: 34px 34px 32px !important;
  border-radius: 28px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  text-align: left !important;
}

/* Card titles */
#opw2 #updates .card h3 {
  font-size: 28px !important;
  line-height: 1.18 !important;
  letter-spacing: -0.025em !important;
  margin: 0 0 18px !important;
}

/* Card text */
#opw2 #updates .card p {
  font-size: 19px !important;
  line-height: 1.48 !important;
  margin: 0 !important;
  color: #aac0e2 !important;
}

/* Bottom note: bigger and readable */
#opw2 #updates .note,
#opw2 #updates .fineprint,
#opw2 #updates > p:last-child {
  font-size: 15px !important;
  line-height: 1.55 !important;
  letter-spacing: 0.02em !important;
  color: #8fa7c9 !important;
  opacity: 0.95 !important;
  margin-top: 26px !important;
  max-width: 980px !important;
}

/* Responsive safety */
@media (max-width: 1180px) {
  #opw2 #updates .grid-3 {
    grid-template-columns: 1fr !important;
  }

  #opw2 #updates .card {
    min-height: auto !important;
  }
}

@media (max-width: 760px) {
  #opw2 #updates {
    padding-top: 46px !important;
    padding-bottom: 46px !important;
  }

  #opw2 #updates > .eyebrow {
    font-size: 12px !important;
    padding: 10px 14px !important;
  }

  #opw2 #updates > h2 {
    font-size: clamp(32px, 9vw, 46px) !important;
  }

  #opw2 #updates > .lede {
    font-size: 16px !important;
  }

  #opw2 #updates .card {
    padding: 22px 24px !important;
  }

  #opw2 #updates .card h3 {
    font-size: 22px !important;
  }

  #opw2 #updates .card p {
    font-size: 15.5px !important;
  }

  #opw2 #updates .note,
  #opw2 #updates .fineprint,
  #opw2 #updates > p:last-child {
    font-size: 13px !important;
  }
}







/* ======================================================
   ROW 1 HOTFIX — undo overlap / clipping at the start
   Add this at the VERY END so it wins over earlier Row 1 blocks.
   ====================================================== */
#opw2 #hero.section.wide.hero {
  min-height: auto !important;
  display: block !important;
  padding-top: 42px !important;
  padding-bottom: 52px !important;
}

#opw2 #hero .hero-grid {
  grid-template-columns: minmax(0, 1fr) minmax(520px, .96fr) !important;
  gap: 40px !important;
  align-items: start !important;
}

#opw2 #hero .hero-copy {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  align-self: start !important;
}

#opw2 #hero .hero-visual {
  min-height: 0 !important;
  height: auto !important;
  align-self: start !important;
}

#opw2 #hero .hero-panel {
  min-height: 0 !important;
  height: auto !important;
  padding: 24px !important;
  overflow: hidden !important;
}

#opw2 #hero .panel-top {
  margin-bottom: 2px !important;
}

#opw2 #hero .panel-title {
  font-size: 20px !important;
}

#opw2 #hero .panel-note {
  font-size: 15px !important;
  line-height: 1.42 !important;
  max-width: 470px !important;
}

#opw2 #hero .panel-badge {
  font-size: 11px !important;
  padding: 7px 12px !important;
}

#opw2 #hero .flow-grid {
  gap: 14px !important;
  margin-top: 12px !important;
}

#opw2 #hero .flow-label {
  min-height: 68px !important;
  padding: 12px 16px !important;
}

#opw2 #hero .flow-label strong {
  font-size: 17px !important;
}

#opw2 #hero .flow-label div {
  font-size: 14px !important;
}

#opw2 #hero .chip-map {
  width: min(62%, 360px) !important;
  margin: 18px auto 12px !important;
}

#opw2 #hero .chip-map::before {
  inset: -26px !important;
}

#opw2 #hero .chip-map::after {
  inset: -52px !important;
}

#opw2 #hero .chip-inner {
  inset: 28px !important;
}

#opw2 #hero .hero-metrics {
  margin-top: 10px !important;
  gap: 12px !important;
}

#opw2 #hero .hero-metric {
  min-height: 72px !important;
  padding: 14px !important;
}

#opw2 #hero .hero-metric strong {
  font-size: 15px !important;
}

#opw2 #hero .hero-metric span {
  font-size: 13px !important;
}

#opw2 #hero + .kicker-line {
  margin-top: 0 !important;
}

@media (max-width: 1260px) {
  #opw2 #hero .hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(460px, .96fr) !important;
    gap: 32px !important;
  }

  #opw2 #hero h1 {
    font-size: clamp(52px, 5.1vw, 76px) !important;
  }

  #opw2 #hero .chip-map {
    width: min(60%, 330px) !important;
  }
}

@media (max-width: 1180px) {
  #opw2 #hero.section.wide.hero {
    padding-top: 48px !important;
    padding-bottom: 50px !important;
  }

  #opw2 #hero .hero-grid {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    align-items: start !important;
  }

  #opw2 #hero .hero-copy {
    max-width: 820px !important;
  }

  #opw2 #hero .hero-visual,
  #opw2 #hero .hero-panel {
    min-height: 0 !important;
    height: auto !important;
  }

  #opw2 #hero .chip-map {
    width: min(68%, 360px) !important;
  }
}

@media (max-width: 760px) {
  #opw2 #hero.section.wide.hero {
    padding-top: 34px !important;
    padding-bottom: 40px !important;
  }

  #opw2 #hero .hero-panel {
    padding: 18px !important;
  }

  #opw2 #hero .panel-top {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  #opw2 #hero .chip-map {
    width: min(82%, 320px) !important;
    margin: 16px auto 10px !important;
  }

  #opw2 #hero .hero-metrics {
    grid-template-columns: 1fr !important;
  }
}

/* ======================================================
   ROUND 2 FIXES — header clearance, applications, execution, contact
   Keep this block at the VERY END of opx-welcome.css.
   ====================================================== */

/* 1) Fixed header clearance: stop hero content from sitting under black nav */
#opw2 #hero.section.wide.hero {
  padding-top: 112px !important;
  padding-bottom: 56px !important;
  min-height: auto !important;
  display: block !important;
}

#opw2 #hero .hero-grid {
  align-items: start !important;
}

#opw2 #hero .hero-copy,
#opw2 #hero .hero-visual,
#opw2 #hero .hero-panel {
  margin-top: 0 !important;
}

/* Hero right panel: keep full content visible after removing forced height */
#opw2 #hero .hero-panel {
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
}

/* 2) Same readable section-pill size for lower rows */
#opw2 #applications > .eyebrow,
#opw2 #execution > .eyebrow,
#opw2 #contact .eyebrow {
  font-size: 15px !important;
  line-height: 1.1 !important;
  letter-spacing: 0.13em !important;
  padding: 12px 20px !important;
  border-radius: 999px !important;
  margin-bottom: 24px !important;
  color: #8cf0ff !important;
  background: rgba(67, 213, 255, 0.11) !important;
  border-color: rgba(67, 213, 255, 0.38) !important;
  box-shadow: 0 0 34px rgba(67, 213, 255, 0.10) !important;
}

#opw2 #applications > .eyebrow::before,
#opw2 #execution > .eyebrow::before,
#opw2 #contact .eyebrow::before {
  width: 9px !important;
  height: 9px !important;
  box-shadow: 0 0 18px rgba(67, 213, 255, 0.9) !important;
}

/* 3) Applications row: remove CV/SF/IA/GW/SC boxes, move real tags left, enlarge text */
#opw2 #applications {
  padding-top: 72px !important;
  padding-bottom: 72px !important;
}

#opw2 #applications > h2 {
  max-width: 900px !important;
  font-size: clamp(46px, 4.0vw, 66px) !important;
  line-height: 1.08 !important;
  margin-top: 0 !important;
}

#opw2 #applications > .lede {
  font-size: 18px !important;
  line-height: 1.55 !important;
  margin-top: 18px !important;
}

#opw2 #applications .app-grid {
  gap: 18px !important;
  margin-top: 30px !important;
}

#opw2 #applications .app-card {
  padding: 26px 28px 24px !important;
  min-height: 250px !important;
  border-radius: 26px !important;
}

#opw2 #applications .app-card.wide {
  min-height: 255px !important;
}

#opw2 #applications .app-top {
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 0 !important;
  min-height: auto !important;
}

#opw2 #applications .icon {
  display: none !important;
}

#opw2 #applications .tier {
  margin-left: 0 !important;
  font-size: 12.5px !important;
  line-height: 1 !important;
  letter-spacing: 0.10em !important;
  padding: 9px 15px !important;
  border-radius: 999px !important;
}

#opw2 #applications .app-card h3 {
  font-size: 24px !important;
  line-height: 1.16 !important;
  margin-top: 18px !important;
  margin-bottom: 8px !important;
}

#opw2 #applications .app-card p {
  font-size: 16px !important;
  line-height: 1.45 !important;
  margin-top: 0 !important;
}

#opw2 #applications .app-graphic {
  height: 84px !important;
  margin-top: 18px !important;
}

#opw2 #applications .app-tags {
  margin-top: 16px !important;
  gap: 8px !important;
}

#opw2 #applications .app-tags li {
  font-size: 12px !important;
  line-height: 1 !important;
  padding: 7px 11px !important;
  border-radius: 999px !important;
}

/* 4) Execution row: remove left 01/02/03/04 rail and move status pill to the left */
#opw2 #execution {
  padding-top: 72px !important;
  padding-bottom: 76px !important;
}

#opw2 #execution > h2 {
  max-width: 900px !important;
  font-size: clamp(46px, 4.0vw, 66px) !important;
  line-height: 1.08 !important;
  margin-top: 0 !important;
}

#opw2 #execution > .lede {
  max-width: 880px !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
  margin-top: 18px !important;
}

#opw2 #execution .timeline {
  margin-top: 32px !important;
  gap: 14px !important;
}

#opw2 #execution .timeline::before,
#opw2 #execution .step-dot {
  display: none !important;
}

#opw2 #execution .step-row {
  display: block !important;
}

#opw2 #execution .step-card {
  display: flex !important;
  align-items: stretch !important;
  gap: 0 !important;
  padding: 0 !important;
  min-height: 96px !important;
  overflow: hidden !important;
  border-radius: 24px !important;
}

#opw2 #execution .step-card > div {
  order: 2 !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  padding: 22px 26px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

#opw2 #execution .step-card h3 {
  font-size: 23px !important;
  line-height: 1.17 !important;
  margin: 0 0 7px !important;
}

#opw2 #execution .step-card p {
  font-size: 16px !important;
  line-height: 1.42 !important;
  margin: 0 !important;
}

#opw2 #execution .status-pill {
  order: 1 !important;
  flex: 0 0 190px !important;
  align-self: stretch !important;
  width: 190px !important;
  min-height: 96px !important;
  height: auto !important;
  border-radius: 0 !important;
  border-width: 0 1px 0 0 !important;
  background: rgba(67, 213, 255, 0.10) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  white-space: normal !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  letter-spacing: 0.08em !important;
  padding: 12px 14px !important;
}

/* 5) Contact row: readable pill and email target handled in PHP */
#opw2 #contact {
  padding-top: 72px !important;
  padding-bottom: 72px !important;
}

#opw2 #contact .cta-panel {
  padding: 34px 38px !important;
  border-radius: 30px !important;
}

#opw2 #contact h2 {
  font-size: clamp(44px, 4.0vw, 68px) !important;
  line-height: 1.08 !important;
  margin-top: 0 !important;
}

#opw2 #contact p {
  font-size: 18px !important;
  line-height: 1.5 !important;
}

#opw2 #contact .btn {
  min-height: 58px !important;
  padding: 0 28px !important;
  font-size: 16px !important;
}

@media (max-width: 1180px) {
  #opw2 #hero.section.wide.hero {
    padding-top: 104px !important;
  }

  #opw2 #applications .app-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #opw2 #applications .app-card,
  #opw2 #applications .app-card.wide {
    grid-column: span 1 !important;
  }
}

@media (max-width: 760px) {
  #opw2 #hero.section.wide.hero {
    padding-top: 86px !important;
  }

  #opw2 #applications > .eyebrow,
  #opw2 #execution > .eyebrow,
  #opw2 #contact .eyebrow {
    font-size: 12px !important;
    padding: 10px 14px !important;
  }

  #opw2 #applications .app-grid {
    grid-template-columns: 1fr !important;
  }

  #opw2 #applications .app-card,
  #opw2 #applications .app-card.wide {
    min-height: auto !important;
  }

  #opw2 #execution .step-card {
    flex-direction: column !important;
  }

  #opw2 #execution .status-pill {
    width: 100% !important;
    flex-basis: auto !important;
    min-height: 52px !important;
    border-width: 0 0 1px 0 !important;
  }

  #opw2 #contact .cta-panel {
    padding: 24px !important;
  }
}


/* ======================================================
   ROUND 3 — restore readability without disturbing fixed layout
   Scope only: Updates, Architecture, Platform, Applications,
   Execution, Contact and footer. Hero / Why untouched.
   ====================================================== */

/* Common section pill size: match the better rows */
#opw2 #updates > .eyebrow,
#opw2 #architecture > .eyebrow,
#opw2 #platform > .eyebrow,
#opw2 #applications > .eyebrow,
#opw2 #execution > .eyebrow,
#opw2 #contact .eyebrow {
  font-size: 15px !important;
  line-height: 1.1 !important;
  letter-spacing: 0.13em !important;
  padding: 12px 20px !important;
  border-radius: 999px !important;
  margin-bottom: 24px !important;
  color: #8cf0ff !important;
  background: rgba(67, 213, 255, 0.11) !important;
  border-color: rgba(67, 213, 255, 0.38) !important;
  box-shadow: 0 0 34px rgba(67, 213, 255, 0.10) !important;
}

#opw2 #updates > .eyebrow::before,
#opw2 #architecture > .eyebrow::before,
#opw2 #platform > .eyebrow::before,
#opw2 #applications > .eyebrow::before,
#opw2 #execution > .eyebrow::before,
#opw2 #contact .eyebrow::before {
  width: 9px !important;
  height: 9px !important;
}

/* Updates row: the small NDA note was too tiny */
#opw2 #updates .safe-note {
  margin-top: 20px !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  letter-spacing: 0.02em !important;
  color: #8fa6c9 !important;
  max-width: 980px !important;
}

#opw2 #updates .update-card p {
  font-size: 16px !important;
  line-height: 1.45 !important;
}

/* Architecture row: keep title and explanatory text as two clean lines */
#opw2 #architecture .platform-layer {
  min-height: 88px !important;
  height: 88px !important;
  padding: 0 22px !important;
  gap: 18px !important;
}

#opw2 #architecture .platform-layer > div:first-child {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
}

#opw2 #architecture .platform-layer strong {
  display: block !important;
  font-size: 20px !important;
  line-height: 1.15 !important;
  margin: 0 0 5px !important;
  white-space: nowrap !important;
}

#opw2 #architecture .platform-layer span {
  display: block !important;
  font-size: 15.5px !important;
  line-height: 1.25 !important;
  white-space: normal !important;
  max-width: 430px !important;
}

#opw2 #architecture .layer-tag {
  flex: 0 0 auto !important;
  font-size: 12px !important;
  padding-left: 12px !important;
}

#opw2 #architecture .platform-layer.l1 { top: 42px !important; }
#opw2 #architecture .platform-layer.l2 { top: 144px !important; }
#opw2 #architecture .platform-layer.l3 { top: 246px !important; }
#opw2 #architecture .platform-layer.l4 { top: 348px !important; }
#opw2 #architecture .layer-canvas { min-height: 475px !important; }
#opw2 #architecture .layer-line { top: 130px !important; bottom: 90px !important; }

/* Palani platform row: bigger Edge/Fusion/Scale pills and card copy */
#opw2 #platform .tier {
  font-size: 13px !important;
  line-height: 1 !important;
  letter-spacing: 0.10em !important;
  padding: 10px 17px !important;
  margin-bottom: 14px !important;
}

#opw2 #platform .deploy-card h3 {
  font-size: 26px !important;
  line-height: 1.14 !important;
  margin-top: 0 !important;
}

#opw2 #platform .deploy-card p,
#opw2 #platform .deploy-list li {
  font-size: 16px !important;
  line-height: 1.42 !important;
}

#opw2 #platform .deploy-list {
  margin-top: 16px !important;
  gap: 8px !important;
}

/* Applications row: keep icons removed, make meaningful labels/tags readable */
#opw2 #applications .icon {
  display: none !important;
}

#opw2 #applications .tier {
  font-size: 14px !important;
  line-height: 1 !important;
  letter-spacing: 0.11em !important;
  padding: 10px 18px !important;
}

#opw2 #applications .app-card {
  padding: 28px 30px 28px !important;
  min-height: 286px !important;
}

#opw2 #applications .app-card.wide {
  min-height: 300px !important;
}

#opw2 #applications .app-card h3 {
  font-size: 26px !important;
  line-height: 1.15 !important;
  margin-top: 20px !important;
}

#opw2 #applications .app-card p {
  font-size: 17px !important;
  line-height: 1.45 !important;
}

#opw2 #applications .app-tags {
  margin-top: 18px !important;
  gap: 10px !important;
}

#opw2 #applications .app-tags li {
  font-size: 13.5px !important;
  line-height: 1 !important;
  padding: 9px 13px !important;
  border-radius: 999px !important;
  color: #aebfde !important;
}

/* Execution row: keep the left labels, but make them readable */
#opw2 #execution .step-card {
  min-height: 108px !important;
}

#opw2 #execution .status-pill {
  flex-basis: 220px !important;
  width: 220px !important;
  min-height: 108px !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  letter-spacing: 0.07em !important;
  padding: 14px 18px !important;
}

#opw2 #execution .step-card > div {
  padding: 24px 30px !important;
}

#opw2 #execution .step-card h3 {
  font-size: 25px !important;
}

#opw2 #execution .step-card p {
  font-size: 16.5px !important;
  line-height: 1.42 !important;
}

/* Contact row: keep paragraph in one line on desktop, bigger pill, ceo mail in PHP */
#opw2 #contact .cta-panel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 42px !important;
  padding: 42px 52px !important;
}

#opw2 #contact h2 {
  max-width: 940px !important;
  font-size: clamp(50px, 4.0vw, 76px) !important;
  line-height: 1.08 !important;
}

#opw2 #contact p {
  max-width: none !important;
  white-space: nowrap !important;
  font-size: 20px !important;
  line-height: 1.45 !important;
}

#opw2 #contact .cta-actions {
  display: flex !important;
  gap: 16px !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
}

#opw2 #contact .btn {
  min-height: 66px !important;
  padding: 0 34px !important;
  font-size: 18px !important;
}

/* Footer: it had fallen back too small */
#opw2 .footer-grid {
  font-size: 15.5px !important;
  line-height: 1.5 !important;
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

#opw2 .footer-grid strong {
  font-size: 17px !important;
}

#opw2 .footer-links a {
  font-size: 15.5px !important;
}

@media (max-width: 1180px) {
  #opw2 #architecture .platform-layer strong {
    white-space: normal !important;
  }

  #opw2 #contact .cta-panel {
    grid-template-columns: 1fr !important;
    gap: 26px !important;
  }

  #opw2 #contact p {
    white-space: normal !important;
  }
}

@media (max-width: 760px) {
  #opw2 #updates > .eyebrow,
  #opw2 #architecture > .eyebrow,
  #opw2 #platform > .eyebrow,
  #opw2 #applications > .eyebrow,
  #opw2 #execution > .eyebrow,
  #opw2 #contact .eyebrow {
    font-size: 12.5px !important;
    padding: 10px 14px !important;
  }

  #opw2 #architecture .platform-layer {
    height: auto !important;
    min-height: 88px !important;
  }

  #opw2 #applications .app-card,
  #opw2 #applications .app-card.wide {
    min-height: auto !important;
  }

  #opw2 #execution .status-pill {
    width: 100% !important;
    min-height: 56px !important;
    flex-basis: auto !important;
  }

  #opw2 #contact .cta-panel {
    padding: 28px !important;
  }

  #opw2 #contact .cta-actions {
    flex-direction: column !important;
    align-items: stretch !important;
  }
}

/* ======================================================
   OPW2 CLEAN TOP BAR + COMPACT ACF SLIDER PATCH
   Keeps locked welcome content untouched; only header/loader/slider/cursor.
   ====================================================== */

body.opto-clean-shell #pointer-dot,
body.opto-clean-shell #pointer-ring,
body.opto-welcome-v2 #pointer-dot,
body.opto-welcome-v2 #pointer-ring {
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  width:0 !important;
  height:0 !important;
  padding:0 !important;
  border:0 !important;
}

body.opto-clean-shell .opto-clean-header + #opw2,
body.opto-clean-shell #opw2 {
  margin-top:0 !important;
}

#opw2 .opx-acf-slider-section {
  width:min(calc(100% - 40px), var(--max));
  margin:0 auto;
  padding:30px 0 12px;
}

#opw2 .opx-acf-compact-slider.slider {
  width:100% !important;
  height:clamp(280px, 34vw, 460px) !important;
  min-height:280px !important;
  max-height:460px !important;
  display:block !important;
  position:relative !important;
  overflow:hidden !important;
  border-radius:30px !important;
  border:1px solid rgba(137,181,255,.18) !important;
  background:#050914 !important;
  box-shadow:0 24px 80px rgba(0,0,0,.28) !important;
}

#opw2 .opx-acf-compact-slider .main-slider,
#opw2 .opx-acf-compact-slider .swiper-wrapper,
#opw2 .opx-acf-compact-slider .swiper-slide {
  height:100% !important;
  min-height:0 !important;
}

#opw2 .opx-acf-compact-slider .main-slider {
  width:100% !important;
  display:block !important;
  overflow:hidden !important;
}

#opw2 .opx-acf-compact-slider .swiper-slide {
  display:flex !important;
  align-items:center !important;
  padding:0 10% !important;
  background:#050914 !important;
}

#opw2 .opx-acf-compact-slider .slide-image {
  width:100% !important;
  height:100% !important;
  position:absolute !important;
  inset:0 !important;
  background-size:cover !important;
  background-position:center !important;
  opacity:.92 !important;
}

#opw2 .opx-acf-compact-slider .slide-image:after {
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(90deg, rgba(5,9,20,.88) 0%, rgba(5,9,20,.62) 44%, rgba(5,9,20,.24) 100%) !important;
  opacity:1 !important;
}

#opw2 .opx-acf-compact-slider .container.ff {
  width:min(100%, 840px) !important;
  margin:0 !important;
  padding:0 !important;
  position:relative !important;
  z-index:2 !important;
  color:#edf6ff !important;
}

#opw2 .opx-acf-compact-slider .container h1 {
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  text-align:left !important;
  font-family:'IBM Plex Sans',system-ui,sans-serif !important;
  font-weight:650 !important;
  letter-spacing:-.055em !important;
  line-height:.98 !important;
  font-size:clamp(2.05rem, 4.1vw, 4.05rem) !important;
  max-width:760px !important;
}

#opw2 .opx-acf-compact-slider .container p {
  width:100% !important;
  margin:.85rem 0 0 !important;
  padding:0 !important;
  color:rgba(237,246,255,.82) !important;
  text-align:left !important;
  font-family:'IBM Plex Sans',system-ui,sans-serif !important;
  font-size:clamp(.95rem, 1.35vw, 1.18rem) !important;
  line-height:1.45 !important;
  max-width:640px !important;
}

#opw2 .opx-acf-compact-slider .boslukpls {
  height:18px !important;
}

#opw2 .opx-acf-compact-slider .ahr,
#opw2 .opx-acf-compact-slider .container a {
  margin-left:0 !important;
}

#opw2 .opx-acf-compact-slider .container a.btn-3 {
  height:48px !important;
  line-height:48px !important;
  padding:0 24px !important;
  border-radius:999px !important;
  background:#43d5ff !important;
  color:#05101f !important;
  font-size:.9rem !important;
  font-weight:700 !important;
  box-shadow:0 12px 30px rgba(67,213,255,.18) !important;
}

#opw2 .opx-acf-compact-slider .button-prev,
#opw2 .opx-acf-compact-slider .button-next {
  width:42px !important;
  height:42px !important;
  line-height:42px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  border-radius:999px !important;
  background:rgba(5,9,20,.72) !important;
  border:1px solid rgba(237,246,255,.20) !important;
  color:#fff !important;
}

#opw2 .opx-acf-compact-slider .button-prev { left:18px !important; }
#opw2 .opx-acf-compact-slider .button-next { right:18px !important; }
#opw2 .opx-acf-compact-slider .dz { margin:0 !important; line-height:42px !important; }

@media (max-width:760px) {
  #opw2 .opx-acf-slider-section {
    width:min(calc(100% - 28px), var(--max));
    padding:22px 0 6px;
  }

  #opw2 .opx-acf-compact-slider.slider {
    height:300px !important;
    min-height:300px !important;
    border-radius:24px !important;
  }

  #opw2 .opx-acf-compact-slider .swiper-slide {
    padding:0 24px !important;
  }

  #opw2 .opx-acf-compact-slider .container h1 {
    font-size:clamp(2rem, 10vw, 3rem) !important;
  }

  #opw2 .opx-acf-compact-slider .container p {
    font-size:.95rem !important;
  }

  #opw2 .opx-acf-compact-slider .button-prev,
  #opw2 .opx-acf-compact-slider .button-next {
    display:none !important;
  }
}
