*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
:root{
  --ink:#0B0A09;--ink2:#181512;--ink3:#221E1A;
  --b:#302B26;--bl:#403A34;
  --cream:#EDE8DF;--cream2:#C8BFAF;
  --muted:#7A7268;
  --cu:#BF7C3A;--cul:#D99650;--cud:#8A5A28;
  --fd:'Cormorant Garamond',Georgia,serif;
  --fu:'Syne',sans-serif;
  --fm:'IBM Plex Mono',monospace;
  --ease:cubic-bezier(0.16,1,0.3,1);
}
*{box-sizing:border-box}
body{background:var(--ink);color:var(--cream);font-family:var(--fu);-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--fd);font-weight:300;line-height:1.05;letter-spacing:-.025em}
h1{font-size:clamp(3.2rem,8vw,8rem)}
h2{font-size:clamp(2rem,4.5vw,4.5rem)}
h3{font-size:clamp(1.5rem,2.8vw,2.6rem)}
p{font-size:clamp(.88rem,1.1vw,1rem);color:var(--cream2);line-height:1.82}
em{font-style:italic;color:var(--cu)}
a{text-decoration:none;color:inherit}
.con{max-width:1320px;margin:0 auto;padding:0 clamp(1.5rem,5vw,5rem)}
section{padding:clamp(4.5rem,9vw,9rem) 0}
.mono{font-family:var(--fm);font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--cu)}
.label{font-family:var(--fu);font-size:.66rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
.snum{font-family:var(--fm);font-size:.62rem;color:var(--cu);letter-spacing:.18em;display:block;margin-bottom:1.25rem}
.hrule{width:36px;height:1px;background:var(--cu);margin-bottom:1.75rem}
.divl{height:1px;background:var(--b);margin:0 clamp(1.5rem,5vw,5rem)}

/* CURSOR */
#cur{width:10px;height:10px;border-radius:50%;background:var(--cu);position:fixed;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);animation:curpulse 2s ease-in-out infinite;left:-50px;top:-50px}
#curring{width:36px;height:36px;border-radius:50%;border:1px solid rgba(191,124,58,.4);position:fixed;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);left:-100px;top:-100px;transition:width .25s,height .25s,border-color .25s}
@keyframes curpulse{0%,100%{box-shadow:0 0 0 0 rgba(191,124,58,.5)}60%{box-shadow:0 0 0 6px rgba(191,124,58,0)}}
@media(hover:hover)and(pointer:fine){body{cursor:none}}
@media not all and(hover:hover){#cur,#curring{display:none}}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.4rem clamp(1.5rem,5vw,5rem);display:flex;align-items:center;justify-content:space-between;transition:background .4s,border-color .4s;border-bottom:1px solid transparent}
nav.sc{background:rgba(11,10,9,.96);backdrop-filter:blur(14px);border-color:var(--b)}
.logo{font-family:var(--fm);font-size:.8rem;letter-spacing:.2em;color:var(--cream);cursor:pointer}
.logo span{color:var(--cu)}
.navlinks{display:flex;gap:2.2rem;align-items:center}
.navlinks a{font-family:var(--fu);font-size:.7rem;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);transition:color .2s;cursor:pointer}
.navlinks a:hover,.navlinks a.act{color:var(--cream)}
.navcta{font-family:var(--fm);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:var(--cu);padding:.58rem 1.35rem;cursor:pointer;transition:background .2s}
.navcta:hover{background:var(--cul)}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:.25rem}
.hamburger span{display:block;width:22px;height:1px;background:var(--cream);transition:all .3s}
.mobile-nav{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(11,10,9,.97);z-index:101;flex-direction:column;align-items:center;justify-content:center;gap:2rem}
.mobile-nav.open{display:flex}
.mobile-nav a{font-family:var(--fd);font-size:clamp(1.6rem,5vw,2.5rem);font-weight:300;color:var(--cream2);cursor:pointer;transition:color .2s}
.mobile-nav a:hover{color:var(--cream)}
.mobile-nav-close{position:absolute;top:1.5rem;right:clamp(1.5rem,5vw,5rem);font-family:var(--fm);font-size:.72rem;color:var(--muted);cursor:pointer;letter-spacing:.1em;text-transform:uppercase}
@media(max-width:900px){.navlinks{display:none}.hamburger{display:flex}}

/* PAGES */
.pg{display:none;padding-top:7rem}
.pg.act{display:block}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:.7rem;font-family:var(--fm);font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:.9rem 2.1rem;cursor:pointer;border:none;transition:transform .2s,background .2s,border-color .2s,color .2s}
.btn:hover{transform:translateY(-2px)}
.btnp{color:var(--ink);background:var(--cu)}
.btnp:hover{background:var(--cul)}
.btng{color:var(--cream);background:transparent;border:1px solid var(--bl)}
.btng:hover{border-color:var(--cu);color:var(--cu)}
.brow{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}

/* TAGS */
.tag{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--fm);font-size:.6rem;letter-spacing:.09em;text-transform:uppercase;padding:.25rem .7rem;border:1px solid}
.tdep{color:#7CB97A;border-color:rgba(124,185,122,.3);background:rgba(124,185,122,.06)}
.tdep::before{content:'●';font-size:.45rem}
.tpil{color:var(--cu);border-color:rgba(191,124,58,.3);background:rgba(191,124,58,.06)}
.tpil::before{content:'●';font-size:.45rem}
.tav{color:var(--muted);border-color:var(--b)}
.tav::before{content:'○';font-size:.45rem}

/* TICKER */
.tickwrap{overflow:hidden;background:var(--ink3);border-top:1px solid var(--b);border-bottom:1px solid var(--b);padding:.75rem 0;white-space:nowrap;height:2.5rem;display:flex;align-items:center}
.tick{display:inline-flex;animation:tick 32s linear infinite;will-change:transform;flex-shrink:0}
.ti{font-family:var(--fm);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:0 2.5rem}
.ti.hi{color:var(--cu)}
@keyframes tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* HERO */
.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;padding-bottom:4rem}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 55% 50% at 72% 40%,rgba(191,124,58,.065) 0%,transparent 68%)}
.herogrid{position:absolute;inset:0;background-image:linear-gradient(var(--b) 1px,transparent 1px),linear-gradient(90deg,var(--b) 1px,transparent 1px);background-size:76px 76px;opacity:.3}
.hero-inner{position:relative;z-index:2}
.hero-kicker{display:flex;align-items:center;gap:1.4rem;margin-bottom:2.75rem;opacity:0;animation:fadeup .8s .2s var(--ease) forwards}
.hero-kicker-line{width:36px;height:1px;background:var(--cu)}
.hero-h{opacity:0;animation:fadeup .9s .35s var(--ease) forwards;margin-bottom:3.5rem}
.hero-sub{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;opacity:0;animation:fadeup .8s .5s var(--ease) forwards}
.hero-p{font-size:1rem;color:var(--cream2);line-height:1.8;max-width:460px}
.hero-metrics{display:flex;gap:3rem;margin-top:2.5rem}
.met-num{font-family:var(--fd);font-size:2.4rem;font-weight:300;color:var(--cream);line-height:1}
.met-num span{color:var(--cu)}
.met-label{font-family:var(--fm);font-size:.62rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-top:.25rem}
@keyframes fadeup{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}

/* SCAN UI MOCKUP */
.mockup{background:var(--ink3);border:1px solid var(--bl);position:relative;overflow:hidden;padding:2rem}
.mockup-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}
.mockup-dots{display:flex;gap:.45rem}
.mdot{width:7px;height:7px;border-radius:50%;background:var(--b)}
.mdot:first-child{background:rgba(191,124,58,.5)}
.mockup-title{font-family:var(--fm);font-size:.6rem;color:var(--muted);letter-spacing:.09em}
.scan-path{font-family:var(--fm);font-size:.58rem;color:var(--muted);margin-bottom:1rem;letter-spacing:.05em}
.ci{background:var(--ink2);border:1px solid var(--b);padding:.7rem 1rem;margin-bottom:.4rem;display:flex;justify-content:space-between;align-items:center;font-family:var(--fm);font-size:.68rem}
.ci.fail{border-left:2px solid #E25C5C}
.ci.pass{border-left:2px solid #7CB97A}
.ci.warn{border-left:2px solid var(--cu)}
.ci-name{color:var(--cream2)}
.cibadge{font-size:.58rem}
.cibadge.f{color:#E25C5C}
.cibadge.p{color:#7CB97A}
.cibadge.w{color:var(--cu)}
.scanline{position:absolute;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cu),transparent);animation:scan 3s ease-in-out infinite;opacity:.35}
@keyframes scan{0%{top:15%;opacity:0}10%{opacity:.35}90%{opacity:.35}100%{top:85%;opacity:0}}
.mockup-footer{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--b)}
.mstat-num{font-family:var(--fd);font-size:1.8rem;font-weight:300;text-align:center}
.mstat-num.r{color:#E25C5C}
.mstat-num.g{color:#7CB97A}
.mstat-num.a{color:var(--cu)}
.mstat-l{font-family:var(--fm);font-size:.56rem;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;text-align:center;margin-top:.2rem}

/* CARDS & GRIDS */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:4rem}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--b)}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--b)}
.gcell{padding:2.2rem;border-right:1px solid var(--b)}
.gcell:last-child{border-right:none}
.gcell p{font-size:.84rem;color:var(--muted);line-height:1.65}
.card{background:var(--ink2);border:1px solid var(--b);padding:2.5rem;transition:transform .3s,border-color .3s}
.card:hover{transform:translateY(-4px);border-color:var(--bl)}
.card-cop{border-left:3px solid var(--cu)}

/* TABLE */
.table-wrap{border:1px solid var(--b);overflow-x:auto;margin-top:3rem}
table{width:100%;border-collapse:collapse}
thead tr{background:var(--ink2)}
th{font-family:var(--fm);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:1.1rem 1.6rem;text-align:left;border-bottom:1px solid var(--b)}
th:not(:last-child){border-right:1px solid var(--b)}
td{padding:1.1rem 1.6rem;border-bottom:1px solid var(--b);vertical-align:top;font-size:.84rem;color:var(--cream2)}
td:not(:last-child){border-right:1px solid var(--b)}
tbody tr:last-child td{border-bottom:none}
tbody tr:hover{background:var(--ink2)}
.td-strong{color:var(--cream);font-family:var(--fu);font-weight:600;font-size:.85rem}
.td-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.4rem}
.td-tag{font-family:var(--fm);font-size:.58rem;color:var(--muted);border:1px solid var(--b);padding:.18rem .55rem}

/* STEPS */
.step{display:grid;grid-template-columns:auto 1fr;gap:1.5rem;padding:1.75rem 0;border-top:1px solid var(--b)}
.step:last-child{border-bottom:1px solid var(--b)}
.step-n{font-family:var(--fm);font-size:.62rem;color:var(--cu);letter-spacing:.1em;padding-top:.2rem}
.step h4{font-family:var(--fu);font-weight:600;font-size:.9rem;color:var(--cream);margin-bottom:.4rem}
.step p{font-size:.88rem}

/* PROOF CARD */
.proof-card{background:var(--ink2);border:1px solid var(--b);padding:2.75rem;border-left:3px solid var(--cu)}
.proof-cat{font-family:var(--fm);font-size:.62rem;color:var(--cu);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.7rem}
.proof-title{font-family:var(--fd);font-size:1.45rem;font-weight:300;color:var(--cream);margin-bottom:1.5rem;line-height:1.2}
.proof-row{display:flex;justify-content:space-between;font-family:var(--fm);font-size:.68rem;padding:.55rem 0;border-bottom:1px solid var(--b);color:var(--muted)}
.proof-row span:last-child{color:var(--cream2)}
.outcome-box{margin-top:1.75rem;padding:1.2rem;background:rgba(191,124,58,.05);border:1px solid rgba(191,124,58,.18)}
.outcome-label{font-family:var(--fm);font-size:.58rem;color:var(--cu);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.5rem}

/* AGENT CHIP */
.achip{padding:1.7rem;border-right:1px solid var(--b);border-bottom:1px solid var(--b);cursor:pointer;transition:background .25s;display:block;text-decoration:none;color:inherit}
.achip:hover{background:var(--ink2)}
.achip h5{font-family:var(--fu);font-size:.84rem;font-weight:600;color:var(--cream);margin:.8rem 0 .35rem}
.achip p{font-size:.78rem;color:var(--muted);line-height:1.55}

/* SERVICES BLOCK */
.sb{display:grid;grid-template-columns:1fr 2fr;gap:5.5rem;padding:clamp(3.5rem,7vw,7rem) 0;border-bottom:1px solid var(--b);align-items:start}
.sb:first-child{padding-top:0}
.sb-left{position:sticky;top:8rem}
.sb-n{font-family:var(--fm);font-size:.62rem;color:var(--cu);letter-spacing:.12em;display:block;margin-bottom:1.25rem}
.sb-left h3{font-size:clamp(1.4rem,2.5vw,2.2rem);margin-bottom:.9rem}
.sb-trigger{background:rgba(191,124,58,.05);border:1px solid rgba(191,124,58,.18);padding:1.15rem 1.4rem;margin-top:1.5rem}
.sb-trigger-l{font-family:var(--fm);font-size:.58rem;color:var(--cu);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.45rem}
.sb-trigger p{font-size:.85rem;color:var(--cream2);font-style:italic}
.sb-item{padding:1.75rem 0;border-bottom:1px solid var(--b)}
.sb-item:first-child{padding-top:0}
.sb-item h4{font-family:var(--fu);font-weight:700;font-size:.9rem;color:var(--cream);margin-bottom:.55rem}
.sb-item p{font-size:.88rem}
.sb-item ul{margin-top:.85rem;padding:0;list-style:none}
.sb-item li{font-size:.84rem;color:var(--muted);padding:.32rem 0;border-top:1px solid var(--b);display:flex;gap:.7rem;align-items:flex-start}
.sb-item li::before{content:'→';color:var(--cu);flex-shrink:0;margin-top:.05rem}
.engagement{font-family:var(--fm);font-size:.6rem;color:var(--muted);letter-spacing:.07em;margin-top:.9rem}

/* CASE STUDY */
.cs{padding:clamp(4rem,8vw,8rem) 0;border-bottom:1px solid var(--b)}
.cs-hdr{display:grid;grid-template-columns:auto 1fr;gap:2.75rem;align-items:start;margin-bottom:3.5rem}
.cs-num{font-family:var(--fd);font-size:5rem;font-weight:300;color:var(--ink3);line-height:1}
.cs-cat{font-family:var(--fm);font-size:.62rem;color:var(--cu);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.6rem}
.cs-title{font-family:var(--fd);font-size:clamp(1.8rem,3.5vw,3rem);font-weight:300;color:var(--cream);line-height:1.1;margin-bottom:.85rem}
.cs-tags{display:flex;gap:.45rem;flex-wrap:wrap}
.cs-tag{font-family:var(--fm);font-size:.58rem;color:var(--muted);border:1px solid var(--b);padding:.22rem .7rem}
.cs-body{display:grid;grid-template-columns:1fr 1fr;gap:4rem}
.cs-meta td:first-child{font-family:var(--fm);font-size:.6rem;color:var(--muted);letter-spacing:.07em;text-transform:uppercase;padding-right:1.75rem;padding-top:.75rem;padding-bottom:.75rem;vertical-align:top;width:38%}
.cs-meta td:last-child{font-size:.84rem;color:var(--cream2);padding:.75rem 0;border-bottom:1px solid var(--b)}
.cs-meta tr:last-child td{border-bottom:none}
.cs-section-l{font-family:var(--fm);font-size:.6rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.65rem;margin-top:2rem}
.cs-section:first-child .cs-section-l{margin-top:0}
.cs-out{background:rgba(191,124,58,.05);border:1px solid rgba(191,124,58,.18);padding:1.75rem;margin-top:1.75rem}
.cs-out-label{font-family:var(--fm);font-size:.6rem;color:var(--cu);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.85rem}
.cs-out-item{display:flex;gap:.9rem;align-items:flex-start;margin-bottom:.6rem}
.cs-out-item::before{content:'✓';font-family:var(--fm);font-size:.68rem;color:var(--cu);flex-shrink:0;margin-top:.05rem}
.cs-out-item p{font-size:.85rem;color:var(--cream2);margin:0}

/* DEPLOY CARDS */
.dep-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem;margin-top:3.5rem}
.dep{background:var(--ink2);border:1px solid var(--b);padding:2.75rem;position:relative;transition:transform .3s,border-color .3s}
.dep:hover{transform:translateY(-5px);border-color:var(--bl)}
.dep.feat{border-color:var(--cu)}
.dep.feat::before{content:'Most Common';position:absolute;top:-1px;right:2rem;background:var(--cu);color:var(--ink);font-family:var(--fm);font-size:.56rem;letter-spacing:.12em;text-transform:uppercase;padding:.28rem .75rem}
.dep-type{font-family:var(--fm);font-size:.62rem;color:var(--cu);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.85rem}
.dep h3{font-size:1.5rem;margin-bottom:.85rem}
.dep p{font-size:.86rem;color:var(--muted);line-height:1.72;margin-bottom:1.5rem}
.dep-best{font-family:var(--fm);font-size:.62rem;color:var(--cream2);padding-top:1.4rem;border-top:1px solid var(--b);letter-spacing:.04em;line-height:1.65}
.dep-best strong{color:var(--cu);display:block;font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.35rem}

/* ABOUT */
.portrait-box{background:var(--ink2);border:1px solid var(--b);aspect-ratio:3/4;position:relative;overflow:hidden;display:flex;align-items:flex-end}
.portrait-grid{position:absolute;inset:0;background-image:linear-gradient(var(--b) 1px,transparent 1px),linear-gradient(90deg,var(--b) 1px,transparent 1px);background-size:38px 38px;opacity:.5}
.portrait-msg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;text-align:center;padding:1rem}
.portrait-msg p{font-family:var(--fm);font-size:.58rem;color:var(--muted);letter-spacing:.07em;line-height:1.8}
.portrait-cap{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,var(--ink2));padding:3rem 1.75rem 1.4rem;position:absolute;bottom:0;left:0;right:0}
.portrait-cap p{font-family:var(--fm);font-size:.62rem;color:var(--muted);letter-spacing:.07em}
.cred{display:flex;justify-content:space-between;padding:.7rem 0;border-bottom:1px solid var(--b)}
.cred:first-child{border-top:1px solid var(--b);margin-top:2.5rem}
.cred-l{font-family:var(--fm);font-size:.62rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.cred-v{font-family:var(--fm);font-size:.68rem;color:var(--cream2);text-align:right}

/* PHILOSOPHY */
.phil-cols{display:grid;grid-template-columns:1fr 1fr;gap:5.5rem}
.phil-q{font-family:var(--fd);font-size:clamp(1.6rem,3vw,2.6rem);font-weight:300;font-style:italic;color:var(--cream2);line-height:1.4;border-left:2px solid var(--cu);padding-left:2.25rem}
.principle{padding:1.9rem 0;border-bottom:1px solid var(--b);display:grid;grid-template-columns:auto 1fr;gap:1.5rem}
.principle-n{font-family:var(--fm);font-size:.6rem;color:var(--cu);letter-spacing:.1em;padding-top:.2rem}
.principle h5{font-family:var(--fu);font-weight:600;font-size:.88rem;color:var(--cream);margin-bottom:.4rem}
.principle p{font-size:.85rem}

/* BLOG */
.fp-inner{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--b);margin-top:3rem}
.fp-left{background:var(--ink2);padding:2.75rem;border-right:1px solid var(--b);display:flex;flex-direction:column;justify-content:space-between}
.fp-big{font-family:var(--fd);font-size:7rem;font-weight:300;color:var(--ink3);line-height:1}
.fp-right{padding:2.75rem}
.fp-meta{display:flex;gap:1.25rem;font-family:var(--fm);font-size:.6rem;color:var(--muted);letter-spacing:.07em;margin-bottom:1.75rem}
.fp-title{font-family:var(--fd);font-size:clamp(1.6rem,2.8vw,2.5rem);font-weight:300;color:var(--cream);line-height:1.18;margin-bottom:1.25rem}
.post-item{display:grid;grid-template-columns:auto 1fr auto;gap:1.75rem;align-items:start;padding:2.2rem 0;border-bottom:1px solid var(--b);cursor:pointer;transition:background .2s}
.post-item:hover .post-title{color:var(--cream)}
.post-item:hover .post-arrow{color:var(--cu);transform:translate(3px,-3px)}
.post-n{font-family:var(--fm);font-size:.6rem;color:var(--bl);letter-spacing:.08em;padding-top:.25rem;min-width:2rem}
.post-cat{font-family:var(--fm);font-size:.6rem;color:var(--cu);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.45rem}
.post-title{font-family:var(--fd);font-size:clamp(1.1rem,1.8vw,1.65rem);font-weight:300;color:var(--cream2);line-height:1.2;margin-bottom:.6rem;transition:color .2s}
.post-excerpt{font-size:.84rem;color:var(--muted);line-height:1.65}
.post-pmeta{display:flex;gap:1rem;margin-top:.6rem;font-family:var(--fm);font-size:.58rem;color:var(--muted)}
.post-arrow{font-family:var(--fm);font-size:.68rem;color:var(--bl);transition:color .2s,transform .2s;padding-top:.65rem}

/* CONTACT */
.contact-cols{display:grid;grid-template-columns:1fr 1fr;gap:5.5rem;align-items:start}
.what-item{display:flex;gap:.9rem;align-items:flex-start;padding:.9rem 0;border-bottom:1px solid var(--b)}
.what-item::before{content:'✓';font-family:var(--fm);font-size:.68rem;color:var(--cu);flex-shrink:0;margin-top:.08rem}
.what-item p{font-size:.86rem;color:var(--cream2);margin:0}
.cdirect{padding:1.75rem;background:var(--ink2);border:1px solid var(--b);margin-top:2.5rem}
.cdirect-l{font-family:var(--fm);font-size:.6rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.85rem}
.cdirect a{font-family:var(--fm);font-size:.82rem;color:var(--cu);display:block;margin-bottom:.45rem}
.cform-box{background:var(--ink2);border:1px solid var(--b);padding:2.75rem}
.cform-hdr{margin-bottom:2.2rem}
.cform-hdr h4{font-family:var(--fu);font-size:1rem;font-weight:600;color:var(--cream);margin-bottom:.4rem}
.fg{margin-bottom:1.4rem}
.fl{font-family:var(--fm);font-size:.6rem;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:.55rem}
.fi,.fsel,.fta{width:100%;background:var(--ink);border:1px solid var(--b);padding:.85rem 1.15rem;font-family:var(--fu);font-size:.86rem;color:var(--cream);outline:none;transition:border-color .2s;-webkit-appearance:none}
.fi:focus,.fsel:focus,.fta:focus{border-color:var(--cu)}
.fi::placeholder,.fta::placeholder{color:var(--muted)}
.fta{resize:vertical;min-height:110px}
.fsel{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%237A7268' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1.1rem center;padding-right:2.4rem}
.fsel option{background:var(--ink2)}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.fsub{width:100%;background:var(--cu);border:none;padding:1rem;font-family:var(--fm);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);cursor:pointer;transition:background .2s;margin-top:.4rem}
.fsub:hover{background:var(--cul)}
.fnote{font-family:var(--fm);font-size:.58rem;color:var(--muted);margin-top:.85rem;text-align:center;letter-spacing:.04em}
.avail-bar{position:fixed;bottom:0;left:0;right:0;z-index:50;background:var(--ink2);border-top:1px solid var(--b);padding:.85rem clamp(1.5rem,5vw,5rem);display:flex;justify-content:space-between;align-items:center}
.avail-dot{width:7px;height:7px;border-radius:50%;background:#7CB97A;animation:pulse 2.2s infinite;flex-shrink:0}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}

/* STACK GRID */
.stack-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--b);margin-top:3.5rem}
.scol{padding:1.9rem;border-right:1px solid var(--b)}
.scol:last-child{border-right:none}
.scol h5{font-family:var(--fm);font-size:.6rem;color:var(--muted);letter-spacing:.13em;text-transform:uppercase;margin-bottom:1.25rem;padding-bottom:.85rem;border-bottom:1px solid var(--b)}
.si{font-size:.82rem;color:var(--cream2);padding:.3rem 0}

/* PKG */
.pkg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--b);margin-top:3.5rem}
.pkg{padding:2.75rem;border-right:1px solid var(--b);position:relative}
.pkg:last-child{border-right:none}
.pkg.pfeat{background:rgba(191,124,58,.03)}
.pkg.pfeat::before{content:'Most common';position:absolute;top:-1px;right:2rem;background:var(--cu);color:var(--ink);font-family:var(--fm);font-size:.56rem;letter-spacing:.1em;text-transform:uppercase;padding:.28rem .75rem}
.pkg-type{font-family:var(--fm);font-size:.62rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.85rem}
.pkg h3{font-size:1.5rem;margin-bottom:.5rem}
.pkg-desc{font-size:.86rem;color:var(--muted);margin-bottom:1.75rem}
.pkg-list{list-style:none;padding:0}
.pkg-list li{font-size:.82rem;color:var(--cream2);padding:.45rem 0;border-top:1px solid var(--b);display:flex;align-items:flex-start;gap:.7rem}
.pkg-list li::before{content:'✓';color:var(--cu);flex-shrink:0}

/* FOOTER */
footer{border-top:1px solid var(--b);padding:3.5rem clamp(1.5rem,5vw,5rem);display:grid;grid-template-columns:1fr auto auto auto;gap:4rem;align-items:start}
.flogo{font-family:var(--fm);font-size:.8rem;letter-spacing:.2em;color:var(--cream);display:block;margin-bottom:.85rem;cursor:pointer}
.flogo span{color:var(--cu)}
.ftagline{font-size:.82rem;color:var(--muted);line-height:1.65}
.fcol h5{font-family:var(--fm);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:1.25rem}
.fcol a{display:block;font-size:.82rem;color:var(--cream2);cursor:pointer;margin-bottom:.65rem;transition:color .2s}
.fcol a:hover{color:var(--cream)}
.fbot{grid-column:1/-1;border-top:1px solid var(--b);padding-top:1.75rem;display:flex;justify-content:space-between;align-items:center}
.fbot span{font-family:var(--fm);font-size:.62rem;color:var(--muted);letter-spacing:.07em}

/* REVEAL */
.rv{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rv.vis{opacity:1;transform:translateY(0)}
.rv1{transition-delay:.1s}.rv2{transition-delay:.2s}.rv3{transition-delay:.3s}.rv4{transition-delay:.4s}

/* DARK OVERLAY PAGE HEADER */
.ph{padding:11rem 0 5.5rem;position:relative;overflow:hidden}
.ph::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 55% at 70% 45%,rgba(191,124,58,.06) 0%,transparent 68%)}
.ph-grid{position:absolute;inset:0;background-image:linear-gradient(var(--b) 1px,transparent 1px),linear-gradient(90deg,var(--b) 1px,transparent 1px);background-size:58px 58px;opacity:.22}
.ph-inner{position:relative;z-index:1}

/* FLAGSHIP BLOCK */
.flagship-block{background:rgba(191,124,58,.04);border:1px solid rgba(191,124,58,.22);padding:2.75rem;display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:center;margin-bottom:3.5rem}
.flagship-tag-pill{display:inline-block;background:rgba(191,124,58,.1);border:1px solid rgba(191,124,58,.28);font-family:var(--fm);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cu);padding:.38rem .95rem;margin-bottom:1rem}

/* AGENT PLATFORM DIAGRAM */
.plat-center{text-align:center;padding:1.75rem 3.5rem;border:2px solid var(--cu);display:inline-block;margin:0 auto 2.5rem;min-width:260px}
.plat-center-l{font-family:var(--fm);font-size:.58rem;color:var(--cu);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.45rem}
.plat-arms{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--b);border:1px solid var(--b);margin-top:0}
.plat-arm{background:var(--ink2);padding:1.6rem;text-align:center}
.plat-arm-l{font-family:var(--fm);font-size:.56rem;color:var(--muted);letter-spacing:.09em;text-transform:uppercase;margin-bottom:.4rem}
.plat-arm h5{font-family:var(--fu);font-size:.8rem;font-weight:600;color:var(--cream);margin-bottom:.3rem}
.plat-arm p{font-size:.74rem;color:var(--muted)}

@keyframes autofixPulse{0%,100%{background:''}50%{background:rgba(191,124,58,.12)}}
/* AUTOFIX STYLES */
.fix-before{background:var(--ink2);border:1px solid var(--b);padding:.65rem .85rem;margin-bottom:.4rem}
.fix-after{background:rgba(124,185,122,.05);border:1px solid rgba(124,185,122,.25);padding:.65rem .85rem;margin-bottom:.85rem}
/* SCAN SWEEP ANIMATION */
@keyframes scanSweep{0%{top:5%;opacity:0}10%{opacity:.6}90%{opacity:.6}100%{top:95%;opacity:0}}
/* SVG in demo responsive */
#demo-stage-1 .grid2{min-height:340px}
#demo-stage-2{min-height:380px}
@media(max-width:1024px){
  .grid3{grid-template-columns:1fr 1fr}
  .grid4{grid-template-columns:1fr 1fr}
  .dep-cards{grid-template-columns:1fr 1fr}
  footer{grid-template-columns:1fr 1fr}
  .stack-grid{grid-template-columns:1fr 1fr}
  .pkg-grid{grid-template-columns:1fr}
  .pkg{border-right:none;border-bottom:1px solid var(--b)}
}
@media(max-width:768px){
  .grid2{grid-template-columns:1fr;gap:2rem}
  .grid3{grid-template-columns:1fr}
  .grid4{grid-template-columns:1fr}
  .hero-sub{grid-template-columns:1fr}
  .navlinks{display:none}
  .phil-cols{grid-template-columns:1fr}
  .sb{grid-template-columns:1fr;gap:2.5rem}
  .sb-left{position:static}
  .cs-body{grid-template-columns:1fr}
  .contact-cols{grid-template-columns:1fr}
  .fp-inner{grid-template-columns:1fr}
  .dep-cards{grid-template-columns:1fr}
  footer{grid-template-columns:1fr;gap:2rem}
}
@keyframes orbit3d{0%{transform:perspective(1200px) rotateY(-3deg) rotateX(1deg)}50%{transform:perspective(1200px) rotateY(3deg) rotateX(-1deg)}100%{transform:perspective(1200px) rotateY(-3deg) rotateX(1deg)}}
.model-3d{animation:orbit3d 12s ease-in-out infinite;transform-style:preserve-3d;will-change:transform}
.model-3d-slow{animation:orbit3d 18s ease-in-out infinite;transform-style:preserve-3d;will-change:transform}
