/* Apex Digital Solutions Ltd — company site. DinkDeck pages keep style.css. */
:root{--ink:#0E1116;--ink2:#1A1E26;--paper:#FAFAF7;--card:#FFFFFF;--line:#E6E5DF;--muted:#5D636F;--soft:#9AA0AB;--accent:#5865F2;--accent2:#6D7BFF}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Inter","Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--accent)}img{max-width:100%}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
/* header */
.top{position:sticky;top:0;z-index:5;background:rgba(250,250,247,.92);border-bottom:1px solid var(--line);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-weight:700;letter-spacing:-.2px;font-size:17px}
.brand img{width:30px;height:30px}.brand span{color:var(--muted);font-weight:500}
.top nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.top nav a{color:var(--ink);text-decoration:none;font-size:14px;font-weight:600;padding:7px 12px;border-radius:999px}
.top nav a:hover{background:#EFEEE8}.top nav a[aria-current]{background:var(--ink);color:#fff}
.top nav a.dd{border:1.5px solid #16213A;color:#16213A;background:#fff}.top nav a.dd:hover{background:#FFF1E9}
/* hero */
.hero{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse 80% 90% at 70% 10%,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 80% 90% at 70% 10%,#000 30%,transparent 75%)}
.hero:after{content:"";position:absolute;width:560px;height:560px;right:-160px;top:-220px;border-radius:50%;background:radial-gradient(circle,rgba(88,101,242,.45),transparent 65%)}
.hero .wrap{position:relative;z-index:1;padding-top:96px;padding-bottom:88px}
.hero.sm .wrap{padding-top:72px;padding-bottom:60px}
.kicker{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#C8CCD6;margin-bottom:22px}
.kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent2);box-shadow:0 0 0 4px rgba(109,123,255,.2)}
.hero h1{font-size:clamp(38px,6.4vw,68px);line-height:1.03;letter-spacing:-.035em;margin:0 0 22px;max-width:820px;font-weight:750}
.hero h1 em{font-style:normal;color:var(--accent2)}
.hero p.lead{font-size:clamp(17px,2vw,20px);color:#C8CCD6;max-width:620px;margin:0 0 32px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 20px;border-radius:12px;font-weight:700;font-size:15px;text-decoration:none;margin:0 10px 10px 0;transition:transform .15s}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:#fff;color:var(--ink)}.btn.ghost{color:#fff;border:1px solid rgba(255,255,255,.28)}
.btn.dark{background:var(--ink);color:#fff}.btn.line{border:1px solid var(--line);color:var(--ink);background:#fff}
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);border-radius:16px;overflow:hidden;margin-top:56px}
.facts div{background:var(--ink2);padding:18px 20px}.facts b{display:block;font-size:15px;color:#fff}.facts small{color:var(--soft);font-size:13px}
@media(max-width:820px){.facts{grid-template-columns:1fr 1fr}}
/* sections */
section{padding:84px 0}section.tight{padding:56px 0}
.label{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}
h2{font-size:clamp(28px,3.6vw,40px);line-height:1.12;letter-spacing:-.025em;margin:0 0 16px;font-weight:720}
h3{font-size:18px;letter-spacing:-.01em;margin:0 0 8px}
p.sub{color:var(--muted);font-size:18px;max-width:640px;margin:0 0 36px}
.cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.cols2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:860px){.cols3,.cols2{grid-template-columns:1fr}}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px}
.card p{color:var(--muted);margin:0}.card .num{font-size:13px;font-weight:700;color:var(--soft);margin-bottom:18px;display:block}
.icon{width:42px;height:42px;border-radius:12px;background:#EEF0FF;display:grid;place-items:center;margin-bottom:18px}
.icon svg{width:22px;height:22px;stroke:var(--accent);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.alt{background:#F2F1EC;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.list{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.list li{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:start}
.list li:before{content:"";width:22px;height:22px;margin-top:2px;border-radius:7px;background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12l4 4 8-9'/%3E%3C/svg%3E") center/14px no-repeat}
.list b{display:block}.list span{color:var(--muted)}
.prose{max-width:760px}.prose h3{margin-top:28px}.prose p{color:#33384A}
.details{display:grid;grid-template-columns:200px 1fr;border-top:1px solid var(--line)}
.details div{padding:14px 0;border-bottom:1px solid var(--line)}.details div:nth-child(odd){color:var(--muted);font-size:14px;padding-right:16px}
@media(max-width:560px){.details{grid-template-columns:1fr}.details div:nth-child(odd){border-bottom:0;padding-bottom:0}}
.cta{background:var(--ink);color:#fff;border-radius:24px;padding:48px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.cta h2{color:#fff;margin:0}.cta p{color:#C8CCD6;margin:6px 0 0}
/* DinkDeck feature panel — keeps the DinkDeck brand inside the company site */
.dd-tile{background:#F6F4EF;color:#16213A;border:3px solid #16213A;box-shadow:8px 8px 0 #16213A;border-radius:22px;display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden}
@media(max-width:860px){.dd-tile{grid-template-columns:1fr}}
.dd-tile .dd-copy{padding:40px}
.dd-tile .dd-art{background:#16213A;display:grid;place-items:center;padding:28px}
.dd-tile .dd-art img{width:100%;max-width:440px}
.dd-brand{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.dd-brand img{height:42px}.dd-brand b{font-size:30px;font-weight:900;letter-spacing:-.5px}.dd-brand b i{font-style:normal;color:#1E6FFF}
.dd-tag{display:inline-block;background:#16213A;color:#fff;font-weight:800;font-size:11px;letter-spacing:.1em;padding:4px 9px;border-radius:4px;margin-bottom:14px}
.dd-tile h3{font-size:24px;line-height:1.2;letter-spacing:-.4px;margin-bottom:12px}
.dd-tile p{color:#33405C}
.dd-btn{display:inline-block;background:#FF5E14;color:#fff;font-weight:800;border:2.5px solid #16213A;border-radius:12px;box-shadow:4px 4px 0 #16213A;padding:11px 18px;text-decoration:none;margin:8px 10px 6px 0}
.dd-btn.alt{background:#fff;color:#16213A}
.dd-pills span{display:inline-block;background:#fff;border:2px solid #16213A;border-radius:99px;padding:3px 11px;font-weight:700;font-size:13px;margin:0 6px 8px 0}
.dd-note{font-size:13px;color:#5A6275;margin-top:10px}
/* footer */
.foot{background:var(--ink);color:#C8CCD6;margin-top:84px;padding:56px 0 36px;font-size:14px}
.foot .grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:28px}
@media(max-width:860px){.foot .grid{grid-template-columns:1fr 1fr}}
.foot b{color:#fff;display:block;margin-bottom:10px;font-size:14px}
.foot a{color:#C8CCD6;text-decoration:none;display:block;margin-bottom:6px}.foot a:hover{color:#fff}
.foot .brand{color:#fff;margin-bottom:12px}.foot .brand span{color:var(--soft)}
.foot .reg{border-top:1px solid rgba(255,255,255,.12);margin-top:36px;padding-top:20px;color:var(--soft);font-size:13px;line-height:1.6}
@media(max-width:560px){.top .wrap{padding-top:10px;padding-bottom:10px}.brand span{display:none}.top nav a{padding:6px 9px;font-size:13px}.top nav a.dd{padding:5px 9px}.hero .wrap{padding-top:64px}.cta{padding:32px}}
