/* One trade's page (James, 11 Nov 2026, of attio.com: "this is the level of depth our site needs to have"). Attio's depth is a page for
   each feature, every claim beside a small working copy of the product. Ours is a page for each trade, made from its pack: a short
   two-tone headline, two sentences at most, and one miniature that works. Every miniature is the landing page's own material: a pane of
   glass in a brushed steel frame, lit by the lime, holding the trade's own made-up records. Loaded after tour.css, on the trade pages. */
.dim{color:var(--faint)}
.links a[aria-current="page"]{color:var(--ink)}
.links a[aria-current="page"]::after{scale:1 1}

/* the first screen: the trade's own name and line, and its kind's object standing beside them */
.tp-hero{min-height:max(88svh,660px)}
.tp-hero .k-over{animation:rise-in 1s var(--ease) both}
.tp-hero h1{max-width:13ch;margin-top:14px;font-size:clamp(2.8rem,5.3vw,5.5rem)}
.tp-first{display:inline-block;padding:9px 14px;border-radius:12px;background:rgba(14,18,28,.05);color:var(--ink-2)}
.tp-first[hidden]{display:none}

/* each part waits below the fold and arrives as it is scrolled to (trade.js marks the page .js, then each part data-in) */
.js [data-rise]{opacity:0;translate:0 28px;transition:opacity .9s var(--ease),translate .9s var(--ease)}
.js [data-rise][data-in]{opacity:1;translate:0 0}

/* the bar under the bar, on a desk: the parts of this page, a lit pill under the one in view */
.sub{display:none}
@media (min-width:900px){
  html{scroll-padding-top:calc(var(--top) + 84px)}
  .sub{position:sticky;top:calc(var(--top) + 22px);z-index:40;display:flex;gap:2px;width:max-content;margin:0 auto -46px;padding:4px;border-radius:99px;border:1px solid rgba(255,255,255,.92);
    background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(255,255,255,.6));-webkit-backdrop-filter:saturate(1.6) blur(24px);backdrop-filter:saturate(1.6) blur(24px);box-shadow:var(--edge),0 16px 34px -24px rgba(22,30,48,.45)}
  .sub a{position:relative;z-index:1;display:inline-flex;align-items:center;height:36px;padding:0 16px;border-radius:99px;color:var(--ink-2);font-size:14px;letter-spacing:-.012em;text-decoration:none;white-space:nowrap;transition:color .3s}
  .sub a:hover{color:var(--ink)}
  .sub a[aria-current]{color:var(--on-accent);font-weight:500}
  .sub:has([aria-current]) i{opacity:1}
  .sub i{position:absolute;left:0;top:4px;width:0;height:36px;border-radius:99px;opacity:0;pointer-events:none;transition:translate .55s var(--spring),width .45s var(--ease),opacity .3s;
    background:linear-gradient(135deg,rgba(255,255,255,.55),transparent 46%),var(--accent);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 0 0 1px rgba(63,107,0,.4),0 10px 18px -10px var(--accent)}
}

/* a part: its words at one side and its miniature at the other, or its words above and its miniature across the page */
.tp-sec{position:relative;padding:clamp(64px,7.5vw,116px) 0}
.tp-deck{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);align-items:center;gap:clamp(20px,3.6vw,68px);width:min(100% - 64px,1400px);margin-inline:auto}
.tp-deck.flip{grid-template-columns:minmax(0,1fr) minmax(0,400px)}
.tp-deck.flip .tp-copy{order:2}
.tp-copy h2{font-size:clamp(2.3rem,3.8vw,3.8rem);font-weight:600;line-height:1;letter-spacing:-.042em;text-wrap:balance}
.tp-copy > p:not(.tp-acts){max-width:34ch;margin-top:16px;color:var(--soft);font-size:clamp(1.1rem,1.5vw,1.3rem);line-height:1.36;text-wrap:pretty}
.tp-acts{margin-top:24px}
.t-head + .mini{width:min(100% - 64px,1400px);margin:clamp(22px,3vw,40px) auto 0}
.tp-stages{padding-bottom:clamp(8px,2vw,32px);background:linear-gradient(180deg,#fff 0,#fff 58%,#f1f2f5 100%);overflow:hidden;overflow:clip}
.tp-lists,.tp-numbers,.tp-price{background:linear-gradient(180deg,#f1f2f5 0,#fff 46%)}
.tp-checks{background:linear-gradient(180deg,#fff 40%,#f1f2f5 100%)}

/* ---- a miniature: a pane of glass in a brushed steel frame, the lime's light in one corner, and the CRM's own lettering inside */
.mini{--hue:var(--accent);position:relative;min-width:0;margin:0;border-radius:28px;border:5px solid transparent;color:var(--data-ink);font:400 14px/1.4 var(--app);letter-spacing:-.01em;
  background:radial-gradient(60% 55% at 0 0,color-mix(in srgb,var(--accent) 15%,transparent),transparent 70%) padding-box,linear-gradient(180deg,rgba(255,255,255,.97),rgba(255,255,255,.84)) padding-box,var(--steel) border-box;
  box-shadow:0 0 0 1px rgba(14,18,28,.1),inset 0 1px 0 #fff,0 40px 60px -40px rgba(22,30,48,.5)}
.mini :is(.av,.chip,.c-chip,.c-panel){--hue-soft:color-mix(in oklch,var(--hue) 15%,#fff);--hue-ink:color-mix(in oklch,var(--hue) 62%,var(--data-ink))}
.mini .av{border:0;background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.9),transparent 44%),linear-gradient(180deg,color-mix(in oklch,var(--hue) 26%,#fff),color-mix(in oklch,var(--hue) 48%,#fff));
  box-shadow:inset 0 -2px 3px color-mix(in oklch,var(--hue) 40%,transparent),0 0 0 1px color-mix(in oklch,var(--hue) 45%,transparent),0 4px 8px -4px var(--hue)}
.mini .chip{display:inline-block;padding:3px 10px;box-shadow:inset 0 0 0 1px color-mix(in oklch,var(--hue) 30%,transparent);white-space:nowrap}
.mini h4{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:22px;color:var(--soft);font:600 11px/1 var(--text);letter-spacing:.09em;text-transform:uppercase}
.mini h4 span{padding:4px 9px;border-radius:99px;background:rgba(14,18,28,.06);color:var(--data-ink);letter-spacing:0;font-variant-numeric:tabular-nums}

/* a table inside one: every row a slip of glass */
.mini table{width:100%;border-collapse:separate;border-spacing:0 6px;font-variant-numeric:tabular-nums}
.mini th{padding:10px 14px 2px;color:var(--data-ink-2);font:600 11px/1.2 var(--text);letter-spacing:.08em;text-transform:uppercase;text-align:left;white-space:nowrap}
.mini td{height:54px;padding:6px 14px;white-space:nowrap;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,255,255,.6) 60%);box-shadow:inset 0 1px 0 rgba(14,18,28,.07),inset 0 -1px 0 rgba(14,18,28,.07);transition:background-color .3s,box-shadow .3s}
.mini td:first-child{border-radius:16px 0 0 16px;box-shadow:inset 1px 1px 0 rgba(14,18,28,.07),inset 0 -1px 0 rgba(14,18,28,.07)}
.mini td:last-child{border-radius:0 16px 16px 0;box-shadow:inset -1px 1px 0 rgba(14,18,28,.07),inset 0 -1px 0 rgba(14,18,28,.07)}
.mini tbody tr{animation:rise-in .5s var(--ease) both;animation-delay:calc(var(--i) * 55ms)}
@media (hover:hover){.mini tbody tr:hover td{background-color:#fff}.mini tbody tr:hover td:first-child{box-shadow:inset 3px 0 0 var(--accent),inset 0 1px 0 rgba(14,18,28,.07),inset 0 -1px 0 rgba(14,18,28,.07)}}
.mini td.lead > *{display:inline-grid;vertical-align:middle}
.mini td.lead .av{width:32px;height:32px;margin-right:12px}
.mini td.lead b{font-size:14.5px;font-weight:600}
.mini td[data-kind="money"]{font-weight:600}
.mini tbody td:first-child{font-weight:600}   /* a list with no name column: its first field is the name */
.opt{display:inline-block;padding:3px 10px;border-radius:99px;background:rgba(14,18,28,.05);box-shadow:inset 0 0 0 1px rgba(14,18,28,.06);font-size:13px}
.yn{display:inline-flex;align-items:center;gap:8px;color:var(--data-ink-2)}
.yn::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--silver);box-shadow:inset 0 -2px 3px rgba(0,0,0,.15)}
.yn[data-on]{color:var(--data-ink)}
.yn[data-on]::before{background:radial-gradient(circle at 32% 26%,#fff,transparent 46%),var(--accent);box-shadow:inset 0 -2px 3px rgba(0,0,0,.15),0 0 0 1px rgba(63,107,0,.45),0 0 10px var(--accent)}

/* ---- its lists: the CRM's own bar with a tab for each list, and the chosen list under it */
.m-bar{display:flex;align-items:center;gap:4px;margin:14px 14px 0;padding:7px 9px;border-radius:18px;white-space:nowrap;
  background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.5) 44%,transparent 58%),linear-gradient(180deg,#fff,#fff 46%,#ebecef 56%,#f7f8fa);
  box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 rgba(0,0,0,.14),0 0 0 1px rgba(14,18,28,.1),0 12px 24px -14px rgba(22,30,48,.45)}
.m-bar > b{margin:0 16px 0 8px;font-size:14.5px;font-weight:600}
.mini .initials{width:34px;height:34px;border:0;border-radius:10px;color:var(--th-ink);font-size:12.5px;
  background:linear-gradient(135deg,rgba(255,255,255,.6),transparent 44%),linear-gradient(180deg,color-mix(in oklch,var(--firm) 80%,#fff),var(--firm) 55%,color-mix(in oklch,var(--firm) 80%,#000));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),inset 0 -2px 3px rgba(0,0,0,.2),0 0 0 1px color-mix(in oklch,var(--firm) 72%,#000),0 6px 16px -4px var(--firm)}
.m-tabs{position:relative;display:flex;gap:2px}
.m-tabs button{all:unset;box-sizing:border-box;position:relative;z-index:1;display:inline-flex;align-items:center;height:36px;padding:0 15px;border-radius:11px;color:var(--data-ink-2);font-size:14px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .3s}
@media (hover:hover){.m-tabs button:hover{color:var(--data-ink)}}
.m-tabs button[aria-pressed="true"]{color:var(--th-ink);font-weight:600}
.m-tabs button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.m-pill{position:absolute;left:0;top:0;width:0;height:36px;border-radius:11px;pointer-events:none;transition:translate .55s var(--spring),width .45s var(--ease);
  background:linear-gradient(135deg,rgba(255,255,255,.5),transparent 46%),linear-gradient(180deg,color-mix(in oklch,var(--th) 84%,#fff),var(--th) 60%,color-mix(in oklch,var(--th) 86%,#000));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65),inset 0 -2px 3px rgba(0,0,0,.16),0 0 0 1px color-mix(in oklch,var(--th) 74%,#000),0 8px 18px -6px var(--th)}
.m-head{display:flex;align-items:baseline;gap:12px;margin:20px 28px 0}
.m-head strong{font-size:28px;font-weight:600;line-height:1.15;letter-spacing:-.03em}
.m-head span{color:var(--data-ink-2);font-size:14px}
.m-scroll{margin-top:2px;padding:0 14px 10px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
.m-scroll:focus-visible{outline:2px solid var(--ink);outline-offset:-5px;border-radius:22px}

/* ---- one record: who and where it stands, its value, what it holds, and at the side what its stage still asks for */
.m-sheet{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);overflow:hidden}
.s-main{padding:clamp(18px,2.2vw,30px)}
.s-side{padding:clamp(18px,2.2vw,30px) clamp(16px,2vw,26px);background:rgba(14,18,28,.035);box-shadow:inset 1px 0 0 rgba(14,18,28,.07)}
.m-sheet header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:3px 14px;align-items:center}
.m-sheet header .av{grid-row:span 2;width:54px;height:54px;font-size:18px}
.m-sheet header b{font-size:clamp(1.5rem,2vw,1.85rem);font-weight:600;line-height:1.08;letter-spacing:-.03em}
.m-sheet header .chip{font-size:13px;padding:5px 12px}
.m-sheet header small{grid-column:2 / -1;color:var(--data-ink-2);font-size:14px;line-height:1.3}
.m-money{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-top:22px;padding:14px 20px 16px;border-radius:20px;color:var(--data-ink-2);font-size:15px;
  background:linear-gradient(135deg,rgba(255,255,255,.72),transparent 40%),rgba(255,255,255,.8);
  box-shadow:inset 0 1px 0 #fff,inset 0 0 0 1px rgba(14,18,28,.1),inset 0 -16px 24px -14px color-mix(in srgb,var(--accent) 70%,transparent),0 20px 30px -22px rgba(22,30,48,.6)}
.m-money b{color:var(--data-ink);font-size:clamp(1.7rem,2.4vw,2.2rem);font-weight:600;line-height:1;letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.m-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:12px 0 0}
.m-facts div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--data-line)}
.m-facts dt{color:var(--data-ink-2)}
.m-facts dd{margin:0;font-weight:500;text-align:right}
.m-ticks{display:grid;gap:6px;margin-top:12px}
.m-ticks li{display:flex;align-items:center;gap:12px;min-height:46px;padding:8px 14px;border-radius:14px;background:rgba(255,255,255,.88);box-shadow:var(--edge);font-size:14.5px;line-height:1.3;animation:rise-in .5s var(--ease) both;animation-delay:calc(var(--i) * 55ms);transition:translate .3s var(--ease)}
.m-ticks i{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:linear-gradient(180deg,#fdfdfe,#e6e8ec);box-shadow:inset 0 0 0 1.5px rgba(14,18,28,.22),inset 0 2px 3px rgba(0,0,0,.08);transition:box-shadow .3s}
.m-ticks i::after{content:"";width:11px;height:6px;margin-top:-2px;border:solid var(--on-accent);border-width:0 0 2.2px 2.2px;rotate:-45deg;scale:0}
.m-ticks li[data-done] i{background:linear-gradient(135deg,rgba(255,255,255,.55),transparent 46%),var(--accent);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 0 0 1px rgba(63,107,0,.45),0 0 12px -2px var(--accent)}
.m-ticks li[data-done] i::after{scale:1}
.m-ticks li[data-done] span{color:var(--data-ink-2);text-decoration:line-through;text-decoration-color:rgba(14,18,28,.3)}
@media (hover:hover){.m-ticks li:hover{translate:3px 0}.m-ticks li:not([data-done]):hover i{box-shadow:inset 0 0 0 1.5px var(--accent-ink),0 0 0 4px color-mix(in srgb,var(--accent) 40%,transparent)}}
.mini .papers{margin-top:8px}
.mini .papers li{min-height:44px;font-size:14.5px;animation:rise-in .5s var(--ease) both;animation-delay:calc(var(--i) * 55ms)}
.s-main h4{margin-top:22px}
.m-papers{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.m-papers li{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:4px 12px 4px 10px;border-radius:10px;background:rgba(255,255,255,.88);box-shadow:var(--edge);font-size:13.5px;line-height:1.25}
.m-papers li::before{content:"";flex:none;width:13px;height:17px;border:1.5px solid var(--data-line-2);border-radius:3px;background:linear-gradient(225deg,var(--data-line-2) 5px,transparent 5px)}
.c-none{margin-top:12px;color:var(--data-ink-2);font-size:15px}

/* ---- each stage in order as a chip; the chosen one's checklist and papers under them, lit from its top edge by its own colour */
.m-checks{padding:clamp(12px,1.6vw,20px)}
.c-rail{display:flex;flex-wrap:wrap;gap:8px}
.c-chip{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 18px 0 7px;border-radius:99px;background:#fff;box-shadow:var(--edge),0 12px 20px -16px rgba(22,30,48,.5);font-size:15px;letter-spacing:-.014em;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:translate .3s var(--ease),box-shadow .3s}
.c-chip i{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:var(--hue-ink);font:600 13px/1 var(--text);font-variant-numeric:tabular-nums;
  background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.9),transparent 44%),linear-gradient(180deg,color-mix(in oklch,var(--hue) 26%,#fff),color-mix(in oklch,var(--hue) 48%,#fff));box-shadow:inset 0 -2px 3px color-mix(in oklch,var(--hue) 40%,transparent),0 0 0 1px color-mix(in oklch,var(--hue) 45%,transparent)}
.c-chip b{font-weight:500}
.c-chip[data-none] b{color:var(--soft)}
@media (hover:hover){.c-chip:hover{translate:0 -2px}}
.c-chip:active{scale:.97}
.c-chip:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.c-chip[aria-pressed="true"]{box-shadow:0 0 0 2.5px var(--accent),0 0 0 3.5px rgba(63,107,0,.34),0 0 30px -6px color-mix(in srgb,var(--accent) 80%,transparent)}
.c-chip[aria-pressed="true"] b{color:var(--ink);font-weight:600}
.c-panel{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.1fr) minmax(0,1.1fr);align-items:start;gap:clamp(16px,2.6vw,44px);min-height:290px;margin-top:16px;padding:clamp(20px,2.6vw,34px);border-radius:20px;background:rgba(255,255,255,.72);
  box-shadow:inset 0 3px 0 var(--hue),inset 0 16px 22px -14px color-mix(in oklch,var(--hue) 60%,transparent),inset 0 0 0 1px rgba(14,18,28,.08);transition:box-shadow .5s}
.c-head small{display:block;color:var(--soft);font:600 11px/1 var(--text);letter-spacing:.09em;text-transform:uppercase}
.c-head b{display:block;margin-top:10px;font-size:clamp(1.8rem,2.9vw,2.8rem);font-weight:600;line-height:1.02;letter-spacing:-.038em;text-wrap:balance;animation:name-in .6s var(--ease)}

/* ---- its morning numbers: panes of glass with the lime pooled at their foot; the first is lit all through */
.n-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr);grid-auto-rows:minmax(168px,auto);gap:12px}
.n-tile{container-type:inline-size;display:grid;align-content:space-between;gap:16px;padding:20px 22px 22px;border-radius:26px;
  background:linear-gradient(135deg,rgba(255,255,255,.9),transparent 40%),rgba(255,255,255,.8);
  box-shadow:inset 0 1px 0 #fff,inset 0 0 0 1px rgba(14,18,28,.09),inset 0 -22px 30px -18px color-mix(in srgb,var(--accent) 70%,transparent),0 26px 40px -28px rgba(22,30,48,.55)}
.n-tile small{max-width:18ch;color:var(--ink-2);font-size:16px;font-weight:500;line-height:1.25;letter-spacing:-.014em}
.n-tile b{font-size:min(4.6rem,calc(150cqi / var(--n,2)));font-weight:600;line-height:.92;letter-spacing:-.045em;font-variant-numeric:tabular-nums}
.n-tile:first-child{grid-row:span 2;color:var(--on-accent);
  background:linear-gradient(135deg,rgba(255,255,255,.48),transparent 42%),radial-gradient(120% 90% at 80% 120%,color-mix(in oklch,var(--accent) 70%,#fff),transparent 60%),linear-gradient(180deg,color-mix(in oklch,var(--accent) 88%,#fff),var(--accent) 55%,color-mix(in oklch,var(--accent) 84%,#000));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),inset 0 -3px 5px rgba(0,0,0,.18),0 0 0 1px rgba(63,107,0,.5),0 30px 44px -22px var(--accent)}
.n-tile:first-child small{color:inherit;font-size:19px}
.n-tile:first-child b{font-size:min(9rem,calc(150cqi / var(--n,2)))}
.js .n-tile{opacity:0;translate:0 20px;transition:opacity .8s var(--ease),translate .8s var(--ease);transition-delay:calc(var(--i) * 80ms)}
.js [data-in] .n-tile{opacity:1;translate:0 0}

/* ---- what its bots cost: each team's own object, its price for one bot and for the whole team */
.m-price{padding:6px 14px 10px}
.m-price :is(th,td):not(:first-child){text-align:right}
.m-price td{height:56px;font-size:17px;font-weight:600;letter-spacing:-.016em}
.m-price td.lead img{width:54px;height:46px;margin-right:10px;object-fit:contain;mix-blend-mode:multiply}
.m-price td.lead b{font-size:16.5px}
.m-price td:last-child{color:var(--data-ink-2);font-weight:500}

@media (max-width:899px){
  .tp-hero{min-height:0}
  .tp-hero h1{font-size:clamp(2.5rem,11.5vw,3.6rem)}
  .tp-sec{padding:48px 0}
  .tp-deck,.tp-deck.flip{grid-template-columns:minmax(0,1fr);width:calc(100% - 32px);gap:22px}
  .tp-deck.flip .tp-copy{order:0}
  .tp-stages .r-world{order:0;position:relative;top:auto;z-index:auto;margin:0 -10px;background:none}   /* here the words come first and the board scrolls with them (the landing page pins it) */
  .t-head + .mini{width:calc(100% - 24px)}
  .m-bar{overflow-x:auto;scrollbar-width:none}
  .m-head{margin:16px 18px 0}
  .m-scroll table{width:max-content;min-width:100%}
  .m-sheet,.c-panel{grid-template-columns:minmax(0,1fr)}
  .m-facts{grid-template-columns:minmax(0,1fr)}
  .s-side{box-shadow:inset 0 1px 0 rgba(14,18,28,.07)}
  .c-panel{min-height:0}
  .n-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(132px,auto)}
  .n-tile:first-child{grid-row:auto;grid-column:1 / -1}
  .m-price{padding:4px 8px 8px}
  .m-price :is(th,td){padding-inline:10px}
  .m-price :is(th,td):last-child{display:none}   /* the price for one bot stays in view; the whole team's is on the pricing page */
  .m-price td{font-size:15px}
  .m-price td:nth-child(2){border-radius:0 16px 16px 0;white-space:nowrap}
  .m-price td.lead img{width:38px;height:32px;margin-right:6px}
  .m-price td.lead b{font-size:15px}
}
@media (prefers-reduced-motion:reduce){.js [data-rise],.js .n-tile{opacity:1;translate:0 0}}
