/* ===== TAP ARUBA · DARK ELITE THEME (shared across all pages) ===== */
body{background:#06101d !important;color:#d3e1ee}
body::before{content:'';position:fixed;inset:0;z-index:-2;pointer-events:none;background:
  radial-gradient(900px 620px at 10% -6%, rgba(29,182,199,.13), transparent 60%),
  radial-gradient(820px 700px at 102% 6%, rgba(17,159,182,.10), transparent 55%),
  radial-gradient(1100px 820px at 50% 116%, rgba(6,43,91,.55), transparent 62%),
  linear-gradient(180deg,#06101d,#0a1626 42%,#06101d)}
#grain{position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:.04;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.block{background:transparent !important}
.sec-head h2,.dash-copy h2,.cta-box h2{color:#fff !important;letter-spacing:-.022em}
.sec-head p{color:#93a8bd !important}
.eyebrow{color:#6fe2ef !important;letter-spacing:.16em}
.trust{background:rgba(7,16,28,.5) !important;border-top:1px solid rgba(159,231,240,.07);border-bottom:1px solid rgba(159,231,240,.07)}
.trust .lbl{color:#5f768d !important}
.marquee .item{color:#33485d !important}
.step h3{color:#fff !important}.step p{color:#93a8bd !important}
.steps{grid-template-columns:repeat(3,1fr) !important;max-width:900px;margin:0 auto}
.steps::before{left:16% !important;right:16% !important;opacity:.32}
@media(max-width:880px){.steps{grid-template-columns:1fr 1fr !important;max-width:520px}.steps::before{display:none}}
@media(max-width:560px){.steps{grid-template-columns:1fr !important}}
.step .num{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02)) !important;border:1px solid rgba(159,231,240,.16) !important}
.step:hover .num{border-color:var(--tap) !important;box-shadow:0 16px 34px -10px rgba(29,182,199,.4) !important}
.cat,.bcard,.svc{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.012)) !important;border:1px solid rgba(159,231,240,.10) !important;border-radius:18px;backdrop-filter:blur(6px);transition:.4s cubic-bezier(.2,.7,.2,1)}
.cat:hover,.bcard:hover,.svc:hover{border-color:rgba(29,182,199,.42) !important;box-shadow:0 24px 50px -28px rgba(0,0,0,.8)}
.cat h3,.bcard h3,.svc h3{color:#fff !important}
.cat ul li,.bcard p,.svc p{color:#93a8bd !important}
.cat .ic,.bcard .ic,.svc .ic{background:rgba(29,182,199,.10) !important;border:1px solid rgba(29,182,199,.16);border-radius:12px}
.demo-stage{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.012)) !important;border:1px solid rgba(159,231,240,.10) !important;box-shadow:0 40px 90px -42px rgba(0,0,0,.75)}
.demo-copy h3{color:#fff !important}.demo-copy p,.demo-copy li{color:#93a8bd !important}
.demo-screen h3{color:#fff}.demo-screen p,.demo-screen li{color:#93a8bd}

/* page heroes (inner pages) */
.page-hero h1{color:#fff !important}
.page-hero p{color:#9fb6cb !important}

/* about / web-digital cards on dark */
.do-card,.val{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.012)) !important;border:1px solid rgba(159,231,240,.10) !important;transition:.4s cubic-bezier(.2,.7,.2,1)}
.do-card:hover,.val:hover{border-color:rgba(29,182,199,.42) !important;box-shadow:0 24px 50px -28px rgba(0,0,0,.8)}
.do-card h3,.val b{color:#fff !important}
.do-card p,.val span{color:#93a8bd !important}
.do-card .ic{background:rgba(29,182,199,.10) !important;border:1px solid rgba(29,182,199,.16)}
.story-grid h2{color:#fff !important}.story-grid p{color:#93a8bd !important}

/* contact / forms on dark */
.cform label,.field label,.form label{color:#bccedd !important}
input,textarea,select,.cform input,.cform textarea,.cform select{background:rgba(255,255,255,.04) !important;border:1px solid rgba(159,231,240,.14) !important;color:#eaf2f8 !important}
input::placeholder,textarea::placeholder{color:#6c8197 !important}
select option{background:#0b1626;color:#eaf2f8}
.contact-side{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.012)) !important;border:1px solid rgba(159,231,240,.10) !important}
.contact-side .ci .ic{background:rgba(29,182,199,.10) !important;border:1px solid rgba(29,182,199,.16) !important}
.contact-side .ci b{color:#fff !important}.contact-side .ci span{color:#93a8bd !important}

/* ===== PLATFORM SHOWCASE ===== */
#platform{padding-top:30px}
.pf-stage{display:grid;grid-template-columns:1.62fr .9fr;gap:34px;align-items:center;margin:46px 0 8px}
@media(max-width:920px){.pf-stage{grid-template-columns:1fr;gap:40px}}
.browser{border-radius:15px;overflow:hidden;background:#0b1626;border:1px solid rgba(159,231,240,.13);
  box-shadow:0 50px 110px -34px rgba(0,0,0,.85),0 0 0 1px rgba(255,255,255,.015),0 0 70px -20px rgba(29,182,199,.22);position:relative}
.browser .bar{display:flex;align-items:center;gap:7px;padding:11px 15px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.012));border-bottom:1px solid rgba(159,231,240,.08)}
.browser .tl{width:11px;height:11px;border-radius:50%;display:inline-block}
.browser .url{margin-left:10px;font-family:'JetBrains Mono',monospace;font-size:.68rem;color:#7c93a8;background:rgba(0,0,0,.28);border:1px solid rgba(159,231,240,.07);border-radius:7px;padding:5px 13px;flex:1;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.browser .bimg{display:block;width:100%;height:auto}
.pf-side{display:flex;flex-direction:column;gap:20px;align-items:center}
.device{width:215px;padding:9px;border-radius:36px;background:linear-gradient(165deg,#202c3d,#0c1626);border:1px solid rgba(159,231,240,.16);
  box-shadow:0 40px 80px -26px rgba(0,0,0,.8),0 0 60px -22px rgba(29,182,199,.28);position:relative}
.device::before{content:'';position:absolute;top:16px;left:50%;transform:translateX(-50%);width:64px;height:5px;border-radius:99px;background:rgba(255,255,255,.18);z-index:2}
.device img{display:block;width:100%;border-radius:28px}
.pf-callout{width:100%;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));border:1px solid rgba(159,231,240,.11);border-radius:14px;padding:14px 16px;display:flex;align-items:center;gap:12px}
.pf-callout .ci{width:34px;height:34px;border-radius:10px;background:rgba(29,182,199,.13);display:grid;place-items:center;flex:none}
.pf-callout b{display:block;color:#fff;font-size:.86rem;font-family:'Sora',sans-serif}
.pf-callout span{color:#8499ad;font-size:.76rem}
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:60px}
@media(max-width:880px){.feat-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.feat-grid{grid-template-columns:1fr}}
.feat{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.012));border:1px solid rgba(159,231,240,.10);border-radius:18px;padding:26px;transition:.4s cubic-bezier(.2,.7,.2,1);overflow:hidden}
.feat::after{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(29,182,199,.6),transparent);opacity:0;transition:.4s}
.feat:hover{border-color:rgba(29,182,199,.4);box-shadow:0 30px 60px -34px rgba(0,0,0,.85)}
.feat:hover::after{opacity:1}
.feat .ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:rgba(29,182,199,.12);border:1px solid rgba(29,182,199,.18);margin-bottom:17px}
.feat h3{font-family:'Sora',sans-serif;font-size:1.08rem;font-weight:700;color:#fff;margin:0 0 8px;letter-spacing:-.01em}
.feat p{font-size:.91rem;line-height:1.58;color:#93a8bd;margin:0}
.feat .tag{display:inline-block;margin-top:14px;font-family:'JetBrains Mono',monospace;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:#6fe2ef;background:rgba(29,182,199,.09);border:1px solid rgba(29,182,199,.2);border-radius:99px;padding:4px 11px}
/* ===== INTEGRATIONS ===== */
.intg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px}
@media(max-width:880px){.intg-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.intg-grid{grid-template-columns:1fr}}
.intg{display:flex;gap:15px;align-items:flex-start;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.012));border:1px solid rgba(159,231,240,.10);border-radius:16px;padding:21px;transition:.4s cubic-bezier(.2,.7,.2,1)}
.intg:hover{border-color:rgba(29,182,199,.4);box-shadow:0 26px 54px -34px rgba(0,0,0,.85)}
.intg .ic{width:42px;height:42px;border-radius:12px;flex:none;display:grid;place-items:center;background:rgba(29,182,199,.12);border:1px solid rgba(29,182,199,.18)}
.intg h4{font-family:'Sora',sans-serif;font-size:.98rem;font-weight:700;color:#fff;margin:0 0 5px;letter-spacing:-.01em}
.intg p{font-size:.85rem;line-height:1.5;color:#8ea3b8;margin:0}
.intg .it-tag{display:inline-block;margin-top:11px;font-family:'JetBrains Mono',monospace;font-size:.58rem;letter-spacing:.13em;text-transform:uppercase;color:#6fe2ef}

/* ===== WEB & DIGITAL — portfolio ===== */
.work-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:50px}
@media(max-width:760px){.work-grid{grid-template-columns:1fr}}
.work-card{display:block;text-decoration:none;transition:.45s cubic-bezier(.2,.7,.2,1)}
.work-card:hover{transform:translateY(-6px)}
.work-card .browser{transition:.45s}
.work-card:hover .browser{border-color:rgba(29,182,199,.4);box-shadow:0 50px 110px -34px rgba(0,0,0,.9),0 0 70px -18px rgba(29,182,199,.35)}
.work-card .bimg{aspect-ratio:16/10;object-fit:cover;object-position:top}
.work-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:17px;padding:0 4px}
.work-meta b{display:block;color:#fff;font-family:'Sora',sans-serif;font-size:1.04rem;letter-spacing:-.01em}
.work-meta .sub{color:#8ea3b8;font-size:.82rem;margin-top:2px}
.work-meta .visit{color:#6fe2ef;font-family:'JetBrains Mono',monospace;font-size:.7rem;letter-spacing:.08em;white-space:nowrap;flex:none;border:1px solid rgba(29,182,199,.25);border-radius:99px;padding:5px 11px;transition:.3s}
.work-card:hover .visit{background:rgba(29,182,199,.12);border-color:rgba(29,182,199,.5)}
.work-card.cta{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border:1.5px dashed rgba(159,231,240,.22);border-radius:15px;background:rgba(255,255,255,.02);padding:30px;min-height:240px}
.work-card.cta:hover{border-color:rgba(29,182,199,.5);background:rgba(29,182,199,.05)}
.work-card.cta b{display:block;color:#fff;font-family:'Sora',sans-serif;font-size:1.35rem;margin-bottom:9px;letter-spacing:-.01em}
.work-card.cta .sub{color:#8ea3b8;font-size:.92rem;max-width:260px}
.work-card.cta .arw{margin-top:18px;color:#6fe2ef;font-family:'JetBrains Mono',monospace;font-size:.78rem;letter-spacing:.1em}
