/* upscale-nov06: full-site lower sections. Every rule is scoped to .up-s (sections below the hero) or the #tg-machine figure,
   so the locked header + hero (tma-hero.css + tma-dark.css) render exactly as before. Palette: ink #0B0F1A, paper #FAFAF9, purple #7C6CF6, cyan #22C3E6. */
.up-s{--ink:#0B0F1A;--ink2:#070A14;--paper:#FAFAF9;--paper2:#F0EFEB;--cream:#F5F1E8;--c2:rgba(245,241,232,.74);--c3:rgba(245,241,232,.6);
  --i2:#454A57;--i3:#5F6472;--lineD:rgba(245,241,232,.12);--lineL:rgba(11,15,26,.12);--vio:#7C6CF6;--vioL:#5847E0;--cy:#22C3E6;
  --mono:ui-monospace,"SF Mono","JetBrains Mono",Menlo,Consolas,monospace;
  position:relative;padding:clamp(88px,10vw,152px) 0;scroll-margin-top:56px}
main>section.up-s.up-dark{background:var(--ink);color:var(--cream)}
main>section.up-s.up-light{background:var(--paper);color:var(--ink)}
.up-s .up-wrap{max-width:1240px;margin:0 auto;padding:0 clamp(20px,4vw,48px)}
.up-s .up-m{font-family:var(--mono)!important;font-weight:500!important;font-size:12px;line-height:1.3;letter-spacing:.08em;text-transform:uppercase;font-variant-numeric:tabular-nums}

/* ---------- section header: label / headline / lede on an editorial grid ---------- */
.up-s .up-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:clamp(32px,5vw,96px);align-items:end}
.up-s .up-k{grid-column:1/-1;display:flex;align-items:center;gap:14px;margin:0 0 28px;color:var(--c3)}
.up-light .up-k{color:var(--i3)}
.up-s .up-kn{color:var(--cy)}
.up-light .up-kn{color:var(--vioL)}
.up-s .up-kn::after{content:"";display:inline-block;width:32px;height:1px;margin-left:14px;vertical-align:middle;background:currentColor;opacity:.6}
.up-s h2.up-h2,.up-s h2.up-h2 *{font-size:clamp(40px,5.4vw,80px);line-height:1;letter-spacing:-.04em!important;color:inherit;text-wrap:balance;margin:0}
.up-s .up-lede{margin:0;font-size:clamp(18px,1.35vw,20px);line-height:1.55;color:var(--c2);max-width:34em;text-wrap:pretty}
.up-light .up-lede{color:var(--i2)}
@media (max-width:899.98px){.up-s .up-head{grid-template-columns:1fr}.up-s .up-lede{margin-top:24px}}
@media (max-width:639.98px){.up-s{padding:80px 0}.up-s .up-k{margin-bottom:20px}.up-s h2.up-h2,.up-s h2.up-h2 *{font-size:clamp(36px,10.4vw,44px);line-height:1.04}.up-s .up-lede{font-size:17px;margin-top:20px}}

/* ---------- 01 what I do: capability ledger + the machine figure ---------- */
.up-what .up-caps{list-style:none;margin:clamp(56px,6vw,88px) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--lineD)}
.up-what .up-caps li{padding:28px 32px 0 0;margin-right:32px;border-right:1px solid var(--lineD)}
.up-what .up-caps li:last-child{border-right:0;margin-right:0}
.up-what .up-caps-n{display:block;color:var(--cy);margin-bottom:28px}
.up-what .up-caps h3{font-size:clamp(22px,1.8vw,26px);line-height:1.2;color:var(--cream);margin:0 0 12px}
.up-what .up-caps p{margin:0;font-size:17px;line-height:1.55;color:var(--c2);text-wrap:pretty}
@media (max-width:767.98px){.up-what .up-caps{grid-template-columns:1fr}.up-what .up-caps li{display:grid;grid-template-columns:44px 1fr;padding:22px 0;margin:0;border-right:0;border-bottom:1px solid var(--lineD)}
  .up-what .up-caps-n{margin:6px 0 0;grid-row:1/3}.up-what .up-caps h3{font-size:21px;margin-bottom:6px}.up-what .up-caps p{font-size:16px}}
.up-what .up-fig{margin-top:clamp(48px,6vw,88px)}
.up-what .dg{margin:0;border-radius:4px;border-color:#1B2445;background:#070A14}
.up-what .dg::before{background:radial-gradient(40% 55% at 50% 52%,rgba(20,35,75,.55),transparent 72%)}
.up-what .dg-box img{filter:none}
.up-what .up-figcap{display:flex;gap:16px;align-items:baseline;margin:20px 0 0;font-size:15px;line-height:1.5;color:var(--c3)}
.up-what .up-figcap .up-m{flex:none;color:var(--c2)}
/* owner edit: no column labels on the stacked (mobile) diagram */
@media (max-width:819.98px){.up-what .dg-in .dg-lbl,.up-what .dg-out .dg-lbl{display:none}.up-what .dg{padding-top:24px}}
/* machine pulse (up.js): a short light travels each input path into the machine, the node rings once, then the outputs fire */
.dg-box{isolation:isolate}
.dg-box::after{content:"";position:absolute;left:50%;top:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border-radius:50%;border:1.5px solid #22C3E6;opacity:0;pointer-events:none;transform:scale(.6)}
@media (max-width:819.98px){.dg-box::after{top:57.1%;width:13px;height:13px;margin:-6.5px 0 0 -6.5px}}
.dg-box.up-hot::after{animation:up-ring .9s cubic-bezier(.2,.6,.3,1) both}
@keyframes up-ring{0%{opacity:.85;transform:scale(.6)}100%{opacity:0;transform:scale(2.3)}}
.dg-lines .up-pulse,.dg-vl .up-pulse{pointer-events:none;fill:none}
@media (prefers-reduced-motion:reduce){.dg-box.up-hot::after{animation:none}.up-pulse{display:none}}

/* ---------- 02 workflows: six compact editorial rows, all visible ---------- */
.up-pain .up-wf{margin-top:clamp(48px,6vw,80px)}
.up-pain .up-wf-hd{display:grid;grid-template-columns:48px minmax(0,5fr) minmax(0,4fr) minmax(0,3fr);column-gap:clamp(20px,3vw,48px);padding:0 0 14px;color:var(--i3)}
.up-pain .up-wf-hd span:first-child{grid-column:2}
.up-pain .up-wf-l{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.up-pain .up-wf-r{display:grid;grid-template-columns:48px minmax(0,5fr) minmax(0,4fr) minmax(0,3fr);column-gap:clamp(20px,3vw,48px);align-items:baseline;padding:26px 0;border-bottom:1px solid var(--lineL)}
.up-pain .up-wf-n{color:var(--vioL)}
.up-pain .up-wf-q{margin:0;font-family:var(--display)!important;font-weight:700!important;font-size:clamp(19px,1.6vw,23px);line-height:1.28;letter-spacing:-.018em;color:var(--ink);text-wrap:pretty}
.up-pain .up-wf-d,.up-pain .up-wf-d>div{display:contents}
.up-pain .up-wf-d dt{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.up-pain .up-wf-d dd{margin:0;font-size:16px;line-height:1.5;color:var(--i2);text-wrap:pretty}
.up-pain .up-wf-m dd{position:relative;padding-left:18px;color:var(--ink)}
.up-pain .up-wf-m dd::before{content:"";position:absolute;left:0;top:.42em;width:8px;height:8px;border-radius:2px;background:linear-gradient(135deg,#7C6CF6,#22C3E6)}
@media (max-width:899.98px){
  .up-pain .up-wf-hd{display:none}
  .up-pain .up-wf-r{grid-template-columns:36px minmax(0,1fr);padding:24px 0}
  .up-pain .up-wf-d{display:grid;grid-column:2;grid-template-columns:1fr;row-gap:10px;margin:14px 0 0}
  .up-pain .up-wf-d>div{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:12px;align-items:baseline}
  .up-pain .up-wf-d dt{position:static;width:auto;height:auto;overflow:visible;clip:auto;color:var(--i3);font-size:11px}
  .up-pain .up-wf-m dd{padding-left:0}.up-pain .up-wf-m dd::before{display:none}
}
@media (max-width:399.98px){.up-pain .up-wf-d>div{grid-template-columns:1fr;row-gap:2px}}

/* ---------- 03 calculator: controls on ink, a paper "estimate" sheet beside them ---------- */
.up-cost .up-calc{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(40px,6vw,104px);align-items:center}
.up-cost .up-calc-in>.up-lede{margin-top:20px}
.up-cost .up-calc-in>.sliders{margin-top:clamp(40px,4vw,56px);display:grid;gap:28px}
.up-cost .tg-team-wrap{margin-top:20px}
.up-cost .tg-team-btn{color:var(--cream);font-size:16px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:rgba(245,241,232,.35)}
.up-cost .sl-top label{color:var(--c2)}
.up-cost .tg-team-in>.sliders{display:grid;gap:28px}
.up-cost .up-calc-out{background:var(--paper);color:var(--ink);border-radius:4px;padding:clamp(28px,3.4vw,48px);container-type:inline-size;position:relative}
.up-cost .up-calc-out::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;border-radius:4px 4px 0 0;background:linear-gradient(90deg,#7C6CF6,#22C3E6)}
.up-cost .up-calc-lbl{margin:0 0 20px;color:var(--i3)}
.up-cost .tg-result{margin:0;display:flex;flex-direction:column;gap:10px}
#cost #tg-cost{font-size:clamp(44px,17cqi,80px);line-height:.95;letter-spacing:-.04em!important;color:var(--ink);white-space:nowrap}
.up-cost .tg-suf{font-size:17px;line-height:1.4;color:var(--i2)}
#cost #tg-cost-line{margin:20px 0 0;padding-top:16px;border-top:1px dashed rgba(11,15,26,.22);font-family:var(--mono)!important;font-size:13px;color:var(--i2);white-space:normal}
#cost #tg-cost-line span{font-family:var(--mono)!important}
.up-cost .tg-note{margin:20px 0 0;font-size:15px;line-height:1.55;color:var(--i2);text-wrap:pretty}
.up-cost .up-btn{margin-top:28px;width:100%}
@media (max-width:899.98px){.up-cost .up-calc{grid-template-columns:1fr}}

/* ---------- buttons ---------- */
.up-s .up-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;box-sizing:border-box;min-height:52px;padding:14px 24px;border-radius:4px;font-size:16px;font-weight:500!important;line-height:1.25;text-align:center;text-decoration:none;background:var(--cream);color:var(--ink);border:1px solid var(--cream);transition:background .15s,border-color .15s}
@media (hover:hover) and (pointer:fine){.up-s .up-btn:hover{background:#fff;border-color:#fff}}
.up-s .up-btn.up-btn-ink{background:var(--ink);color:var(--cream);border-color:var(--ink)}
@media (hover:hover) and (pointer:fine){.up-s .up-btn.up-btn-ink:hover{background:#1B2140;border-color:#1B2140}}
.up-s .up-btn:focus-visible{outline:2px solid var(--vioL);outline-offset:3px}
.up-s .up-arr{transition:transform .15s}
@media (hover:hover) and (pointer:fine){.up-s .up-btn:hover .up-arr{transform:translateX(3px)}}
@media (prefers-reduced-motion:reduce){.up-s .up-btn,.up-s .up-arr{transition:none}.up-s .up-btn:hover .up-arr{transform:none}}

/* ---------- 05 about ---------- */
.up-about .up-wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,7vw,120px);align-items:center}
.up-about .up-photo img{width:100%;height:auto;border-radius:4px;background:#121829;box-shadow:none}
.up-about .up-quote{margin:clamp(28px,3vw,40px) 0 0;padding:0}
.up-about .up-quote p{margin:0;font-size:clamp(21px,1.9vw,28px);line-height:1.45;letter-spacing:-.012em;color:var(--cream);text-indent:-.42em;text-wrap:pretty}
.up-about .up-who{display:flex;align-items:center;gap:12px;margin:28px 0 0;font-size:15px;color:var(--c2)}
.up-about .up-who img{width:28px;height:28px}
@media (max-width:767.98px){.up-about .up-wrap{grid-template-columns:1fr}.up-about .up-photo{max-width:340px}}

/* ---------- 06 FAQ ---------- */
.up-faq{padding-top:0}
.up-faq .up-wrap{position:relative;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(40px,6vw,104px);align-items:start;padding-top:clamp(72px,8vw,120px)}
.up-faq .up-wrap::before{content:"";position:absolute;top:0;left:clamp(20px,4vw,48px);right:clamp(20px,4vw,48px);height:1px;background:var(--lineD)}
.up-faq .up-faq-call{margin:24px 0 0;font-size:16px;line-height:1.5;color:var(--c2)}
.up-faq .up-faq-call a,.up-book .up-call a{color:var(--cream);text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(124,108,246,.8)}
.up-faq .up-qa{border-top:1px solid rgba(245,241,232,.3)}
.up-faq .up-qa details{border-bottom:1px solid var(--lineD)}
.up-faq .up-qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 0;font-size:clamp(18px,1.4vw,20px);line-height:1.35;color:var(--cream)}
.up-faq .up-qa summary::-webkit-details-marker{display:none}
.up-faq .up-qa summary:focus-visible{outline:2px solid var(--cy);outline-offset:4px}
.up-faq .up-qa .pm{flex:none;width:32px;height:32px;border-radius:50%;border:1px solid rgba(245,241,232,.28);display:grid;place-items:center;transition:transform .2s,background .2s}
.up-faq .up-qa .pm path{stroke:var(--cream)}
.up-faq .up-qa details[open] .pm{transform:rotate(45deg);background:var(--cream);border-color:var(--cream)}
.up-faq .up-qa details[open] .pm path{stroke:var(--ink)}
.up-faq .up-qa details p{margin:0;padding:0 56px 26px 0;font-size:17px;line-height:1.6;color:var(--c2)}
@media (max-width:899.98px){.up-faq .up-wrap{grid-template-columns:1fr}}
@media (max-width:639.98px){.up-faq .up-qa details p{padding-right:0}}
@media (prefers-reduced-motion:reduce){.up-faq .up-qa .pm{transition:none}}

/* ---------- 07 book: steps on ink, form on a paper card ---------- */
main>section.up-s.up-dark.up-book{background:var(--ink2)}
.up-book .up-wrap{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(40px,6vw,104px);align-items:start}
.up-book .up-lede{margin-top:24px}
.up-book .up-steps{list-style:none;margin:40px 0 0;padding:0;border-top:1px solid var(--lineD)}
.up-book .up-steps li{display:flex;gap:20px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--lineD);font-size:17px;line-height:1.45;color:var(--cream)}
.up-book .up-steps .up-m{color:var(--cy);flex:none}
.up-book .up-call{margin:28px 0 0;font-size:16px;line-height:1.5;color:var(--c2)}
#book .bk-card{background:var(--paper);border:0;border-radius:4px;box-shadow:none;padding:clamp(24px,3vw,40px);position:relative}
#book .bk-card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;border-radius:4px 4px 0 0;background:linear-gradient(90deg,#7C6CF6,#22C3E6)}
#book .bk-field label{color:var(--ink)}
#book .bk-opt{color:var(--i3)}
#book .bk-form input{background:#fff!important;color:var(--ink);border:1px solid rgba(11,15,26,.24)!important;box-shadow:none}
#book .bk-form input::placeholder{color:#6B707C}
@media (hover:hover) and (pointer:fine){#book .bk-form input:hover{border-color:rgba(11,15,26,.45)!important}}
#book .bk-form input:focus{border-color:var(--vioL)!important;box-shadow:0 0 0 4px rgba(124,108,246,.2)}
#book .bk-form input[aria-invalid="true"]{border-color:#B42318!important}
#book .bk-err{color:#B42318}
#book .bk-form .btn-primary{background:var(--ink)!important;color:var(--cream)!important;border:1px solid var(--ink)!important;border-radius:4px;box-shadow:none!important}
@media (hover:hover) and (pointer:fine){#book .bk-form .btn-primary:hover{background:#1B2140!important;border-color:#1B2140!important}}
#book .bk-form .btn-primary:focus-visible{box-shadow:0 0 0 3px var(--paper),0 0 0 5px var(--vioL)!important}
#book .bk-fine{color:var(--i3)}
@media (max-width:899.98px){.up-book .up-wrap{grid-template-columns:1fr}}

/* owner edit (Nov 6): the estimate sheet goes dark. Palette only; layout and calculator behavior unchanged. */
.up-cost .up-calc-out{background:#111831;color:#F5F1E8;box-shadow:inset 0 0 0 1px rgba(124,108,246,.26)}
.up-cost .up-calc-lbl{color:rgba(245,241,232,.62)}
#cost #tg-cost{color:#F5F1E8}
.up-cost .tg-suf{color:rgba(245,241,232,.76)}
#cost #tg-cost-line{color:rgba(245,241,232,.74);border-top-color:rgba(245,241,232,.2)}
.up-cost .tg-note{color:rgba(245,241,232,.72)}
.up-cost .up-calc-out .up-btn.up-btn-ink{background:#F5F1E8;color:#0B0F1A;border-color:#F5F1E8}
@media (hover:hover) and (pointer:fine){.up-cost .up-calc-out .up-btn.up-btn-ink:hover{background:#fff;border-color:#fff}}
.up-cost .up-calc-out .up-btn:focus-visible{outline-color:#22C3E6}

/* owner edit (Nov 6): the six examples are dark cards on a softer warm-gray ground (this section only) */
/* owner edit 2 (Nov 6): no light flip at all; section 02 sits on a calm charcoal tone between the ink sections */
main>section.up-s.up-light.up-pain{background:#15181F;color:#F5F1E8;box-shadow:inset 0 1px 0 rgba(245,241,232,.06),inset 0 -1px 0 rgba(245,241,232,.06)}
.up-pain .up-k{color:rgba(245,241,232,.7)}
.up-pain .up-kn{color:#A99CFF}
.up-pain h2.up-h2{color:#F5F1E8}
.up-pain .up-lede{color:rgba(245,241,232,.8)}
.up-pain .up-wf-hd{padding:0 24px 12px;color:rgba(245,241,232,.7)}
.up-pain .up-wf-l{border-top:0;display:grid;gap:8px}
.up-pain .up-wf-r{background:#0B0F1A;border:0;box-shadow:inset 0 0 0 1px rgba(245,241,232,.08);border-radius:4px;padding:24px;position:relative;overflow:hidden}
.up-pain .up-wf-r::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(#7C6CF6,#22C3E6)}
.up-pain .up-wf-n{color:#22C3E6}
.up-pain .up-wf-q{color:#F5F1E8}
.up-pain .up-wf-d dd{color:rgba(245,241,232,.74)}
.up-pain .up-wf-m dd{color:#F5F1E8}
@media (max-width:899.98px){.up-pain .up-wf-r{padding:20px 18px}.up-pain .up-wf-d dt{color:rgba(245,241,232,.6)}}

/* owner edit (Nov 6): the booking form card and fields go dark. CSS only; form markup, names, validation and the Cal.com hand-off are unchanged. */
#book .bk-card{background:#111831;box-shadow:inset 0 0 0 1px rgba(124,108,246,.26)}
#book .bk-field label{color:rgba(245,241,232,.88)}
#book .bk-opt{color:rgba(245,241,232,.6)}
#book .bk-form input{background:#0B0F1A!important;color:#F5F1E8;caret-color:#22C3E6;border:1px solid rgba(245,241,232,.42)!important}
#book .bk-form input::placeholder{color:rgba(245,241,232,.5);opacity:1}
@media (hover:hover) and (pointer:fine){#book .bk-form input:hover{border-color:rgba(245,241,232,.62)!important}}
#book .bk-form input:focus{border-color:#22C3E6!important;box-shadow:0 0 0 4px rgba(34,195,230,.22);outline:none}
#book .bk-form input:focus-visible{outline:2px solid transparent}
#book .bk-form input[aria-invalid="true"]{border-color:#FF8A7A!important}
#book .bk-form input[aria-invalid="true"]:focus{box-shadow:0 0 0 4px rgba(255,138,122,.22)}
#book .bk-err{color:#FF9C8F}
#book .bk-form input:-webkit-autofill,#book .bk-form input:-webkit-autofill:hover,#book .bk-form input:-webkit-autofill:focus{-webkit-text-fill-color:#F5F1E8;-webkit-box-shadow:0 0 0 1000px #141D3A inset;box-shadow:0 0 0 1000px #141D3A inset;transition:background-color 9999s ease-out 0s}
#book .bk-form input:autofill{background:#141D3A!important}
#book .bk-form .btn-primary{background:#F5F1E8!important;color:#0B0F1A!important;border-color:#F5F1E8!important}
@media (hover:hover) and (pointer:fine){#book .bk-form .btn-primary:hover{background:#FFFFFF!important;border-color:#FFFFFF!important}}
#book .bk-form .btn-primary:focus-visible{box-shadow:0 0 0 3px #111831,0 0 0 5px #22C3E6!important}
#book .bk-fine{color:rgba(245,241,232,.62)}

/* owner edit (Nov 6, t1104u): the three "Feed the machine" capabilities become elevated dark cards (content unchanged) */
.up-what .up-caps{border-top:0;gap:16px}
.up-what .up-caps li{position:relative;margin:0;padding:28px 28px 32px;border:1px solid rgba(124,108,246,.28);border-radius:12px;background:linear-gradient(180deg,#121A36 0%,#0E1530 100%);box-shadow:0 0 0 1px rgba(34,195,230,.04),0 18px 40px -22px rgba(34,195,230,.22),0 24px 48px -28px rgba(0,0,0,.7),inset 0 1px 0 rgba(245,241,232,.06)}
.up-what .up-caps li:last-child{border-right:1px solid rgba(124,108,246,.28)}
.up-what .up-caps li::before{content:"";position:absolute;left:28px;right:28px;top:-1px;height:2px;border-radius:2px;background:linear-gradient(90deg,#7C6CF6,#22C3E6);opacity:.85}
.up-what .up-caps-n{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:24px;border-radius:10px;border:1px solid rgba(34,195,230,.32);background:rgba(34,195,230,.07)}
@media (max-width:767.98px){
  .up-what .up-caps{gap:12px}
  .up-what .up-caps li{display:grid;grid-template-columns:40px 1fr;column-gap:16px;padding:22px 20px 24px;border-bottom:1px solid rgba(124,108,246,.28)}
  .up-what .up-caps li::before{left:20px;right:20px}
  .up-what .up-caps-n{margin:0;grid-row:1/3;width:36px;height:36px}
}

/* owner edit (Nov 6, t1111u): stacked example cards (below 900px) get room. Number sits beside the quote; the machine / you
   labels sit above full-width copy. Desktop (>=900px) is untouched; type sizes unchanged. */
@media (max-width:899.98px){
  .up-pain .up-wf-l{gap:12px}
  .up-pain .up-wf-r{grid-template-columns:auto minmax(0,1fr);column-gap:14px;align-items:baseline;padding:24px 22px 26px}
  .up-pain .up-wf-n{grid-column:1;grid-row:1}
  .up-pain .up-wf-q{grid-column:2;grid-row:1}
  .up-pain .up-wf-d{grid-column:1/-1;grid-row:2;row-gap:18px;margin:20px 0 0;padding-top:18px;border-top:1px solid rgba(245,241,232,.1)}
  .up-pain .up-wf-d>div{display:block}
  .up-pain .up-wf-d dt{display:block;margin:0 0 6px}
}
/* branch-out (nov06): stacked diagram output drawn by section01-a1.js as two branches across the full column width */
@media (max-width:819.98px){.dg-vl-out.dg-b2{width:100%;overflow:visible}}
/* feed-the-machine intro (nov06): desktop only, lede column starts ~44px further left and gains that width; right edge stays on the content edge */
@media (min-width:1024px){.up-what .up-head{grid-template-columns:minmax(0,13fr) minmax(0,11fr)}}

/* audit-fixes-nov09 (owner t1219s): press feedback + footer tap targets. Hover rules above are gated to (hover:hover) and (pointer:fine). */
html{-webkit-tap-highlight-color:transparent}
#top .tma-cta{transition:border-color .15s,background-color .15s,transform 160ms cubic-bezier(.23,1,.32,1)}
#head .tma-navcta{transition:border-color .15s,background-color .15s,transform 160ms cubic-bezier(.23,1,.32,1)}
.up-s .up-btn{transition:background .15s,border-color .15s,transform 160ms cubic-bezier(.23,1,.32,1)}
.btn-primary{transition:background-color .15s ease,transform 160ms cubic-bezier(.23,1,.32,1)!important}
#top .tma-cta:active,#head .tma-navcta:active,.up-s .up-btn:active{transform:scale(.97)}
.btn-primary:active{transform:translateY(1px) scale(.97)}
#top .tma-how{transition:text-decoration-color .15s,opacity 160ms cubic-bezier(.23,1,.32,1)}
.up-faq .up-qa summary,.tg-team-btn{transition:opacity 160ms cubic-bezier(.23,1,.32,1)}
#top .tma-how:active,.up-faq .up-qa summary:active,.tg-team-btn:active{opacity:.7}
@media (prefers-reduced-motion:reduce){
  #top .tma-cta,#head .tma-navcta,.up-s .up-btn,#top .tma-how,.up-faq .up-qa summary,.tg-team-btn{transition:none}
  .btn-primary{transition:none!important}
  #top .tma-cta:active,#head .tma-navcta:active,.up-s .up-btn:active{transform:none;opacity:.85}
  .btn-primary:active{transform:translateY(1px);opacity:.85}
}
/* footer email + phone: 44px invisible hit area, no layout or look change */
.foot-copy a{position:relative}
.foot-copy a::after{content:"";position:absolute;left:0;right:0;top:50%;height:44px;margin-top:-22px}
