/* Momentum — same palette as the Alakhveer company site */
:root{color-scheme:dark;
  --bg:#0b0f12; --bg-2:#13181c; --bg-3:#1b2329;
  --ink:#f3f6f8; --ink-2:rgba(243,246,248,.68); --ink-3:rgba(243,246,248,.5);
  --line:rgba(243,246,248,.09); --line-2:rgba(243,246,248,.16);
  --accent:#b7c4cc; --accent-2:#d6e1e8; --accent-soft:rgba(183,196,204,.1); --glow:rgba(214,225,232,.38);
  --card:linear-gradient(180deg,#151b20,#0f1418);
  --pane:rgba(243,246,248,.035); --tile:#1a2128;
  --won:#8fdcb0; --lost:#f19a9a; --warn:#f5c84c;
  --sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","Inter",system-ui,sans-serif;
  --display:-apple-system,BlinkMacSystemFont,"SF Pro Display","Inter",system-ui,sans-serif;
  --serif:"Instrument Serif",ui-serif,Georgia,serif;
  --radius:22px; --ease:cubic-bezier(.2,.7,.1,1); --hover:cubic-bezier(.22,1,.36,1); --out:cubic-bezier(.16,1,.3,1)}
:root[data-theme="light"]{color-scheme:light;
  --bg:#f4f6f7; --bg-2:#e7ecef; --bg-3:#fbfcfd;
  --ink:#0f1418; --ink-2:rgba(15,20,24,.72); --ink-3:rgba(15,20,24,.58);
  --line:rgba(15,20,24,.1); --line-2:rgba(15,20,24,.18);
  --accent:#2f4350; --accent-2:#26313a; --accent-soft:rgba(47,67,80,.08); --glow:rgba(30,40,46,.3);
  --card:linear-gradient(180deg,#ffffff,#fbfcfd);
  --pane:rgba(15,23,42,.045); --tile:#ffffff;
  --won:#1d6b40; --lost:#b42318; --warn:#8a6100}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:clip;transition:background .3s,color .3s}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:12px}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:999px;font-weight:600}
.skip:focus{top:12px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{width:min(1120px,100% - 32px);margin-inline:auto}
@media (min-width:700px){.wrap{width:min(1120px,100% - 80px)}}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}
h1,h2,h3{font-family:var(--display);font-weight:700;letter-spacing:-.035em;line-height:1.02}
h2{font-size:clamp(36px,6vw,64px);margin:14px 0 16px}
em.s{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.01em;color:var(--accent)}
.lead{font-size:clamp(17px,1.6vw,20px);color:var(--ink-2);max-width:620px}
section{position:relative;padding:clamp(80px,11vw,140px) 0}
.head{margin-bottom:clamp(36px,5vw,56px)}
.center{text-align:center}.center .lead{margin-inline:auto}

/* buttons */
.btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 24px;border-radius:999px;font-weight:600;font-size:16px;white-space:nowrap;transition:transform .5s var(--hover),box-shadow .5s var(--hover),background .4s var(--hover)}
.btn:active{transform:scale(.97);transition-duration:.15s}
.btn svg{width:18px;height:18px;flex:none}
.btn-primary{background:linear-gradient(180deg,#fff,#d3dce2);color:#0b0f12;box-shadow:0 10px 40px -10px rgba(160,185,200,.7),inset 0 1px 0 rgba(255,255,255,.6)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 50px -12px rgba(160,185,200,.85),inset 0 1px 0 rgba(255,255,255,.6)}
[data-theme="light"] .btn-primary{background:linear-gradient(180deg,#26313a,#0f1418);color:#f3f6f8;box-shadow:0 10px 30px -12px rgba(30,40,46,.7),inset 0 1px 0 rgba(255,255,255,.12)}
.btn-primary::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translateX(-120%);transition:transform .9s var(--out)}
.btn-primary:hover::after{transform:translateX(120%)}
.btn-ghost{background:rgba(243,246,248,.06);border:1px solid var(--line-2)}
.btn-ghost:hover{background:rgba(243,246,248,.11)}
[data-theme="light"] .btn-ghost{background:rgba(15,20,24,.04)}
[data-theme="light"] .btn-ghost:hover{background:rgba(15,20,24,.08)}
.btn-sm{height:38px;padding:0 16px;font-size:14px}
.row{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}

/* nav */
.nav{position:fixed;top:14px;left:50%;transform:translateX(-50%);z-index:50;width:min(920px,100% - 24px);display:flex;align-items:center;gap:8px;padding:7px 7px 7px 10px;border-radius:999px;
  background:rgba(13,17,20,.55);border:1px solid var(--line);backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);transition:background .4s var(--hover)}
.nav.scrolled{background:rgba(13,17,20,.82)}
[data-theme="light"] .nav{background:rgba(250,251,252,.6)}
[data-theme="light"] .nav.scrolled{background:rgba(250,251,252,.88)}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:-.02em;font-size:17px;flex:none}
.logo{width:30px;height:30px;border-radius:9px;background:#fff;padding:3px;flex:none;box-shadow:0 0 0 1px var(--line)}
.nav-links{display:flex;gap:2px;margin-left:auto}
.nav-links a,.by{font-size:14px;color:var(--ink-2);padding:8px 13px;border-radius:999px;transition:color .35s var(--hover),background .35s var(--hover);white-space:nowrap}
.nav-links a:hover,.by:hover{color:var(--ink);background:rgba(243,246,248,.07)}
[data-theme="light"] .nav-links a:hover,[data-theme="light"] .by:hover{background:rgba(15,20,24,.05)}
.by{border-left:1px solid var(--line);border-radius:0 999px 999px 0;padding-left:14px}
.by i{font-family:var(--serif);font-size:16px;color:var(--ink)}
.theme-btn{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:var(--ink-2);border:1px solid var(--line);flex:none;transition:color .35s var(--hover),background .35s var(--hover),transform .5s var(--hover)}
.theme-btn:hover{color:var(--ink);background:rgba(110,128,140,.12)}
.theme-btn:active{transform:rotate(30deg) scale(.92)}
.theme-btn svg{width:18px;height:18px}
.theme-btn .moon,[data-theme="light"] .theme-btn .sun{display:none}
[data-theme="light"] .theme-btn .moon{display:block}
@media (max-width:820px){.nav-links{display:none}.by{margin-left:auto;border-left:0;border-radius:999px}}
@media (max-width:480px){.nav{gap:4px;padding-left:8px}.brand{font-size:16px;gap:8px}.by{padding:8px 6px;font-size:13px}.nav .btn-sm{padding:0 13px}}
@media (max-width:380px){.by{display:none}.nav .btn-sm{margin-left:auto}}

/* hero */
.hero{padding-top:150px;padding-bottom:40px;text-align:center;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(40% 45% at 50% 22%,rgba(140,165,180,.22),transparent 70%),radial-gradient(30% 40% at 15% 10%,rgba(78,108,124,.2),transparent 70%),radial-gradient(30% 40% at 85% 18%,rgba(214,225,232,.08),transparent 70%);animation:drift 18s ease-in-out infinite alternate}
[data-theme="light"] .hero::before{background:radial-gradient(40% 45% at 50% 22%,rgba(120,150,165,.32),transparent 70%),radial-gradient(30% 40% at 20% 10%,rgba(78,108,124,.16),transparent 70%)}
@keyframes drift{to{transform:translate3d(2%,-3%,0) scale(1.08)}}
.chip{display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;border-radius:999px;background:rgba(243,246,248,.05);border:1px solid var(--line);font-size:13.5px;color:var(--ink-2);margin-bottom:28px}
[data-theme="light"] .chip{background:rgba(15,20,24,.03)}
.chip b{background:var(--accent);color:var(--bg);border-radius:999px;padding:2px 10px;font-size:12px}
.hero h1{font-size:clamp(44px,9vw,112px);letter-spacing:-.05em;line-height:.98}
.hero h1 em.s{font-size:1.08em;letter-spacing:-.02em;padding-right:.06em}
.hero .lead{margin:24px auto 34px;font-size:clamp(18px,2vw,21px)}
.hero-note{margin-top:16px;font-size:14px;color:var(--ink-3)}

/* app window frame */
.window{margin:clamp(48px,7vw,80px) auto 0;max-width:1060px;border-radius:28px;border:1px solid var(--line-2);background:var(--card);box-shadow:0 50px 120px -50px var(--glow),0 0 0 1px rgba(255,255,255,.02) inset;overflow:hidden;text-align:left}
.win-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--line)}
.win-bar i{width:11px;height:11px;border-radius:50%;background:var(--line-2)}
.win-bar span{margin-left:10px;font-size:12.5px;color:var(--ink-3);padding:4px 12px;border-radius:999px;background:var(--pane);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.win-body{padding:18px}
.win-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}
.win-head b{font-size:18px;letter-spacing:-.02em}
.win-head small{color:var(--ink-3);font-size:13px}

/* board (shared by hero + feature card) */
.board{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:10px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin;overscroll-behavior-x:contain}
.col{border-radius:16px;background:var(--pane);padding:10px;min-height:150px;transition:background .3s var(--hover),box-shadow .3s var(--hover)}
.col.over{background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent)}
.col-h{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;margin-bottom:2px}
.col-h .d{width:9px;height:9px;border-radius:50%;flex:none}
.col-h .n{color:var(--ink-3);font-weight:500}
.col-v{font-size:12px;color:var(--ink-3);margin-bottom:10px;font-variant-numeric:tabular-nums}
.drop{display:grid;gap:8px;min-height:60px;align-content:start}
.lc{position:relative;border-radius:12px;background:var(--tile);border:1px solid var(--line);padding:10px 11px;font-size:13px;line-height:1.35;box-shadow:0 1px 2px rgba(0,0,0,.12);user-select:none;-webkit-user-select:none;touch-action:none;transition:transform .35s var(--hover),box-shadow .35s var(--hover),border-color .3s}
.lc b{display:block;font-weight:600}
.lc small{color:var(--ink-3);font-size:11.5px}
.lc .m{display:flex;justify-content:space-between;align-items:center;margin-top:7px;font-size:11.5px;font-variant-numeric:tabular-nums;color:var(--ink-2)}
.score{font-weight:700;font-size:11px;padding:1px 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent)}
.draggable .lc{cursor:grab}
.draggable .lc:hover{border-color:var(--line-2);transform:translateY(-1px)}
.lc.dragging{cursor:grabbing;z-index:20;box-shadow:0 24px 50px -16px rgba(0,0,0,.55);border-color:var(--accent);transform:rotate(-2deg) scale(1.03);transition:box-shadow .2s,border-color .2s}
.lc.ghost{opacity:.35}
.lc.landed{animation:land .6s var(--out)}
@keyframes land{0%{transform:scale(1.06)}100%{transform:none}}
.board-tip{margin-top:12px;font-size:12.5px;color:var(--ink-3);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.board-tip kbd{font:inherit;font-size:11.5px;padding:1px 7px;border-radius:6px;border:1px solid var(--line-2)}

/* problem → solution */
.ps{display:grid;grid-template-columns:1fr auto 1fr;gap:clamp(16px,3vw,32px);align-items:center}
.mess,.one{border-radius:28px;border:1px solid var(--line);background:var(--card);padding:clamp(22px,3vw,32px);min-height:320px;position:relative;overflow:hidden}
.mess h3,.one h3{font-size:22px;margin-bottom:6px}
.mess>p,.one>p{color:var(--ink-2);font-size:15.5px;margin-bottom:22px}
.scraps{position:relative;height:200px}
.scrap{position:absolute;font-size:13px;line-height:1.35;padding:10px 12px;border-radius:14px;max-width:190px;box-shadow:0 10px 24px -14px rgba(0,0,0,.5)}
.scrap.wa{left:0;top:4px;background:#1f3d2e;color:#d6f5e2;border-bottom-left-radius:4px;transform:rotate(-3deg)}
.scrap.wa small{display:block;opacity:.6;font-size:11px;text-align:right}
.scrap.xl{right:2%;top:30px;background:var(--tile);border:1px solid var(--line);font-family:ui-monospace,Menlo,monospace;font-size:11.5px;padding:0;overflow:hidden;transform:rotate(2deg)}
.scrap.xl div{display:grid;grid-template-columns:62px 62px 52px}
.scrap.xl span{padding:4px 6px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);white-space:nowrap;overflow:hidden}
.scrap.xl .hd span{background:var(--pane);font-weight:700}
.scrap.st{left:22%;bottom:0;background:#f7e27c;color:#3d3300;transform:rotate(-5deg);font-family:"Marker Felt","Comic Sans MS",cursive;border-radius:4px}
[data-theme="light"] .scrap.wa{background:#dcf8c6;color:#1b3a20}
.arrow{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);color:var(--accent);background:var(--accent-soft)}
.arrow svg{width:24px;height:24px}
.one{border-color:color-mix(in srgb,var(--accent) 35%,transparent)}
.one::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(70% 60% at 50% 0,var(--accent-soft),transparent)}
.one ul{list-style:none;display:grid;gap:8px;position:relative}
.one li{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:var(--pane);font-size:14px}
.one li .src{margin-left:auto;font-size:11.5px;color:var(--ink-3)}
.one li .d{width:9px;height:9px;border-radius:50%;flex:none}
@media (max-width:860px){.ps{grid-template-columns:1fr}.arrow{margin:0 auto;transform:rotate(90deg)}}

/* steps */
.steps{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:16px;counter-reset:s}
.steps li{position:relative;padding:28px 26px;border-radius:var(--radius);border:1px solid var(--line);background:var(--card);counter-increment:s;transition:transform .6s var(--hover),border-color .5s var(--hover)}
.steps li:hover{transform:translateY(-3px);border-color:var(--line-2)}
.steps li::before{content:"0" counter(s);font-family:var(--serif);font-style:italic;font-size:44px;line-height:1;color:var(--accent);display:block;margin-bottom:14px}
.steps h3{font-size:20px;margin-bottom:6px}
.steps p{color:var(--ink-2);font-size:15.5px}

/* faq */
.faq{max-width:800px;margin-inline:auto;display:grid;gap:12px}
.faq details{border:1px solid var(--line);border-radius:20px;background:var(--card);padding:0 22px;transition:border-color .35s var(--hover)}
.faq details:hover{border-color:var(--line-2)}
.faq summary{list-style:none;cursor:pointer;padding:20px 0;font-weight:600;font-size:17px;display:flex;justify-content:space-between;gap:16px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:24px;font-weight:300;color:var(--ink-3);transition:transform .5s var(--hover)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{color:var(--ink-2);padding-bottom:20px;font-size:15.5px}
.faq details[open] p{animation:faqIn .6s var(--out)}
@keyframes faqIn{from{opacity:0;transform:translateY(-6px);filter:blur(4px)}}
.faq a{color:var(--accent);border-bottom:1px solid currentColor}

/* cta */
.cta{text-align:center;border-radius:36px;border:1px solid var(--line);background:var(--card);padding:clamp(44px,7vw,80px) 20px;position:relative;overflow:hidden}
.cta::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(50% 70% at 50% 0,var(--accent-soft),transparent)}
.cta>*{position:relative}
.cta .big-icon{width:84px;height:84px;margin:0 auto 22px;border-radius:24px;background:#fff;padding:10px;box-shadow:0 20px 50px -18px var(--glow);animation:float 6s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-6px) rotate(-2deg)}}
.cta .lead{margin:0 auto 32px}
.cta .mail{display:inline-block;margin-top:28px;font-family:var(--serif);font-style:italic;font-size:clamp(20px,3.6vw,30px);overflow-wrap:anywhere;border-bottom:1px solid var(--line-2);transition:border-color .35s var(--hover)}
.cta .mail:hover{border-color:var(--ink)}

footer{border-top:1px solid var(--line);padding:30px 0 40px;color:var(--ink-3);font-size:14px}
footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px}
.foot-brand{display:flex;align-items:center;gap:12px}
footer nav{display:flex;flex-wrap:wrap;gap:18px}
footer a:hover{color:var(--ink)}

/* reveal */
.rv{opacity:0;transform:translateY(28px) scale(.985);filter:blur(8px);transition:opacity 1.1s var(--out),transform 1.1s var(--out),filter 1.1s var(--out)}
.rv.in{opacity:1;transform:none;filter:none}
.split .w{display:inline-block;opacity:0;transform:translateY(.45em);filter:blur(12px);animation:wordIn 1.2s var(--out) forwards}
.split .w:nth-child(2){animation-delay:.12s}
.split em .w:nth-child(1){animation-delay:.3s}.split em .w:nth-child(2){animation-delay:.42s}
@keyframes wordIn{to{opacity:1;transform:none;filter:none}}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}
.no-js .rv,.no-js .split .w{opacity:1;transform:none;filter:none;animation:none}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition-duration:.01ms!important;transition-delay:0s!important}
  .rv,.split .w{opacity:1;transform:none;filter:none}
}


/* feature tiles */
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:18px}
.tile{position:relative;padding:28px;border-radius:var(--radius);border:1px solid var(--line);background:var(--card);transition:transform .6s var(--hover),border-color .5s var(--hover)}
.tile:hover{transform:translateY(-4px);border-color:var(--line-2)}
.tile .ic{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--accent-soft);border:1px solid var(--line);color:var(--accent);margin-bottom:20px}
.tile .ic svg{width:22px;height:22px}
.tile h3{font-size:20px;margin-bottom:8px}
.tile p{color:var(--ink-2);font-size:15.5px}
.also{margin-top:28px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;color:var(--ink-3);font-size:14px}
.also span{padding:6px 14px;border-radius:999px;border:1px solid var(--line);color:var(--ink-2)}
[data-theme="light"] .tile,[data-theme="light"] .mess,[data-theme="light"] .one,[data-theme="light"] .window,[data-theme="light"] .cta{box-shadow:0 1px 2px rgba(15,20,24,.04),0 20px 40px -28px rgba(15,20,24,.25)}
.cta .free-note{margin-top:16px;font-size:14px;color:var(--ink-3)}
@media (max-width:480px){.scrap.wa{max-width:58%}.scrap.xl{top:74px}.scrap.st{left:6%}}

/* feature showcase: tabs on the left, one app window on the right */
.show{display:grid;grid-template-columns:minmax(260px,.8fr) 1.4fr;gap:clamp(20px,3vw,40px);align-items:start}
.tabs{display:grid;gap:8px}
.tab{text-align:left;padding:16px 18px;border-radius:18px;border:1px solid transparent;transition:background .35s var(--hover),border-color .35s var(--hover)}
.tab:hover{background:var(--pane)}
.tab[aria-selected="true"]{background:var(--card);border-color:var(--line-2);box-shadow:0 20px 40px -30px var(--glow)}
.tab b{display:flex;align-items:center;gap:10px;font-size:17px;letter-spacing:-.02em}
.tab b svg{width:20px;height:20px;color:var(--accent);flex:none}
.tab span{display:block;margin-top:4px;padding-left:30px;color:var(--ink-2);font-size:14.5px}
.tab[aria-selected="false"] span{display:none}
.show .window{margin:0;position:sticky;top:100px}
.panel{padding:22px;min-height:340px;animation:panelIn .5s var(--out)}
.panel[hidden]{display:none}
@keyframes panelIn{from{opacity:0;transform:translateY(8px)}}
.panel h4{font-size:15px;margin-bottom:14px;letter-spacing:-.01em}
.panel .cap{display:none}
@media (max-width:860px){
  .show{grid-template-columns:1fr}
  .tabs{display:flex;overflow-x:auto;gap:6px;padding-bottom:4px;scrollbar-width:none}
  .tab{flex:none;padding:9px 14px;border-radius:999px;border-color:var(--line)}
  .tab b{font-size:14px}.tab b svg{width:16px;height:16px}
  .tab span{display:none!important}
  .show .window{position:static}
  .panel{min-height:0;padding:16px}
  .panel .cap{display:block;margin-top:16px;color:var(--ink-2);font-size:15px}
}

/* tasks */
.tasks{list-style:none;display:grid;gap:8px}
.tasks li{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;background:var(--tile);border:1px solid var(--line);font-size:14px}
.tasks input{appearance:none;width:18px;height:18px;border-radius:6px;border:1.5px solid var(--line-2);flex:none;display:grid;place-items:center;cursor:pointer}
.tasks input:checked{background:var(--accent);border-color:var(--accent)}
.tasks input:checked::after{content:"";width:8px;height:4px;border-left:2px solid var(--bg);border-bottom:2px solid var(--bg);transform:rotate(-45deg) translate(1px,-1px)}
.tasks li.done .t{text-decoration:line-through;color:var(--ink-3)}
.tasks .t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pr{font-size:11px;font-weight:700;padding:1px 8px;border-radius:999px;border:1px solid currentColor}
.pr.h{color:var(--lost)}.pr.m{color:var(--warn)}.pr.l{color:var(--ink-3)}
.due{font-size:12px;color:var(--ink-3);white-space:nowrap;min-width:56px;text-align:right}
.due.over{color:var(--lost);font-weight:600}
@media (max-width:480px){.tasks .pr{display:none}}

/* timeline */
.tl{list-style:none;position:relative;display:grid;gap:14px}
.tl::before{content:"";position:absolute;left:15px;top:8px;bottom:8px;width:2px;background:var(--line)}
.tl li{position:relative;display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.4}
.tl .ic{width:32px;height:32px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--tile);border:1px solid var(--line-2);color:var(--accent)}
.tl .ic svg{width:15px;height:15px}
.tl small{display:block;color:var(--ink-3);font-size:12px}
.tl li.sys .ic{color:var(--won)}
.tl li.sys b{color:var(--ink-2);font-weight:500}

/* score */
.gauge{display:grid;grid-template-columns:120px 1fr;gap:24px;align-items:center}
.ring{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) calc(var(--v,0)*1%),var(--line) 0);transition:--v 1.4s var(--out)}
.ring b{width:96px;height:96px;border-radius:50%;background:var(--bg-2);display:grid;place-items:center;font-size:34px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
[data-theme="light"] .ring b{background:#fff}
@property --v{syntax:"<number>";inherits:false;initial-value:0}
.bars{display:grid;gap:12px}
.bar{font-size:13px;color:var(--ink-2)}
.bar div{display:flex;justify-content:space-between;gap:8px}
.bar i{display:block;height:7px;border-radius:9px;background:var(--line);margin-top:4px;overflow:hidden}
.bar i::after{content:"";display:block;height:100%;width:var(--w);background:var(--accent);border-radius:inherit}
@media (max-width:480px){.gauge{grid-template-columns:1fr;justify-items:center}.bars{width:100%}}

/* reports */
.rep{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.kpi{padding:12px;border-radius:14px;background:var(--tile);border:1px solid var(--line)}
.kpi small{display:block;font-size:11.5px;color:var(--ink-3)}
.kpi b{font-size:22px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.kpi b.r{color:var(--lost)}
.rep .chart{grid-column:span 4;padding:12px;border-radius:14px;background:var(--tile);border:1px solid var(--line)}
.chart h5{font-size:12px;font-weight:600;color:var(--ink-2);margin-bottom:10px}
.vbars{display:flex;align-items:flex-end;gap:10px;height:110px;margin-bottom:20px}
.vbars div{flex:1;display:flex;gap:3px;align-items:flex-end;height:100%;position:relative}
.vbars i{flex:1;border-radius:5px 5px 2px 2px;background:var(--line-2);height:var(--h)}
.vbars i+i{background:var(--accent)}
.vbars span{position:absolute;bottom:-18px;left:0;right:0;text-align:center;font-size:10.5px;color:var(--ink-3)}
.legend{display:flex;gap:12px;font-size:11px;color:var(--ink-3)}
.legend span::before{content:"";display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:5px;background:var(--line-2)}
.legend span+span::before{background:var(--accent)}
@media (max-width:600px){.rep{grid-template-columns:1fr 1fr}.rep .chart{grid-column:span 2}}

/* team */
.roles{display:grid;gap:10px}
.role{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;background:var(--tile);border:1px solid var(--line);font-size:14px}
.av{width:34px;height:34px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:12px;font-weight:700;color:#fff}
.role .w{flex:1;min-width:0}
.role .w small{display:block;color:var(--ink-3);font-size:12px}
.rtag{font-size:10.5px;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--accent-soft);color:var(--accent);text-transform:uppercase;letter-spacing:.06em}

/* spotlight rows: text on one side, one picture on the other */
.rows{display:grid;gap:clamp(56px,8vw,110px);margin-top:clamp(80px,10vw,130px)}
.rowf{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,5vw,72px);align-items:center}
.rowf:nth-child(even) .rowf-pic{order:-1}
.rowf h3{font-size:clamp(28px,3.6vw,40px);letter-spacing:-.035em;margin:10px 0 14px}
.rowf p{color:var(--ink-2);font-size:clamp(16px,1.5vw,18px)}
.rowf ul{list-style:none;margin-top:20px;display:grid;gap:10px}
.rowf li{position:relative;padding-left:28px;color:var(--ink-2);font-size:15.5px}
.rowf li::before{content:"";position:absolute;left:3px;top:.45em;width:12px;height:7px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg)}
.rowf-pic{border-radius:28px;border:1px solid var(--line);background:var(--card);padding:clamp(18px,3vw,30px);position:relative;overflow:hidden}
.rowf-pic::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(70% 60% at 50% 0,var(--accent-soft),transparent)}
.rowf-pic>*{position:relative}
[data-theme="light"] .rowf-pic,[data-theme="light"] .free{box-shadow:0 1px 2px rgba(15,20,24,.04),0 20px 40px -28px rgba(15,20,24,.25)}
@media (max-width:820px){.rowf{grid-template-columns:1fr}.rowf:nth-child(even) .rowf-pic{order:0}}

/* intake picture */
.intake{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center}
.intake .col2{display:grid;gap:10px}
.intake small{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.pill{display:flex;align-items:center;gap:8px;padding:11px 12px;border-radius:14px;background:var(--tile);border:1px solid var(--line);font-size:14px;white-space:nowrap}
.pill svg{width:16px;height:16px;color:var(--accent);flex:none}
.hub{width:64px;height:64px;border-radius:18px;background:#fff;padding:8px;box-shadow:0 10px 30px -10px var(--glow),0 0 0 1px var(--line)}
@media (max-width:480px){.intake{grid-template-columns:1fr;justify-items:center}.intake .col2{width:100%}}

/* email picture */
.mail-ill .to{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px;font-size:12.5px;color:var(--ink-3);align-items:center}
.mail-ill .to span{font-size:12.5px;padding:3px 10px;border-radius:999px;background:var(--tile);border:1px solid var(--line);color:var(--ink)}
.mail-ill .body{background:var(--tile);border:1px solid var(--line);border-radius:16px;padding:16px;font-size:15px;line-height:1.6;color:var(--ink-2)}
.mail-ill .body b{display:block;color:var(--ink);margin-bottom:8px;font-size:14px}
.ph{font-family:ui-monospace,Menlo,monospace;font-size:13px;padding:1px 6px;border-radius:6px;background:var(--accent-soft);color:var(--accent);transition:all .4s var(--out)}
.ph.on{font-family:var(--sans);font-size:15px;background:transparent;color:var(--ink);font-weight:600;padding:1px 0}
.mail-ill .send{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;font-size:12.5px;color:var(--ink-3)}
.mail-ill .send b{font-size:13px;color:var(--bg);background:var(--accent);padding:6px 14px;border-radius:999px;white-space:nowrap}

/* live + phone picture */
.rt{display:grid;grid-template-columns:1fr 120px;gap:20px;align-items:center}
.toast{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:16px;background:var(--tile);border:1px solid var(--line-2);font-size:14px;box-shadow:0 16px 30px -18px rgba(0,0,0,.55);animation:toast 6s var(--out) infinite}
.toast+.toast{margin-top:10px;animation-delay:-3s}
.toast .live{width:8px;height:8px;border-radius:50%;background:var(--won);box-shadow:0 0 10px var(--won);margin-top:6px;flex:none}
.toast small{display:block;color:var(--ink-3);font-size:12px}
@keyframes toast{0%{opacity:0;transform:translateY(10px)}10%,80%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-6px)}}
.phone{width:120px;height:220px;border-radius:26px;border:2px solid var(--line-2);background:var(--bg-2);padding:10px 8px;display:grid;gap:6px;align-content:start;position:relative}
.phone::before{content:"";width:34px;height:6px;border-radius:9px;background:var(--line-2);justify-self:center;margin-bottom:6px}
.phone i{display:block;height:26px;border-radius:8px;background:var(--tile);border:1px solid var(--line)}
.phone i:nth-child(2){background:var(--accent-soft);border-color:transparent}
.phone .inst{position:absolute;left:50%;bottom:-13px;transform:translateX(-50%);font-size:11px;font-weight:700;white-space:nowrap;padding:4px 11px;border-radius:999px;background:var(--accent);color:var(--bg)}
@media (max-width:420px){.rt{grid-template-columns:1fr 84px}.phone{width:84px;height:170px}}

/* free */
.free{border-radius:36px;border:1px solid var(--line);background:var(--card);padding:clamp(32px,5vw,60px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);align-items:center;position:relative;overflow:hidden}
.free::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(50% 80% at 0 0,var(--accent-soft),transparent)}
.free>*{position:relative}
.price{font-family:var(--display);font-size:clamp(64px,10vw,120px);font-weight:700;letter-spacing:-.06em;line-height:.9;margin-top:10px}
.price em{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(22px,2.6vw,30px);letter-spacing:0;color:var(--accent);margin-top:10px}
.checks{list-style:none;display:grid;gap:14px}
.checks li{position:relative;padding-left:30px;color:var(--ink-2)}
.checks li b{color:var(--ink);font-weight:600}
.checks li::before{content:"";position:absolute;left:4px;top:.45em;width:12px;height:7px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg)}
@media (max-width:820px){.free{grid-template-columns:1fr}}
