/* 41 Sales Team website styles, design language v1.0.1 (github.com/41-Labs-ai/41-sales-team-design, ch. 17).
   One stylesheet for every public page. Light only on the website. Green fills only the main button.
   Inter 400/500/600, 700 for headlines. Pill buttons, 24px cards, 4px spacing scale. */
:root{
  --bg:#f5f7f6; --surface:#ffffff; --fg:#17201b; --muted:#444f49; --subtle:#68726c;
  --border:rgba(23,32,27,.09); --border-strong:rgba(23,32,27,.16);
  --primary:#4ade80; --primary-hover:#22c55e; --on-primary:#0b2614; --primary-text:#15803d; --primary-soft:rgba(74,222,128,.20);
  --warning:#b45309; --warning-soft:rgba(180,83,9,.10); --danger:#dc2626; --danger-soft:rgba(220,38,38,.08);
  --info:#1d4ed8; --info-soft:rgba(29,78,216,.08); --ai:#7c3aed; --ai-soft:rgba(124,58,237,.10); --neutral-soft:rgba(23,32,27,.06);
  --bubble-customer:#ffffff; --bubble-ai:#d9fdd3; --bubble-team:#e0ebff; --chat-bg:#efeae2;
  --glass:rgba(255,255,255,.82); --shadow-raised:0 1px 2px rgba(23,32,27,.07);
  --shadow-panel:0 1px 2px rgba(23,32,27,.06),0 10px 28px rgba(23,32,27,.08); --shadow-overlay:0 24px 60px rgba(23,32,27,.18);
  --r-field:12px; --r-card:24px; --r-panel:18px; --r-pill:999px;
  --font:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1); --max:1140px; --read:720px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--primary-text);text-underline-offset:3px}
a:hover{color:var(--fg)}
:focus-visible{outline:2px solid var(--primary-text);outline-offset:2px;border-radius:4px}
.wrap{width:100%;max-width:var(--max);margin:0 auto;padding-inline:24px}
.read{max-width:var(--read)}
.center{text-align:center}.center .read,.read.center{margin-inline:auto}
@media(max-width:640px){.wrap{padding-inline:16px}}

/* type */
h1,h2,h3,h4{color:var(--fg);margin:0;text-wrap:balance;letter-spacing:-.02em}
h1{font-size:clamp(36px,5.4vw,56px);line-height:1.05;font-weight:700;letter-spacing:-.03em}
h2{font-size:clamp(28px,3.8vw,40px);line-height:1.12;font-weight:700}
h3{font-size:19px;line-height:1.35;font-weight:600;letter-spacing:-.01em}
h4{font-size:16px;line-height:1.4;font-weight:600}
p{margin:0 0 14px}
.eyebrow{display:inline-block;font-size:14px;font-weight:500;color:var(--primary-text);margin:0 0 12px}
.lede{font-size:clamp(17px,2vw,20px);color:var(--muted);line-height:1.55}
.muted{color:var(--muted)}.subtle{color:var(--subtle)}
.h1-soft{color:var(--muted)}
.note{font-size:13.5px;color:var(--subtle)}
strong,b{font-weight:600}
.tabular{font-variant-numeric:tabular-nums}

/* buttons: one green pill per area, the rest white pills */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 22px;border-radius:var(--r-pill);font:500 16px/1 var(--font);text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .12s var(--ease),transform .12s var(--ease);white-space:nowrap}
.btn-lg{min-height:52px;padding:0 28px;font-size:17px}
.btn-primary{background:var(--primary);color:var(--on-primary);font-weight:600;box-shadow:0 1px 2px rgba(23,32,27,.08),0 8px 20px rgba(74,222,128,.28)}
.btn-primary:hover{background:var(--primary-hover);color:var(--on-primary);transform:translateY(1px)}
.btn-secondary{background:var(--surface);color:var(--fg);border-color:var(--border-strong)}
.btn-secondary:hover{background:var(--neutral-soft);color:var(--fg)}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.center .btn-row,.btn-row.center{justify-content:center}
.btn svg{width:18px;height:18px}
@media(max-width:560px){.btn-row .btn-lg{width:100%}}

/* header (glass frame) */
.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--glass);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);border-bottom:1px solid var(--border)}
.site-header .wrap{display:flex;align-items:center;gap:24px;height:64px}
.site-logo{display:flex;align-items:center;gap:8px;min-height:44px;text-decoration:none;color:var(--fg);flex:none}
.site-logo img{height:30px;width:auto}
.site-logo span{font-size:13px;color:var(--subtle)}
.site-nav{display:flex;align-items:center;gap:4px;margin-left:auto}
.site-nav>a:not(.btn),.nav-dd>button{font:500 15px/1 var(--font);color:var(--muted);text-decoration:none;padding:10px 12px;border-radius:var(--r-pill);background:none;border:0;cursor:pointer;white-space:nowrap}
/* 26 Oct: the header button says "Get your free AI sales team", so the full menu shows from 1100px and the menu
   button below that. Tighter link padding keeps one row up to the 1140px page width. */
@media(min-width:1100px){.site-nav{gap:2px}.site-nav>a:not(.btn),.nav-dd>button{padding:10px 10px}}
@media(min-width:1100px) and (max-width:1239px){.site-header .wrap{gap:12px}.site-nav{gap:0}.site-nav>a:not(.btn),.nav-dd>button{padding:10px 8px}}
.site-nav>a:not(.btn):hover,.nav-dd>button:hover,.nav-dd.open>button{color:var(--fg);background:var(--neutral-soft)}
.site-nav>a:not(.btn)[aria-current="page"]{color:var(--fg)}
.nav-dd{position:relative}
.nav-dd>button::after{content:"";display:inline-block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-3px);margin-left:8px}
.nav-dd-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:260px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-panel);box-shadow:var(--shadow-overlay);padding:8px;display:none}
.nav-dd.open .nav-dd-menu,.nav-dd:focus-within .nav-dd-menu{display:block}
@media(hover:hover){.nav-dd:hover .nav-dd-menu{display:block}}
.nav-dd-menu a{display:block;padding:9px 12px;border-radius:var(--r-field);color:var(--fg);text-decoration:none;font-size:15px}
.nav-dd-menu a:hover{background:var(--neutral-soft)}
.nav-soon{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;font-size:15px;color:var(--subtle)}
.site-header .btn{min-height:40px;padding:0 18px;font-size:15px}
.nav-toggle{display:none;margin-left:auto;width:44px;height:44px;border-radius:var(--r-pill);border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;align-items:center;justify-content:center}
.nav-toggle svg{width:20px;height:20px}
.nav-toggle{position:relative;color:var(--fg)}
.nav-toggle[aria-expanded="true"] svg{display:none}
.nav-toggle[aria-expanded="true"]::before,.nav-toggle[aria-expanded="true"]::after{content:"";position:absolute;left:50%;top:50%;width:18px;height:1.75px;border-radius:1px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}
.nav-toggle[aria-expanded="true"]::after{transform:translate(-50%,-50%) rotate(-45deg)}
@media(min-width:1100px) and (pointer:coarse){.site-nav>a:not(.btn),.nav-dd>button{min-height:44px;display:inline-flex;align-items:center}.site-header .btn{min-height:44px}}
@media(max-width:1099px){
  .nav-toggle{display:inline-flex}
  .site-nav{display:none;position:absolute;top:64px;left:0;right:0;flex-direction:column;align-items:stretch;gap:2px;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-overlay);padding:12px 16px 20px;max-height:calc(100vh - 64px);overflow:auto}
  .site-header.menu-open .site-nav{display:flex}
  .site-nav>a:not(.btn),.nav-dd>button{width:100%;min-height:44px;text-align:left;padding:13px 12px;font-size:16px}
  .nav-dd-menu a,.nav-soon{min-height:44px;display:flex;align-items:center}
  .nav-dd-menu{position:static;display:none;box-shadow:none;border:0;padding:0 0 6px 12px;min-width:0}
  .nav-dd.open .nav-dd-menu{display:block}
  .site-nav .btn{margin-top:10px;width:100%;min-height:48px}
  .site-header .wrap{position:relative}
}

/* sections */
.section{padding-block:80px}
.section-sm{padding-block:48px}
.section-white{background:var(--surface);border-block:1px solid var(--border)}
.section-head{max-width:760px;margin:0 0 40px}
.section-head.center{margin-inline:auto;text-align:center}
.section-head .lede{margin-top:14px}
@media(max-width:640px){.section{padding-block:56px}.section-head{margin-bottom:28px}}
.hero{position:relative;padding-block:72px 64px;isolation:isolate;overflow:hidden}
.wash::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:
  radial-gradient(40% 55% at 6% 0%,rgba(74,222,128,.30),transparent 70%),
  radial-gradient(40% 55% at 96% 4%,rgba(125,211,252,.34),transparent 70%),
  radial-gradient(55% 45% at 50% 100%,rgba(253,214,150,.38),transparent 70%)}
.hero .lede{margin-top:20px;max-width:640px}
.hero .btn-row{margin-top:28px}
.hero-checks{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:16px;padding:0;list-style:none;font-size:14px;color:var(--subtle)}
.hero-checks li::before{content:"";display:inline-block;width:10px;height:5px;border-left:2px solid var(--primary-text);border-bottom:2px solid var(--primary-text);transform:rotate(-45deg) translateY(-3px);margin-right:8px}
@media(max-width:640px){.hero{padding-block:40px 48px}}

/* layout grids */
.grid{display:grid;gap:16px}
.grid-2{display:grid;gap:16px;grid-template-columns:1fr}
.grid-3{display:grid;gap:16px;grid-template-columns:1fr}
.grid-4{display:grid;gap:16px;grid-template-columns:1fr 1fr}
.split{display:grid;gap:40px;grid-template-columns:1fr;align-items:center}
@media(min-width:760px){.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}}
@media(min-width:960px){.split{grid-template-columns:1.05fr .95fr;gap:56px}}
.grid>*,.grid-2>*,.grid-3>*,.grid-4>*,.split>*{min-width:0}

/* cards and panels */
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:24px;box-shadow:var(--shadow-panel)}
.card h3{margin-bottom:8px}
.card p{color:var(--muted);margin:0}
.card p+p{margin-top:10px}
.card-flat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:24px}
.icon-chip{width:40px;height:40px;border-radius:var(--r-pill);background:var(--primary-soft);color:var(--primary-text);display:grid;place-items:center;margin-bottom:16px}
.icon-chip svg{width:20px;height:20px}
.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-panel);padding:20px;box-shadow:var(--shadow-panel)}
.stat b{display:block;font-size:30px;line-height:1.1;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.stat span{display:block;font-size:14px;color:var(--muted);margin-top:6px;line-height:1.4}
.source-line{font-size:13px;color:var(--subtle);margin-top:14px;max-width:760px}

/* status pills: always a word */
.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;line-height:16px;padding:4px 10px;border-radius:var(--r-pill);white-space:nowrap;background:var(--neutral-soft);color:var(--muted)}
.pill-good{background:var(--primary-soft);color:#166534}
.pill-warn{background:var(--warning-soft);color:var(--warning)}
.pill-ai{background:var(--ai-soft);color:var(--ai)}

/* answer capsule (the passage AI engines quote) */
.capsule{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--r-panel);padding:20px 22px;box-shadow:var(--shadow-raised);font-size:17px;color:var(--fg)}
.capsule p:last-child{margin-bottom:0}

/* lists */
.checks{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.checks li{position:relative;padding-left:28px;color:var(--muted)}
.checks li::before{content:"";position:absolute;left:3px;top:9px;width:11px;height:6px;border-left:2px solid var(--primary-text);border-bottom:2px solid var(--primary-text);transform:rotate(-45deg)}
.crosses{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.crosses li{position:relative;padding-left:28px;color:var(--muted)}
.crosses li::before{content:"\00d7";position:absolute;left:4px;top:-1px;color:var(--danger);font-weight:600;font-size:20px}
.steps{list-style:none;padding:0;margin:0;display:grid;gap:16px;counter-reset:st}
.steps>li{counter-increment:st;position:relative;padding-left:52px}
.steps>li::before{content:counter(st);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:var(--r-pill);background:var(--primary-soft);color:var(--primary-text);display:grid;place-items:center;font-weight:600;font-size:15px}

/* tables */
.table-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-panel);box-shadow:var(--shadow-raised)}
.table-wrap table{border-collapse:collapse;width:100%;font-size:15px;min-width:560px}
.table-wrap th,.table-wrap td{text-align:left;vertical-align:top;padding:12px 16px;border-bottom:1px solid var(--border)}
.table-wrap th{font-size:14px;font-weight:500;color:var(--subtle);background:var(--bg)}
.table-wrap tr:last-child td{border-bottom:0}

/* FAQ */
.faq{display:grid;gap:10px}
.faq details{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-panel);padding:0 20px;box-shadow:var(--shadow-raised)}
.faq summary{cursor:pointer;list-style:none;padding:18px 36px 18px 0;font-weight:600;font-size:17px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:2px;top:13px;font-size:24px;font-weight:400;color:var(--subtle);transition:transform .2s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details>div,.faq details>p{color:var(--muted);padding-bottom:18px;margin:0}

/* WhatsApp-style chat */
.chat{background:var(--chat-bg);border-radius:var(--r-panel);padding:16px;display:flex;flex-direction:column;gap:8px;background-image:radial-gradient(circle at 1px 1px,rgba(23,32,27,.06) 1px,transparent 0);background-size:22px 22px}
.bubble{max-width:82%;padding:9px 12px 6px;border-radius:18px;font-size:15px;line-height:1.45;box-shadow:var(--shadow-raised);color:var(--fg)}
.bubble.in{background:var(--bubble-customer);align-self:flex-start;border-top-left-radius:6px}
.bubble.ai{background:var(--bubble-ai);align-self:flex-end;border-top-right-radius:6px}
.bubble.team{background:var(--bubble-team);align-self:flex-end;border-top-right-radius:6px}
.bubble .t{display:block;text-align:right;font-size:11px;color:var(--subtle);margin-top:2px}
.bubble .who{display:inline-block;font-size:11px;font-weight:600;padding:1px 7px;border-radius:var(--r-pill);background:rgba(21,128,61,.14);color:var(--primary-text);margin-bottom:3px}
.bubble.team .who{background:rgba(29,78,216,.12);color:#1e3a8a}
.bubble.team .t{color:#4b5563}
.chat-label{font-size:12.5px;color:var(--subtle);margin-top:8px}

/* team (the four AIs) */
.team-grid{display:grid;gap:16px;grid-template-columns:1fr}
@media(min-width:760px){.team-grid{grid-template-columns:1fr 1fr}}
.ai-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:22px;box-shadow:var(--shadow-panel);display:flex;flex-direction:column;gap:12px}
.ai-card-top{display:flex;align-items:flex-start;gap:12px}
.ai-card-top .icon-chip{margin:0;flex:none}
.ai-card-top h3{flex:1;min-width:0}
.ai-card p{color:var(--muted);margin:0}
.ai-card .ex{font-size:14px;color:var(--ai)}
.ai-card a.more{font-weight:500;font-size:15px;text-decoration:none}

/* founder */
.founder{display:grid;gap:24px;grid-template-columns:1fr;align-items:start}
@media(min-width:760px){.founder{grid-template-columns:220px 1fr}}
.founder img{border-radius:var(--r-card);width:100%;aspect-ratio:4/5;object-fit:cover}
.signoff{font-weight:600;margin-top:16px}
.signoff span{display:block;font-weight:400;color:var(--subtle);font-size:14px}

/* article (blog, guides) */
.article{max-width:var(--read);margin:0 auto}
.article h2{font-size:clamp(24px,3vw,30px);margin:44px 0 14px}
.article h3{margin:28px 0 10px}
.article p,.article li{color:#2a332e}
.article ul,.article ol{padding-left:22px;margin:0 0 16px}
.article li{margin-bottom:6px}
.article blockquote{margin:24px 0;padding:16px 20px;background:var(--surface);border-left:3px solid var(--primary);border-radius:var(--r-field)}
.article figure{margin:28px 0}
.article figure img,.article figure svg{border-radius:var(--r-panel);border:1px solid var(--border)}
.article figcaption{font-size:13px;color:var(--subtle);margin-top:8px}
.breadcrumb{font-size:14px;color:var(--subtle);margin-bottom:20px}
.breadcrumb a{color:var(--subtle);text-decoration:none;display:inline-block;padding-block:14px;margin-block:-14px;padding-inline:3px;margin-inline:-3px}.breadcrumb a:hover{color:var(--fg)}
.byline{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--subtle);margin-top:20px}
.byline img{width:36px;height:36px;border-radius:var(--r-pill);object-fit:cover}

/* CTA band */
.cta-band{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:48px 32px;text-align:center;box-shadow:var(--shadow-panel);position:relative;overflow:hidden;isolation:isolate}
.cta-band .btn-row{justify-content:center;margin-top:24px}
.cta-band .lede{margin:14px auto 0;max-width:600px}

/* footer */
.site-footer{background:var(--surface);border-top:1px solid var(--border);padding-block:56px 32px;font-size:15px;color:var(--muted)}
.footer-grid{display:grid;gap:32px;grid-template-columns:1fr}
@media(min-width:760px){.footer-grid{grid-template-columns:1.4fr 1fr 1.2fr 1fr}}
.site-footer h4,.site-footer .footer-h{font-size:14px;font-weight:600;color:var(--fg);margin:0 0 12px;line-height:1.4}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.site-footer a{color:var(--muted);text-decoration:none;display:inline-block;padding:4px 0}
.site-footer a:hover{color:var(--fg)}
.footer-brand img{height:28px;width:auto;margin-bottom:12px}
.footer-legal{border-top:1px solid var(--border);margin-top:40px;padding-top:20px;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 24px;justify-content:space-between;font-size:14px;color:var(--subtle)}
/* 44px footer links on every touch screen, iPads included */
@media(max-width:1024px),(pointer:coarse){
  .site-footer li a,.footer-legal a{display:inline-flex;align-items:center;min-height:44px;padding:0}
  .site-footer li a{min-width:44px}
  .site-footer ul{gap:0}
}
@media(max-width:759px){.footer-grid>div:not(.footer-brand) ul{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:16px}}
/* links that wrap to two lines stay apart from the next one */
@media(max-width:759px){.site-footer ul{row-gap:6px}.site-footer li a{line-height:1.3}}
/* small links on the product and pricing pages: 44px to tap, with no change to the layout */
.trust-more{min-height:44px}
.gap-note a{display:inline-block;padding-block:14px;margin-block:-14px}
.incl .checks{gap:18px}
.incl .checks a{display:inline-block;padding-block:9px;margin-block:-9px}

/* floating WhatsApp button (26 Oct 2026, back on every page): 44px, clear of the phone's safe area, to the AI line.
   site.js hides it while it would sit on a button, a link, a form field or a line of text. */
.wa-float{position:fixed;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:40;width:44px;height:44px;border-radius:var(--r-pill);background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:var(--shadow-overlay)}
.wa-float svg{width:24px;height:24px}
.wa-float:hover{color:#fff;background:#1fb855}
@media(min-width:1024px){.wa-float{right:calc(24px + env(safe-area-inset-right,0px));bottom:calc(24px + env(safe-area-inset-bottom,0px))}}
@media print{.wa-float{display:none}}
.site-header.menu-open~.wa-float{display:none}

/* 26 Oct: "Get your free AI sales team" and "WhatsApp us now". The WhatsApp mark takes the word's colour. On a narrow
   phone a long label may wrap to two lines inside its pill instead of running off the screen. */
.btn .wa-ic{width:18px;height:18px;flex:none}
@media(max-width:400px){.btn-lg{white-space:normal;text-align:center;line-height:1.25;padding:10px 20px}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* integrations block (partials/integrations.html): real logos in brand colour, one wall */
.int-grid{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.int-tile{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-panel);padding:14px 16px;box-shadow:var(--shadow-raised);min-width:0}
.int-ic{width:32px;height:32px;flex:none;display:grid;place-items:center;object-fit:contain}
.int-ic svg{width:26px;height:26px}
img.int-wide{width:44px}
.int-word{border-radius:8px;background:#e8f1ff;color:#1d4ed8;font-weight:700;font-size:15px}
.int-group{margin:28px 0 12px;font-size:14px;font-weight:600;color:var(--muted);text-align:center}
.int-group:first-of-type{margin-top:0}
.int-name{font-size:15px;font-weight:500;color:var(--fg);line-height:1.3}

/* Homepage (index.html), 23 Oct 2026: the fuller page. Scoped to the homepage section ids and hp- classes,
   so no other page changes. Mobile first: one column under 1024px for the side-by-side blocks. */
.wa-float{transition:opacity .2s var(--ease)}
.wa-float.is-hidden{opacity:0;pointer-events:none}
.hp-band{background:linear-gradient(180deg,rgba(74,222,128,.10),rgba(125,211,252,.08) 55%,rgba(253,214,150,.10));border-block:1px solid var(--border)}
.hp-textlink{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 8px;font-size:16px;font-weight:500;text-decoration:none}
.hp-textlink .i,.hp-compare-foot a .i,.hp-who-foot a .i{width:14px;height:14px}

/* hero channel row */
.hero .hc-and{color:var(--subtle);font-weight:400}

/* trust strip: four built connections, then the official platform and the memberships */
#trust .trust-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}
#trust .trust-logos{order:2;flex:1 1 100%;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:12px 32px;margin:4px 0 0}
#trust .trust-seen{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
#trust .trust-seen p{margin:0}
#trust .trust-official{display:inline-flex;align-items:center;gap:8px;font-weight:500;color:var(--fg)}
#trust .trust-official img{width:20px;height:20px}
@media(min-width:1024px){#trust .trust-seen .seen{margin-left:auto}}
@media(min-width:768px){#trust .trust-logos{justify-content:space-between}}
@media(max-width:767px){
  #trust .trust-row,#trust .trust-seen{flex-direction:column;justify-content:center;text-align:center}
  #trust .trust-logos{justify-content:center;gap:12px 20px}
  #trust .trust-more{order:3}
  #trust .trust-official{display:block}
  #trust .trust-official img{display:inline-block;vertical-align:-4px;margin-right:6px}
  #trust .seen{justify-content:center}
}

/* pains: four muted "before" cards, one solid "after" panel */
.hp-pains{display:grid;gap:16px;grid-template-columns:minmax(0,1fr);margin:0 auto}
@media(min-width:1024px){.hp-pains{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:24px}}
.hp-pain-grid{list-style:none;margin:0;padding:0;display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
@media(min-width:640px){.hp-pain-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.hp-pain{padding:20px;border-radius:var(--r-card);border:1px solid var(--border-strong);background:rgba(255,255,255,.45)}
.hp-pain-ic{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;margin-bottom:12px;background:var(--neutral-soft);color:var(--muted)}
.hp-pain h3{font-size:17px;line-height:1.35;margin:0 0 4px}
.hp-pain p{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}
.hp-after{padding:32px 24px 20px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-panel);display:flex;flex-direction:column;justify-content:center}
.hp-after-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-top:12px;padding-top:12px;align-self:flex-start;font-size:15px;font-weight:500;text-decoration:none}
.hp-after-link .i{width:14px;height:14px}
.hp-after-title{margin:0 0 16px;font-size:19px;font-weight:600;color:var(--fg)}
.hp-after .checks li{color:var(--fg)}

/* the four AIs: a bento, the AI Sales Closer wide */
.hp-bento{display:grid;gap:16px;grid-template-columns:minmax(0,1fr);max-width:1140px;margin:0 auto}
.hp-bento .team-card{gap:0}
.hp-bento .tc-body{display:flex;flex-direction:column;min-width:0}
.hp-bento .team-card .line{margin:8px 0 12px}
.tc-points{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:8px}
.tc-points li{position:relative;padding-left:26px;font-size:15px;line-height:1.45;color:var(--fg)}
.tc-points li::before{content:"";position:absolute;left:3px;top:7px;width:11px;height:6px;border-left:2px solid var(--primary-text);border-bottom:2px solid var(--primary-text);transform:rotate(-45deg)}
.soon .tc-points li{color:var(--muted)}
.soon .tc-points li::before{border-color:var(--subtle)}
.tc-more{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-bottom:8px;font-size:15px;font-weight:500;text-decoration:none;align-self:flex-start}
.tc-more .i{width:14px;height:14px}
.hp-bento .tc-body+.scene{margin-top:auto}
.hp-bento .soon .tc-body{margin-bottom:16px}
.av-d{background:#dcfce7;color:#166534}
/* QA round 3: every card the same from 641px, the pills on their own row under the title, so no title wraps */
@media(min-width:641px){
  .hp-bento .team-card .tc-head{flex-wrap:wrap;row-gap:6px}
  .hp-bento .team-card .tc-head h3{flex:1 1 calc(100% - 44px)}
  .hp-bento .team-card .tc-pills{margin-left:44px}
}
@media(min-width:768px){
  .hp-bento{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hp-bento .tc-wide,.hp-bento .soon{grid-column:1/-1}
  .hp-bento .soon{flex-direction:row;gap:24px;align-items:center}
  .hp-bento .soon .tc-body{flex:1;margin-bottom:0}
  .hp-bento .soon .scene{flex:1;margin-top:0}
}
@media(min-width:1024px){
  .hp-bento{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hp-bento .tc-wide,.hp-bento .team-card:nth-child(3){flex-direction:row;gap:24px}
  .hp-bento .tc-wide{grid-column:1/3;grid-row:1}
  .hp-bento .team-card:nth-child(2){grid-column:3;grid-row:1}
  .hp-bento .team-card:nth-child(3){grid-column:1/3;grid-row:2}
  .hp-bento .tc-wide .tc-body,.hp-bento .team-card:nth-child(3) .tc-body{flex:1;justify-content:center}
  .hp-bento .tc-wide .tc-more,.hp-bento .team-card:nth-child(3) .tc-more{margin-top:20px;margin-bottom:0}
  .hp-bento .tc-wide .scene,.hp-bento .team-card:nth-child(3) .scene{flex:1.15;margin-top:0;align-self:center;justify-content:flex-start}
  .hp-bento .team-card:nth-child(3) .m-spark{height:120px}
  .hp-bento .tc-wide .scene-row{padding-block:11px}
  .hp-bento .soon{grid-column:3;grid-row:2;flex-direction:column;gap:0;align-items:stretch}
  .hp-bento .soon .tc-body{flex:none;margin-bottom:16px}
  .hp-bento .soon .scene{flex:none;margin-top:auto}
}
#what-we-do .sec-cta{flex-direction:column;gap:4px}
@media(min-width:561px){#what-we-do .sec-cta{flex-direction:row;gap:16px}}

/* how it sells: steps and screens, one column under 1024px */
.hp-journey{display:grid;gap:16px;grid-template-columns:minmax(0,1fr);margin:0 auto}
.hp-jstep{display:flex;gap:16px;align-items:flex-start;padding:20px;border-radius:var(--r-card);background:var(--bg);border:1px solid var(--border)}
.hp-jn{width:32px;height:32px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--primary-soft);color:#166534;font-weight:600;font-size:15px}
.hp-jstep h3{font-size:18px;margin:2px 0 4px}
.hp-jstep p{margin:0;font-size:15.5px;line-height:1.5;color:var(--muted)}
.hp-jscreen{width:min(340px,100%);margin:0 auto 16px}
@media(min-width:1024px){
  .hp-journey{grid-template-columns:minmax(0,1fr) minmax(0,400px);column-gap:56px;row-gap:12px;align-items:start}
  .hp-jstep{grid-column:1;background:transparent;border-color:transparent}
  .hp-journey.is-js .hp-jstep{background:var(--surface);border-color:var(--border)}
  .hp-jstep[data-j="1"]{grid-row:1}.hp-jstep[data-j="2"]{grid-row:2}.hp-jstep[data-j="3"]{grid-row:3}.hp-jstep[data-j="4"]{grid-row:4}
  .hp-jscreen{grid-column:2;grid-row:1/span 4;width:100%;margin:0;align-self:stretch;display:flex;flex-direction:column}
  .hp-jscreen>.hp-win:first-child{flex:1;display:flex;flex-direction:column}
  .hp-jscreen>.hp-win .chat,.hp-jscreen>.hp-win .hp-day{flex:1}
  .hp-journey:not(.is-js) .hp-jscreen:not([data-j="1"]){display:none}
  .hp-journey.is-js .hp-jstep{cursor:pointer;transition:background .12s var(--ease)}
  .hp-journey.is-js .hp-jstep:hover{background:var(--neutral-soft)}
  .hp-journey.is-js .hp-jstep.is-active{background:var(--bg);border-color:var(--border);box-shadow:inset 3px 0 0 var(--primary-text)}
  .hp-journey.is-js .hp-jscreen:not(.is-active){visibility:hidden}
  .hp-journey.is-js .hp-jscreen.is-active{animation:hp-rise .2s var(--ease) both}
}
@keyframes hp-rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.hp-win{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-panel);box-shadow:var(--shadow-panel);overflow:hidden}
.hp-win-h{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--border);font-size:14px}
.hp-win-h b{flex:1;min-width:0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hp-win-h img{width:18px;height:18px}
.hp-win-h .wa-av{width:28px;height:28px;font-size:11px}
.hp-win .chat{border-radius:0;min-height:180px}
.hp-chat-mid{align-self:center;padding:4px 10px;border-radius:8px;background:var(--surface);box-shadow:var(--shadow-raised);font-size:12px;line-height:16px;color:var(--subtle)}
.hp-chat-mid .pill{margin:-2px -6px}
.hp-chat-warn{color:var(--warning)}
.hp-sheet{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr);font-size:13px}
.hp-sheet span{padding:8px 10px;border-bottom:1px solid var(--border);border-right:1px solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hp-sheet span:nth-child(3n){border-right:0}
.hp-sheet .hd{background:var(--bg);font-weight:600;color:var(--muted)}
.hp-sheet .nw{background:var(--primary-soft)}
.hp-day{list-style:none;margin:0;padding:8px 14px 14px;display:flex;flex-direction:column}
.hp-day li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--border);font-size:14px}
.hp-day li:last-child{border-bottom:0}
.hp-ev-t{width:44px;flex:none;font-size:13px;font-weight:500;color:var(--subtle);font-variant-numeric:tabular-nums}
.hp-ev-b{flex:1;min-width:0;padding-left:10px;border-left:3px solid #c7d7fe}
.hp-ev-b b{display:block;font-size:14px;line-height:1.3;font-weight:600}
.hp-ev-b span{display:block;font-size:12.5px;line-height:1.35;color:var(--subtle)}
.hp-day li.nw .hp-ev-b{border-left-color:var(--primary-text)}
.hp-day li.nw{background:var(--primary-soft);margin-inline:-14px;padding-inline:14px}
.hp-ev-free .hp-ev-b{border-left-color:var(--border)}
.hp-cal{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-top:12px}
.hp-cal img{width:22px;height:22px;flex:none}
.hp-cal-t{flex:1;min-width:0}
.hp-cal-t b{display:block;font-size:14px;line-height:1.3}
.hp-cal-t span{display:block;font-size:12.5px;color:var(--subtle)}

/* the gap: their wait and our reply, every number with its source */
#the-gap .vs-them{background:rgba(255,255,255,.5);border:1px solid var(--border-strong);color:var(--fg)}
#the-gap .vs-them .vs-k{color:var(--subtle)}
#the-gap .vs-them .big{color:var(--danger)}
#the-gap .vs-them>p:last-child{color:var(--muted)}
#the-gap .vs-us{background:var(--surface);border:1px solid var(--border);box-shadow:inset 0 3px 0 var(--primary-text),var(--shadow-panel)}
#the-gap .big{font-size:inherit;line-height:1}
#the-gap .gap-num{display:block;font-size:clamp(44px,11vw,80px);line-height:1;font-weight:700;letter-spacing:-.04em;font-variant-numeric:tabular-nums;white-space:nowrap}
#the-gap .gap-unit{display:block;margin-top:8px;font-size:clamp(18px,2vw,22px);font-weight:600;letter-spacing:-.01em}
#the-gap .facts li{background:var(--surface)}
#the-gap .source-line a{text-decoration:underline}
@media(max-width:640px){#the-gap .source-line{text-align:left}}

/* compare: a real table, stacked cards on phones */
.hp-compare{max-width:860px;margin:0 auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow-panel);overflow:hidden}
.hp-compare table{width:100%;border-collapse:collapse;font-size:15.5px}
.hp-compare caption{caption-side:top;text-align:left;padding:20px 20px 8px;font-size:16px;font-weight:600;color:var(--fg)}
.hp-compare th,.hp-compare td{padding:14px 20px;text-align:left;vertical-align:middle;border-top:1px solid var(--border)}
.hp-compare thead th{border-top:0;font-size:13px;font-weight:500;color:var(--subtle)}
.hp-compare tbody th{font-weight:500;color:var(--fg)}
.hp-compare td{color:var(--muted)}
.hp-compare td:last-child{color:var(--subtle)}
.hp-yes{display:inline-flex;align-items:center;gap:8px;color:var(--fg);font-weight:500}
.hp-yes .i{color:var(--primary-text);stroke-width:2.25}
.hp-compare-foot{margin:24px 0 0;text-align:center}
.hp-compare-foot a{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:500;text-decoration:none}
@media(max-width:639px){
  .hp-compare thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .hp-compare table,.hp-compare tbody,.hp-compare tr,.hp-compare th,.hp-compare td,.hp-compare caption{display:block}
  .hp-compare caption{padding:16px 16px 4px}
  .hp-compare tr{padding:12px 16px;border-top:1px solid var(--border)}
  .hp-compare tbody th{padding:0 0 6px;border:0;font-weight:600}
  .hp-compare td{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:4px 0;border:0;font-size:15px;text-align:right}
  .hp-compare td::before{content:attr(data-label);flex:none;color:var(--subtle);font-weight:500;text-align:left}
  .hp-compare td .hp-yes{display:block;text-align:right}
  .hp-compare td .hp-yes .i{display:inline-block;vertical-align:-3px;margin-right:6px}
}

/* offer band: one card, removable in one cut */
.hp-offer-card{margin:0 auto;display:grid;gap:20px;justify-items:center;text-align:center;padding:28px 20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:inset 0 3px 0 var(--primary),var(--shadow-panel)}
.hp-offer-card h2{font-size:clamp(24px,3vw,32px);margin:12px 0 8px}
.hp-offer-card p{margin:0;color:var(--muted);max-width:60ch}
.hp-offer-card .btn{width:100%}
@media(min-width:1024px){.hp-offer-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-items:start;text-align:left;padding:32px 40px}.hp-offer-card .btn{width:auto}}

/* integrations: six things it does, then the built connections */

/* industry picker (26 Oct): right under the hero, eight whole-card links, two columns on a phone, four on a laptop */
.hp-who{margin:0 auto}
.hp-trades{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:900px){.hp-trades{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}}
.hp-trade{display:flex;gap:12px;align-items:center;height:100%;min-height:56px;padding:14px 16px;border-radius:18px;background:var(--surface);border:1px solid var(--border);color:var(--fg);text-decoration:none;box-shadow:0 1px 2px rgba(23,32,27,.04);transition:border-color .15s var(--ease),box-shadow .15s var(--ease),transform .15s var(--ease)}
.hp-trade:hover{color:var(--fg);border-color:rgba(21,128,61,.45);box-shadow:0 10px 24px -14px rgba(23,32,27,.35);transform:translateY(-2px)}
.hp-trade:focus-visible{outline:2px solid var(--primary-text);outline-offset:2px}
.hp-trade-ic{width:36px;height:36px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-text)}
.hp-trade b{display:block;font-size:16px;line-height:1.3}
.hp-trade b+span{display:block;margin-top:2px;font-size:14px;line-height:1.4;color:var(--muted)}
@media(max-width:640px){
  .hp-trade{gap:10px;min-height:52px;padding:10px 12px;border-radius:14px}
  .hp-trade-ic{width:30px;height:30px}
  .hp-trade-ic .i{width:16px;height:16px}
  .hp-trade b{font-size:14.5px;line-height:1.25}
  .hp-trade b+span{display:none}
}
@media(prefers-reduced-motion:reduce){.hp-trade,.hp-trade:hover{transition:none;transform:none}}
.hp-who-foot{margin:16px 0 0;text-align:center}
.hp-who-foot a{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:500;text-decoration:none}

/* founder: the real chat, the story, the photo */
.hp-founder{display:grid;gap:24px;grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "chat" "story" "photo";margin:0 auto}
.hp-f-head{grid-area:head;text-align:center}
.hp-f-chat{grid-area:chat;width:min(340px,100%);margin:0 auto}
.hp-f-chat .chat-label{text-align:center}
.hp-realchat{gap:8px}
.hp-realchat-in{display:flex;flex-direction:column;gap:8px}
.hp-realchat .bubble{font-size:14px}
.hp-f-story{grid-area:story;max-width:62ch;margin:0 auto}
.hp-f-story p{margin:0 0 14px;font-size:17px;line-height:1.6;color:var(--fg)}
.hp-f-photo{grid-area:photo}
.hp-f-photo img{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:66% 30%;border-radius:var(--r-card)}
@media(min-width:1024px){
  .hp-founder{grid-template-columns:minmax(0,340px) minmax(0,1fr);grid-template-areas:"photo head" "photo story" "photo chat";column-gap:56px;row-gap:24px;align-items:start}
  .hp-f-head{text-align:left}
  .hp-f-photo{position:sticky;top:96px}
  .hp-f-chat{width:100%;max-width:560px;margin:0}
  .hp-f-chat .chat-label{text-align:left}
  .hp-f-story{margin:0}
}

/* client proof (26 Oct): our clients by business type, no names, logos or dates. Written by scripts/generators/client_proof.py.
   Homepage (#clients): a slim running banner, "just do a running banner like the old site". One row of pill tags runs
   right to left forever. The list is written twice and the track moves by half its width, so the loop has no seam.
   Pauses on hover, on focus and while pressed. With reduced motion it stands still as one wrapped row. */
.cp-run-sec{padding-block:24px 26px;background:var(--surface);border-block:1px solid var(--border)}
/* QA 26 Oct: with a mouse, the hero pill jump landed the banner right under the cursor that clicked it, so hover
   paused it on arrival. Landing it a little lower keeps the cursor on the label above, and the banner keeps moving. */
@media(hover:hover){#clients.cp-run-sec{scroll-margin-top:128px}}
.cp-run-h{margin:0 0 14px;text-align:center;font-size:15px;font-weight:600;line-height:1.3;letter-spacing:0;color:var(--muted)}
.cp-run{position:relative;overflow:hidden;outline-offset:-2px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.cp-run:focus-visible{outline:2px solid var(--primary-text);border-radius:var(--r-field)}
.cp-run-track{display:flex;width:max-content;animation:cp-run 42s linear infinite}
.cp-run:hover .cp-run-track,.cp-run:focus-within .cp-run-track,.cp-run:active .cp-run-track{animation-play-state:paused}
@keyframes cp-run{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.cp-run-list{display:flex;flex:none;gap:12px;margin:0;padding:2px 12px 2px 0;list-style:none}
.cp-tag{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:6px 18px 6px 6px;border-radius:var(--r-pill);background:var(--bg);border:1px solid var(--border);color:var(--fg);font-size:15px;font-weight:600;line-height:1.25;white-space:nowrap}
.cp-tag-ic{width:36px;height:36px;flex:none;border-radius:var(--r-pill);display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-text)}
.cp-tag-ic .i{width:18px;height:18px}
.cp-tag-stat{background:linear-gradient(120deg,rgba(74,222,128,.22),rgba(74,222,128,.06));border-color:rgba(21,128,61,.28)}
.cp-tag-n{padding-left:12px;border-left:1px solid rgba(21,128,61,.28);font-weight:500;color:var(--muted)}
.cp-tag-n b{font-weight:700;color:var(--primary-text)}
@media(prefers-reduced-motion:reduce){
  .cp-run{-webkit-mask-image:none;mask-image:none}
  .cp-run-track{width:auto;animation:none;padding-inline:16px}
  .cp-run-list{flex:1 1 auto;flex-wrap:wrap;justify-content:center;align-items:center;padding:2px 0}
  .cp-run-list[aria-hidden="true"]{display:none}
  .cp-tag{white-space:normal}
  .cp-tag-stat{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:10px;row-gap:2px;padding-block:10px;border-radius:var(--r-card)}
  .cp-tag-stat .cp-tag-ic{grid-row:span 2}
  .cp-tag-n{padding-left:0;border-left:0}
}
/* industry pages: the matching client card, right under the hero, icon beside the words */
.cp{background:var(--surface);border-block:1px solid var(--border)}
.cp .section-head{margin-bottom:28px}
.cp h2{font-size:clamp(28px,3.6vw,42px);line-height:1.12;letter-spacing:-.02em}
.cp-grid{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
.cp-grid>li{display:flex;min-width:0}
.cp-card{display:flex;flex-direction:column;gap:6px;width:100%;min-width:0;min-height:44px;padding:20px;border-radius:var(--r-card);background:var(--bg);border:1px solid var(--border);color:var(--fg);text-decoration:none;overflow-wrap:break-word}
.cp-ic{width:48px;height:48px;flex:none;border-radius:14px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-text);margin-bottom:6px}
.cp-ic .i{width:24px;height:24px}
.cp-label{font-size:18px;font-weight:600;line-height:1.3;letter-spacing:-.01em}
.cp-line{font-size:15px;line-height:1.5;color:var(--muted)}
.cp-feature{background:linear-gradient(160deg,rgba(74,222,128,.24),rgba(74,222,128,.07) 55%,var(--surface));border-color:rgba(21,128,61,.28)}
.cp-stat{display:flex;flex-direction:column;gap:4px;margin:4px 0 2px}
.cp-stat b{font-size:clamp(40px,5vw,56px);line-height:1;font-weight:700;letter-spacing:-.04em;color:var(--primary-text)}
.cp-stat span{font-size:16px;font-weight:500;line-height:1.35;color:var(--fg)}
.cp-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:0 24px;margin:20px 0 0}
.cp-foot a{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:15px;font-weight:600;color:var(--primary-text);text-decoration:none}
.cp-foot a .i{width:14px;height:14px}
@media(min-width:960px){
  .cp{padding-block:64px 56px}
  .cp-card{padding:24px}
}
@media(max-width:640px){
  .cp .section-head{margin-bottom:20px}
  .cp-card{padding:14px;border-radius:18px;gap:4px}
  .cp-ic{width:40px;height:40px;border-radius:12px;margin-bottom:4px}
  .cp-ic .i{width:20px;height:20px}
  .cp-label{font-size:15.5px}
  .cp-line{font-size:14px;line-height:1.45}
}
.cp-grid-one{max-width:600px;margin-inline:auto}
.cp-band .cp-card{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:16px;row-gap:2px;align-items:center;padding:20px 22px}
.cp-band .cp-ic{grid-row:span 2;margin:0}

/* QA round 1 (25 Oct 2026): 44px tap targets in the desktop header and footer. */
@media(min-width:1100px){.site-nav>a:not(.btn),.nav-dd>button,.site-header .btn{min-height:44px;display:inline-flex;align-items:center}}
@media(min-width:960px){.site-footer li a{min-height:44px;display:inline-flex;align-items:center;padding:0}}
/* Site QA round 2 (25 Oct): every footer link is at least 44 by 44 on desktop too, the LinkedIn link included. */
.site-footer li a,.footer-legal a{display:inline-flex;align-items:center;min-height:44px;min-width:44px}

/* trust strip, 26 Oct 2026 (Alexander): the connections row keeps the logos, the Meta line and the main button.
   Membership and events sit in their own band under it, with each organiser's own logo at a readable size. */
#trust{padding-block:0}
#trust .trust-main{padding-block:24px}
#trust .trust-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}
#trust .trust-meta p{margin:0}
.seen-band{background:var(--bg);border-top:1px solid var(--border);padding-block:20px}
.seen-band .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}
.seen-h{margin:0;font-size:14px;font-weight:500;color:var(--muted)}
.seen-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.seen-list li{display:flex}
.seen-item{display:flex;align-items:center;gap:12px;min-height:64px;padding:8px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-panel);color:var(--muted);font-size:14px;line-height:1.3;text-decoration:none;box-shadow:var(--shadow-raised)}
.seen-item:hover{color:var(--fg);border-color:var(--border-strong)}
.seen-item img{height:40px;width:auto;flex:none}
.seen-item img[width="44"]{height:44px}
.seen-item img.seen-wide{height:20px}
.seen-item{width:100%}
.seen-band .wrap{flex-direction:column;align-items:stretch}
.seen-h{text-align:center}
.seen-list{justify-content:center}
@media(min-width:1024px){.seen-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.seen-item{justify-content:center}}
@media(max-width:767px){
  #trust .trust-main{padding-block:20px}
  #trust .trust-meta{flex-direction:column;justify-content:center;text-align:center}
  .seen-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .seen-item{flex-direction:column;justify-content:center;gap:8px;width:100%;text-align:center;padding:12px}
}
