/* SIVO site, October 2026: the footer, the product chooser on the home page,
   and the "built from real requests" section on the PlaceManager page.
   Loaded on every page after style.css. New class names only (sf-, sx-, px-),
   so nothing here can change an existing rule by accident. */
@font-face{font-family:"Geist";src:url("fonts/geist-sans-latin-700-normal.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Geist Mono";src:url("fonts/geist-mono-latin-500-normal.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}

/* Header: Last Orders gets its own colour so it reads as a second product */
.sivo-header .sivo-nav-lo a{color:#e3b341}
.sivo-header .sivo-nav-lo a:hover{color:#f0d48a}

/* Footer */
.sf{padding:80px 5vw 30px;background:#0a0c0f;color:#fff;font-family:"Figtree Variable",Figtree,Arial,sans-serif}
.sf-top{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:40px;max-width:1500px;margin:0 auto}
.sf .sivo-logo{font-size:40px}
.sf-line{margin:26px 0 8px;font-family:"Space Grotesk Variable","Space Grotesk",Arial,sans-serif;font-size:28px;font-weight:700;letter-spacing:-.04em;line-height:1.05}
.sf-sub{max-width:340px;margin:0 0 24px;color:#a9b5b1;font-size:15px;line-height:1.55}
.sf-cta{display:inline-flex;padding:13px 18px;border-radius:3px;background:var(--signal);color:var(--ink);font-size:13px;font-weight:800}
.sf-cta:hover{background:#8a96ff;color:var(--ink)}
.sf-col{display:flex;flex-direction:column;gap:2px}
.sf-col strong{margin-bottom:10px;color:var(--mint);font-family:"Geist Mono",ui-monospace,monospace;font-size:12px;font-weight:500}
.sf-col a{display:flex;align-items:center;min-height:36px;color:#aeb8b5;font-size:14px;line-height:1.35}
.sf-col a:hover{color:#fff}
.sf-col[aria-label="Last Orders"] strong{color:#e3b341}
.sf-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;max-width:1500px;margin:56px auto 0;padding-top:22px;border-top:1px solid #28332f;color:#8b9893;font-size:12px}
.sf a:focus-visible,.sx-card:focus-visible{outline:3px solid var(--mint);outline-offset:3px}
@media(max-width:1050px){.sf-top{grid-template-columns:1fr 1fr}.sf-brand{grid-column:1/-1}}
@media(max-width:700px){.sf{padding:60px 16px 26px}.sf-top{grid-template-columns:1fr;gap:28px}}

/* Product chooser, home page */
.sx-choose{padding:70px 5vw;background:var(--paper)}
.sx-choose-inner{max-width:1500px;margin:auto}
.sx-choose-label{margin:0 0 22px;color:var(--muted);font-family:"Geist Mono",ui-monospace,monospace;font-size:13px}
.sx-choose-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.sx-card{display:flex;flex-direction:column;gap:12px;min-height:280px;padding:34px;border-radius:20px;color:#fff;transition:transform .15s}
.sx-card:hover{transform:translateY(-3px);color:#fff}
.sx-card-pm{background:var(--ink);box-shadow:inset 0 -5px 0 var(--signal)}
.sx-card-lo{background:#101214;box-shadow:inset 0 -5px 0 #e3b341}
.sx-card-top{display:flex;align-items:center;gap:12px;min-height:44px}
.sx-card-top em{font-style:normal;font-weight:800;font-size:18px;color:#c9d0d6}
.sx-card-top img{height:34px;width:auto}
.sx-mini{font-size:34px}
.sx-card>b{margin-top:10px;font-family:"Space Grotesk Variable","Space Grotesk",Arial,sans-serif;font-size:clamp(26px,2.6vw,38px);line-height:1.05;letter-spacing:-.04em}
.sx-card-lo>b{font-family:"Geist",Arial,sans-serif;letter-spacing:-.05em}
.sx-card>span:not(.sx-card-top){max-width:520px;color:#aeb8b5;font-size:16px;line-height:1.5}
.sx-card .sx-go{margin-top:auto;padding-top:14px;color:var(--mint)!important;font-weight:800;font-size:14px!important}
.sx-card-lo .sx-go{color:#e3b341!important}
@media(max-width:800px){.sx-choose{padding:48px 16px}.sx-choose-grid{grid-template-columns:1fr}.sx-card{min-height:0;padding:26px}}
@media(prefers-reduced-motion:reduce){.sx-card{transition:none}.sx-card:hover{transform:none}}

/* PlaceManager: built from real requests */
.px{--px-ink:#11151b;--px-line:rgba(17,21,27,.12);background:#fff;color:var(--px-ink)}
.px-new{padding:110px 5vw}
.px-wrap{max-width:1400px;margin:auto}
.px-head{max-width:860px;margin-bottom:64px}
.px-label{margin:0 0 18px;color:#0057ff;font-family:"Geist Mono",ui-monospace,monospace;font-size:13px}
.px-head h2{margin:0 0 20px;font-size:clamp(38px,4.6vw,68px);line-height:.98;letter-spacing:-.05em}
.px-head h2 em{font-style:normal;color:#0057ff}
.px-head>p:last-child{color:var(--muted);font-size:19px;line-height:1.55}
.px-showcase{display:grid;gap:26px}
.px-show{display:grid;grid-template-columns:1fr 1.05fr;gap:5%;align-items:center;padding:44px;border-radius:24px;background:var(--paper)}
.px-rev .px-show-copy{order:2}
.px-show small,.px-grid small{color:#0057ff;font-family:"Geist Mono",ui-monospace,monospace;font-size:12px}
.px-show h3{margin:10px 0 14px;font-size:clamp(26px,2.6vw,38px);line-height:1.05;letter-spacing:-.045em}
.px-show p{margin:0;color:#4a5150;font-size:16px;line-height:1.6}
.px-show ul{margin:20px 0 0;padding:0;list-style:none}
.px-show li{position:relative;padding:9px 0 9px 26px;border-top:1px solid var(--px-line);font-size:15px}
.px-show li:before{content:"✓";position:absolute;left:2px;color:#0057ff;font-weight:900}
.px-mock{padding:22px;border-radius:18px;background:var(--px-ink);color:#fff;box-shadow:0 30px 60px rgba(17,21,27,.2);font-size:12px}
.px-mock-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.px-mock-top b{font-size:15px}
.px-pill{padding:6px 12px;border-radius:999px;background:#0057ff;color:var(--px-ink);font-weight:800}
.px-mock-foot{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.px-mock-foot span{padding:6px 10px;border-radius:999px;background:#1f2731;color:#c4ccd4}
.px-mock-foot .ok{background:rgba(121,223,207,.16);color:var(--mint)}
.px-tables{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.px-table{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:28px 14px 30px;border:1px solid #2b3540;border-radius:50%/40%;background:#171e26;justify-items:center}
.px-table i{position:absolute;top:8px;left:50%;transform:translateX(-50%);color:#8c99a4;font-style:normal;font-weight:800}
.px-table em{position:absolute;bottom:9px;left:50%;transform:translateX(-50%);color:#8c99a4;font-style:normal;white-space:nowrap}
.px-table .s{width:18px;height:18px;border-radius:50%;border:1px dashed #4a5663}
.px-table .s.f{border:0;background:#0057ff}
.px-table .s.m{border:0;background:var(--mint)}
.px-mock-vote{display:flex;gap:18px;align-items:center;justify-content:center;background:linear-gradient(135deg,#1b2330,#11151b)}
.px-poster{width:170px;padding:18px;border-radius:6px;background:#fff;color:var(--px-ink);text-align:center;transform:rotate(-3deg)}
.px-poster small{color:#0057ff;font-weight:900;letter-spacing:.1em;font-size:9px}
.px-poster b{display:block;margin:6px 0 10px;font-size:17px;line-height:1.1}
.px-poster span{display:block;margin-top:8px;font-weight:700}
.px-qr{width:110px;height:110px;margin:auto;background:
 linear-gradient(90deg,#11151b 0 30%,transparent 30% 70%,#11151b 70%) 0 0/36px 36px no-repeat,
 conic-gradient(#11151b 25%,#fff 0 50%,#11151b 0 75%,#fff 0) 0 0/14px 14px;border:6px solid #fff;outline:2px solid #11151b}
.px-vote-phone{width:190px;padding:18px 14px;border:6px solid #2a323c;border-radius:28px;background:#0b0f14}
.px-vote-phone small{color:#8c99a4;font-size:9px;font-weight:800;letter-spacing:.08em}
.px-vote-phone b{display:block;margin:6px 0 12px;font-size:16px}
.px-opt{margin-top:6px;padding:9px 10px;border:1px solid #2b3540;border-radius:10px;color:#c4ccd4}
.px-opt.sel{border-color:#0057ff;background:rgba(0,87,255,.2);color:#fff}
.px-vote-btn{margin-top:12px;padding:10px;border-radius:999px;background:#0057ff;color:var(--px-ink);text-align:center;font-weight:800}
.px-cand{display:grid;grid-template-columns:110px 1fr 34px;gap:12px;align-items:center;margin-top:10px}
.px-cand span{color:#dfe5ea;font-weight:700}
.px-cand i{height:12px;border-radius:6px;background:linear-gradient(90deg,#0057ff var(--w),#1f2731 var(--w))}
.px-cand b{text-align:right;font-size:14px}
.px-cand.dim span,.px-cand.dim b{color:#7c8994}
.px-cand.dim i{background:linear-gradient(90deg,#4a5663 var(--w),#1f2731 var(--w))}
.px-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}
.px-grid article{padding:26px;border:1px solid var(--px-line);border-radius:18px;background:#fff;transition:border-color .15s}
.px-grid article:hover{border-color:#0057ff}
.px-grid h3{margin:8px 0 8px;font-size:20px;line-height:1.15;letter-spacing:-.03em}
.px-grid p{margin:0;color:#4a5150;font-size:15px;line-height:1.55}
@media(max-width:1050px){.px-show{grid-template-columns:1fr;gap:30px}.px-rev .px-show-copy{order:0}.px-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.px-new{padding:70px 16px}.px-show{padding:24px}.px-grid{grid-template-columns:1fr}.px-mock-vote{flex-direction:column}.px-cand{grid-template-columns:90px 1fr 30px}}
.px-grid article:last-child:nth-child(3n+1){grid-column:1/-1}
@media(max-width:1050px){.px-grid article:last-child:nth-child(3n+1){grid-column:auto}.px-grid article:last-child:nth-child(odd){grid-column:1/-1}}
@media(max-width:700px){.px-grid article:last-child:nth-child(odd){grid-column:auto}}
.px-show>*{min-width:0}

/* Home page, October 2026: a software company with two products.
   PlaceManager's colours are its own palette (Rich Black, Signal Blue, and
   Sky on dark); Last Orders keeps Cellar and Tap Green. */
.hx{--hx-ink:#020d19;--hx-sky:#5c8dff;--hx-signal:#0057ff;--hx-tap:#e3b341;--hx-bottle:#8f6400;--hx-line:rgba(255,255,255,.1);font-family:"Figtree Variable",Figtree,Arial,sans-serif}
.hx h1,.hx h2,.hx h3,.hx-rules b{font-family:"Geist",Arial,sans-serif;letter-spacing:-.05em}
.hx-wrap{max-width:1360px;margin:0 auto}
.hx-label{margin:0 0 22px;color:#9aa6b2;font-family:"Geist Mono",ui-monospace,monospace;font-size:13px}
.hx-label.dark{color:#5f6966}
.hx-hero{position:relative;padding:150px 5vw 100px;color:#fff;background:
  radial-gradient(700px 380px at 15% 105%,rgba(92,141,255,.16),transparent 70%),
  radial-gradient(700px 380px at 85% 105%,rgba(227,179,65,.14),transparent 70%),
  linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px) 0 0/48px 48px,
  linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px) 0 0/48px 48px,
  #070b10}
.hx-hero h1{margin:0;font-size:clamp(58px,8.4vw,132px);line-height:.9;font-weight:700}
.hx-hero h1 span{background:linear-gradient(90deg,var(--hx-sky),var(--hx-tap));-webkit-background-clip:text;background-clip:text;color:transparent}
.hx-lead{max-width:680px;margin:30px 0 64px;color:#b9c3cc;font-size:clamp(17px,1.5vw,21px);line-height:1.55}
.hx-products{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.hx-product{display:flex;flex-direction:column;padding:34px;border:1px solid var(--hx-line);border-radius:24px;color:#fff;transition:transform .18s,border-color .18s}
.hx-product:hover{transform:translateY(-4px);color:#fff}
.hx-pm{background:linear-gradient(180deg,#0b1830,#020d19)}
.hx-pm:hover{border-color:var(--hx-sky)}
.hx-lo{background:linear-gradient(180deg,#1e180b,#101214)}
.hx-lo:hover{border-color:var(--hx-tap)}
.hx-product:focus-visible{outline:3px solid #fff;outline-offset:4px}
.hx-wordmark{display:block;align-self:flex-start;width:auto;height:42px;max-width:100%}
.hx-for{margin:18px 0 6px;font-family:"Geist Mono",ui-monospace,monospace;font-size:13px}
.hx-pm .hx-for{color:var(--hx-sky)}
.hx-lo .hx-for{color:var(--hx-tap)}
.hx-pitch{margin:0 0 26px;max-width:520px;color:#c3ccd4;font-size:17px;line-height:1.55}
.hx-mini{margin-top:auto;padding:18px;border:1px solid var(--hx-line);border-radius:16px;background:rgba(0,0,0,.28);font-size:12px}
.hx-mini-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}
.hx-mini-head b{font-family:"Geist",Arial,sans-serif;font-size:17px;letter-spacing:-.03em}
.hx-mini-head span{color:#8b949e}
.hx-mini-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
.hx-mini-tiles div{padding:10px;border-radius:10px;background:rgba(255,255,255,.05)}
.hx-mini-tiles small{display:block;color:#8b949e;font-size:10.5px}
.hx-mini-tiles b{font-family:"Geist",Arial,sans-serif;font-size:20px}
.hx-pm .hx-mini-tiles b{color:var(--hx-sky)}
.hx-lo .hx-mini-tiles b{color:var(--hx-tap)}
.hx-mini-row{display:flex;align-items:center;gap:10px;margin-top:6px;padding:9px 11px;border-radius:10px;background:rgba(255,255,255,.04);color:#dfe4e8}
.hx-mini-row i{flex:none;width:8px;height:8px;border-radius:50%;background:#f2b84b}
.hx-mini-row i.b{background:var(--hx-sky)}
.hx-mini-row i.a{background:#f2b84b}
.hx-mini-row i.g{background:var(--hx-tap)}
.hx-go{margin-top:22px;font-weight:800;font-size:15px}
.hx-pm .hx-go{color:var(--hx-sky)}
.hx-lo .hx-go{color:var(--hx-tap)}

.hx-how{padding:110px 5vw;background:var(--paper);color:var(--ink)}
.hx-how h2,.hx-who h2,.hx-talk h2{margin:0 0 50px;font-size:clamp(38px,5vw,72px);line-height:.96;font-weight:700}
.hx-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.hx-rules div{padding-top:22px;border-top:2px solid var(--ink)}
.hx-rules span{font-family:"Geist Mono",ui-monospace,monospace;font-size:13px;color:#5f6966}
.hx-rules b{display:block;margin:10px 0 10px;font-size:26px;line-height:1.1}
.hx-rules p{margin:0;color:#4a5150;font-size:16px;line-height:1.6}

.hx-who{padding:110px 5vw;background:#070b10;color:#fff}
.hx-who-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.hx-who-grid article{padding:34px;border:1px solid var(--hx-line);border-radius:22px;background:#0d131a}
.hx-who-grid img{width:44px;height:44px}
.hx-who-pm img{filter:invert(58%) sepia(64%) saturate(2400%) hue-rotate(205deg) brightness(102%)}
.hx-who-lo img{filter:invert(68%) sepia(39%) saturate(560%) hue-rotate(95deg) brightness(92%)}
.hx-who-grid h3{margin:18px 0 10px;font-size:32px}
.hx-who-grid p{margin:0 0 20px;color:#b9c3cc;font-size:17px;line-height:1.6}
.hx-who-pm a{color:var(--hx-sky);font-weight:800}
.hx-who-lo a{color:var(--hx-tap);font-weight:800}
.hx-family{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:28px;color:#8b949e;font-family:"Geist Mono",ui-monospace,monospace;font-size:13px}
.hx-family span{margin-right:6px}
.hx-family a{padding:8px 13px;border:1px solid var(--hx-line);border-radius:999px;color:#dfe4e8;font-family:"Figtree Variable",Figtree,Arial,sans-serif;font-size:14px}
.hx-family a:hover{border-color:var(--hx-sky);color:#fff}

.hx-talk{padding:110px 5vw;background:#fff;color:var(--ink)}
.hx-talk-grid{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center}
.hx-talk-grid h2{margin-bottom:20px}
.hx-talk-grid>div>p:not(.hx-label){color:#4a5150;font-size:18px;line-height:1.55}
.hx-talk-cards{display:grid;gap:12px}
.hx-talk-card{display:flex;flex-direction:column;gap:4px;padding:24px 26px;border-radius:18px;color:#fff;transition:transform .15s}
.hx-talk-card:hover{transform:translateX(4px);color:#fff}
.hx-talk-card b{font-family:"Geist",Arial,sans-serif;font-size:22px;letter-spacing:-.03em}
.hx-talk-card b:after{content:" →"}
.hx-talk-card span{color:rgba(255,255,255,.75);font-size:14px}
.hx-talk-card.pm{background:var(--hx-signal)}
.hx-talk-card.lo{background:#101214;box-shadow:inset 6px 0 0 var(--hx-tap)}
.hx-talk-direct{margin:8px 0 0;color:#5f6966;font-size:15px}
.hx-talk-direct a{color:var(--ink);font-weight:700}

@media(max-width:1000px){.hx-products,.hx-who-grid,.hx-talk-grid{grid-template-columns:1fr}.hx-rules{grid-template-columns:1fr}}
@media(max-width:700px){.hx-hero{padding:120px 16px 70px}.hx-how,.hx-who,.hx-talk{padding:72px 16px}.hx-product,.hx-who-grid article{padding:24px}.hx-wordmark{height:32px}.hx-mini-tiles b{font-size:17px}}
@media(prefers-reduced-motion:reduce){.hx-product,.hx-talk-card{transition:none}.hx-product:hover,.hx-talk-card:hover{transform:none}}

/* Product wordmarks in the header, footer and PlaceManager page */
.sivo-header .sivo-nav-pm a{color:#8fb0ff}
.sivo-header .sivo-nav-pm a:hover{color:#fff}
.sf-col[aria-label="SIVO PlaceManager"] strong,.sf-col[aria-label="Last Orders"] strong{color:#fff;font-family:"Geist",Arial,sans-serif;font-size:20px;font-weight:700;letter-spacing:-.055em}
.sf-dot-pm{color:#5c8dff}
.sf-dot-lo{color:#e3b341}
.px-hero-logo{display:block;width:min(380px,80%);height:auto;margin:0 0 30px}
.sx-route{margin:22px 0 0;padding:14px 18px;border-left:4px solid #e3b341;background:rgba(227,179,65,.1);font-weight:700}
.sx-route a{color:inherit;text-decoration:underline;text-underline-offset:3px}

/* The PlaceManager page wears PlaceManager's own blue, not the SIVO site's */
.page-id-15 .sivo-seo-hero h1 strong{color:#5c8dff}
.page-id-15 .sivo-seo-hero .sivo-eyebrow:before{background:#5c8dff}
.page-id-15 .sivo-btn .wp-block-button__link{background:#0057ff;color:#fff}
.page-id-15 .sivo-btn .wp-block-button__link:hover{background:#0042c7}
.page-id-15 .sivo-seo-body>p a{color:#0057ff}
/* When the two products stack, both are still offered before either sells */
.hx-jump{display:none}
@media(max-width:1000px){
  .hx-lead{margin-bottom:24px}
  .hx-jump{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:28px}
  .hx-jump a{padding:14px 16px;border-radius:14px;color:#fff;font-family:"Geist",Arial,sans-serif;font-weight:700;font-size:20px;letter-spacing:-.05em;text-align:center}
  .hx-jump .pm{background:#0b1830;box-shadow:inset 0 -3px 0 #5c8dff}
  .hx-jump .lo{background:#1e180b;box-shadow:inset 0 -3px 0 #e3b341}
  .hx-jump .pm span{color:#5c8dff}.hx-jump .lo span{color:#e3b341}
  .hx-product{scroll-margin-top:20px}
}
@media(max-width:380px){.hx-jump a{font-size:17px;padding:12px 8px}}
.sf-cta{border-radius:999px;background:#fff;color:#11151b}
.sf-cta:hover{background:#e6eeff;color:#11151b}

/* The app family row in the footer, added 11 Oct 2026 */
.sf-family{display:flex;flex-wrap:wrap;align-items:center;gap:16px 30px;margin:46px 0 0;padding:24px 0 0;border-top:1px solid rgba(255,255,255,.1)}
.sf-family span{font-family:"Geist Mono",ui-monospace,monospace;font-size:12px;color:#8b949e}
.sf-family a{display:block;opacity:.92;transition:opacity .15s}.sf-family a:hover,.sf-family a:focus-visible{opacity:1}
.sf-family img{display:block;height:18px;width:auto}
