:root{
  --bg:#FAF3EA; --bg-glow-a: rgba(246,171,84,0.30); --bg-glow-b: rgba(232,93,10,0.10);
  --ink:#18140F; --ink-soft:#6B6156; --ink-faint:#9C9184;
  --card:#FBF6EE; --card-alt:#F2E9DC; --border: rgba(24,20,15,0.09); --input-bg:#F2EAE0;
  --orange:#E85D0A; --orange-dark:#C24A08; --orange-light:#F2900F; --amber:#FDB022;
  --green-bg:#DCF3E3; --green-text:#17803D; --tag-bg:#EFE6D8; --grid-line: rgba(24,20,15,0.06);
  --shadow: 0 24px 60px -24px rgba(24,16,8,0.22);
  --r-sm:8px; --r-md:12px; --r-lg:18px; --r-pill:999px; --max:1240px;
  --sans:'Inter',-apple-system,BlinkMacSystemFont,sans-serif; --mono:'IBM Plex Mono',ui-monospace,monospace;
}
html[data-theme="dark"]{
  --bg:#0B0B0C; --bg-glow-a: rgba(232,93,10,0.16); --bg-glow-b: rgba(232,93,10,0.06);
  --ink:#F5F1EA; --ink-soft:#A39A8F; --ink-faint:#6E665D;
  --card:#151517; --card-alt:#0F0F11; --border: rgba(255,255,255,0.09); --input-bg:#1C1D21; --tag-bg:#212227;
  --grid-line: rgba(255,255,255,0.06); --green-bg: rgba(34,197,94,0.15); --green-text:#4ADE80;
  --shadow: 0 24px 70px -20px rgba(0,0,0,0.65);
}
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0; background:var(--bg); color:var(--ink); font-family:var(--sans); font-size:16px; line-height:1.6; -webkit-font-smoothing:antialiased; transition:background .25s ease,color .25s ease;}
img,svg{display:block;max-width:100%;}
a{color:inherit;} h1,h2,h3,h4,h5,h6,p,dl,dt,dd{margin:0;} button{font:inherit;}
:focus-visible{outline:2px solid var(--orange); outline-offset:3px;}
.wrap{max-width:var(--max); margin-inline:auto; padding-inline:clamp(1.25rem,4vw,3rem);}

.eyebrow-pill{display:inline-flex; align-items:center; gap:0.5em; font-weight:600; font-size:0.82rem; color:var(--orange-dark);
  background: color-mix(in srgb, var(--orange) 12%, transparent); border:1px solid color-mix(in srgb, var(--orange) 25%, transparent);
  padding:0.4em 0.9em 0.4em 0.7em; border-radius:var(--r-pill);}
html[data-theme="dark"] .eyebrow-pill{color:#FDB871;}
.eyebrow-pill.mute{background:transparent; border-color:var(--border); color:var(--ink-faint);}
.eyebrow-pill .dot{width:6px;height:6px;border-radius:50%;background:currentColor; flex-shrink:0;}

/* nav */
.nav{position:sticky; top:0; z-index:60; background: color-mix(in srgb, var(--bg) 82%, transparent); backdrop-filter:blur(10px); border-bottom:1px solid var(--border);}
.nav .wrap{display:flex; align-items:center; justify-content:space-between; height:76px;}
.logo{display:inline-flex; align-items:center; text-decoration:none;}
.logo-img{height:clamp(34px, 4vw, 40px); width:auto; display:block; object-fit:contain;}
.logo-img-light{display:block;}
.logo-img-dark{display:none;}
html[data-theme="dark"] .logo-img-light{display:none !important;}
html[data-theme="dark"] .logo-img-dark{display:block !important;}
@media (prefers-color-scheme: dark){
  html:not([data-theme="light"]) .logo-img-light{display:none;}
  html:not([data-theme="light"]) .logo-img-dark{display:block;}
}
.logo-tile{width:38px;height:38px;border-radius:10px;flex-shrink:0; background:linear-gradient(155deg, var(--orange-light), var(--orange) 70%); display:flex; align-items:center; justify-content:center;}
.logo-word{font-weight:900; font-size:0.78rem; line-height:0.95; letter-spacing:-0.01em; text-transform:uppercase; color:var(--ink);}
.nav-links{display:flex; gap:1.9rem; font-size:0.92rem; font-weight:500; list-style:none; margin:0; padding:0;}
.nav-links > li{position:relative;}
.nav-links a{text-decoration:none; color:var(--ink-soft); transition:color .15s ease; display:flex; align-items:center; gap:0.3em;}
.nav-links > li > a:hover, .nav-links > li:hover > a{color:var(--ink);}
.nav-links > li.current > a{color:var(--ink);}
.dd{position:absolute; top:calc(100% + 12px); left:50%; transform:translateX(-50%); background:var(--card); border:1px solid var(--border);
  border-radius:var(--r-md); box-shadow:var(--shadow); padding:0.5rem; min-width:230px; display:none; flex-direction:column; gap:0.1rem; z-index:70;}
.dd::before{content:""; position:absolute; bottom:100%; left:-20px; right:-20px; height:24px;}
.nav-links > li:hover .dd, .nav-links > li:focus-within .dd{display:flex;}
.dd a{padding:0.55rem 0.7rem; border-radius:var(--r-sm); font-size:0.87rem; color:var(--ink-soft); white-space:nowrap;}
.dd a:hover{background:var(--card-alt); color:var(--ink);}
.caret{width:9px;height:9px; margin-top:1px;}
.nav-right{display:flex; align-items:center; gap:1rem;}
.theme-toggle{width:38px;height:38px;border-radius:var(--r-sm); display:flex; align-items:center; justify-content:center; background:var(--card-alt); border:1px solid var(--border); cursor:pointer; color:var(--ink);}
.theme-toggle svg{width:17px;height:17px;}
.theme-toggle .moon{display:none;} html[data-theme="dark"] .theme-toggle .sun{display:none;} html[data-theme="dark"] .theme-toggle .moon{display:block;}

/* buttons */
.btn{display:inline-flex; align-items:center; justify-content:center; gap:0.5em; padding:0.8rem 1.5rem; border-radius:var(--r-md);
  font-size:0.9rem; font-weight:700; letter-spacing:0.01em; text-decoration:none; cursor:pointer; border:1px solid transparent;
  transition:transform .15s ease, box-shadow .15s ease; white-space:nowrap;}
.btn-primary{background:linear-gradient(135deg, var(--orange-light), var(--orange-dark)); color:#fff;}
.btn-primary:hover{transform:translateY(-1px); box-shadow:0 10px 26px -8px rgba(232,93,10,0.55);}
.btn-ghost{background:transparent; color:var(--ink); border-color:var(--border);}
.btn-ghost:hover{border-color:var(--ink-soft);}
.btn-sm{padding:0.6rem 1.1rem; font-size:0.84rem;}
.link-quiet{font-size:0.9rem; font-weight:600; color:var(--ink-soft); text-decoration:none; display:inline-flex; align-items:center; gap:0.4rem;}
.link-quiet:hover{color:var(--ink);}

/* generic page hero (atmo) */
.atmo{position:relative; overflow:hidden;}
.atmo::before{content:""; position:absolute; inset:0; background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);
  background-size:46px 46px; -webkit-mask-image: radial-gradient(900px 600px at 75% 8%, black 20%, transparent 75%); mask-image: radial-gradient(900px 600px at 75% 8%, black 20%, transparent 75%); pointer-events:none;}
.atmo-glow{background: radial-gradient(760px 420px at 78% 6%, var(--bg-glow-a), transparent 60%), radial-gradient(600px 500px at 8% 95%, var(--bg-glow-b), transparent 65%);}

.page-hero{padding-top:clamp(2.6rem,6vw,4rem); padding-bottom:clamp(2.6rem,5vw,4rem);}
.page-hero .wrap{position:relative;}
.page-hero h1{font-weight:800; font-size:clamp(2rem,3vw + 1rem,3rem); line-height:1.12; letter-spacing:-0.02em; margin-block:1rem 0.9rem; max-width:38rem;}
.page-hero .lede{font-size:1.05rem; line-height:1.65; color:var(--ink-soft); max-width:38rem;}
.hero-cta{display:flex; align-items:center; gap:1.4rem; margin-top:1.8rem; flex-wrap:wrap;}
.hero-foot{font-size:0.86rem; font-style:italic; color:var(--ink-faint); margin-top:1.4rem; max-width:32rem; line-height:1.55;}
.hl{background:linear-gradient(100deg, var(--orange), var(--amber)); -webkit-background-clip:text; background-clip:text; color:transparent;}

/* card shell */
.card-shell{background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); box-shadow:var(--shadow); overflow:hidden;}
.chrome-bar{display:flex; align-items:center; gap:0.4rem; padding:0.8rem 1rem; border-bottom:1px solid var(--border);}
.chrome-bar .dots{display:flex; gap:6px; margin-right:0.6rem;}
.chrome-bar .dots span{width:9px;height:9px;border-radius:50%;}
.chrome-bar .dots span:nth-child(1){background:#FF5F57;} .chrome-bar .dots span:nth-child(2){background:#FEBC2E;} .chrome-bar .dots span:nth-child(3){background:#28C840;}
.chrome-bar .filename{font-family:var(--mono); font-size:0.73rem; color:var(--ink-faint);}
.down-arrow{width:30px;height:30px;border-radius:50%; background:linear-gradient(135deg, var(--orange-light), var(--orange-dark)); display:flex; align-items:center; justify-content:center;
  margin:0.55rem auto; color:#fff; box-shadow:0 8px 18px -6px rgba(232,93,10,0.55); flex-shrink:0;}
.down-arrow svg{width:13px;height:13px;}
.right-arrow{width:26px;height:26px;border-radius:50%; background:var(--card-alt); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; color:var(--ink-faint); flex-shrink:0;}
.right-arrow svg{width:12px;height:12px;}

/* trace/record components */
.trace-body{padding:1.1rem 1.2rem 1.3rem;}
.trace-label{font-family:var(--mono); font-size:0.68rem; letter-spacing:0.06em; text-transform:uppercase; color:var(--ink-faint); margin-bottom:0.6rem;}
.trace-meetings{display:flex; flex-direction:column; gap:0.55rem;}
.tmeet{display:flex; gap:0.7rem; align-items:flex-start; font-size:0.85rem;}
.tmeet .mlabel{font-family:var(--mono); font-size:0.68rem; color:var(--ink-faint); min-width:70px; margin-top:0.15rem; flex-shrink:0;}
.tmeet .mtext{color:var(--ink-soft); line-height:1.5;}
.record-card{border:1px solid var(--border); border-radius:var(--r-md); padding:0.95rem 1.05rem; background:var(--card-alt);}
.record-head{display:flex; justify-content:space-between; align-items:center; gap:0.6rem; flex-wrap:wrap;}
.record-head h5{font-weight:700; font-size:0.95rem;}
.status-pill{font-family:var(--mono); font-size:0.68rem; font-weight:600; padding:0.26em 0.7em; border-radius:var(--r-pill); background:color-mix(in srgb, var(--orange) 14%, transparent); color:var(--orange-dark);}
html[data-theme="dark"] .status-pill{color:#FDB871;}
.record-fields{display:grid; grid-template-columns:1fr 1fr; gap:0.65rem 1rem; margin-top:0.85rem;}
.record-fields dt{font-size:0.66rem; text-transform:uppercase; letter-spacing:0.05em; color:var(--ink-faint);}
.record-fields dd{font-size:0.85rem; font-weight:600; margin-top:0.15rem;}
.ask-row{border-top:1px dashed var(--border); padding-top:0.95rem; margin-top:0.2rem;}
.ask-q{font-weight:700; font-size:0.88rem; display:flex; gap:0.5em; align-items:center;}
.ask-q .qmark{width:22px;height:22px;border-radius:50%; background:var(--card-alt); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:0.72rem; color:var(--orange-dark); flex-shrink:0;}
html[data-theme="dark"] .ask-q .qmark{color:#FDB871;}
.ask-a{font-size:0.86rem; color:var(--ink-soft); margin-top:0.55rem; line-height:1.6; padding-left:1.9rem;}
.cite-chip{display:inline-flex; gap:0.4em; align-items:center; margin-top:0.65rem; margin-left:1.9rem; font-family:var(--mono); font-size:0.7rem; color:var(--orange-dark);
  background: color-mix(in srgb, var(--orange) 12%, transparent); padding:0.32em 0.75em; border-radius:var(--r-pill);}
html[data-theme="dark"] .cite-chip{color:#FDB871;}

/* trust strip */
.trust-strip{border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding-block:1.4rem; background:var(--bg);}
.trust-strip .wrap{display:flex; align-items:center; gap:clamp(1.5rem,4vw,3rem); flex-wrap:wrap; justify-content:space-between;}
.trust-strip .label{font-family:var(--mono); font-size:0.72rem; color:var(--ink-faint); letter-spacing:0.05em; text-transform:uppercase; white-space:nowrap;}
.logo-row{display:flex; gap:clamp(1.5rem,4vw,3rem); flex-wrap:wrap; align-items:center;}
.logo-row span{font-weight:700; font-size:0.98rem; color:var(--ink-faint);}

section.block{padding-block:clamp(3.5rem,7vw,5.5rem);}
.alt{background:var(--card-alt);}
.section-head{max-width:38rem; margin-bottom:clamp(2rem,4.5vw,2.8rem);}
.section-head h2{font-weight:800; font-size:clamp(1.7rem,2.2vw + 1rem,2.35rem); line-height:1.16; margin-top:0.7rem; letter-spacing:-0.01em;}
.section-head p{color:var(--ink-soft); margin-top:0.75rem; font-size:1rem;}
.center{text-align:center; margin-inline:auto;}
.statement{font-weight:800; font-size:clamp(1.2rem,1.4vw+0.9rem,1.5rem); line-height:1.4; margin-top:1rem;}
.closing-line{margin-top:1.6rem; font-weight:700; font-size:1.02rem;}

.reveal{opacity:0; transform:translateY(14px); transition:opacity .6s ease, transform .6s ease;}
.reveal.in{opacity:1; transform:translateY(0);}

/* fragment diagram (big difference / structure) */
.frag-wrap{max-width:680px;}
.frag-row{display:grid; grid-template-columns:repeat(3,1fr); gap:0.8rem;}
.frag-chip{background:var(--card); border:1px solid var(--border); border-radius:var(--r-md); padding:0.9rem 1rem;}
.frag-chip .flabel{font-family:var(--mono); font-size:0.66rem; color:var(--ink-faint); margin-bottom:0.4rem;}
.frag-chip p{font-size:0.82rem; color:var(--ink-soft); line-height:1.5;}
.merge-chip{border:1.5px solid var(--orange); background:color-mix(in srgb, var(--orange) 8%, var(--card)); border-radius:var(--r-md); padding:1rem 1.15rem; text-align:center;}
.merge-chip strong{font-size:0.98rem;}
.merge-chip span{display:block; font-size:0.82rem; color:var(--ink-soft); margin-top:0.3rem;}

/* tabs */
.tabs{display:flex; gap:0.55rem; flex-wrap:wrap; margin-bottom:1.6rem;}
.tab-btn{padding:0.62rem 1.15rem; border-radius:var(--r-pill); border:1px solid var(--border); background:var(--card); font-weight:600; font-size:0.85rem; cursor:pointer; color:var(--ink-soft);}
.tab-btn.active{background:linear-gradient(135deg, var(--orange-light), var(--orange-dark)); color:#fff; border-color:transparent;}
.tab-panel{display:none;}
.tab-panel.active{display:block;}
.field-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:0.8rem;}
.field-chip{background:var(--card); border:1px solid var(--border); border-radius:var(--r-md); padding:1rem 1.05rem;}
.field-chip h6{font-weight:700; font-size:0.92rem;}
.field-chip p{color:var(--ink-soft); font-size:0.82rem; margin-top:0.35rem; line-height:1.5;}

/* capture cards */
.capture-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1rem;}
.capture-card{background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); padding:1.5rem 1.4rem;}
.capture-card .ic{width:38px;height:38px;border-radius:var(--r-sm); background:color-mix(in srgb, var(--orange) 12%, transparent); display:flex; align-items:center; justify-content:center; margin-bottom:0.9rem;}
.capture-card .ic svg{width:18px;height:18px; color:var(--orange);}
.capture-card h4{font-weight:700; font-size:1rem;}
.capture-card p{color:var(--ink-soft); font-size:0.87rem; margin-top:0.45rem; line-height:1.5;}
.capture-foot{margin-top:1.4rem; font-weight:700; font-size:0.95rem;}

/* memory grid + pipeline */
.memory-grid{display:grid; grid-template-columns:1fr 1fr; gap:1.6rem; align-items:start;}
.frag-list{display:flex; flex-direction:column; gap:0.6rem;}
.frag-list .fitem{background:var(--card); border:1px solid var(--border); border-radius:var(--r-md); padding:0.8rem 1rem; font-size:0.85rem; color:var(--ink-soft);}
.frag-list .fitem b{color:var(--ink); display:block; font-size:0.78rem; font-family:var(--mono); margin-bottom:0.25rem;}
.col-label{font-family:var(--mono); font-size:0.7rem; letter-spacing:0.06em; text-transform:uppercase; color:var(--ink-faint); margin-bottom:0.8rem;}
.pipeline{display:flex; align-items:stretch; gap:0.5rem; flex-wrap:wrap; margin-top:1.8rem;}
.pipeline .pstep{background:var(--card); border:1px solid var(--border); border-radius:var(--r-md); padding:0.85rem 1rem; font-size:0.82rem; font-weight:600; flex:1 1 150px; text-align:center;}
.pipeline .parrow{display:flex; align-items:center; color:var(--ink-faint); flex:0 0 auto;}
.supported-row{display:flex; gap:0.6rem; flex-wrap:wrap; margin-top:1.6rem;}
.supported-row .tag{font-size:0.78rem; font-weight:700; padding:0.4em 0.9em; border-radius:var(--r-pill); background:var(--tag-bg); color:var(--ink);}
.supported-cap{font-size:0.83rem; color:var(--ink-faint); margin-top:0.8rem;}

/* vertical timeline (project memory page) */
.timeline-v{display:flex; flex-direction:column; position:relative; padding-left:2rem;}
.timeline-v::before{content:""; position:absolute; left:7px; top:6px; bottom:6px; width:1.5px; background:var(--border);}
.tv-item{position:relative; padding-bottom:1.6rem;}
.tv-item:last-child{padding-bottom:0;}
.tv-item::before{content:""; position:absolute; left:-2rem; top:3px; width:11px; height:11px; border-radius:50%; background:var(--orange); border:2.5px solid var(--bg);}
.tv-item .tv-date{font-family:var(--mono); font-size:0.72rem; color:var(--orange-dark); font-weight:600;}
html[data-theme="dark"] .tv-item .tv-date{color:#FDB871;}
.tv-item .tv-text{font-size:0.92rem; margin-top:0.25rem; color:var(--ink);}
.tv-item .tv-sub{font-size:0.82rem; color:var(--ink-faint); margin-top:0.15rem;}

/* q grid + cite demo */
.q-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:0.8rem;}
.q-chip{background:var(--card); border:1px solid var(--border); border-radius:var(--r-md); padding:0.9rem 1.05rem; font-size:0.9rem; font-weight:600;}
.q-chip::before{content:"\201C"; color:var(--orange); margin-right:0.1em;}
.q-chip::after{content:"\201D"; color:var(--orange); margin-left:0.1em;}
.cite-demo{max-width:560px;}

/* transcript modal mock */
.transcript-modal{max-width:640px;}
.transcript-modal .thead{display:flex; align-items:center; justify-content:space-between; padding:0.9rem 1.1rem; border-bottom:1px solid var(--border);}
.transcript-modal .thead h5{font-weight:700; font-size:0.92rem;}
.transcript-modal .thead span{font-family:var(--mono); font-size:0.72rem; color:var(--ink-faint);}
.transcript-modal .tbody{padding:1rem 1.1rem;}
.transcript-modal .tline{font-size:0.88rem; color:var(--ink-soft); padding:0.5rem 0; line-height:1.55;}
.transcript-modal .tline.hit{background:color-mix(in srgb, var(--orange) 10%, transparent); border-radius:var(--r-sm); padding:0.5rem 0.7rem; margin:0.2rem -0.7rem; color:var(--ink); font-weight:600;}
.transcript-modal .tline b{color:var(--ink); font-weight:700;}

/* integrations */
.integ-grid{display:grid; grid-template-columns:1fr 1fr; gap:1.4rem;}
.integ-card{background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); padding:1.7rem 1.6rem;}
.integ-head{display:flex; align-items:center; gap:0.8rem; margin-bottom:1rem;}
.integ-badge{width:42px;height:42px;border-radius:var(--r-sm); background:var(--card-alt); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-weight:800; font-size:1rem;}
.integ-card h4{font-weight:700; font-size:1.05rem;}
.integ-card ul{margin:0.8rem 0 0; padding-left:1.1rem; color:var(--ink-soft); font-size:0.87rem; display:flex; flex-direction:column; gap:0.35rem;}
.integ-flow{margin-top:1.4rem; padding-top:1.1rem; border-top:1px dashed var(--border); font-size:0.85rem; font-weight:600; color:var(--ink-soft);}

/* formal minutes doc mock */
.doc-mock{max-width:520px;}
.doc-mock .doc-line{display:flex; gap:0.9rem; padding:0.5rem 0; font-size:0.87rem;}
.doc-mock .doc-line .dn{font-family:var(--mono); color:var(--orange-dark); font-weight:600; min-width:44px;}
html[data-theme="dark"] .doc-mock .doc-line .dn{color:#FDB871;}
.doc-mock .doc-line + .doc-line{border-top:1px solid var(--border);}
.doc-mock .doc-line.sub{padding-left:1rem;}
.doc-foot{display:flex; align-items:center; justify-content:space-between; padding-top:0.9rem; margin-top:0.4rem; border-top:1px solid var(--border);}
.feature-list{display:flex; flex-wrap:wrap; gap:0.6rem;}
.feature-list .tag{font-size:0.8rem; font-weight:600; padding:0.4em 0.85em; border-radius:var(--r-pill); background:var(--tag-bg); color:var(--ink-soft);}

/* trust list */
.trust-list{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:1.2rem;}
.trust-list li{display:flex; gap:0.9rem; align-items:flex-start;}
.trust-list .icn{width:34px;height:34px;border-radius:var(--r-sm); background:var(--card); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.trust-list .icn svg{width:16px;height:16px; color:var(--orange);}
.trust-list .t-title{font-weight:700; font-size:0.95rem;}
.trust-list .t-sub{color:var(--ink-soft); font-size:0.87rem; margin-top:0.15rem; line-height:1.5;}

/* why different comparison */
.vs-grid{display:grid; grid-template-columns:1fr auto 1fr; gap:1.2rem; align-items:center;}
.vs-card{background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); padding:1.5rem 1.4rem; height:100%;}
.vs-card.win{border-color:var(--orange);}
.vs-label{font-family:var(--mono); font-size:0.68rem; letter-spacing:0.06em; text-transform:uppercase; color:var(--ink-faint); margin-bottom:0.8rem;}
.vs-bubble{background:var(--card-alt); border-radius:var(--r-md); padding:0.9rem 1rem; font-size:0.88rem; color:var(--ink-soft); font-style:italic;}
.vs-divider{width:34px;height:34px;border-radius:50%; background:var(--card-alt); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-family:var(--mono); font-size:0.72rem; font-weight:700; color:var(--ink-faint); margin-inline:auto;}

/* use cases */
.uc-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.1rem;}
.uc-card{background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); padding:1.7rem 1.5rem; display:flex; flex-direction:column;}
.uc-card h4{font-weight:700; font-size:1.1rem;}
.uc-card .uc-meta{font-size:0.83rem; color:var(--ink-faint); margin-top:0.6rem; line-height:1.6;}
.uc-card .uc-track{font-size:0.86rem; color:var(--ink-soft); margin-top:0.7rem; line-height:1.55;}
.uc-card .link-quiet{margin-top:1.2rem;}

/* kanban (business development) */
.kanban{display:grid; grid-template-columns:repeat(3,1fr); gap:1rem;}
.kcol{background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); padding:1rem;}
.kcol h6{font-family:var(--mono); font-size:0.72rem; letter-spacing:0.05em; text-transform:uppercase; color:var(--ink-faint); margin-bottom:0.8rem;}
.kcard{background:var(--card-alt); border:1px solid var(--border); border-radius:var(--r-sm); padding:0.7rem 0.8rem; font-size:0.85rem; font-weight:600; margin-bottom:0.6rem;}
.kcard span{display:block; font-weight:400; font-size:0.76rem; color:var(--ink-faint); margin-top:0.25rem;}

/* vertical pipeline (how it works / demo) */
.pipeline-v{display:flex; flex-direction:column; gap:0; max-width:640px;}
.pv-step{display:flex; gap:1.1rem; padding-block:1.4rem;}
.pv-step:not(:last-child){border-bottom:1px dashed var(--border);}
.pv-num{width:38px;height:38px;border-radius:50%; background:var(--card-alt); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-weight:700; font-family:var(--mono); font-size:0.85rem; color:var(--orange-dark); flex-shrink:0;}
html[data-theme="dark"] .pv-num{color:#FDB871;}
.pv-body h4{font-weight:700; font-size:1.05rem;}
.pv-body p{color:var(--ink-soft); font-size:0.9rem; margin-top:0.4rem; line-height:1.55;}

/* structure diagram (transcript -> records) */
.structure-grid{display:grid; grid-template-columns:1fr auto 1fr; gap:1.4rem; align-items:center;}
.structure-grid .right-arrow{margin-inline:auto;}
.extract-list{display:flex; flex-direction:column; gap:0.55rem;}
.extract-chip{display:flex; align-items:center; gap:0.6rem; background:var(--card); border:1px solid var(--border); border-radius:var(--r-md); padding:0.7rem 0.9rem; font-size:0.85rem; font-weight:600;}
.extract-chip .edot{width:8px;height:8px;border-radius:50%; background:var(--orange); flex-shrink:0;}

/* form (demo page) */
.form-shell{max-width:520px;}
.form-grid{display:grid; grid-template-columns:1fr 1fr; gap:1rem;}
.form-field{display:flex; flex-direction:column; gap:0.4rem; margin-bottom:1rem;}
.form-field.full{grid-column:1/-1;}
.form-field label{font-size:0.78rem; font-weight:600; color:var(--ink-soft); text-transform:uppercase; letter-spacing:0.03em;}
.form-field label .req{color:var(--orange); font-weight:700;}
.form-field input, .form-field select, .form-field textarea{
  background:var(--input-bg); border:1px solid var(--border); border-radius:var(--r-sm); padding:0.75rem 0.9rem;
  font-family:var(--sans); font-size:0.92rem; color:var(--ink); width:100%; transition:border-color .15s ease, box-shadow .15s ease;}
.form-field input:focus, .form-field select:focus, .form-field textarea:focus{
  outline:none; border-color:var(--orange); box-shadow:0 0 0 3px color-mix(in srgb, var(--orange) 15%, transparent);}
.form-field textarea{resize:vertical; min-height:100px;}
.form-field input::placeholder, .form-field textarea::placeholder{color:var(--ink-faint);}
.form-status{padding:0.75rem 1rem; border-radius:var(--r-sm); font-size:0.86rem; margin-bottom:1rem; line-height:1.45;
  background:rgba(239,68,68,0.12); border:1px solid rgba(239,68,68,0.3); color:#dc2626;}
html[data-theme="dark"] .form-status{background:rgba(239,68,68,0.18); border-color:rgba(239,68,68,0.4); color:#f87171;}
.form-success-box{text-align:center; padding:2rem 1.2rem;}
.form-success-box .success-icon{width:52px; height:52px; margin:0 auto 1.2rem; border-radius:50%;
  background:var(--green-bg); color:var(--green-text); display:flex; align-items:center; justify-content:center;}
.form-success-box .success-icon svg{width:28px; height:28px;}
.form-success-box h3{font-size:1.3rem; font-weight:800; margin-bottom:0.6rem; color:var(--ink);}
.form-success-box p{color:var(--ink-soft); font-size:0.94rem; line-height:1.55; max-width:380px; margin-inline:auto;}
button:disabled, .btn:disabled{opacity:0.65; cursor:not-allowed; transform:none !important; box-shadow:none !important;}

/* cta band */
.cta-band{text-align:center; background:var(--card-alt);}
.cta-band .wrap{padding-block:clamp(3.2rem,6vw,4.6rem);}
.cta-band h2{font-weight:800; font-size:clamp(1.7rem,2.6vw+1rem,2.4rem); line-height:1.16; max-width:32rem; margin-inline:auto; letter-spacing:-0.01em;}
.cta-band p{color:var(--ink-soft); margin-top:0.9rem; font-size:0.98rem; max-width:34rem; margin-inline:auto;}
.steps-row{display:flex; align-items:center; justify-content:center; gap:0.5rem; flex-wrap:wrap; margin-top:1.8rem;}
.steps-row .spill{font-size:0.85rem; font-weight:700; padding:0.5em 1em; border-radius:var(--r-pill); background:var(--card); border:1px solid var(--border);}
.steps-row .sep{color:var(--ink-faint);}
.cta-final{font-weight:800; font-size:1.15rem; margin-top:1.6rem;}
.cta-band .hero-cta{justify-content:center; margin-top:1.8rem;}

footer{border-top:1px solid var(--border); padding-block:3rem;}
footer .wrap{display:flex; justify-content:space-between; gap:2rem; flex-wrap:wrap;}
.foot-brand .logo{margin-bottom:0.8rem;}
.foot-brand p{color:var(--ink-faint); font-size:0.87rem; max-width:19rem;}
.foot-cols{display:flex; gap:clamp(2rem,6vw,4.5rem); flex-wrap:wrap;}
.foot-col h4{font-family:var(--mono); font-size:0.7rem; letter-spacing:0.08em; text-transform:uppercase; color:var(--ink-faint); margin-bottom:0.9rem;}
.foot-col ul{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:0.55rem;}
.foot-col a{font-size:0.9rem; text-decoration:none; color:var(--ink-soft);}
.foot-col a:hover{color:var(--ink);}
.foot-fine{margin-top:2.2rem; padding-top:1.4rem; border-top:1px solid var(--border); font-size:0.8rem; color:var(--ink-faint); line-height:1.6;}

/* state change grid (what changed) */
.state-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:0.75rem; margin-top:1.5rem;}
.state-card{background:var(--card); border:1px solid var(--border); border-radius:var(--r-md); padding:1rem 0.9rem;}
.state-badge{display:inline-block; font-family:var(--mono); font-size:0.68rem; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; padding:0.2em 0.6em; border-radius:var(--r-pill); margin-bottom:0.5rem;}
.state-badge.new{background:color-mix(in srgb, var(--orange) 14%, transparent); color:var(--orange-dark);}
.state-badge.changed{background:color-mix(in srgb, var(--amber) 20%, transparent); color:var(--orange-dark);}
.state-badge.overdue{background:rgba(239,68,68,0.14); color:#DC2626;}
.state-badge.escalating{background:rgba(168,85,247,0.14); color:#9333EA;}
.state-badge.resolved{background:var(--green-bg); color:var(--green-text);}
html[data-theme="dark"] .state-badge.new{color:#FDB871;}
html[data-theme="dark"] .state-badge.changed{color:#FDB871;}
html[data-theme="dark"] .state-badge.overdue{color:#F87171;}
html[data-theme="dark"] .state-badge.escalating{color:#C084FC;}
.state-card h6{font-size:0.86rem; font-weight:700; margin-bottom:0.25rem;}
.state-card p{font-size:0.78rem; color:var(--ink-soft); line-height:1.45;}

/* procore workflow strip */
.flow-strip{display:flex; align-items:center; justify-content:space-between; gap:0.5rem; background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); padding:1.2rem 1.4rem; margin-block:1.6rem;}
.flow-node{display:flex; flex-direction:column; gap:0.2rem; flex:1;}
.flow-node-step{font-family:var(--mono); font-size:0.68rem; text-transform:uppercase; letter-spacing:0.05em; color:var(--orange-dark); font-weight:600;}
html[data-theme="dark"] .flow-node-step{color:#FDB871;}
.flow-node-title{font-size:0.88rem; font-weight:700; color:var(--ink);}
.flow-arrow{color:var(--ink-faint); font-size:1.1rem; flex-shrink:0; padding-inline:0.2rem;}

/* problem questions grid */
.problem-q-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(280px, 1fr)); gap:0.8rem; margin-top:1.4rem;}
.problem-q{background:var(--card); border:1px solid var(--border); border-left:3px solid var(--orange); border-radius:var(--r-md); padding:0.9rem 1.1rem; font-size:0.88rem; font-weight:600; color:var(--ink);}
.problem-q span{display:block; font-size:0.78rem; font-weight:400; color:var(--ink-soft); margin-top:0.3rem;}

/* comparison lists (feature pages) */
.compare-list{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:0.65rem; margin-top:0.9rem;}
.compare-list li{display:flex; align-items:flex-start; gap:0.65rem; font-size:0.87rem; line-height:1.5; color:var(--ink-soft);}
.compare-list li b{color:var(--ink);}
.compare-list .c-icon{width:18px; height:18px; border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:0.7rem; font-weight:800; margin-top:0.15rem;}
.compare-list .c-cross{background:rgba(239,68,68,0.12); color:#DC2626;}
.compare-list .c-check{background:var(--green-bg); color:var(--green-text);}

@media (max-width:1000px){
  .state-grid{grid-template-columns:repeat(2, 1fr);}
  .flow-strip{flex-direction:column; align-items:stretch; gap:1rem;}
  .flow-arrow{text-align:center; transform:rotate(90deg); margin-block:-0.3rem;}
  .field-grid{grid-template-columns:1fr 1fr;}
  .capture-grid{grid-template-columns:1fr;}
  .memory-grid{grid-template-columns:1fr;}
  .integ-grid{grid-template-columns:1fr;}
  .vs-grid{grid-template-columns:1fr;}
  .uc-grid{grid-template-columns:1fr;}
  .q-grid{grid-template-columns:1fr;}
  .kanban{grid-template-columns:1fr;}
  .structure-grid{grid-template-columns:1fr;}
  .structure-grid .right-arrow{transform:rotate(90deg);}
  .form-grid{grid-template-columns:1fr;}
}
@media (max-width:880px){
  .nav-links{display:none;}
  .frag-row{grid-template-columns:1fr;}
  .field-grid{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .trust-strip .wrap{flex-direction:column; align-items:flex-start; gap:1rem;}
  footer .wrap{flex-direction:column;}
  .record-fields{grid-template-columns:1fr;}
  .state-grid{grid-template-columns:1fr;}
}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important;}
  html{scroll-behavior:auto;}
}

/* Breadcrumbs */
.breadcrumbs{display:flex; align-items:center; gap:0.5rem; font-size:0.8rem; font-weight:500; color:var(--ink-faint); margin-bottom:1.2rem; flex-wrap:wrap;}
.breadcrumbs a{color:var(--ink-soft); text-decoration:none; transition:color .15s ease;}
.breadcrumbs a:hover{color:var(--orange-dark);}
.breadcrumbs .sep{color:var(--ink-faint); font-size:0.75rem;}
.breadcrumbs .current{color:var(--ink); font-weight:600;}

/* Responsive Tables & Comparison */
.table-wrap{width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; margin-block:1.5rem; border-radius:var(--r-md); border:1px solid var(--border); background:var(--card);}
.seo-table{width:100%; border-collapse:collapse; text-align:left; font-size:0.88rem; min-width:600px;}
.seo-table th{background:var(--card-alt); color:var(--ink); font-weight:700; font-size:0.82rem; text-transform:uppercase; letter-spacing:0.04em; padding:0.9rem 1.1rem; border-bottom:1px solid var(--border);}
.seo-table td{padding:0.95rem 1.1rem; border-bottom:1px solid var(--border); color:var(--ink-soft); vertical-align:top;}
.seo-table tr:last-child td{border-bottom:none;}
.seo-table tr:hover td{background:color-mix(in srgb, var(--card-alt) 40%, transparent);}
.seo-table td strong{color:var(--ink);}
.seo-table .highlight-col{background:color-mix(in srgb, var(--orange) 6%, transparent); font-weight:600; color:var(--ink);}
html[data-theme="dark"] .seo-table .highlight-col{background:color-mix(in srgb, var(--orange) 10%, transparent);}

/* Template Preview & Documents */
.template-container{background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); box-shadow:var(--shadow); overflow:hidden; margin-block:2rem;}
.template-toolbar{display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:0.9rem 1.4rem; background:var(--card-alt); border-bottom:1px solid var(--border); flex-wrap:wrap;}
.template-toolbar-title{font-family:var(--mono); font-size:0.8rem; font-weight:600; color:var(--ink);}
.template-toolbar-actions{display:flex; align-items:center; gap:0.6rem;}
.btn-action{display:inline-flex; align-items:center; gap:0.4rem; padding:0.45rem 0.9rem; font-size:0.78rem; font-weight:700; border-radius:var(--r-sm); border:1px solid var(--border); background:var(--card); color:var(--ink); cursor:pointer; transition:all .15s ease;}
.btn-action:hover{border-color:var(--orange); color:var(--orange-dark); transform:translateY(-1px);}
.btn-action svg{width:14px; height:14px;}
.btn-action.copied{background:var(--green-bg); color:var(--green-text); border-color:var(--green-text);}

.template-content{padding:clamp(1.5rem, 4vw, 3rem); font-family:var(--sans); font-size:0.92rem; line-height:1.65; color:var(--ink);}
.template-header-block{border-bottom:2px solid var(--border); padding-bottom:1.5rem; margin-bottom:1.8rem;}
.template-h-title{font-size:1.4rem; font-weight:800; letter-spacing:-0.01em; margin-bottom:0.4rem;}
.template-grid-meta{display:grid; grid-template-columns:repeat(auto-fit, minmax(200px, 1fr)); gap:0.9rem; margin-top:1rem; background:var(--card-alt); padding:1rem; border-radius:var(--r-md); border:1px solid var(--border);}
.template-meta-item{font-size:0.83rem;}
.template-meta-item strong{display:block; font-size:0.72rem; text-transform:uppercase; letter-spacing:0.04em; color:var(--ink-faint); margin-bottom:0.15rem;}

.template-section{margin-top:2rem;}
.template-section-title{font-size:1.05rem; font-weight:800; letter-spacing:-0.01em; color:var(--orange-dark); margin-bottom:0.8rem; display:flex; align-items:center; gap:0.5rem;}
html[data-theme="dark"] .template-section-title{color:#FDB871;}
.template-item{padding:0.7rem 0.9rem; background:var(--card-alt); border-radius:var(--r-sm); border-left:3px solid var(--orange); margin-bottom:0.6rem; font-size:0.87rem;}
.template-item-num{font-family:var(--mono); font-weight:700; color:var(--ink); margin-right:0.4rem;}

/* Article & Guide Typography */
.article-body{max-width:48rem; margin-inline:auto; font-size:1.02rem; line-height:1.75; color:var(--ink-soft);}
.article-body h2{font-size:clamp(1.4rem, 2.2vw + 0.6rem, 1.85rem); font-weight:800; color:var(--ink); letter-spacing:-0.02em; margin-top:2.8rem; margin-bottom:1rem;}
.article-body h3{font-size:1.2rem; font-weight:700; color:var(--ink); margin-top:1.8rem; margin-bottom:0.7rem;}
.article-body p{margin-bottom:1.3rem;}
.article-body ul, .article-body ol{margin-block:0.8rem 1.4rem; padding-left:1.5rem;}
.article-body li{margin-bottom:0.5rem;}
.article-body strong{color:var(--ink);}
.article-body blockquote{border-left:4px solid var(--orange); padding:1rem 1.4rem; margin:1.8rem 0; background:var(--card); border-radius:0 var(--r-md) var(--r-md) 0; font-size:1.05rem; font-style:italic; color:var(--ink);}
.article-body .callout{background:var(--card); border:1px solid var(--border); border-left:4px solid var(--orange); border-radius:var(--r-md); padding:1.2rem 1.4rem; margin-block:1.8rem;}
.article-body .callout h4{font-size:1rem; font-weight:800; color:var(--ink); margin-bottom:0.4rem;}
.article-body .callout p{font-size:0.92rem; margin-bottom:0; color:var(--ink-soft);}

/* Resource Grid */
.resource-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(320px, 1fr)); gap:1.5rem; margin-top:2rem;}
.resource-card{background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); padding:1.8rem; display:flex; flex-direction:column; justify-content:space-between; transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease; text-decoration:none; color:inherit;}
.resource-card:hover{transform:translateY(-2px); border-color:var(--orange); box-shadow:var(--shadow);}
.resource-card-tag{font-family:var(--mono); font-size:0.72rem; text-transform:uppercase; letter-spacing:0.06em; font-weight:700; color:var(--orange-dark); margin-bottom:0.6rem;}
html[data-theme="dark"] .resource-card-tag{color:#FDB871;}
.resource-card h3{font-size:1.25rem; font-weight:800; line-height:1.3; margin-bottom:0.6rem; color:var(--ink);}
.resource-card p{font-size:0.9rem; color:var(--ink-soft); line-height:1.6; margin-bottom:1.4rem; flex-grow:1;}
.resource-card-action{font-size:0.88rem; font-weight:700; color:var(--orange-dark); display:inline-flex; align-items:center; gap:0.4rem;}
html[data-theme="dark"] .resource-card-action{color:#FDB871;}

/* Print Styling */
@media print{
  body{background:#fff !important; color:#000 !important; font-size:11pt;}
  .nav, footer, .hero-cta, .cta-band, .template-toolbar-actions, .breadcrumbs, .theme-toggle, .btn{display:none !important;}
  .template-container{border:none !important; box-shadow:none !important; background:transparent !important;}
  .template-toolbar{background:transparent !important; border-bottom:1px solid #000 !important; padding:0 0 0.5rem 0 !important;}
  .template-content{padding:0 !important;}
  .template-grid-meta, .template-item, .seo-table th{background:#f5f5f5 !important; border-color:#ccc !important;}
  a{text-decoration:none !important; color:#000 !important;}
}
