/* Shared semantic colours: changing the site's tone also changes these widgets. */
.gl-brand-widget{--brand-chart-0:var(--accent);--brand-chart-1:var(--fg);--brand-chart-2:var(--muted);--brand-chart-3:var(--line);--brand-chart-4:var(--accent-soft);--brand-chart-5:var(--surface-2);color:var(--fg);overflow:clip}
.gl-brand-widget [hidden]{display:none!important}
.gl-brand-widget .gl-brand-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.gl-brand-widget .gl-brand-card{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;position:relative}
.gl-brand-widget .gl-brand-photo{margin:0;aspect-ratio:4/3;overflow:hidden;background:var(--surface-2)}
.gl-brand-widget .gl-brand-photo img{display:block;width:100%;height:100%;object-fit:cover}
.gl-brand-widget .gl-brand-copy{padding:24px;overflow-wrap:anywhere}
.gl-brand-widget h3{margin:10px 0;font-size:clamp(20px,2vw,26px);line-height:1.35;color:var(--fg-strong,var(--fg))}
.gl-brand-widget .gl-brand-body{color:var(--muted2,var(--fg));line-height:1.75;margin:12px 0}
.gl-brand-widget .gl-brand-badge{display:inline-block;font-size:12px;font-weight:750;letter-spacing:.04em;padding:5px 10px;border-radius:30px;background:var(--accent-soft);color:var(--fg)}
.gl-brand-widget .gl-brand-number{display:block;color:var(--fg);font-size:22px;font-weight:750;font-variant-numeric:tabular-nums;margin-top:12px}
.gl-brand-widget .gl-brand-sub{color:var(--fg);font-size:15px;font-weight:650;margin:8px 0}
.gl-brand-widget .gl-brand-link{display:inline-flex;gap:16px;align-items:center;padding:10px 0;color:var(--fg);font-weight:750;text-decoration:underline;text-underline-offset:5px}
.gl-brand-widget :is(button,input,a):focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.gl-brand-tools{display:flex;align-items:end;flex-wrap:wrap;gap:16px;margin-bottom:28px}
.gl-brand-search{display:grid;gap:8px;font-size:13px;font-weight:650;min-width:180px;flex:1}
.gl-brand-search input{width:100%;min-width:0;background:var(--surface);border:1px solid var(--muted);color:var(--fg);font:inherit;font-size:16px;min-height:44px;padding:10px 14px;border-radius:8px}
.gl-brand-filters,.gl-brand-views{display:flex;flex-wrap:wrap;gap:6px}
.gl-brand-tools button{min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--fg);font:inherit;font-size:14px;cursor:pointer}
.gl-brand-tools button[aria-pressed=true]{background:var(--accent);color:var(--on-accent,#fff);border-color:var(--accent);font-weight:750;text-decoration:underline;text-underline-offset:4px}
.gl-brand-tools output{font-size:13px;min-width:55px;padding-bottom:12px;color:var(--fg)}
.why.gl-t-catalog[data-brand-layout=list] .gl-brand-cards{grid-template-columns:1fr}
.why.gl-t-catalog[data-brand-layout=list] .gl-brand-card{display:grid;grid-template-columns:minmax(100px,24%) 1fr}
.why.gl-t-catalog[data-brand-layout=list] .gl-brand-photo{height:100%;aspect-ratio:auto}
.why.gl-t-catalog[data-brand-layout=list] .gl-brand-card:not(:has(.gl-brand-photo)){grid-template-columns:1fr}
.why.gl-t-menu .gl-brand-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
.why.gl-t-menu .gl-brand-card{display:flex;align-items:center;gap:18px;padding:24px 0;border-radius:0;border:0;border-bottom:1px solid var(--line);background:transparent}
.why.gl-t-menu .gl-brand-photo{flex:0 0 100px;width:100px;height:100px;aspect-ratio:1;border-radius:50%}
.why.gl-t-menu .gl-brand-copy{padding:0;flex:1}
.why.gl-t-menu .gl-brand-number{float:right;margin:0 0 8px 12px;font-size:16px}
.why.gl-t-menu h3{font-size:22px;margin-top:5px}
.why.gl-t-agenda .gl-brand-cards{grid-template-columns:1fr;gap:0}
.why.gl-t-agenda .gl-brand-card{border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}
.why.gl-t-agenda .gl-brand-copy{padding:28px 0 28px 150px;min-height:120px}
.why.gl-t-agenda .gl-brand-number{position:absolute;left:0;top:28px;margin:0;font-size:28px}
.why.gl-t-agenda .gl-brand-photo{float:right;width:160px;margin:24px 0 24px 24px;border-radius:12px}
.why.gl-t-profile .gl-brand-photo{aspect-ratio:1;max-width:200px;border-radius:50%;margin:28px auto 0}
.why.gl-t-profile .gl-brand-copy{text-align:center}
.why.gl-t-polaroid .gl-brand-cards{gap:36px;padding:18px 6px}
.why.gl-t-polaroid .gl-brand-card{padding:12px;border-radius:3px;transform:rotate(-2deg);box-shadow:0 8px 16px #0000000b}
.why.gl-t-polaroid .gl-brand-card:nth-child(even){transform:rotate(2deg);margin-top:28px}
.why.gl-t-polaroid .gl-brand-copy{padding:12px}
.gl-brand-chart-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:48px;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:36px}
.gl-brand-plot{min-width:0}
.gl-brand-plot svg{width:100%;height:auto;display:block;overflow:visible;color:var(--accent)}
.gl-brand-plot text{font:14px sans-serif;fill:var(--fg)}
.gl-brand-gridline,.gl-brand-radar-grid{stroke:var(--line);stroke-width:1;fill:none}
.gl-brand-trend{stroke:var(--accent);stroke-width:3;fill:none;stroke-linejoin:round}
.gl-brand-area,.gl-brand-radar-value{fill:var(--accent);fill-opacity:.14;stroke:var(--accent);stroke-width:2}
.gl-brand-plot circle{fill:var(--accent);stroke:var(--surface);stroke-width:2}
.gl-brand-plot circle[data-selected]{stroke:var(--fg);stroke-width:4;r:7}
.gl-brand-data{width:100%;border-collapse:collapse;color:var(--fg);font-size:14px;table-layout:fixed}
.gl-brand-data caption{text-align:left;caption-side:bottom;font-size:12px;line-height:1.6;padding-top:18px;color:var(--muted2,var(--fg))}
.gl-brand-data th,.gl-brand-data td{padding:12px 8px;border-bottom:1px solid var(--line);text-align:left;overflow-wrap:anywhere}
.gl-brand-data thead th{font-weight:600;font-size:12px;color:var(--muted2,var(--fg))}
.gl-brand-data td{font-variant-numeric:tabular-nums;text-align:right}
.gl-brand-data th:first-child{width:60%}
.gl-brand-data button{display:flex;align-items:center;gap:10px;background:none;border:0;color:inherit;font:inherit;text-align:left;padding:6px 0;min-height:44px;width:100%;cursor:pointer}
.gl-brand-data button:disabled{opacity:1;cursor:default}
.gl-brand-data tr:has([aria-pressed=true]){background:var(--accent-soft);outline:1px solid var(--accent);outline-offset:-1px}
.gl-brand-index{display:inline-grid;place-items:center;flex:0 0 24px;height:24px;border-radius:50%;border:2px solid var(--brand-color);font-size:12px;font-weight:750;color:var(--fg);background:var(--surface)}
.stats.gl-t-ring .gl-brand-ring{width:min(100%,280px);aspect-ratio:1;border-radius:50%;margin:auto;padding:22px}
.gl-brand-ring>div{width:100%;height:100%;border-radius:50%;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:14px;color:var(--fg)}
.gl-brand-ring span{font-size:36px;font-weight:750}
.stats.gl-t-progress .gl-brand-progresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.gl-brand-progress{position:relative;aspect-ratio:1;border-radius:50%;background:conic-gradient(var(--accent) var(--brand-percent),var(--line) 0);display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;isolation:isolate}
.gl-brand-progress:before{content:'';position:absolute;inset:9px;border-radius:50%;background:var(--surface);z-index:-1}
.gl-brand-progress strong{font-size:clamp(20px,3vw,32px)}
.gl-brand-progress[data-selected]{outline:3px solid var(--fg);outline-offset:4px}
.stats.gl-t-heatmap .gl-brand-heatmap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.gl-brand-heatmap>div{position:relative;aspect-ratio:1;border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow:hidden;display:grid;place-items:center}
.gl-brand-heat{position:absolute;inset:0;background:var(--accent);opacity:var(--brand-opacity)}
.gl-brand-heatmap b{position:relative;display:grid;place-items:center;border-radius:50%;width:32px;height:32px;background:var(--surface);color:var(--fg)}
.gl-brand-heatmap [data-selected],.gl-brand-funnel [data-selected]{outline:3px solid var(--fg);outline-offset:3px}
.stats.gl-t-funnel .gl-brand-funnel{display:grid;gap:8px}
.gl-brand-funnel>div{height:44px;position:relative;display:grid;place-items:center}
.gl-brand-funnel-fill{height:100%;position:absolute;background:var(--accent);border-radius:4px}
.gl-brand-funnel b{position:relative;background:var(--surface);color:var(--fg);border-radius:50%;width:26px;height:26px;text-align:center;line-height:26px;font-size:12px}
.stats.gl-t-radar .gl-brand-radar{max-height:360px}
.stats.gl-t-spark .gl-brand-plot{max-width:350px;margin:auto}
.stats.gl-t-line .gl-brand-line,.stats.gl-t-area .gl-brand-line{min-height:150px}
@media(max-width:900px){.gl-brand-widget .gl-brand-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.gl-brand-chart-layout{gap:24px;padding:24px}.why.gl-t-menu .gl-brand-cards{grid-template-columns:1fr}}
@media(max-width:600px){.gl-brand-widget .gl-brand-cards{grid-template-columns:1fr}.gl-brand-widget .gl-brand-copy{padding:20px}.gl-brand-tools{align-items:stretch}.gl-brand-search{flex-basis:100%}.gl-brand-views{margin-left:auto}.gl-brand-chart-layout{grid-template-columns:1fr;padding:20px;gap:24px}.gl-brand-data{font-size:14px}.why.gl-t-agenda .gl-brand-copy{padding:22px 0 22px 90px}.why.gl-t-agenda .gl-brand-number{font-size:20px;top:25px}.why.gl-t-agenda .gl-brand-photo{width:100px;margin:20px 0 20px 12px}.why.gl-t-menu .gl-brand-copy{padding:0}.why.gl-t-menu .gl-brand-photo{width:76px;height:76px;flex-basis:76px}.why.gl-t-menu .gl-brand-number{float:none}.why.gl-t-polaroid .gl-brand-card,.why.gl-t-polaroid .gl-brand-card:nth-child(even){transform:none;margin-top:0}.why.gl-t-catalog[data-brand-layout=list] .gl-brand-card{grid-template-columns:minmax(70px,28%) 1fr}.stats.gl-t-progress .gl-brand-progresses{max-width:320px;margin:auto}}
@media(prefers-reduced-motion:reduce){.gl-brand-widget *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

@media(max-width:600px){.gl-brand-plot text{font-size:22px}}
.gl-brand-chart-layout{position:relative}
.gl-brand-tooltip{position:absolute;z-index:3;max-width:calc(100% - 16px);padding:10px 14px;border:1px solid var(--line);border-radius:8px;box-shadow:0 5px 20px #0002;background:var(--fg);color:var(--bg);font-size:14px;line-height:1.5;pointer-events:none;overflow-wrap:anywhere}
.gl-brand-plot [data-brand-mark]{cursor:pointer}
.gl-brand-plot [data-hover]{outline:2px solid var(--accent);outline-offset:3px}
.gl-brand-plot circle[data-hover]{stroke:var(--fg);stroke-width:4;r:7}
[data-brand-chart-ready] .gl-brand-trend{stroke-dasharray:1;stroke-dashoffset:1}
[data-brand-chart-ready].is-chart-visible .gl-brand-trend{animation:brand-chart-line 1.2s ease forwards}
[data-brand-chart-ready].is-chart-visible :is(.gl-brand-area,.gl-brand-ring,.gl-brand-radar-value,.gl-brand-progress,.gl-brand-funnel-fill,.gl-brand-heat){animation:brand-chart-grow .8s ease both;transform-origin:center bottom}
@keyframes brand-chart-line{to{stroke-dashoffset:0}}@keyframes brand-chart-grow{from{opacity:0;transform:scaleY(.3)}to{opacity:1;transform:scaleY(1)}}
@media(prefers-reduced-motion:reduce){[data-brand-chart-ready] .gl-brand-trend{stroke-dashoffset:0;animation:none!important}[data-brand-chart-ready] *{animation:none!important}}
