/* Home page sections. Uses tokens from site.css. */

/* ===== burdens ===== */
.burdens{border-top:1px solid var(--line)}
.burden{display:grid;grid-template-columns:minmax(200px,1fr) 1.4fr;gap:12px 48px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line);transition:opacity var(--d-base) var(--ease)}
.burden h3{font:600 clamp(30px,4vw,44px)/1 var(--sans);letter-spacing:-.035em;transition:color var(--d-base) var(--ease)}
.burden p{font-size:clamp(16px,1.4vw,18px);line-height:1.5;color:var(--ink-muted);max-width:44ch}
.burdens:hover .burden.in{opacity:.42}
.burdens .burden.in:hover{opacity:1}
.burden:hover h3{color:var(--signal)}
@media (max-width:760px){.burden{grid-template-columns:1fr}}

/* ===== orchestration ===== */
.orch{position:relative;margin-top:32px;aspect-ratio:1000/400;max-width:980px;margin-inline:auto}
.orch-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.orch-lines path{fill:none;stroke:var(--avus-blue);stroke-width:1.5;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;transition:stroke-dashoffset 420ms var(--ease),opacity var(--d-base) var(--ease)}
.orch.on .orch-lines path{stroke-dashoffset:0;opacity:.55;transition-delay:calc(var(--k,0) * 35ms + 60ms)}
.hub{position:absolute;left:50%;top:50%;width:80px;height:80px;margin:-40px 0 0 -40px;border-radius:22px;background:var(--abyss);display:grid;place-items:center;box-shadow:var(--shadow-3);opacity:0;transform:scale(.86);transition:opacity var(--d-gentle) var(--ease),transform var(--d-gentle) var(--ease-enter)}
.hub img{height:32px;width:auto}
.orch.on .hub{opacity:1;transform:none}
.tool{position:absolute;left:var(--x);top:var(--y);transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) rotate(var(--r));padding:11px 16px;border-radius:12px;background:#FFFFFF80;color:var(--ink-muted);font:500 14px/1 var(--sans);white-space:nowrap;box-shadow:inset 0 0 0 1px var(--line-strong);transition:transform 420ms var(--ease-enter),background var(--d-gentle) var(--ease),color var(--d-gentle) var(--ease),box-shadow var(--d-gentle) var(--ease)}
.tool::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ink-faint);margin-right:10px;vertical-align:1px;transition:background var(--d-gentle) var(--ease)}
.orch.on .tool{transform:translate(-50%,-50%);background:var(--paper);color:var(--ink);box-shadow:var(--shadow-1)}
.orch.on .tool::before{background:var(--avus-blue)}
.orch-cap{text-align:center;margin-top:28px;font:500 clamp(17px,1.7vw,20px)/1.4 var(--sans);color:var(--ink-2);min-height:28px}
.paper .seg{background:var(--mist)}
#connect .seg{display:flex;width:max-content;max-width:100%;margin:0 auto}
@media (max-width:860px){
  .orch{aspect-ratio:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}
  .orch-lines{display:none}
  .hub{position:static;margin:0;grid-column:1/-1;justify-self:center;order:-1;width:72px;height:72px;border-radius:20px}
  .hub img{height:30px}
  .tool{position:static;transform:none!important;white-space:normal;text-align:left}
}

/* ===== proof trail slab ===== */
.slab{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,7vw,120px);align-items:center;background:var(--abyss);color:var(--on-abyss);border-radius:var(--r-xl);padding:clamp(28px,4.5vw,64px);position:relative;overflow:hidden;isolation:isolate}
@media (max-width:900px){.slab{grid-template-columns:1fr}}
.slab-copy{display:grid;gap:24px;justify-items:start}
.slab .h-display{color:#fff}
.slab .lead{color:#B4C0D4}
.tlink-light{color:#fff}
.trail{display:grid;gap:26px}
.trail-why{font:400 clamp(28px,3vw,38px)/1.12 var(--serif);color:#fff;letter-spacing:-.01em;text-wrap:balance}
.tsteps{display:grid}
.tstep{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:baseline;padding:16px 0;border-top:1px solid #FFFFFF1F;opacity:0;transform:translateY(8px);transition:opacity var(--d-gentle) var(--ease-enter),transform var(--d-gentle) var(--ease-enter)}
.tstep.in{opacity:1;transform:none}
.tstep p{font-size:16px;line-height:24px;color:#DCE6F8}
.who{display:inline-flex;align-items:center;gap:10px;font:600 15px/1 var(--sans);color:#fff}
.who::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.who.ag{color:#6FA0FF}.who.en{color:#EEF2F8}.who.hu{color:#4FD1A0}
@media (max-width:520px){.tstep{grid-template-columns:1fr;gap:8px}}

/* ===== rule analyzer ===== */
.ctypes{display:grid;gap:8px;margin-top:12px}
.ctype{display:grid;gap:0;text-align:left;padding:11px 16px;border-radius:var(--r-md);box-shadow:inset 0 0 0 1px var(--line);transition:background var(--d-quick) var(--ease),box-shadow var(--d-quick) var(--ease)}
.ctype b{font:600 16px/22px var(--sans);letter-spacing:-.005em}
.ctype span{font-size:14px;line-height:20px;color:var(--ink-muted)}
.ctype:hover{background:var(--paper)}
.ctype[aria-selected="true"]{background:var(--paper);box-shadow:var(--shadow-2)}
.composer{padding:clamp(22px,3vw,36px);gap:26px;align-content:start}
.c-field{min-height:128px;padding:0;background:none;box-shadow:none;font:500 clamp(18px,1.7vw,22px)/1.55 var(--sans);letter-spacing:-.015em;color:var(--ink)}
.hl{--c:#0059E0;--t:#E3ECFF;padding:2px 4px;margin:0 -4px;border-radius:6px;-webkit-box-decoration-break:clone;box-decoration-break:clone;background-image:linear-gradient(var(--t),var(--t)),linear-gradient(var(--c),var(--c));background-repeat:no-repeat;background-position:0 0,0 100%;background-size:0% 100%,0% 2px;transition:background-size .5s var(--ease)}
.hl.on{background-size:100% 100%,100% 2px}
.hl[data-c="Action"]{--c:#0059E0;--t:#D6E4FF}
.hl[data-c="Customer"]{--c:#23395E;--t:#CFD8E8}
.hl[data-c="Threshold"]{--c:#0F7F82;--t:#C6EDEC}
.hl[data-c="Counterparty"]{--c:#8A6A4A;--t:#F0DFC6}
.hl[data-c="Condition"]{--c:#0B7FB3;--t:#CDE7F8}
.c-legend{display:flex;flex-wrap:wrap;gap:10px 22px;min-height:24px;padding-top:22px;border-top:1px solid var(--line)}
.lg{display:inline-flex;align-items:center;gap:9px;font:500 15px/1 var(--sans);color:var(--ink-2);opacity:0;transform:translateY(4px);transition:opacity var(--d-base) var(--ease-enter),transform var(--d-base) var(--ease-enter)}
.lg.in{opacity:1;transform:none}
.lg i{width:10px;height:10px;border-radius:50%;background:var(--c)}
.lg[data-c="Action"]{--c:#0059E0}.lg[data-c="Customer"]{--c:#23395E}.lg[data-c="Threshold"]{--c:#0F7F82}.lg[data-c="Counterparty"]{--c:#8A6A4A}.lg[data-c="Condition"]{--c:#0B7FB3}

/* ===== regulation cards ===== */
.regs4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media (max-width:1040px){.regs4{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.regs4{grid-template-columns:1fr}}
.reg{position:relative;display:flex;flex-direction:column;justify-content:flex-start;gap:36px;min-height:290px;padding:24px;border-radius:var(--r-lg);background:#FFFFFFA6;box-shadow:inset 0 0 0 1px var(--line);overflow:hidden;transition:transform var(--d-base) var(--ease),box-shadow var(--d-base) var(--ease),background var(--d-base) var(--ease)}
.reg::before{content:"";position:absolute;inset:0;background:radial-gradient(360px circle at var(--mx,50%) var(--my,0%),#0266FC1A,transparent 65%);opacity:0;transition:opacity var(--d-gentle) var(--ease);pointer-events:none}
.reg::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:radial-gradient(260px circle at var(--mx,50%) var(--my,0%),#0266FC,transparent 70%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity var(--d-gentle) var(--ease);pointer-events:none}
.reg:hover{transform:translateY(-4px);background:var(--paper);box-shadow:var(--shadow-3)}
.reg:hover::before,.reg:hover::after{opacity:1}
.reg-b{display:grid;gap:8px;position:relative}
.reg-b h3{font:600 clamp(28px,2.8vw,36px)/1 var(--sans);letter-spacing:-.035em}
.reg-n{font:500 15px/20px var(--sans);color:var(--signal)}
.reg-b p{color:var(--ink-muted);font-size:15px;line-height:22px;margin-top:6px}
.reg-go{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font:600 15px/1 var(--sans);color:var(--signal);opacity:0;transform:translateY(6px);transition:opacity var(--d-base) var(--ease),transform var(--d-base) var(--ease-enter)}
.reg:hover .reg-go,.reg:focus-visible .reg-go{opacity:1;transform:none}
@media (hover:none){.reg-go{opacity:1;transform:none}}
.viz{position:relative;height:72px;width:140px}
.viz i{display:block;position:absolute;transition:all var(--d-gentle) var(--ease-enter)}
.v-mica i{left:0;right:0;height:38px;border-radius:10px;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line-strong)}
.v-mica i:nth-child(1){top:0;opacity:.45;transform:scale(.88)}
.v-mica i:nth-child(2){top:14px;opacity:.7;transform:scale(.94)}
.v-mica i:nth-child(3){top:28px}
.reg:hover .v-mica i:nth-child(1){top:-6px;transform:none;opacity:1}
.reg:hover .v-mica i:nth-child(2){top:14px;transform:none;opacity:1}
.reg:hover .v-mica i:nth-child(3){top:34px;background:var(--signal-soft);box-shadow:inset 0 0 0 1px var(--avus-blue)}
.v-amlr{display:flex;align-items:center;gap:12px}
.v-amlr i{position:static;width:20px;height:20px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--line-strong);background:transparent;transition:all var(--d-base) var(--ease)}
.reg:hover .v-amlr i{background:var(--avus-blue);box-shadow:none;transition-delay:calc(var(--n,0) * 90ms)}
.v-amlr i:nth-child(1){--n:0}.v-amlr i:nth-child(2){--n:1}.v-amlr i:nth-child(3){--n:2}.v-amlr i:nth-child(4){--n:3}.v-amlr i:nth-child(5){--n:4}
.v-tr i.a,.v-tr i.b{top:28px;width:16px;height:16px;border-radius:50%;background:var(--paper);box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.v-tr i.a{left:0}.v-tr i.b{right:0;transition:all var(--d-base) var(--ease) .7s}
.reg:hover .v-tr i.b{background:var(--avus-blue);box-shadow:none}
.v-tr::before{content:"";position:absolute;left:16px;right:16px;top:35px;height:1.5px;background:repeating-linear-gradient(90deg,var(--line-strong) 0 4px,transparent 4px 8px)}
.v-tr i.p{left:16px;top:29px;width:14px;height:14px;border-radius:4px;background:var(--avus-blue);opacity:0;transition:left .8s var(--ease),opacity var(--d-base) var(--ease)}
.reg:hover .v-tr i.p{left:calc(100% - 30px);opacity:1}
.v-dora{display:flex;align-items:flex-end;gap:8px}
.v-dora i{position:static;width:14px;border-radius:5px;background:var(--line-strong);height:calc(var(--h) * 1px)}
.v-dora i:nth-child(1){--h:26}.v-dora i:nth-child(2){--h:36;--n:1}.v-dora i:nth-child(3){--h:30;--n:2}.v-dora i:nth-child(4){--h:42;--n:3}.v-dora i:nth-child(5){--h:32;--n:4}.v-dora i:nth-child(6){--h:38;--n:5}
.reg:hover .v-dora i{background:var(--avus-blue);height:calc(var(--h) * 1px + 22px);transition-delay:calc(var(--n,0) * 50ms)}

/* ===== role boxes ===== */
.xps{display:flex;gap:12px;height:clamp(450px,62vh,480px)}
.xp{position:relative;flex:1 1 0;min-width:0;padding:24px 26px;border-radius:var(--r-xl);background:var(--paper);box-shadow:inset 0 0 0 1px var(--line);overflow:hidden;cursor:pointer;color:var(--ink);transition:flex-grow .6s var(--ease),background var(--d-gentle) var(--ease),box-shadow var(--d-gentle) var(--ease)}
.xp:not(.on):hover{background:var(--mist)}
.xp.on{flex-grow:6.5;background:var(--avus-blue);box-shadow:0 24px 48px -20px #0266FC80;cursor:default;color:#fff}
.vt{position:absolute;left:24px;bottom:24px;writing-mode:vertical-rl;transform:rotate(180deg);font:600 22px/1 var(--sans);letter-spacing:-.02em;color:var(--ink-muted);white-space:nowrap;transition:opacity var(--d-base) var(--ease),color var(--d-base) var(--ease)}
.xp:not(.on):hover .vt{color:var(--ink)}
.xp.on .vt{opacity:0}
.xp::before{content:"+";position:absolute;left:26px;top:20px;font:400 26px/1 var(--sans);color:var(--ink-faint);transition:opacity var(--d-base) var(--ease)}
.xp.on::before{opacity:0}
.ht{position:relative;font:600 clamp(24px,2.4vw,30px)/1.1 var(--sans);letter-spacing:-.03em;white-space:nowrap;opacity:0;transform:translateY(8px);transition:opacity var(--d-base) var(--ease),transform var(--d-base) var(--ease)}
.xp.on .ht{opacity:1;transform:none;transition:opacity var(--d-gentle) var(--ease-enter) .25s,transform var(--d-gentle) var(--ease-enter) .25s}
.xp-b{display:grid;gap:12px;align-content:start;margin-top:16px;width:min(520px,100%)}
.xp-b>*,.gi{opacity:0;transform:translateY(12px);transition:opacity var(--d-base) var(--ease-exit),transform var(--d-base) var(--ease-exit)}
.xp.on .xp-b>*,.xp.on .gi{opacity:1;transform:none;transition:opacity var(--d-gentle) var(--ease-enter),transform var(--d-gentle) var(--ease-enter);transition-delay:calc(.3s + var(--s,0) * 80ms)}
.xp-b>:nth-child(1){--s:0}.xp-b>:nth-child(2){--s:1}.xp-b>:nth-child(3){--s:2}.xp-b>:nth-child(4){--s:12}
.xp .carry{color:#EAF1FF;font-size:15px;line-height:22px}
.xp .get{font:600 clamp(20px,1.9vw,25px)/1.2 var(--sans);letter-spacing:-.025em;color:#fff}
.xp .tlink{color:#fff}
.xp .who2{display:flex;align-items:center;gap:8px;font:600 13px/16px var(--sans);color:var(--signal)}

/* card graphics: white and dark surfaces on the blue */
.gx{display:grid;gap:12px;padding:16px;border-radius:var(--r-lg);background:var(--paper);color:var(--ink);box-shadow:0 12px 30px -12px #01182F66}
.gx.dark{background:var(--abyss);color:#DCE6F8;gap:0;padding:0;overflow:hidden}
.gx-q{display:grid;gap:4px;padding:2px 2px 12px;border-bottom:1px solid var(--line)}
.gx-tag{font:600 12px/16px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}
.gx-q p{font:600 16px/22px var(--sans);letter-spacing:-.01em}
.gx-a{display:grid;gap:8px;padding:2px}
.gx-a p{font-size:15px;line-height:22px;color:var(--ink-2)}
.gx-checks{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
.gx-checks li{display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 12px 0 8px;border-radius:var(--r-pill);background:var(--signal-soft);color:var(--signal);font:600 13px/1 var(--sans)}
.gx-checks li::before{content:"";width:8px;height:5px;margin:0 2px 2px 3px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg)}
.q-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px 12px;border-radius:var(--r-md)}
.q-row b{font:600 14px/20px var(--sans);letter-spacing:-.005em}
.q-row .sla{font:450 12px/16px var(--mono);color:var(--ink-muted)}
.q-row.sel{background:var(--signal-soft)}
.q-why{margin:-6px 0 0 12px;padding:0 12px 6px 0;font-size:14px;line-height:20px;color:var(--ink-2)}
.cw-h{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid #FFFFFF1F;font:450 13px/1 var(--mono);color:#B4C0D4}
.cw-m{color:#6FA0FF;font-weight:600}
.cw-ok{margin-left:auto;padding:4px 8px;border-radius:var(--r-xs);background:#4FD1A01F;color:#4FD1A0;font-weight:500}
.cw{margin:0;padding:14px 16px 16px;font:450 13px/22px var(--mono)}
.cw .ln{display:block;white-space:pre}
.cw i{font-style:normal;color:#93A3BD}
.cw b{font-weight:500;color:#6FA0FF}
.cw u{text-decoration:none;color:#4FD1A0}
.chart{display:block;width:100%;height:auto;max-height:150px}
.chart .cl{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .3s var(--ease-exit)}
.xp.on .chart .cl{stroke-dashoffset:0;transition:stroke-dashoffset 1.2s var(--ease) .7s}
.chart .cd,.chart .ct{opacity:0;transition:opacity var(--d-base) var(--ease-exit)}
.xp.on .chart .cd,.xp.on .chart .ct{opacity:1;transition:opacity var(--d-gentle) var(--ease) 1.6s}
@media (max-width:900px){
  .xps{flex-direction:column;height:auto}
  .xp,.xp.on{flex:none}
  .xp::before,.vt{display:none}
  .ht{opacity:1;transform:none;margin-bottom:0}
  .xp .xp-b{display:none}
  .xp.on .xp-b{display:grid}
}

/* shared bits used inside the tab demos */
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;height:28px;padding:0 10px;border-radius:var(--r-xs);background:var(--mist);box-shadow:inset 0 0 0 1px var(--line);font:500 13px/1 var(--sans);color:var(--ink-2)}
.bubble .who::before{display:none}
.bubble .who{color:var(--signal);font:600 12px/16px var(--sans)}
@media (min-width:601px){.reg-n{min-height:40px}}
