/* Homepage spotlight (2026-10-19 v4): one simulated query as science, bright and precise. Same place in the hero as the globe it replaces. */
@property --sqa{syntax:'<angle>';inherits:false;initial-value:0deg}
.globe-stage.spot.sqs{height:clamp(500px,46vw,640px);cursor:auto;touch-action:auto;user-select:auto}
.sqs .sq{position:absolute;inset:2% 1% 3% 3%;border-radius:28px;overflow:hidden;padding:22px 26px;color:#202124;font-family:var(--sans,system-ui,sans-serif);isolation:isolate;
  background:radial-gradient(60% 40% at 0% 0%,rgba(66,133,244,.07),transparent 60%),radial-gradient(50% 40% at 100% 100%,rgba(217,101,112,.06),transparent 62%),#fff;
  box-shadow:0 30px 80px -40px rgba(30,40,90,.38),0 2px 6px -2px rgba(60,64,67,.12),inset 0 0 0 1px rgba(60,64,67,.08)}
.sqs .sq::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.55;background-image:linear-gradient(rgba(60,64,67,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(60,64,67,.045) 1px,transparent 1px);background-size:28px 28px;mask-image:radial-gradient(80% 70% at 50% 40%,#000 30%,transparent 80%)}
.sqs .sq-top{display:flex;align-items:center;justify-content:space-between}
.sqs .sq-kick{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 10px;border-radius:999px;font-size:12.5px;color:#3C4043;background:#F1F3F4}
.sqs .sq-kick i{width:7px;height:7px;border-radius:50%;background:#34A853;box-shadow:0 0 0 3px rgba(52,168,83,.18)}
.sqs .sq-snd{width:34px;height:34px;border-radius:50%;border:0;display:grid;place-items:center;cursor:pointer;color:#5F6368;background:#F1F3F4;transition:background .2s,color .2s}
.sqs .sq-snd:hover{background:#E8EAED}.sqs .sq-snd svg{width:16px;height:16px}.sqs .sq-snd.on{color:#1A73E8;background:#E8F0FE}
.sqs .sq-bar{position:relative;margin-top:16px;height:56px;border-radius:28px;display:flex;align-items:center;gap:12px;padding:0 22px;background:#fff;font-size:clamp(15px,1.35vw,18px);color:#202124;
  box-shadow:0 1px 3px rgba(60,64,67,.14),0 10px 28px -14px rgba(60,64,67,.32)}
.sqs .sq-bar::before{content:"";position:absolute;inset:-2px;border-radius:inherit;padding:2px;pointer-events:none;opacity:0;transition:opacity .35s;
  background:conic-gradient(from var(--sqa),#4285F4,#9B72CB,#D96570,#F2A60C,#34A853,#4285F4);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.sqs .sq-bar.think::before{opacity:1;animation:sqSpin 1.1s linear infinite}
@keyframes sqSpin{to{--sqa:360deg}}
.sqs .sq-bar>svg{flex:none;width:22px;height:22px}
.sqs .sq-qt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sqs .sq-qt mark{background:#FCE8E6;color:#C5221F;border-radius:6px;padding:0 3px;transition:background .3s,color .3s}
.sqs .sq-qt mark.new{background:#E6F4EA;color:#137333;animation:sqPop .5s cubic-bezier(.2,.9,.25,1.3)}
@keyframes sqPop{0%{transform:scale(.6);opacity:0}100%{transform:none;opacity:1}}
.sqs .sq-qt mark{display:inline-block}
.sqs .sq-caret{width:2px;height:1.2em;background:#1A73E8;border-radius:1px;animation:sqCaret 1s steps(1) infinite}
@keyframes sqCaret{50%{opacity:0}}
.sqs .sq-think{height:20px;margin:9px 0 0 24px;font-size:13px;opacity:0;transition:opacity .25s;
  background:linear-gradient(90deg,#5F6368 35%,#1A73E8 50%,#5F6368 65%) 0 0/220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent}
.sqs .sq-think.on{opacity:1;animation:sqShim 1.1s linear infinite}
@keyframes sqShim{to{background-position:-220% 0}}
.sqs .sq-spec{display:block;margin-top:6px;overflow:visible;opacity:0;transform:translateY(10px);transition:opacity .45s ease,transform .6s cubic-bezier(.16,1,.3,1)}
.sqs .sq.s-spec .sq-spec{opacity:1;transform:none}
.sqs .sq-cov{fill:rgba(251,188,4,.09)}.sqs .sq-covt{font-size:11px;fill:#B06000;font-weight:600}
.sqs .sq-grid{stroke:#ECEEF2;stroke-width:1}.sqs .sq-tick{font-size:10.5px;fill:#80868B;text-anchor:middle}.sqs .sq-unit{text-anchor:end;fill:#5F6368;font-weight:600}
.sqs .sq-ln{font-size:12.5px;fill:#3C4043;font-weight:600}.sqs .sq-dn{fill:#6A41F0}
.sqs .sq-db{transition:opacity .35s}.sqs .sq-db.dl{fill:url(#sqdev)}.sqs .sq-db.ul{fill:#7C4DFF;opacity:.35}.sqs .sq-db.du{stroke:#7C4DFF;stroke-opacity:.35;stroke-width:1}
.sqs .sq-db.bl,.sqs .sq-nb.bl{font-size:9.5px;text-anchor:middle;font-weight:600}.sqs .sq-db.bl{fill:#6A41F0}
.sqs .sq-dev{animation:sqIn .5s ease both}
@keyframes sqIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.sqs .sq-nb{transition:fill .25s,stroke .25s,opacity .25s}.sqs .sq-nb.dl{fill:#DADCE0}.sqs .sq-nb.ul{fill:#DADCE0;opacity:.7}.sqs .sq-nb.du{stroke:#DADCE0;stroke-width:1}.sqs .sq-nb.bl{fill:#80868B}
.sqs .sq-nb.dl.hit{fill:#1E8E3E;filter:drop-shadow(0 0 4px rgba(52,168,83,.6))}.sqs .sq-nb.ul.hit{fill:#34A853;opacity:.55}.sqs .sq-nb.du.hit{stroke:#34A853}.sqs .sq-nb.bl.hit{fill:#137333}
.sqs .sq-nb.dl.miss{fill:rgba(234,67,53,.07);stroke:#EA4335;stroke-width:1.2;stroke-dasharray:3 2}.sqs .sq-nb.ul.miss{fill:rgba(234,67,53,.05);stroke:#EA4335;stroke-opacity:.5;stroke-dasharray:2 2}.sqs .sq-nb.du.miss{stroke:#F28B82;stroke-dasharray:2 3}.sqs .sq-nb.bl.miss{fill:#C5221F}
.sqs .sq-beam{stroke:rgba(52,168,83,.5);stroke-width:1.4;stroke-dasharray:60;stroke-dashoffset:60;animation:sqBeam .45s ease-out forwards}
@keyframes sqBeam{to{stroke-dashoffset:0}}
.sqs .sq-pill{opacity:0;transition:opacity .35s}.sqs .sq-pill.on{opacity:1}.sqs .sq-pill rect{fill:#F1F3F4}.sqs .sq-pill text{font-size:11.5px;font-weight:700;fill:#5F6368;text-anchor:middle}
.sqs .sq-pill.good rect{fill:#E6F4EA}.sqs .sq-pill.good text{fill:#137333}.sqs .sq-pill.no rect{fill:#FCE8E6}.sqs .sq-pill.no text{fill:#C5221F}.sqs .sq-pill.limited rect{fill:#FEF7E0}.sqs .sq-pill.limited text{fill:#B06000}
.sqs .sq-sum{margin-top:10px;display:flex;align-items:center;gap:16px;padding:12px 18px;border-radius:18px;background:#F8F9FA;cursor:pointer;opacity:0;transform:translateY(10px);transition:opacity .45s,transform .6s cubic-bezier(.16,1,.3,1)}
.sqs .sq-sum.on{opacity:1;transform:none}
.sqs .sq-n{font:700 clamp(40px,4.2vw,60px)/1 var(--sans,system-ui,sans-serif);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.sqs .sq-sum.good .sq-n{color:#1E8E3E}.sqs .sq-sum.no .sq-n{color:#D93025}.sqs .sq-sum.part .sq-n{color:#E37400}
.sqs .sq-nl{display:block;font-size:14px;font-weight:600;color:#3C4043}.sqs .sq-ins{display:block;font-size:13.5px;color:#202124;margin-top:2px}.sqs .sq-ev{display:block;font-size:11.5px;color:#80868B;margin-top:3px}
.sqs .sq-punch,.sqs .sq-end{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:0 9%;text-align:center;
  background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;transition:opacity .5s ease}
.sqs .sq.s-punch .sq-punch,.sqs .sq.s-end .sq-end{opacity:1;pointer-events:auto}
.sqs .sq-punch p,.sqs .sq-end p{margin:0}
.sqs .p1,.sqs .e1{font:700 clamp(30px,3.3vw,48px)/1.12 var(--sans,system-ui,sans-serif);letter-spacing:-.02em;color:#202124;transform:translateY(14px);opacity:0;transition:transform .8s cubic-bezier(.16,1,.3,1),opacity .6s}
.sqs .p2,.sqs .e2{font:700 clamp(30px,3.3vw,48px)/1.12 var(--sans,system-ui,sans-serif);letter-spacing:-.02em;background:linear-gradient(90deg,#4285F4,#9B72CB 50%,#D96570);-webkit-background-clip:text;background-clip:text;color:transparent;transform:translateY(14px);opacity:0;transition:transform .8s cubic-bezier(.16,1,.3,1) .12s,opacity .6s .12s}
.sqs .e2{font-size:clamp(18px,1.8vw,26px);font-weight:600}
.sqs .sq.s-punch .p1,.sqs .sq.s-punch .p2,.sqs .sq.s-end .e1,.sqs .sq.s-end .e2{transform:none;opacity:1}
.sqs .sq-cta{margin-top:12px;display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border-radius:999px;color:#fff!important;text-decoration:none;font-weight:600;font-size:15.5px;
  background:linear-gradient(120deg,#7A3CF0 0%,#4E52F2 48%,#1D64E0 100%);box-shadow:0 14px 30px -14px rgba(66,110,245,.85);transition:transform .2s}
.sqs .sq-cta:hover{transform:translateY(-1px)}.sqs .sq-cta small{font-weight:500;font-size:12px;opacity:.85;padding-left:10px;border-left:1px solid rgba(255,255,255,.35)}
.sqs .sq-cta::after{content:"→"}
.sqs .e3{font-size:12.5px;color:#5F6368;margin-top:6px!important}
.sqs .sq-snd:focus-visible,.sqs .sq-cta:focus-visible{outline:2px solid #1A73E8;outline-offset:2px}
.sqs .sq-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){.sqs *{transition:none!important;animation:none!important}}
@media (max-width:760px){.globe-stage.spot.sqs{height:auto;aspect-ratio:auto;min-height:520px;margin-top:22px}.sqs .sq{inset:0;padding:16px}
  .sqs .sq-bar{height:48px;padding:0 16px;font-size:14.5px}.sqs .sq-ln{font-size:11px}.sqs .sq-sum{padding:10px 14px;gap:12px}.sqs .sq-ins{font-size:12.5px}}
html[data-theme=dark] .sqs .sq{filter:none}
/* the four figures, now a calm proof line under the buttons */
.hero .proof{list-style:none;margin:30px 0 0;padding:0;display:flex;flex-wrap:nowrap;gap:0}
.hero .proof li{display:flex;flex-direction:column;gap:4px;padding:2px clamp(10px,1.2vw,20px) 2px 0;margin-right:clamp(10px,1.2vw,20px);border-right:1px solid var(--hair,#E3E6EB);min-width:0}
.hero .proof li:last-child{border-right:0;margin-right:0}
.hero .proof b{white-space:nowrap;font:600 clamp(21px,1.85vw,29px)/1 var(--serif,serif);font-variant-numeric:tabular-nums;background:linear-gradient(120deg,#7A3CF0,#2F6BFF);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .proof span{font-size:12.5px;line-height:1.35;color:var(--graphite,#5A5F6A)}
@media (max-width:640px){.hero .proof{margin-top:20px}.hero .proof li{padding-right:9px;margin-right:9px}.hero .proof b{font-size:18px}.hero .proof span{font-size:10.5px}}

/* v4.1 (2026-10-19): the broken axis, a named device lane, a brighter scan, a bounce on every hit */
.sqs .sq-axis{stroke:#C8CCD3;stroke-width:1}.sqs .sq-brk{stroke:#9AA0A6;stroke-width:1.4;fill:none}
.sqs .sq-tick{font-size:11px}.sqs .sq-ln{font-size:13px}.sqs .sq-db.bl,.sqs .sq-nb.bl{font-size:11px}
.sqs .sq-dm{font-size:12px;font-weight:600;fill:#3C4043}.sqs .sq-sfx{font-size:12px;font-weight:800}.sqs .sq-sfx.no{fill:#D93025}.sqs .sq-sfx.ok{fill:#1E8E3E}
.sqs .sq-nb.dl.hit,.sqs .sq-db.dl{transform-box:fill-box;transform-origin:50% 50%}
.sqs .sq-nb.dl.hit{animation:sqHit .45s cubic-bezier(.2,.9,.3,1.4)}
@keyframes sqHit{0%{transform:scaleY(.4)}60%{transform:scaleY(1.35)}100%{transform:none}}
.sqs .sq-nb.dl.miss{animation:sqMiss .35s ease}
@keyframes sqMiss{0%,100%{transform:none}40%{transform:translateX(-2px)}70%{transform:translateX(2px)}}
.sqs .sq-db.dl{animation:sqGrow .5s cubic-bezier(.16,1,.3,1) both}
@keyframes sqGrow{from{transform:scaleX(0)}to{transform:none}}
@media (max-width:760px){.sqs .sq-ln{font-size:11px}.sqs .sq-db.bl,.sqs .sq-nb.bl{font-size:9.5px}.sqs .sq-tick{font-size:9.5px}.sqs .sq-dm,.sqs .sq-sfx{font-size:10.5px}}
/* v5 (2026-10-19): an elegant, aligned layout.
   Tall screens stack the hero: the stage sits under the text on the page's own column (1144px, the edges of the nav and the text).
   Inside, a centred composition: the query pill centred like a search box, the chart on the content width, the result as a centred capsule. */
header.hero .globe-stage.spot.sqs{width:calc(100% - 56px)!important;max-width:1144px!important;height:610px!important;margin:44px auto 8px!important;left:auto!important;right:auto!important;transform:none!important}
@media (min-width:1100px) and (max-height:900px){header.hero .globe-stage.spot.sqs{width:auto!important;max-width:none!important;height:min(calc(100svh - 170px),620px)!important;margin:0!important}}
@media (max-width:760px){header.hero .globe-stage.spot.sqs{width:calc(100% - 32px)!important;height:560px!important;margin:26px auto 0!important}}
.sqs .sq{inset:0;padding:26px 36px 26px}
@media (min-width:1100px) and (max-height:900px){.sqs .sq{padding:22px 26px}}
@media (max-width:760px){.sqs .sq{padding:16px}}
.sqs .sq-bar{max-width:720px;margin:18px auto 0}
.sqs .sq-think{text-align:center;margin:10px auto 0}
.sqs .sq-spec{margin:12px auto 0}
.sqs .sq-sum{width:fit-content;max-width:100%;margin:12px auto 0;padding:12px 22px 12px 24px;gap:18px;box-shadow:inset 0 0 0 1px rgba(60,64,67,.06)}
.sqs .sq-go{align-self:stretch;display:flex;align-items:center;font-size:13px;font-weight:600;color:#1A73E8;white-space:nowrap;margin-left:4px;padding-left:18px;border-left:1px solid #E3E5E8}
.sqs .sq-sum:hover .sq-go{text-decoration:underline}
@media (max-width:760px){.sqs .sq-go{display:none}}
/* calmer colour: a fainter coverage zone, lighter red for the bands a device lacks */
.sqs .sq-cov{fill:rgba(251,188,4,.055)}
.sqs .sq-nb.dl.miss{fill:rgba(234,67,53,.045);stroke:rgba(234,67,53,.72);stroke-width:1;stroke-dasharray:3 3}
.sqs .sq-nb.ul.miss{fill:rgba(234,67,53,.12);stroke:none}
.sqs .sq-nb.du.miss{stroke:rgba(242,139,130,.45);stroke-dasharray:none}
