@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:400 800;font-display:swap;src:url("../fonts/jakarta-latin.7660bd9909fb.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:400 800;font-display:swap;src:url("../fonts/jakarta-latin-ext.341687eeeb6a.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:400 800;font-display:swap;src:url("../fonts/inter-latin.260c81a4759b.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:400 800;font-display:swap;src:url("../fonts/inter-latin-ext.1ad231aac0a8.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* Fortis Fountain. Restrained and readable: Fortis slate and copper, system fonts,
   one accent used on purpose, everything built for a phone first. */
:root{
  --bg:#f6f8fa; --surface:#fff; --ink:#0f1419; --text:#2a3038; --muted:#5b6470; --subtle:#87909b;
  --line:#e3e7ec; --line-strong:#cbd2da; --slate:#111820; --slate-2:#26303a;
  --copper:#f2c200; --copper-ink:#0a7a4f; --copper-soft:#fdf7d6; --pelqi:#e8956b;
  --ok:#1d7a4c; --ok-soft:#e3f3ea; --warn:#8f560f; --warn-soft:#fbf0dc; --bad:#a3352d; --bad-soft:#fbe9e7;
  --info:#2c5a87; --info-soft:#e6eef7;
  --r:10px; --r-lg:14px; --gap:16px;
  --font:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"Cascadia Mono",Consolas,monospace;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 var(--font)}
a{color:var(--info)}
img{max-width:100%;height:auto}
h1,h2,h3{color:var(--ink);line-height:1.25;margin:0 0 .5rem}
h1{font-size:1.55rem;font-weight:680;letter-spacing:-.01em}
h2{font-size:1.15rem;font-weight:650}
h3{font-size:1rem;font-weight:650}
p{margin:0 0 .75rem}
small,.small{font-size:.875rem}
.muted{color:var(--muted)}
.mono{font-family:var(--mono);font-size:.9em}
:focus-visible{outline:3px solid #7aa6d6;outline-offset:2px;border-radius:4px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:50;background:#fff;padding:8px 12px}

/* ---------- buttons and forms */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 16px;border-radius:9px;
  border:1px solid var(--slate);background:var(--slate);color:#fff;font:600 .95rem var(--font);text-decoration:none;cursor:pointer}
.btn:hover{background:var(--slate-2)}
.btn.secondary{background:#fff;color:var(--ink);border-color:var(--line-strong)}
.btn.secondary:hover{background:#f0f2f1}
.btn.danger{background:#fff;color:var(--bad);border-color:#e3b9b4}
.btn.danger:hover{background:var(--bad-soft)}
.btn.pelqi{background:#fff;color:#7a3a1c;border-color:#efc4ab}
.btn.pelqi:hover{background:var(--copper-soft)}
.btn.small{min-height:36px;padding:0 12px;font-size:.875rem}
.btn.link{background:none;border:0;color:var(--info);padding:0;min-height:0;font-weight:600}
.btn[disabled]{opacity:.55;cursor:not-allowed}
.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
form.inline{display:inline}
label{display:block;font-weight:600;font-size:.92rem;color:var(--ink);margin:0 0 4px}
.field{margin:0 0 14px}
.field .help,.helptext{display:block;color:var(--muted);font-size:.85rem;font-weight:400;margin-top:4px}
input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],input[type=url],
input[type=search],input[type=tel],input[type=file],input:not([type]),select,textarea{
  width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:9px;background:#fff;
  color:var(--ink);font:16px var(--font)}
textarea{min-height:110px;resize:vertical}
input[type=checkbox]{width:20px;height:20px;vertical-align:-4px;margin-right:6px}
.check{display:flex;align-items:flex-start;gap:6px;font-weight:500}
.row{display:grid;grid-template-columns:1fr;gap:12px}
@media(min-width:640px){.row.two{grid-template-columns:1fr 1fr}.row.three{grid-template-columns:1fr 1fr 1fr}}
ul.errorlist{list-style:none;margin:4px 0 0;padding:0;color:var(--bad);font-size:.9rem}
.radio-list label{font-weight:500;display:flex;gap:8px;align-items:center;padding:10px 12px;border:1px solid var(--line);
  border-radius:9px;margin-bottom:8px;background:#fff}
.radio-list ul{list-style:none;padding:0;margin:0}

/* ---------- messages and badges */
.flash{padding:12px 14px;border-radius:var(--r);margin:0 0 16px;border:1px solid;font-weight:500}
.flash.success{background:var(--ok-soft);border-color:#b8dcc7;color:#14523a}
.flash.error{background:var(--bad-soft);border-color:#ecc3be;color:#7f241e}
.flash.info{background:var(--info-soft);border-color:#c3d5ea;color:#1f4469}
.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.78rem;font-weight:650;white-space:nowrap;
  background:#eceff3;color:var(--slate)}
.badge.ok{background:var(--ok-soft);color:var(--ok)}
.badge.warn{background:var(--warn-soft);color:var(--warn)}
.badge.bad{background:var(--bad-soft);color:var(--bad)}
.badge.info{background:var(--info-soft);color:var(--info)}
.badge.pelqi{background:var(--copper-soft);color:#7a3a1c}

/* ---------- surfaces */
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px}
.card + .card{margin-top:var(--gap)}
.grid > .card + .card,.grid > * > .card:first-child,.directory > .card + .card{margin-top:0}
.card h2{margin-bottom:.75rem}
.card-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px}
.card-head h2{margin:0}
.grid{display:grid;gap:var(--gap);grid-template-columns:1fr}
@media(min-width:900px){.grid.two{grid-template-columns:1fr 1fr}.grid.main-side{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}}
.list{list-style:none;margin:0;padding:0}
.list > li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.list > li:first-child{border-top:0;padding-top:4px}
.list .main{min-width:0}
.list .main b,.list .main a.title{display:block;color:var(--ink);font-weight:600;text-decoration:none;overflow-wrap:anywhere}
.list .main span{color:var(--muted);font-size:.9rem}
.empty{color:var(--muted);padding:6px 0}
dl.facts{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:0}
dl.facts dt{color:var(--muted)}dl.facts dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
.figures{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(min-width:760px){.figures{grid-template-columns:repeat(4,1fr)}}
.figure{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px 16px}
.figure b{display:block;font-size:1.5rem;color:var(--ink);font-variant-numeric:tabular-nums}
.figure span{color:var(--muted);font-size:.88rem}
table.data{width:100%;border-collapse:collapse;font-size:.95rem}
table.data th,table.data td{text-align:left;padding:10px 8px;border-top:1px solid var(--line);vertical-align:top}
table.data th{color:var(--muted);font-weight:600;font-size:.82rem;border-top:0}
table.data td.num,table.data th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.table-wrap{overflow-x:auto}
blockquote.customer-text{margin:8px 0 0;padding:10px 12px;border-left:3px solid var(--line-strong);background:#f6f8fa;
  color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:0 8px 8px 0}
.timeline{list-style:none;margin:0;padding:0}
.timeline li{padding:8px 0 8px 16px;border-left:2px solid var(--line);margin-left:4px;position:relative}
.timeline li::before{content:"";position:absolute;left:-6px;top:14px;width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--line-strong)}
.timeline small{color:var(--muted);display:block}
.steps{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 4px;padding:0;list-style:none}
.steps li{font-size:.82rem;padding:4px 10px;border-radius:999px;background:#eceff3;color:var(--muted)}
.steps li.done{background:var(--ok-soft);color:var(--ok)}
.steps li.now{background:var(--slate);color:#fff}

/* ---------- owner app shell */
.app{min-height:100vh;padding-bottom:76px}
.topbar{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;
  gap:12px;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;min-height:calc(58px + env(safe-area-inset-top))}
.topbar .ws{font-weight:700;color:var(--ink);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}
.topbar .ws small{display:block;font-weight:500;color:var(--muted);font-size:.78rem}
.topbar .bell{position:relative;text-decoration:none;color:var(--ink)}
.dot{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--copper);
  color:#fff;font-size:.72rem;font-weight:700}
.sidenav{display:none}
.content{padding:18px 16px 28px;max-width:1180px;margin:0 auto}
.page-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:18px}
.page-head p{margin:2px 0 0;color:var(--muted)}
.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid var(--line);display:grid;
  grid-template-columns:repeat(5,1fr);padding-bottom:env(safe-area-inset-bottom)}
.tabbar a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 2px 9px;font-size:.72rem;font-weight:600;
  color:var(--muted);text-decoration:none;min-height:58px;justify-content:center}
.tabbar a svg{width:22px;height:22px}
.tabbar a[aria-current=page]{color:var(--slate)}
.tabbar a[aria-current=page] svg{color:var(--copper)}
/* More on phones: a sheet that slides up over the tab bar */
.more-scrim{position:fixed;inset:0;z-index:74;background:rgba(3,8,9,.48);opacity:0;transition:opacity .25s}
.more-scrim.open{opacity:1}
.more-menu{position:fixed;left:0;right:0;bottom:0;z-index:75;max-height:min(78vh,640px);overflow-y:auto;overscroll-behavior:contain;
  background:#fff;border-radius:22px 22px 0 0;padding:0 14px calc(14px + env(safe-area-inset-bottom));
  transform:translateY(105%);transition:transform .28s cubic-bezier(.2,.8,.2,1);box-shadow:0 -18px 50px rgba(3,8,9,.28)}
.more-menu.open{transform:translateY(0)}
.more-menu.dragging{transition:none}
.more-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:22px 4px 10px;
  background:inherit;touch-action:none;cursor:grab}
.more-grab{position:absolute;left:50%;top:8px;width:40px;height:5px;margin-left:-20px;border-radius:3px;background:rgba(127,140,140,.45)}
.more-head b{font-size:1.05rem}
.more-close{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:rgba(127,140,140,.16);color:inherit;cursor:pointer}
.more-close svg{width:18px;height:18px}
.more-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 8px}
.more-grid a{display:flex;align-items:center;gap:12px;min-height:50px;padding:10px;border-radius:12px;color:var(--ink);text-decoration:none;font-weight:600;font-size:.95rem}
.more-grid a svg,.more-grid a .more-pq{flex:none;width:20px;height:20px}
.more-grid a:hover,.more-grid a[aria-current=page]{background:#eef2f6}
.more-out{margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}
.more-out .btn.link{width:100%;justify-content:flex-start;padding:12px 10px;font-weight:600}
html.more-open{overflow:hidden}
@media(prefers-reduced-motion:reduce){.more-menu,.more-scrim{transition:none}}
@media(min-width:1000px){
  .app{display:grid;grid-template-columns:240px 1fr;padding-bottom:0}
  .tabbar,.more-menu,.more-toggle{display:none!important}
  .topbar{grid-column:1/-1}
  .sidenav{display:block;position:sticky;top:58px;align-self:start;height:calc(100vh - 58px);overflow:auto;
    border-right:1px solid var(--line);background:#fff;padding:14px 10px}
  .sidenav a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;color:var(--text);text-decoration:none;font-weight:550}
  .sidenav a svg{width:18px;height:18px;color:var(--subtle)}
  .sidenav a:hover{background:#eef2f6}
  .sidenav a[aria-current=page]{background:#edf1f5;color:var(--ink);font-weight:650}
  .sidenav a[aria-current=page] svg{color:var(--copper)}
  .sidenav .group{margin:14px 12px 6px;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--subtle)}
  .content{padding:26px 28px 40px}
}
.ws-switch select{min-height:36px;padding:4px 8px;font-size:.85rem;width:auto}

/* ---------- PelQi */
.pelqi-mark{width:22px;height:22px;flex:none}
.pelqi-card{border-color:#f0d3c3;background:linear-gradient(180deg,#fffaf7,#fff)}
.preview{background:#fafbfc;border:1px dashed var(--line-strong);border-radius:var(--r);padding:12px 14px;font-size:.93rem}
.preview pre{white-space:pre-wrap;font:inherit;margin:0}
.result-section{margin:0 0 14px}
.result-section h3{font-size:.95rem;margin-bottom:4px}

/* ---------- public pages */
.pub{background:#f6f8fa}
.pub-header{background:#fff;border-bottom:1px solid var(--line)}
.pub-header .inner,.pub-main{max-width:1080px;margin:0 auto;padding:14px 16px}
.pub-header .inner{display:flex;justify-content:space-between;align-items:center;gap:12px}
.pub-header .name{font-weight:700;color:var(--ink);text-decoration:none;font-size:1.05rem}
.pub-main{padding-top:24px;padding-bottom:48px}
.notice{background:var(--warn-soft);border:1px solid #edd6ac;color:#5f3c09;border-radius:var(--r);padding:12px 14px;margin:0 0 18px;font-weight:550}
.preview-bar{position:sticky;top:0;z-index:40;background:var(--slate);color:#fff;padding:10px 16px;display:flex;gap:12px;
  justify-content:space-between;align-items:center;flex-wrap:wrap;font-weight:600}
.preview-bar a{color:#fff}
.sf-intro{display:grid;gap:18px;margin-bottom:28px}
.sf-intro h1{font-size:clamp(1.6rem,4vw,2.3rem);font-weight:700;max-width:22ch}
.sf-intro .lede{font-size:1.08rem;color:var(--text);max-width:62ch;white-space:pre-line}
.sf-meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--muted);font-size:.93rem}

/* Editorial gallery: a lead image and a calm grid, captions under the pictures. */
.gallery-editorial{display:grid;gap:10px;margin:0 0 32px;grid-template-columns:1fr}
.gallery-editorial figure{margin:0}
.gallery-editorial img{display:block;width:100%;height:100%;object-fit:cover;border-radius:12px;background:#e9ece9}
.gallery-editorial figcaption{font-size:.86rem;color:var(--muted);padding:6px 2px 0}
.gallery-editorial .lead img{aspect-ratio:16/10}
.gallery-editorial .rest{display:grid;gap:10px;grid-template-columns:1fr 1fr}
.gallery-editorial .rest img{aspect-ratio:4/3}
@media(min-width:820px){
  .gallery-editorial{grid-template-columns:1.55fr 1fr}
  .gallery-editorial{align-items:start}
  .gallery-editorial .lead img{aspect-ratio:auto;height:440px}
  .gallery-editorial .rest{grid-template-columns:1fr}
  .gallery-editorial .rest.many{grid-template-columns:1fr 1fr}
  .gallery-editorial .rest img{aspect-ratio:auto;height:201px}
}
/* Grid gallery: even tiles. */
.gallery-grid{display:grid;gap:10px;margin:0 0 32px;grid-template-columns:repeat(2,1fr)}
@media(min-width:760px){.gallery-grid{grid-template-columns:repeat(3,1fr);gap:12px}}
.gallery-grid figure{margin:0}
.gallery-grid img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:10px;background:#e9ece9}
.gallery-grid figcaption{font-size:.84rem;color:var(--muted);padding:5px 2px 0}
/* Showcase gallery: one picture at a time, the next one peeking in. */
.gallery-showcase{display:grid;grid-auto-flow:column;grid-auto-columns:88%;gap:12px;overflow-x:auto;
  scroll-snap-type:x mandatory;overscroll-behavior-x:contain;margin:0 0 32px;padding-bottom:8px;scrollbar-width:thin}
.gallery-showcase:focus-visible{outline:2px solid var(--copper);outline-offset:4px}
@media(min-width:900px){.gallery-showcase{grid-auto-columns:76%}}
.gallery-showcase figure{margin:0;scroll-snap-align:start}
.gallery-showcase img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:14px;background:#e9ece9}
@media(min-width:900px){.gallery-showcase img{aspect-ratio:16/9}}
.gallery-showcase figcaption{font-size:.92rem;color:var(--text);padding:8px 2px 0}
.gallery-showcase .count{color:var(--muted);font-variant-numeric:tabular-nums;margin-right:10px}
/* Story gallery: pictures and captions alternating down the page. */
.gallery-story{display:grid;gap:22px;margin:0 0 36px}
.gallery-story figure{margin:0;display:grid;gap:10px;align-items:center}
.gallery-story img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:14px;background:#e9ece9}
.gallery-story figcaption{font-size:1.04rem;color:var(--text);max-width:46ch}
@media(min-width:820px){
  .gallery-story figure{grid-template-columns:1.35fr 1fr;gap:28px}
  .gallery-story figure.flip{grid-template-columns:1fr 1.35fr}
  .gallery-story figure.flip img{order:2}
  .gallery-story figure.bare{grid-template-columns:1fr}
}
/* Branding. */
.brandmark{display:inline-flex;align-items:center;gap:10px}
.brand-logo{height:34px;width:auto;max-width:140px;object-fit:contain;display:block}
.branded .pub-header{border-top:4px solid var(--brand)}
.branded .btn:not(.secondary):not(.link):not(.pelqi):not(.danger){background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}
.branded .btn:not(.secondary):not(.link):not(.pelqi):not(.danger):hover{filter:brightness(.94)}
.branded .stars{color:var(--brand)}
.brand-row{display:flex;gap:14px;align-items:center;margin-bottom:12px}
.brand-preview{width:88px;height:56px;object-fit:contain;border:1px solid var(--line);border-radius:8px;background:#fff;padding:4px}
.brand-preview.empty{display:grid;place-items:center;font-size:.78rem;color:var(--muted)}
.setup-banner{border-left:4px solid var(--copper)}
/* Platform page. */
.platform-stack{display:grid;gap:var(--gap);margin-top:var(--gap)}
.platform-stack > .card + .card{margin-top:0}
.platform-table td{vertical-align:top}
.pilot-figures{margin:12px 0 6px}
@media(min-width:760px){.pilot-figures{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1100px){.pilot-figures{grid-template-columns:repeat(6,1fr)}}
/* Insights. */
.funnel{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.funnel li{display:grid;grid-template-columns:9.5rem 1fr 2.5rem;gap:10px;align-items:center}
.funnel .label{font-size:.9rem}
.funnel .bar{height:12px;background:#eef1ef;border-radius:6px;overflow:hidden}
.funnel .bar i{display:block;height:100%;background:var(--slate);border-radius:6px}
.funnel b{text-align:right;font-variant-numeric:tabular-nums}
.months{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;align-items:end;height:170px}
.month{display:grid;grid-template-rows:1fr auto;height:100%;gap:4px}
.month .bars{display:flex;gap:2px;align-items:flex-end;justify-content:center}
.month .bars i{display:block;width:40%;max-width:14px;border-radius:3px 3px 0 0;min-height:1px}
.month .m{font-size:.72rem;color:var(--muted);text-align:center}
.inc{background:var(--slate)}
.exp{background:#d9a17f}
.key{display:inline-block;width:10px;height:10px;border-radius:2px;margin:0 4px 0 10px;vertical-align:-1px}
.key.inc{margin-left:0}
.heat{border-collapse:separate;border-spacing:3px;font-size:.78rem}
.heat th{font-weight:600;color:var(--muted);padding:2px 4px;text-align:center}
.heat td{width:30px;height:26px;text-align:center;border-radius:4px;background:#eef2f6;color:var(--ink)}
.heat td.l1{background:#e3eae6}.heat td.l2{background:#b9cdc2}.heat td.l3{background:#7fa595;color:#fff}.heat td.l4{background:var(--slate);color:#fff}
/* Reviews. */
.stars{color:var(--copper-ink);letter-spacing:1px;font-size:1rem;white-space:nowrap}
.reviews{margin:0 0 32px}
.review-summary{margin:0 0 14px;color:var(--text)}
.review{border-top:1px solid var(--line);padding:14px 0}
.review-body{margin:6px 0 0;white-space:pre-line;max-width:70ch}
.review-reply{margin:10px 0 0 14px;padding:8px 12px;border-left:3px solid var(--line-strong);background:#f6f8fa;border-radius:0 8px 8px 0}
.review-reply p{margin:4px 0 0;white-space:pre-line}
.review-card .card-head{flex-wrap:wrap}
.stars-input{border:0;padding:0;margin:0 0 14px}
.stars-input legend{font-weight:600;margin-bottom:6px;padding:0}
.stars-row{display:inline-flex;flex-direction:row-reverse;gap:4px}
.stars-input input{position:absolute;opacity:0;width:1px;height:1px}
.stars-input label{font-size:2rem;line-height:1;color:#c9cfcc;cursor:pointer}
.stars-input label::before{content:"\2605"}
.stars-input input:checked ~ label,.stars-input label:hover,.stars-input label:hover ~ label{color:var(--copper-ink)}
.stars-input input:focus-visible + label{outline:2px solid var(--copper);outline-offset:2px;border-radius:4px}
/* Layout chooser in the storefront editor. */
.layouts{border:0;margin:0;padding:0;display:grid;gap:8px}
.layout-opt{display:grid;grid-template-columns:auto 72px 1fr;gap:12px;align-items:center;padding:10px 12px;
  border:1px solid var(--line);border-radius:10px;cursor:pointer;font-weight:500}
.layout-opt:has(input:checked){border-color:var(--slate);background:#f1f4f7}
.layout-opt b{display:block;color:var(--ink)}
.schematic{display:grid;gap:3px;width:72px;height:48px}
.schematic i{background:#cfd6d2;border-radius:3px}
.s-editorial{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr}
.s-editorial i:first-child{grid-row:span 2}
.s-editorial i:nth-child(4){display:none}
.s-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:1fr 1fr}
.s-showcase{grid-template-columns:5fr 1fr;grid-template-rows:1fr}
.s-showcase i:nth-child(n+3){display:none}
.s-story{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}
.s-story i:nth-child(2),.s-story i:nth-child(3){background:transparent;border:2px solid #cfd6d2}
.offerings{display:grid;gap:12px;grid-template-columns:1fr;margin-bottom:32px}
@media(min-width:760px){.offerings{grid-template-columns:1fr 1fr}}
.offering{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 18px;display:flex;flex-direction:column;gap:6px}
.offering .top{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.offering .price{font-weight:700;color:var(--ink);white-space:nowrap}
.offering p{color:var(--muted);margin:0}
.offering .btn{align-self:flex-start;margin-top:6px}
.request{max-width:720px}
.pub-footer{border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}
.pub-footer .inner{max-width:1080px;margin:0 auto;padding:18px 16px;display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.pub-footer img{width:22px;height:22px;vertical-align:-6px;margin-right:6px}
.dir-search{display:grid;gap:10px;margin:12px 0 14px;grid-template-columns:1fr}
@media(min-width:760px){.dir-search{grid-template-columns:2fr 1.2fr 1fr auto;align-items:end}}
.dir-search label{font-size:.85rem;font-weight:600}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px;padding:0;list-style:none}
.chips a{display:inline-block;padding:6px 12px;border:1px solid var(--line-strong);border-radius:999px;color:var(--ink);
  text-decoration:none;font-size:.88rem;background:#fff}
.chips a[aria-current="true"]{background:var(--slate);border-color:var(--slate);color:#fff}
.chips .n{color:var(--muted);margin-left:4px}
.chips a[aria-current="true"] .n{color:#d7dedb}
.listing{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:inherit}
.listing h2{margin:0}
.listing .meta{font-size:.86rem;color:var(--muted)}
.listing .meta .stars{font-size:.86rem}
.listing .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.listing .tags span{font-size:.78rem;background:#eef1ef;color:var(--text);padding:3px 9px;border-radius:999px}
.dir-count{color:var(--muted);margin:0 0 10px}
.directory{display:grid;gap:12px;grid-template-columns:1fr}
@media(min-width:760px){.directory{grid-template-columns:1fr 1fr}}
.sandbox-bar{background:#fff5d6;border-bottom:1px solid #ecd798;color:#5f4a07;text-align:center;padding:10px 16px;font-weight:650}
.checkout{max-width:460px;margin:28px auto;padding:0 16px}
.home-hero{max-width:880px;margin:0 auto;padding:40px 0 8px}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700;color:var(--copper-ink);margin:0 0 8px}
.industries{margin:36px 0 8px}
.industries h2{margin-bottom:14px}
.industry-grid{display:grid;gap:12px;grid-template-columns:1fr}
@media(min-width:640px){.industry-grid{grid-template-columns:1fr 1fr}}
@media(min-width:980px){.industry-grid{grid-template-columns:repeat(3,1fr)}}
.industry-card{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid var(--line);border-radius:var(--r-lg);
  background:#fff;color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.industry-card:hover{border-color:var(--line-strong);box-shadow:0 4px 18px rgba(28,40,44,.07)}
.industry-card h3{margin:4px 0 0;font-size:1.08rem}
.industry-card p{margin:0;color:var(--text)}
.industry-card .go{margin-top:auto;padding-top:6px;color:var(--copper-ink);font-weight:600;font-size:.9rem}
.industry-card.off{background:#fafbfc}
.industry-card .badge{align-self:flex-start;margin-top:auto}
.ico{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--copper-soft);color:#7a3a1c}
.ico svg{width:22px;height:22px}
.ico.big{width:56px;height:56px;border-radius:14px}.ico.big svg{width:30px;height:30px}
.home-band{display:grid;gap:12px;grid-template-columns:1fr;margin:28px 0 0}
@media(min-width:820px){.home-band{grid-template-columns:repeat(3,1fr)}}
.home-band > div{padding:16px 2px;border-top:2px solid var(--slate)}
.home-band h3{font-size:1rem;margin-bottom:6px}
.home-band p{margin:0;color:var(--text)}
.industry-hero{display:grid;gap:16px;grid-template-columns:1fr;margin:8px 0 22px}
@media(min-width:720px){.industry-hero{grid-template-columns:auto 1fr}}
.industry-hero h1{margin:0 0 6px}
.industry-hero .notice{margin:12px 0}
.crumbs{margin:6px 0 10px}.crumbs a{color:var(--muted)}
.steps-list{margin:0;padding-left:18px;display:grid;gap:8px}
.auth.wide{max-width:640px}
.industry-pick{border:0;padding:0;margin:0 0 14px;display:grid;gap:8px}
.industry-pick legend{font-weight:600;margin-bottom:6px;padding:0}
.industry-opt{display:grid;grid-template-columns:auto auto 1fr;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--line);
  border-radius:10px;cursor:pointer;font-weight:500}
.industry-opt .ico{width:34px;height:34px}.industry-opt .ico svg{width:19px;height:19px}
.industry-opt b{display:block;color:var(--ink)}
.industry-opt .badge{margin-top:4px}
.industry-opt:has(input:checked){border-color:var(--slate);background:#f1f4f7}
.industry-opt.off{opacity:.62;cursor:not-allowed}
.home-hero h1{font-size:clamp(1.7rem,4.5vw,2.5rem);max-width:20ch}
.home-hero p{font-size:1.1rem;color:var(--muted);max-width:60ch}
.auth{max-width:440px;margin:32px auto;padding:0 16px}

.btn.small{white-space:nowrap}

/* Calendar: a time grid on wider screens; the week becomes a day-by-day list on phones. */
.cal-filter{margin:0 0 10px}
.cal-key{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;color:var(--muted);margin:0 0 10px}
.cal-chip{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:4px;vertical-align:-1px;border:1px solid;border-left-width:3px}
.cal{padding:0;overflow:hidden}
.cal-head{display:grid;grid-template-columns:52px repeat(var(--cols,7),1fr);border-bottom:1px solid var(--line);background:#fafbfa}
.cal-day .cal-head,.cal-day .cal-body{--cols:1}
.cal-head a{padding:8px 6px;text-align:center;color:var(--muted);text-decoration:none;font-size:.82rem;border-left:1px solid var(--line)}
.cal-head a b{display:block;color:var(--ink);font-size:1.05rem}
.cal-head a.today b{color:var(--copper-ink)}
.cal-body{display:grid;grid-template-columns:52px repeat(var(--cols,7),1fr);height:calc(var(--rows) * 52px);position:relative}
.cal-hours{display:grid;grid-template-rows:repeat(var(--rows),1fr)}
.cal-hours span{font-size:.72rem;color:var(--muted);text-align:right;padding:2px 6px 0 0}
.cal-col{position:relative;border-left:1px solid var(--line);
  background-image:linear-gradient(to bottom,var(--line) 1px,transparent 1px);background-size:100% calc(100% / var(--rows))}
.cal-col.today{background-color:#fffaf7}
.cal-item{position:absolute;box-sizing:border-box;padding:3px 6px;border-radius:6px;font-size:.75rem;line-height:1.25;
  overflow:hidden;text-decoration:none;color:var(--ink);border:1px solid;border-left-width:3px;margin:1px 2px 0 1px}
.cal-item b{display:block;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-item span{display:block;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-item:hover,.cal-item:focus{z-index:2;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.st-confirmed{background:#eaf5ef;border-color:#9fcdb3}
.st-held,.st-awaiting_payment,.st-needs_attention{background:#fdf4e4;border-color:#e6c27f}
.st-needs_attention{border-color:#d9897f}
.st-requested{background:#fff;border-color:#9db7d6;border-style:dashed}
.st-completed{background:#f1f2f1;border-color:#c9cdca}
.cal-agenda{display:none}
@media(max-width:759px){
  .cal-week{display:none}
  .cal-week ~ .cal-agenda{display:block}
}
.cal-day ~ .cal-agenda{display:none}
.codes{columns:2;list-style:none;padding:0;margin:10px 0 0;font-size:1rem}
.codes li{padding:4px 0}
.qr{width:200px;max-width:100%;margin:6px 0 10px;background:#fff;padding:6px;border:1px solid var(--line);border-radius:8px}
.qr svg{display:block;width:100%;height:auto}
details summary{cursor:pointer;color:var(--info);font-weight:600;margin-top:6px}

/* ---------- ENG-147: home and industry pages show the working app */
.home-hero{max-width:none;display:grid;gap:28px;grid-template-columns:1fr;align-items:center;padding:36px 0 12px}
@media(min-width:980px){.home-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:40px}}
.hero-points{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:6px;color:var(--text);font-size:.95rem}
.hero-points li{padding-left:22px;position:relative}
.hero-points li::before,.ticks li::before{content:"";position:absolute;left:2px;top:.45em;width:11px;height:6px;border-left:2px solid var(--ok);border-bottom:2px solid var(--ok);transform:rotate(-45deg)}
.hero-shot{position:relative;margin:0;padding:0 0 92px}
.hero-shot figcaption{position:absolute;left:0;bottom:0}
.mock-window{background:var(--surface);border:1px solid var(--line-strong);border-radius:14px;box-shadow:0 24px 60px rgba(28,40,44,.14),0 2px 6px rgba(28,40,44,.06);overflow:hidden;font-size:.82rem}
.mock-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;background:#eceff3;border-bottom:1px solid var(--line)}
.mock-bar i{width:9px;height:9px;border-radius:50%;background:#cfd5d2}
.mock-bar span{margin-left:10px;color:var(--subtle);font-size:.75rem;background:#fff;border-radius:6px;padding:2px 10px}
.mock-body{display:grid;grid-template-columns:150px 1fr;min-height:300px}
.mock-side{border-right:1px solid var(--line);padding:12px 8px;display:flex;flex-direction:column;gap:2px}
.mock-side .mock-biz{font-size:.78rem;color:var(--ink);padding:0 6px 8px}
.mock-side span{display:flex;align-items:center;gap:7px;padding:6px;border-radius:6px;color:var(--text)}
.mock-side span svg{width:14px;height:14px;color:var(--subtle)}
.mock-side span.on{background:#edf1f5;font-weight:650;color:var(--ink)}.mock-side span.on svg{color:var(--copper)}
.mock-main{padding:14px;background:var(--bg);display:grid;gap:10px;align-content:start}
.mock-h{font-size:1rem;color:var(--ink)}
.mock-figs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mock-figs div{background:#fff;border:1px solid var(--line);border-radius:9px;padding:8px 10px}
.mock-figs b{display:block;font-size:1.05rem;color:var(--ink)}.mock-figs span{color:var(--muted);font-size:.72rem}
.mock-card,.mock-panel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.mock-ch{font-weight:650;color:var(--ink);margin-bottom:4px}
.mock-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 0;border-top:1px solid #eceff3}
.mock-row:first-of-type{border-top:0}
.mock-row b,.mock-approve b{display:block;color:var(--ink)}
.mock-row i,.mock-approve i,.mini i,.pay-float i{display:block;font-style:normal;color:var(--muted);font-size:.74rem}
.mock-row em,.mini .badge{font-style:normal}
.mock-float{position:absolute;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px rgba(28,40,44,.16);padding:12px 14px;font-size:.8rem;display:grid;gap:4px}
.pelqi-float{right:-14px;bottom:28px;width:260px;border-color:#efc4ab;background:linear-gradient(180deg,#fffaf7,#fff)}
.pelqi-float b{display:flex;align-items:center;gap:6px;color:#7a3a1c}
.pay-float{left:-18px;bottom:44px;display:flex;align-items:center;gap:10px}
.pay-float b{color:var(--ink)}
.live-dot{width:9px;height:9px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 4px var(--ok-soft);flex:none}
.mock-btns{display:flex;gap:6px;margin-top:4px}
.mock-btn{display:inline-block;background:var(--slate);color:#fff;border-radius:7px;padding:4px 10px;font-weight:600;font-size:.74rem}
.mock-btn.ghost{background:#fff;color:var(--ink);border:1px solid var(--line-strong)}
@media(max-width:700px){.mock-body{grid-template-columns:1fr}.mock-side{display:none}
  .mock-float{position:static;width:auto;margin-top:10px}.hero-shot{padding-bottom:0}.hero-shot figcaption{position:static;margin-top:10px}}
.home-section{margin:56px 0 0}
.section-head{max-width:68ch;margin-bottom:18px}
.section-head h2,.home-section h2{font-size:clamp(1.3rem,2.6vw,1.65rem)}
.section-head p{color:var(--muted);margin:0}
.flow{display:grid;gap:12px;grid-template-columns:1fr}
@media(min-width:700px){.flow{grid-template-columns:1fr 1fr}}
@media(min-width:1040px){.flow{grid-template-columns:repeat(4,1fr)}}
.flow-step{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;display:flex;flex-direction:column;gap:4px}
.flow-step p{color:var(--text);font-size:.93rem}
.flow-step .eyebrow{margin:0}
.mini{margin-top:auto;display:grid;grid-template-columns:auto 1fr auto;gap:2px 8px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:9px 10px;font-size:.8rem}
.mini b{color:var(--ink)}.mini i{grid-column:1/-1}.mini strong{color:var(--ink);font-variant-numeric:tabular-nums}
.mini .badge{grid-row:1}
.split{display:grid;gap:28px;grid-template-columns:1fr;align-items:center}
@media(min-width:900px){.split{grid-template-columns:1fr 1fr;gap:48px}.split.reverse > :first-child{order:2}}
.ticks{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.ticks li{padding-left:22px;position:relative}
.mock-panel{padding:16px;box-shadow:0 16px 40px rgba(28,40,44,.10);font-size:.85rem}
.mock-approve{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-top:1px solid #eceff3}
.mock-approve .mock-btns{flex:none;margin:0}
@media(max-width:520px){.mock-approve{flex-direction:column;align-items:flex-start}}
.mock-history{display:flex;align-items:center;gap:10px;margin-top:8px;padding-top:10px;border-top:1px solid #eceff3;color:var(--muted);font-size:.78rem}
.mock-portal{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 16px 40px rgba(28,40,44,.10);max-width:440px;justify-self:center;width:100%}
.mp-head{display:flex;align-items:center;gap:10px;padding:12px 16px;border-top:4px solid var(--brand);border-bottom:1px solid var(--line)}
.mp-head b{color:var(--ink)}
.mono-mark{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--brand,var(--slate));color:var(--brand-ink,#fff);font-size:.72rem;font-weight:700;flex:none}
.mp-body{padding:14px 16px;display:grid;gap:8px}
.mp-line{display:flex;justify-content:space-between;gap:12px;font-variant-numeric:tabular-nums}
.mp-line b{color:var(--ink)}
.mp-line.sub{color:var(--muted);font-size:.9rem;padding-left:10px;border-left:2px solid var(--line)}
.mp-btn{margin-top:6px;display:block;text-align:center;background:var(--brand);color:var(--brand-ink);border-radius:9px;padding:10px;font-weight:650}
.mock-quote{display:grid;gap:8px;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px;margin-bottom:10px}
.example-grid{display:grid;gap:14px;grid-template-columns:1fr}
@media(min-width:640px){.example-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1000px){.example-grid{grid-template-columns:repeat(3,1fr)}}
.example-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;text-decoration:none;color:var(--text);border-top:4px solid var(--brand,var(--slate))}
.example-card:hover{box-shadow:0 6px 22px rgba(28,40,44,.10);border-color:var(--line-strong)}
.example-card > img,.example-card .ph{width:100%;aspect-ratio:16/9;object-fit:cover;background:#e9ecea;display:block}
.ex-body{display:flex;flex-direction:column;gap:4px;padding:14px 16px 16px;flex:1}
.ex-name{display:flex;align-items:center;gap:8px}.ex-name b{color:var(--ink)}
.ex-logo{width:30px;height:30px;border-radius:50%;object-fit:cover}
.ex-head{color:var(--text)}
.example-card .go{margin-top:auto;padding-top:6px;color:var(--copper-ink);font-weight:600;font-size:.9rem}
.example-card.wide{display:grid;grid-template-columns:1fr}
@media(min-width:760px){.example-card.wide{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.example-card.wide > img{height:100%;aspect-ratio:auto}}
.faq{max-width:780px}
.faq details{border-bottom:1px solid var(--line);padding:14px 2px}
.faq summary{cursor:pointer;font-weight:650;color:var(--ink)}
.faq details p{margin:8px 0 0;color:var(--text)}
.cta-band{margin:56px 0 0;background:var(--slate);color:#e9eeec;border-radius:18px;padding:28px;display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;align-items:center}
.cta-band h2{color:#fff;margin-bottom:4px}.cta-band p{margin:0;color:#c9d3cf}
.btn.light{background:#fff;color:var(--slate);border-color:#fff}.btn.light:hover{background:#edf1f5}
.btn.ghost-light{background:transparent;color:#fff;border-color:#7d8d93}.btn.ghost-light:hover{background:var(--slate-2)}
.other-links{display:flex;flex-wrap:wrap;gap:8px}
.other-links a{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);text-decoration:none;font-weight:550;font-size:.9rem}
.other-links a svg{width:16px;height:16px;color:var(--copper)}
.other-links a:hover{border-color:var(--line-strong)}
.stack{display:grid;gap:var(--gap);align-content:start}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 10px}
.chip{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border-radius:999px;border:1px solid #efc4ab;background:#fff;color:#7a3a1c;font:600 .86rem var(--font);cursor:pointer}
.chip:hover{background:var(--copper-soft)}
.chips.static .chip{cursor:default}
.dash-pelqi{margin:0 0 16px}
@media(max-width:760px){.hide-sm{display:none}}
.brand-ph{display:grid!important;place-content:center;justify-items:center;gap:10px;background:linear-gradient(135deg,var(--brand,var(--slate)),color-mix(in srgb,var(--brand,var(--slate)) 62%,#000))!important;color:var(--brand-ink,#fff)}
.brand-ph svg{width:44px;height:44px;opacity:.9}
.brand-ph b{font-size:1.05rem;letter-spacing:.01em;opacity:.95}

/* ---------- ENG-148: industry photos and video */
.industry-card.has-photo{padding-top:0;overflow:hidden}
.industry-card .card-photo{display:block;width:calc(100% + 36px);max-width:none;margin:0 -18px 6px;aspect-ratio:16/9;object-fit:cover}
.industry-card.has-photo .ico{margin-top:-30px;position:relative;background:#fff;box-shadow:0 2px 8px rgba(28,40,44,.12)}
.industry-card.off .card-photo{filter:grayscale(.55)}
.reel{margin:56px 0 0}
.reel-stage{position:relative;border-radius:20px;overflow:hidden;background:#11181b;aspect-ratio:16/9;min-height:420px;max-height:640px;width:100%}
.reel-slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .7s ease;pointer-events:none}
.reel-slide.on{opacity:1;pointer-events:auto}
.reel-slide video,.reel-slide img{width:100%;height:100%;object-fit:cover;display:block}
.reel-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,15,17,.55) 0%,rgba(10,15,17,0) 30%,rgba(10,15,17,0) 45%,rgba(10,15,17,.82) 100%)}
.reel-slide figcaption{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:28px;color:#eef2f0;max-width:640px}
.reel-slide figcaption h3{color:#fff;font-size:clamp(1.4rem,3vw,2rem);margin:2px 0 6px}
.reel-slide figcaption p{color:#d6dfdb;margin-bottom:14px}
.reel-slide .eyebrow{color:#f3b48f}
.reel-head{position:absolute;top:0;left:0;right:0;z-index:2;padding:22px 28px;pointer-events:none}
.reel-head h2{color:#fff;margin:0;font-size:clamp(1.1rem,2.2vw,1.4rem)}
.reel-tabs{display:flex;flex-wrap:wrap;gap:8px;padding:12px 2px 4px}
.reel-tabs a{display:inline-flex;align-items:center;gap:8px;flex:none;padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:none;font-weight:600;font-size:.9rem}
.reel-tabs a svg{width:16px;height:16px;color:var(--copper)}
.reel-tabs a[aria-selected=true]{background:var(--slate);border-color:var(--slate);color:#fff}
.reel-tabs a[aria-selected=true] svg{color:#f3b48f}
@media(max-width:700px){.reel-stage{aspect-ratio:4/5;min-height:0}.reel-slide figcaption{padding:20px}}
.industry-hero.with-media{position:relative;overflow:hidden;border-radius:20px;padding:56px 32px 36px;min-height:380px;align-content:end;color:#eef2f0;background:#11181b}
.industry-hero.with-media .hero-media{position:absolute;inset:0}
.industry-hero.with-media .hero-media video,.industry-hero.with-media .hero-media img{width:100%;height:100%;object-fit:cover;display:block}
.industry-hero.with-media .hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,15,17,.86) 0%,rgba(10,15,17,.6) 45%,rgba(10,15,17,.15) 100%)}
.industry-hero.with-media > .ico,.industry-hero.with-media > .hero-text{position:relative;z-index:1}
.industry-hero.with-media h1{color:#fff;font-size:clamp(1.8rem,4vw,2.6rem)}
.industry-hero.with-media .lede{color:#f1f4f3;font-size:1.12rem;max-width:52ch}
.industry-hero.with-media .who{color:#c8d3cf;max-width:60ch}
.industry-hero.with-media .ico.big{background:rgba(255,255,255,.92)}
.industry-hero.with-media .btn.secondary{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.55)}
.industry-hero.with-media .btn.secondary:hover{background:rgba(255,255,255,.22)}
.industry-hero.with-media .btn:not(.secondary){background:#fff;color:var(--slate);border-color:#fff}
.industry-hero.with-media .notice{background:rgba(255,255,255,.94);color:var(--text)}
@media(max-width:700px){.industry-hero.with-media{padding:40px 20px 24px;min-height:0}.industry-hero.with-media .hero-media::after{background:linear-gradient(180deg,rgba(10,15,17,.55),rgba(10,15,17,.88))}}
@media(prefers-reduced-motion:reduce){.reel-slide{transition:none}}

/* ---------- ENG-149: multi-page site */
.site .pub-header{position:sticky;top:0;z-index:20}
.site .pub-header .inner{max-width:1180px;flex-wrap:wrap}
.site .pub-main{max-width:1180px}
.site-brand{display:inline-flex;align-items:center;gap:8px}
.site-brand img{width:30px;height:30px}
.site-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:4px}
.site-nav a:not(.btn){display:inline-block;padding:8px 10px;border-radius:8px;color:var(--text);text-decoration:none;font-weight:550;font-size:.95rem}
.site-nav a:not(.btn):hover{background:#eef2f6;color:var(--ink)}
.site-nav a[aria-current=page]{color:var(--ink);font-weight:650;box-shadow:inset 0 -2px 0 var(--copper);border-radius:0}
.site-nav .nav-cta{margin-left:6px}
.menu-btn{display:none;min-height:40px;padding:0 14px;border:1px solid var(--line-strong);border-radius:9px;background:#fff;font:600 .9rem var(--font);color:var(--ink)}
@media(max-width:900px){
  .menu-btn{display:inline-flex;align-items:center}
  .site-nav{display:none;flex-basis:100%}
  .menu-open .site-nav{display:block}
  .site-nav ul{flex-direction:column;align-items:stretch;padding:8px 0 4px}
  .site-nav a:not(.btn){display:block;padding:12px 6px;border-bottom:1px solid var(--line)}
  .site-nav a[aria-current=page]{box-shadow:inset 3px 0 0 var(--copper);padding-left:12px}
  .site-nav .nav-cta{margin:8px 0 0}.site-nav .nav-cta .btn{width:100%}
}
.page-hero{padding:28px 0 6px;max-width:820px}
.page-hero.split{max-width:none}
.page-hero h1{font-size:clamp(1.8rem,4vw,2.6rem);max-width:22ch}
.page-hero .lede{font-size:1.12rem;color:var(--muted);max-width:62ch}
.explore{display:grid;gap:14px;grid-template-columns:1fr}
@media(min-width:900px){.explore{grid-template-columns:repeat(3,1fr)}}
.explore-card{display:flex;flex-direction:column;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;text-decoration:none;color:var(--text)}
.explore-card:hover{box-shadow:0 6px 22px rgba(28,40,44,.10);border-color:var(--line-strong)}
.explore-card .eyebrow{margin:0}.explore-card h3{font-size:1.15rem}
.explore-card .mini{margin:6px 0 4px}
.explore-card .go{margin-top:auto;padding-top:6px;color:var(--copper-ink);font-weight:600;font-size:.9rem}
.role-grid,.ask-grid{display:grid;gap:12px;grid-template-columns:1fr}
@media(min-width:820px){.role-grid{grid-template-columns:repeat(3,1fr)}.ask-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.ask-grid{grid-template-columns:repeat(3,1fr)}}
.role-grid .card h3,.ask-grid .card h3{display:flex;align-items:center;gap:8px}
.ask-grid h3 a{color:var(--ink);text-decoration:none}
.compare td{vertical-align:top}
.compare td:first-child a{color:var(--ink);text-decoration:none}
.static-chip{display:inline-flex;margin:0 4px 4px 0;min-height:28px;font-size:.8rem;cursor:default}
.setup-form .hp{position:absolute;left:-9999px}
.setup-form{align-self:start}
.site-footer{background:#fff;border-top:1px solid var(--line);margin-top:48px;font-size:.92rem}
.site-footer .foot{max-width:1180px;margin:0 auto;padding:32px 16px 18px;display:grid;gap:24px;grid-template-columns:1fr}
@media(min-width:760px){.site-footer .foot{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.site-footer h4{margin:0 0 8px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--subtle)}
.site-footer .foot a:not(.site-brand){display:block;padding:3px 0;color:var(--text);text-decoration:none}
.site-footer .foot a:hover{color:var(--ink);text-decoration:underline}
.foot-brand p{color:var(--muted);margin-top:8px;max-width:34ch}
.foot-brand .site-brand{font-weight:700;color:var(--ink);text-decoration:none}
.foot-base{max-width:1180px;margin:0 auto;padding:14px 16px 22px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;color:var(--muted);font-size:.85rem}
.foot-base a{color:var(--muted)}
.role-grid .card,.ask-grid .card{margin:0}
.split.top{align-items:start}
.site [id]{scroll-margin-top:84px}

/* ---------- ENG-150: logo */
.site-brand{font-weight:750;letter-spacing:-.01em;color:var(--ink)}
.foot-lockup{align-items:center}.foot-lockup img{width:40px;height:40px}
.foot-lockup span{display:flex;flex-direction:column;line-height:1.1;font-size:1.1rem}
.foot-lockup small{font-size:.66rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:4px}

/* ---------- ENG-151: design foundation */
:root{--shadow-sm:0 1px 2px rgba(32,36,39,.05);--shadow:0 1px 2px rgba(32,36,39,.04),0 6px 18px -8px rgba(32,36,39,.12);
  --shadow-lg:0 2px 6px rgba(32,36,39,.05),0 24px 60px -18px rgba(32,36,39,.28);--ring:0 0 0 3px rgba(242,194,0,.3);--r:11px;--r-lg:16px}
body{font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.006em}
h1{font-size:1.75rem;font-weight:760;letter-spacing:-.024em}
h2{font-size:1.18rem;font-weight:680;letter-spacing:-.016em}
h3{font-weight:660;letter-spacing:-.01em}
:focus-visible{outline:2px solid var(--copper);outline-offset:2px}
.btn{border-radius:10px;font-weight:620;letter-spacing:-.005em;transition:background .15s,border-color .15s,box-shadow .15s,transform .05s;
  box-shadow:0 1px 2px rgba(32,36,39,.18),inset 0 1px 0 rgba(255,255,255,.08)}
.btn:active{transform:translateY(1px)}
.btn.secondary,.btn.danger,.btn.pelqi{box-shadow:var(--shadow-sm)}
.btn.link{box-shadow:none}
input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],input[type=url],
input[type=search],input[type=tel],input[type=file],input:not([type]),select,textarea{border-radius:10px;
  transition:border-color .15s,box-shadow .15s;box-shadow:var(--shadow-sm)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--copper);box-shadow:var(--ring)}
.card,.figure{border-color:var(--line);box-shadow:var(--shadow)}
.figure{padding:16px 18px}
.figure b{font-size:1.85rem;font-weight:740;letter-spacing:-.03em;line-height:1.15;margin-bottom:2px}
.badge{font-weight:620;padding:3px 10px;letter-spacing:.005em}
.list > li{padding:13px 0}
.list .main b,.list .main a.title{font-weight:620}
table.data th{text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}
.flash{box-shadow:var(--shadow-sm)}

/* app shell */
.topbar{gap:14px;box-shadow:0 1px 0 rgba(32,36,39,.02)}
.app-mark{display:inline-flex;flex:none}.app-mark img{width:28px;height:28px}
.topbar .ws{font-size:1rem;letter-spacing:-.01em}
.content{max-width:1220px}
.page-head h1{margin-bottom:2px}
@media(min-width:1000px){
  .sidenav{padding:16px 12px;background:#fff}
  .sidenav a{border-radius:9px;padding:9px 12px;font-weight:540;color:#3a4043;transition:background .12s}
  .sidenav a[aria-current=page]{background:#eef3f8;color:var(--ink);font-weight:650;box-shadow:inset 3px 0 0 var(--copper)}
  .sidenav .group{color:#9a9d9b}
  .content{padding:30px 36px 48px}
}
.tabbar a[aria-current=page]{color:var(--ink)}

/* ---------- ENG-151: devices and home */
.laptop{position:relative}
.laptop .screen{position:relative;background:#111416;border-radius:18px 18px 6px 6px;padding:2.4% 2.4% 2.8%;box-shadow:var(--shadow-lg)}
.laptop .screen::before{content:"";position:absolute;top:1%;left:50%;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:#33393c}
.laptop .screen img{display:block;width:100%;height:auto;border-radius:4px}
.laptop .base{position:relative;height:clamp(10px,1.5vw,18px);margin:0 -7%;border-radius:2px 2px 18px 18px/2px 2px 12px 12px;
  background:linear-gradient(180deg,#ece9e2 0%,#d3cec4 60%,#b9b4aa 100%);box-shadow:0 18px 30px -16px rgba(32,36,39,.45)}
.laptop .base::before{content:"";position:absolute;top:0;left:50%;width:15%;height:40%;transform:translateX(-50%);
  background:#c3beb4;border-radius:0 0 9px 9px}
.phone{position:relative;background:#111416;border-radius:13%/6%;padding:9% 3.4% 3.4%;box-shadow:var(--shadow-lg)}
.phone::before{content:"";position:absolute;top:3%;left:50%;width:26%;height:2.4%;transform:translateX(-50%);background:#000;border-radius:999px;z-index:2}
.phone img{display:block;width:100%;height:auto;border-radius:10%/4.6%}
.hero-devices{position:relative;margin:0;padding:0 6% 9% 0}
.hero-devices .hero-phone{position:absolute;right:0;bottom:0;width:25%;min-width:110px}
.hero-devices .pay-float{left:-5%;top:9%;bottom:auto}
.hero-devices figcaption{margin-top:14px}
@media(max-width:700px){.hero-devices{padding:0 0 18% 0}.hero-devices .hero-phone{width:34%}.hero-devices .pay-float{display:none}}
.section-head.center{text-align:center;margin-left:auto;margin-right:auto}
.phones-band{background:linear-gradient(180deg,#f1f4f8,#f6f8fa);border-radius:28px;padding:48px 20px 56px}
.phone-row{display:grid;gap:28px;grid-template-columns:1fr;max-width:980px;margin:28px auto 0}
@media(min-width:760px){.phone-row{grid-template-columns:repeat(3,1fr);align-items:end}.phone-row figure.lift{transform:translateY(-28px)}}
.phone-row figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:16px}
.phone-row .phone{width:min(250px,70vw)}
.phone-row figcaption{text-align:center;max-width:250px}
.phone-row figcaption b{display:block;color:var(--ink);font-size:1.02rem}
.phone-row figcaption span{color:var(--muted);font-size:.93rem}
.people-grid{display:grid;gap:16px;grid-template-columns:1fr}
@media(min-width:760px){.people-grid{grid-template-columns:1.2fr 1fr 1fr}}
.people-grid figure{margin:0;position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow)}
.people-grid img{display:block;width:100%;height:100%;min-height:280px;max-height:420px;object-fit:cover}
.people-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:40px 18px 16px;color:#fff;font-weight:620;
  background:linear-gradient(180deg,rgba(17,20,22,0),rgba(17,20,22,.78))}
.home-hero h1{letter-spacing:-.03em;font-weight:780}

/* ---------- ENG-151: device photographs */
.hero-photo{position:relative;margin:0}
.hero-photo img{display:block;width:100%;height:auto;border-radius:22px;box-shadow:var(--shadow-lg)}
.hero-photo .pay-float{left:-5%;bottom:10%;top:auto}
.hero-photo figcaption{margin-top:12px}
@media(max-width:700px){.hero-photo .pay-float{display:none}}
.photo-row{display:grid;gap:22px;grid-template-columns:1fr;max-width:1080px;margin:28px auto 0}
@media(min-width:760px){.photo-row{grid-template-columns:repeat(3,1fr)}}
.photo-row figure{margin:0;display:flex;flex-direction:column;gap:14px}
.photo-card{border-radius:20px;overflow:hidden;box-shadow:var(--shadow-lg);aspect-ratio:4/5;background:#ddd}
.photo-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 50%);transition:transform .6s ease}
.photo-row figure:hover .photo-card img{transform:scale(1.03)}
.photo-row figcaption b{display:block;color:var(--ink);font-size:1.02rem}
.photo-row figcaption span{color:var(--muted);font-size:.93rem}
@media(prefers-reduced-motion:reduce){.photo-card img{transition:none}}

/* ---------- ENG-151: sign in */
.auth-page{background:var(--bg)}
.auth-split{min-height:100vh;display:grid;grid-template-columns:1fr}
@media(min-width:960px){.auth-split{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)}}
.auth-art{position:relative;overflow:hidden;background:#030207;color:#e6eaef;display:none;flex-direction:column;justify-content:space-between;padding:36px 44px}
@media(min-width:960px){.auth-art{display:flex}}
.aurora{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;will-change:transform}
.aurora.a1{width:520px;height:520px;background:radial-gradient(circle,#f8d613 0%,rgba(248,214,19,0) 68%);top:-140px;left:-120px;animation:drift1 18s ease-in-out infinite alternate}
.aurora.a2{width:600px;height:600px;background:radial-gradient(circle,#55e8a4 0%,rgba(85,232,164,0) 70%);bottom:-220px;right:-160px;animation:drift2 22s ease-in-out infinite alternate}
.aurora.a3{width:340px;height:340px;background:radial-gradient(circle,#ffffff 0%,rgba(255,255,255,0) 70%);top:44%;left:52%;opacity:.28;animation:drift3 16s ease-in-out infinite alternate}
@keyframes drift1{to{transform:translate(140px,90px) scale(1.12)}}
@keyframes drift2{to{transform:translate(-120px,-80px) scale(1.08)}}
@keyframes drift3{to{transform:translate(-160px,60px) scale(.9)}}
.auth-brand{position:relative;z-index:2;display:inline-flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-weight:720;letter-spacing:-.01em;font-size:1.05rem}
.auth-brand img{width:28px;height:28px}
.auth-brand.mobile{color:var(--ink);margin-bottom:28px}
@media(min-width:960px){.auth-brand.mobile{display:none}}
.art-center{position:relative;z-index:2;max-width:440px}
.draw-mark{width:120px;height:120px;margin-bottom:26px;overflow:visible}
.draw-mark polygon{stroke-width:7;stroke-dasharray:1;stroke-dashoffset:1;fill-opacity:0;animation:draw 1.6s cubic-bezier(.65,0,.35,1) forwards,fillin .7s ease forwards}
.draw-mark .dm-dark{stroke:#f2f4f7;fill:#f2f4f7;animation-delay:.15s,1.45s}
.draw-mark .dm-copper{stroke:url(#dmg);fill:url(#dmg);animation-delay:.55s,1.75s}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes fillin{to{fill-opacity:1;stroke-opacity:0}}
.art-line{font-size:1.75rem;line-height:1.25;font-weight:680;letter-spacing:-.025em;color:#f4f6f9;margin:0;opacity:0;animation:rise .9s cubic-bezier(.2,.8,.2,1) .9s forwards}
.glass-stack{position:relative;z-index:2;height:190px}
.glass{position:absolute;left:0;display:flex;align-items:center;gap:12px;padding:13px 16px;border-radius:14px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 18px 40px -18px rgba(0,0,0,.6);color:#f2f4f7;font-size:.9rem;opacity:0;animation:glass 9s ease-in-out infinite}
.glass b{display:block;font-weight:650}.glass i{display:block;font-style:normal;color:#c3cad3;font-size:.82rem}
.glass.g1{bottom:120px;animation-delay:1.2s}
.glass.g2{bottom:60px;left:70px;animation-delay:4.2s}
.glass.g3{bottom:0;left:24px;animation-delay:7.2s}
.g-badge{background:#2c5a87;color:#e6eef7;border-radius:999px;padding:2px 9px;font-size:.72rem;font-weight:700}
.g-pelqi{width:18px;height:18px;border-radius:50%;border:2px solid #f2f4f7;position:relative;flex:none}
.g-pelqi::after{content:"";position:absolute;inset:4px;border-radius:50%;background:#e8956b}
@keyframes glass{0%{opacity:0;transform:translateY(24px) scale(.97)}10%,38%{opacity:1;transform:none}52%,100%{opacity:0;transform:translateY(-14px) scale(.98)}}
.art-foot{position:relative;z-index:2;margin:0;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:#98a1ab}
/* the form centres itself with auto margins, so a form taller than the window scrolls from its top instead of
   spilling past the top edge where it cannot be reached (align-items:center clips in a scrolling panel) */
.auth-panel{display:flex;align-items:flex-start;justify-content:center;padding:40px 20px}
.auth-form-wrap{width:100%;max-width:400px;margin-top:auto;margin-bottom:auto}
.auth-form-wrap h1{font-size:2rem;margin-bottom:4px}
.auth-form{margin-top:26px}
.auth-form input{min-height:48px}
.signin-btn{position:relative;width:100%;min-height:50px;font-size:1rem;margin-top:6px;overflow:hidden}
.signin-btn .spinner{position:absolute;left:50%;top:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;
  border:2.5px solid rgba(255,255,255,.3);border-top-color:#fff;opacity:0;transform:scale(.6)}
.signin-btn.is-signing .label{opacity:0;transform:translateY(-8px)}
.signin-btn.is-signing .spinner{opacity:1;transform:none;animation:spin .8s linear infinite}
.signin-btn .label{transition:opacity .2s,transform .2s}
.signin-btn .spinner{transition:opacity .2s,transform .2s}
@keyframes spin{to{transform:rotate(360deg)}}
.signing-in .auth-form-wrap{transition:opacity .5s ease .25s,transform .5s ease .25s;opacity:.55;transform:scale(.99)}
.auth-links{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:20px;font-size:.92rem}
.auth-links a{color:var(--copper-ink);font-weight:600}
.auth-fine{margin-top:34px}
.rise{opacity:0;animation:rise .7s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:var(--d,0s)}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.shake{animation:rise .5s forwards,shake .45s .45s}
@keyframes shake{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}

/* ---------- ENG-151: welcome after signing in */
.welcome-veil{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:#17191b;color:#f2f4f7;
  pointer-events:none;animation:veil .8s cubic-bezier(.4,0,.2,1) 1.25s forwards}
.wv-inner{display:flex;flex-direction:column;align-items:center;gap:16px;animation:wv 1.9s cubic-bezier(.2,.8,.2,1) forwards}
.wv-inner img{width:78px;height:78px}
.wv-inner span{font-size:1.25rem;font-weight:650;letter-spacing:-.015em}
@keyframes wv{0%{opacity:0;transform:scale(.9) translateY(6px)}28%,62%{opacity:1;transform:none}100%{opacity:0;transform:scale(1.08)}}
@keyframes veil{to{opacity:0;transform:scale(1.03);visibility:hidden}}
.welcome-veil{transform-origin:50% 40%}
.dash-enter > *{opacity:0;animation:rise .7s cubic-bezier(.2,.8,.2,1) forwards}
.dash-enter > :nth-child(1){animation-delay:1.45s}.dash-enter > :nth-child(2){animation-delay:1.55s}
.dash-enter > :nth-child(3){animation-delay:1.65s}.dash-enter > :nth-child(4){animation-delay:1.75s}
.dash-enter > :nth-child(5){animation-delay:1.85s}.dash-enter > :nth-child(n+6){animation-delay:1.95s}

@media(prefers-reduced-motion:reduce){
  .aurora,.glass,.draw-mark polygon,.art-line,.rise,.shake,.wv-inner,.dash-enter > *{animation:none!important;opacity:1!important;transform:none!important}
  .draw-mark polygon{stroke-dashoffset:0;fill-opacity:1}
  .glass{position:relative;left:auto!important;bottom:auto!important;margin-top:8px}
  .glass-stack{height:auto}
  .welcome-veil{display:none}
}

/* ---------- ENG-151: inner pages */
.hero-media-split{display:grid;gap:32px;align-items:center;grid-template-columns:1fr;padding-bottom:12px}
@media(min-width:960px){.hero-media-split{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:48px}}
.hero-media-split h1{max-width:18ch}
.page-hero.split .hero-photo{align-self:center}
.people-hero img{aspect-ratio:3/2;object-fit:cover}
.photo-card.tall{aspect-ratio:4/5;max-width:440px;width:100%;justify-self:center}
.example-split{align-items:center}
.example-split .lede{font-size:1.15rem;color:var(--ink);font-weight:600}
.hero-photo .pelqi-float{right:-3%;bottom:8%;left:auto;top:auto;width:270px}
@media(max-width:700px){.hero-photo .pelqi-float{display:none}}

/* ---------- ENG-151: app screens */
.content{width:100%;min-width:0}

.list > li.with-avatar{justify-content:flex-start}
.list > li.with-avatar .main{flex:1}
.avatar{flex:none;display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;font-size:.8rem;font-weight:700;
  letter-spacing:.02em;color:hsl(var(--h) 45% 28%);background:hsl(var(--h) 55% 92%);box-shadow:inset 0 0 0 1px hsl(var(--h) 40% 84%)}

.auth-form-wrap.wide{max-width:560px}
.auth-form-wrap form .btn{width:100%;min-height:50px}
.auth-form-wrap .industry-opt{background:#fff}
@media(min-width:960px){.auth-panel{padding:48px 40px;max-height:100vh;overflow:auto}}
@media(max-width:959px){.auth-art{display:flex;min-height:230px;padding:24px 22px;justify-content:flex-start;gap:18px}.auth-art .glass-stack,.auth-art .art-foot{display:none}.auth-art .art-line{font-size:1.2rem}.auth-art .draw-mark{width:64px;height:64px;margin-bottom:14px}.auth-brand.mobile{display:none}.auth-panel{padding:28px 20px 40px;align-items:flex-start}}
@media(max-width:959px){.auth-art .auth-brand{display:none}}

/* ---------- ENG-151: customer side */
.sf-hero{position:relative;padding:28px 28px 26px;border-radius:22px;border:1px solid var(--line);box-shadow:var(--shadow);
  background:linear-gradient(135deg,color-mix(in srgb,var(--brand,#202427) 10%,#fff) 0%,#fff 55%)}
.sf-hero .sf-logo{width:64px;height:64px;border-radius:50%;margin-bottom:14px;box-shadow:0 6px 18px -8px rgba(32,36,39,.4)}
.sf-hero h1{letter-spacing:-.025em}
.sf-meta{display:flex;flex-wrap:wrap;gap:8px}
.sf-meta > *{display:inline-flex;align-items:center;gap:4px;padding:4px 11px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:.85rem;color:var(--text);text-decoration:none}
.sf-rating .stars{color:var(--brand,var(--copper))}
.offering{box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}
.offering:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.offering .price{background:color-mix(in srgb,var(--brand,#202427) 10%,#fff);color:var(--brand,var(--ink));padding:3px 10px;border-radius:999px;font-size:.92rem}
.branded .offering .btn.secondary{color:var(--brand);border-color:color-mix(in srgb,var(--brand) 40%,#fff)}
.request-wrap{display:grid;gap:18px;grid-template-columns:1fr;scroll-margin-top:20px}
@media(min-width:900px){.request-wrap{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start}}
.request-wrap .card.request{margin:0}
.how-booking{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;box-shadow:var(--shadow)}
.how-booking h3{margin-bottom:12px}
.how-booking ul{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.how-booking li{display:flex;gap:12px;align-items:flex-start}
.how-booking li svg{flex:none;width:34px;height:34px;padding:8px;border-radius:10px;color:var(--brand,var(--copper));background:color-mix(in srgb,var(--brand,#c4754c) 12%,#fff)}
.how-booking li b{display:block;color:var(--ink)}
.how-booking li span{color:var(--muted);font-size:.93rem}
.portal-hero{display:flex;align-items:center;gap:18px;padding:24px;margin-bottom:18px;border-radius:20px;border:1px solid var(--line);box-shadow:var(--shadow);
  background:linear-gradient(135deg,color-mix(in srgb,var(--brand,#202427) 10%,#fff) 0%,#fff 60%)}
.portal-hero .sf-logo{width:60px;height:60px;border-radius:50%;flex:none}
.portal-hero h1{margin:0 0 4px}.portal-hero p{margin:0}
.quote-ready{border-left:4px solid var(--brand,var(--copper))}
.tracker{list-style:none;display:flex;gap:6px;margin:10px 0 2px;padding:0;flex-wrap:wrap}
.tracker li{position:relative;font-size:.75rem;font-weight:620;padding:4px 10px 4px 22px;border-radius:999px;background:#edf1f5;color:var(--muted)}
.tracker li::before{content:"";position:absolute;left:9px;top:50%;width:7px;height:7px;margin-top:-3.5px;border-radius:50%;background:#c3cad3}
.tracker li.done{background:var(--ok-soft);color:var(--ok)}.tracker li.done::before{background:var(--ok)}
.tracker li.now{background:color-mix(in srgb,var(--brand,#c4754c) 14%,#fff);color:var(--ink)}
.tracker li.now::before{background:var(--brand,var(--copper));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand,#c4754c) 25%,transparent);animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--brand,#c4754c) 10%,transparent)}}
.quote-doc{max-width:760px;margin:0 auto;padding:28px 30px;border-top:4px solid var(--brand,var(--copper));box-shadow:var(--shadow-lg)}
.quote-from{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.92rem;margin-bottom:14px}
.quote-from b{color:var(--ink)}
.sf-logo.small{width:34px;height:34px;border-radius:50%}
.due-box{margin:16px 0 6px;border-radius:12px;border:1px solid var(--line);overflow:hidden}
.due-box > div{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;font-variant-numeric:tabular-nums}
.due-box > div:first-child{background:color-mix(in srgb,var(--brand,#c4754c) 9%,#fff);font-weight:650;color:var(--ink)}
.due-box .later{color:var(--muted);border-top:1px solid var(--line)}
.secure-note{display:flex;gap:8px;align-items:flex-start;margin-top:12px;font-size:.88rem;color:var(--muted)}
.secure-note svg{flex:none;width:16px;height:16px;margin-top:2px;color:var(--ok)}
@media(prefers-reduced-motion:reduce){.tracker li.now::before{animation:none}.offering{transition:none}}

/* ---------- ENG-151: PelQi's eye */
.pq{overflow:visible;--pq-ink:#2d3a3f;--pq-paper:#f2f4f7}
.pq .pq-ring{fill:none;stroke:var(--pq-ink);stroke-width:2.4;stroke-dasharray:97.4 28.3;stroke-dashoffset:-10;transform:rotate(-90deg);transform-origin:24px 24px;animation:pqspin 14s linear infinite;transition:stroke .6s}
.pq .pq-iris{fill:#1b2428;stroke:rgba(27,36,40,.18);stroke-width:1}
.pq .pq-pupil{fill:var(--pelqi);transform-origin:24px 24px;transition:transform .6s,fill .6s}
.pq .pq-glint{fill:#fff;opacity:.85}
.pq .pq-eye{transform-origin:24px 24px;transition:transform .6s}
.pq .pq-blink{transform-origin:24px 24px;animation:pqblink 6.5s ease-in-out infinite}
.pq .pq-look{animation:pqglance 11s ease-in-out infinite}
.pq[data-mood=curious] .pq-ring{stroke:var(--warn)}.pq[data-mood=curious] .pq-pupil{transform:scale(1.14)}
.pq[data-mood=thinking] .pq-ring{stroke:var(--info);animation-duration:3s}
.pq[data-mood=concerned] .pq-ring{stroke:var(--bad)}.pq[data-mood=concerned] .pq-eye{transform:scaleY(.72)}
.pq[data-mood=proud] .pq-ring{stroke:var(--ok)}
.auth-art .pq,.cta-band .pq,.dock-panel .pq,.dock-btn .pq{--pq-ink:#f2f4f7}
.dock-panel .pq .pq-iris,.dock-btn .pq .pq-iris{fill:#2b3236;stroke:rgba(242,239,233,.42)}
.dock-btn .pq .pq-pupil,.dock-panel .pq .pq-pupil{filter:drop-shadow(0 0 3px rgba(232,149,107,.9))}
@keyframes pqblink{0%,44%,49%,100%{transform:scaleY(1)}46.5%{transform:scaleY(.08)}}
@keyframes pqglance{0%,18%{transform:translate(0,0)}24%,38%{transform:translate(3.2px,-1px)}44%,58%{transform:translate(-3.2px,.6px)}64%,100%{transform:translate(0,0)}}
@keyframes pqspin{from{transform:rotate(-90deg)}to{transform:rotate(270deg)}}

/* ---------- ENG-151: PelQi dock */
.pelqi-dock{position:fixed;right:18px;bottom:18px;z-index:60}
.app .pelqi-dock{bottom:calc(76px + env(safe-area-inset-bottom))}
@media(min-width:1000px){.app .pelqi-dock{bottom:22px;right:22px}}
.dock-btn{position:relative;display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:0 16px 0 10px;border:0;border-radius:999px;cursor:pointer;
  background:#17191b;color:#f2f4f7;font:650 .92rem var(--font);box-shadow:0 10px 30px -10px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.06) inset;transition:transform .2s,box-shadow .2s}
.dock-btn:hover{transform:translateY(-1px);box-shadow:0 14px 34px -10px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.08) inset}
.dock-btn .dock-eye{width:30px;height:30px}
.dock-btn .dot{position:absolute;top:-4px;right:-2px;box-shadow:0 0 0 2px #17191b}
.pelqi-dock.open .dock-btn{opacity:0;pointer-events:none;transform:scale(.9)}
.dock-panel{position:absolute;right:0;bottom:0;width:min(360px,calc(100vw - 36px));padding:18px 18px 16px;border-radius:20px;color:#f2f4f7;
  background:linear-gradient(160deg,#1e2124,#121517);box-shadow:0 30px 70px -20px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.07) inset;
  opacity:0;transform:translateY(16px) scale(.98);transform-origin:bottom right;transition:opacity .3s cubic-bezier(.2,.8,.2,1),transform .3s cubic-bezier(.2,.8,.2,1)}
.pelqi-dock.open .dock-panel{opacity:1;transform:none}
.dock-panel::before{content:"";position:absolute;inset:-40% 30% 40% -30%;background:radial-gradient(circle,rgba(196,117,76,.28),transparent 60%);filter:blur(30px);pointer-events:none}
.dock-panel > *{position:relative}
.dock-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.dock-head .dock-big{width:46px;height:46px;flex:none;filter:drop-shadow(0 0 14px rgba(232,149,107,.35))}
.dock-head b{display:block;font-size:1.05rem}
.dock-head span{display:block;color:#aeb6c0;font-size:.86rem;line-height:1.3}
.dock-close{margin-left:auto;background:rgba(255,255,255,.08);border:0;color:#f2f4f7;width:32px;height:32px;border-radius:50%;cursor:pointer;display:grid;place-items:center}
.dock-close svg{width:16px;height:16px}
.dock-close:hover{background:rgba(255,255,255,.16)}
.dock-approve{width:100%;margin:0 0 10px;background:var(--pelqi);border-color:var(--pelqi);color:#1b2428}
.dock-asks{margin:0 0 10px}
.dock-asks .chip{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.14);color:#f2f4f7;font-size:.82rem;text-align:left}
.dock-asks .chip:hover{background:rgba(232,149,107,.22);border-color:rgba(232,149,107,.6)}
.dock-ask{display:flex;gap:8px;margin:0 0 10px}
.dock-ask input{min-height:42px;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.14);color:#f2f4f7;box-shadow:none}
.dock-ask input::placeholder{color:#86909b}
.dock-ask input:focus{border-color:var(--pelqi);box-shadow:0 0 0 3px rgba(232,149,107,.25)}
.dock-ask .btn{background:#f2f4f7;color:#1b2428;border-color:#f2f4f7}
.dock-link{display:inline-block;color:#f2c9ad;font-weight:600;font-size:.9rem;margin-bottom:6px}
.dock-panel .small.muted{color:#8f98a3;margin:0}
.dock-panel p{color:#d3d9e0;font-size:.93rem}
.dock-demo{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);font-size:.82rem;margin:0 0 12px}
.dock-demo b{display:block;color:#f2f4f7}.dock-demo i{display:block;font-style:normal;color:#aeb6c0;font-size:.76rem}
.dock-demo .mock-btn{margin-left:auto;background:var(--pelqi);color:#1b2428}
.dock-demo .live-dot{flex:none}
.site-dock .dock-panel .actions .btn.secondary{background:transparent;color:#f2f4f7;border-color:rgba(255,255,255,.3)}
@media(prefers-reduced-motion:reduce){.pq .pq-ring,.pq .pq-blink,.pq .pq-look{animation:none}.dock-panel{transition:none}}

/* ---------- ENG-151: movement on the site */
.site .reveal{opacity:0;transform:translateY(22px)}
.site .reveal.in{opacity:1;transform:none;transition:opacity .75s cubic-bezier(.2,.8,.2,1),transform .75s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i,0) * 60ms)}
.site .home-hero{position:relative}
.site .home-hero::before{content:"";position:absolute;inset:-60px -20vw 0;z-index:-1;pointer-events:none;
  background:radial-gradient(42% 55% at 72% 30%,rgba(196,117,76,.16),transparent 70%),radial-gradient(38% 50% at 20% 70%,rgba(45,58,63,.10),transparent 70%);
  animation:heroglow 16s ease-in-out infinite alternate}
@keyframes heroglow{to{transform:translate(4%,-3%) scale(1.06)}}
.hero-photo img,.photo-card img{backface-visibility:hidden}
.hero-photo{animation:floaty 9s ease-in-out infinite}
@keyframes floaty{50%{transform:translateY(-6px)}}
.btn{position:relative;overflow:hidden}
.btn::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.18) 50%,transparent 70%);transform:translateX(-120%);transition:transform .6s}
.btn:hover::after{transform:translateX(120%)}
.industry-card,.explore-card,.example-card,.flow-step{transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s}
.industry-card:hover,.explore-card:hover,.example-card:hover{transform:translateY(-4px)}
.industry-card .card-photo{transition:transform .7s ease}
.industry-card:hover .card-photo{transform:scale(1.04)}

/* ---------- ENG-151: marketplace */
.market-hero{position:relative;overflow:hidden;padding:44px 28px 30px;margin:4px 0 22px;border-radius:26px;color:#f2f4f7;background:#15181a;
  box-shadow:0 30px 70px -30px rgba(0,0,0,.6)}
.market-hero .mesh{position:absolute;inset:0;pointer-events:none}
.market-hero .mesh i{position:absolute;border-radius:50%;filter:blur(70px);opacity:.6;will-change:transform}
.market-hero .mesh i:nth-child(1){width:560px;height:560px;left:-140px;top:-240px;background:radial-gradient(circle,rgba(196,117,76,.75),transparent 65%);animation:drift1 20s ease-in-out infinite alternate}
.market-hero .mesh i:nth-child(2){width:520px;height:520px;right:-160px;bottom:-280px;background:radial-gradient(circle,rgba(43,109,126,.65),transparent 65%);animation:drift2 24s ease-in-out infinite alternate}
.market-hero .mesh i:nth-child(3){width:300px;height:300px;left:48%;top:30%;background:radial-gradient(circle,rgba(232,165,124,.5),transparent 65%);opacity:.35;animation:drift3 18s ease-in-out infinite alternate}
.market-hero::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:36px 36px;
  mask-image:radial-gradient(ellipse at 50% 40%,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 50% 40%,#000 30%,transparent 75%)}
.market-hero > *{position:relative;z-index:1}
.market-hero .eyebrow{color:#f3b48f}
.market-hero h1{color:#fff;font-size:clamp(1.7rem,3.6vw,2.5rem);max-width:22ch;margin-bottom:8px}
.market-hero .lede{color:#c9d0d8;max-width:60ch;margin-bottom:22px}
.market-search{display:grid;gap:10px;grid-template-columns:1fr;padding:10px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
@media(min-width:860px){.market-search{grid-template-columns:minmax(0,2fr) minmax(0,1.1fr) auto auto;align-items:center}}
.ms-field{display:flex;align-items:center;gap:10px;min-height:50px;padding:0 14px;border-radius:12px;background:#fff;color:var(--ink);transition:box-shadow .2s}
.ms-field:focus-within{box-shadow:0 0 0 3px rgba(243,180,143,.55)}
.ms-field svg{width:18px;height:18px;color:var(--subtle);flex:none}
.ms-field input,.ms-field select{border:0!important;box-shadow:none!important;min-height:0;padding:12px 0;background:transparent}
.ms-field input:focus,.ms-field select:focus{box-shadow:none!important}
.ms-field.select{padding-right:8px}
.ms-go{min-height:50px;padding:0 24px;background:var(--copper);border-color:var(--copper)}
.ms-go:hover{background:#b0663f}
.facet-row{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.facet-row a{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);color:#f2f4f7;text-decoration:none;font-size:.86rem;font-weight:600;transition:background .2s,border-color .2s}
.facet-row a svg{width:15px;height:15px;color:#f3b48f}
.facet-row a .n{font-weight:500;color:#aeb6c0;font-size:.78rem}
.facet-row a:hover{background:rgba(255,255,255,.14)}
.facet-row a[aria-current=true]{background:#f2f4f7;border-color:#f2f4f7;color:var(--ink)}
.facet-row a[aria-current=true] svg{color:var(--copper)}.facet-row a[aria-current=true] .n{color:var(--muted)}
.dir-count{color:var(--muted);margin:0 0 14px}.dir-count b{color:var(--ink)}
.market-grid{display:grid;gap:16px;grid-template-columns:1fr}
@media(min-width:640px){.market-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1000px){.market-grid{grid-template-columns:repeat(3,1fr)}}
.m-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--text);
  box-shadow:var(--shadow);transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s}
.m-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.m-media{position:relative;aspect-ratio:16/9;background:linear-gradient(135deg,var(--brand,#2d3a3f),color-mix(in srgb,var(--brand,#2d3a3f) 55%,#000));overflow:hidden}
.m-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s ease}
.m-card:hover .m-media img{transform:scale(1.05)}
.m-media .brand-ph{position:absolute;inset:0;display:grid;place-items:center;background:transparent!important;color:var(--brand-ink,#fff);opacity:.9}
.m-media .brand-ph svg{width:52px;height:52px}
.m-cat{position:absolute;left:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:rgba(17,20,22,.72);color:#f2f4f7;font-size:.76rem;font-weight:600;backdrop-filter:blur(8px)}
.m-cat svg{width:13px;height:13px}
.m-body{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px;flex:1}
.m-name{display:flex;align-items:center;gap:10px}
.m-name h2{font-size:1.05rem;margin:0}
.m-logo{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:none;box-shadow:0 2px 8px rgba(32,36,39,.15)}
.m-head{margin:0;color:var(--text);font-size:.95rem}
.m-meta{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:.86rem}
.m-rating{color:var(--ink);font-weight:600}.m-rating .stars{color:var(--brand,var(--copper))}.m-rating small{color:var(--muted);font-weight:500}
.m-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.m-tags span{font-size:.76rem;padding:3px 9px;border-radius:999px;background:#edf1f5;color:var(--text)}
.m-go{margin-top:auto;padding-top:8px;color:var(--copper-ink);font-weight:620;font-size:.9rem}
.m-empty{grid-column:1/-1}
@media(prefers-reduced-motion:reduce){.site .reveal{opacity:1;transform:none}.hero-photo,.site .home-hero::before,.market-hero .mesh i{animation:none}.btn::after{display:none}}
.cta-band .cta-h{font-size:1.18rem;font-weight:680;color:#fff;margin:0 0 4px;letter-spacing:-.016em}

/* ---------- ENG-151: tablets */
.photo-card.wide{aspect-ratio:16/9}
.photo-row.mosaic figure.wide{grid-column:1/-1}
.photo-row.mosaic figure.wide .photo-card{aspect-ratio:21/9}
.photo-row.mosaic figure.wide figcaption{text-align:left}
.hero-photo.many{max-width:1100px;margin:0 auto;border-radius:22px;overflow:hidden;box-shadow:var(--shadow-lg);animation:none}
.hero-photo.many img{height:clamp(320px,52vw,640px);object-fit:cover;object-position:50% 72%;border-radius:0}
.example-split .photo-card.wide{max-width:none;justify-self:stretch}

/* ---------- ENG-151: error pages and app details */
.oops{max-width:640px;margin:40px auto;text-align:center;padding:0 8px}
.oops-mark{display:inline-grid;place-items:center;width:96px;height:96px;border-radius:50%;margin-bottom:18px;background:#17191b;box-shadow:0 20px 50px -20px rgba(0,0,0,.5)}
.oops-eye{width:58px;height:58px;--pq-ink:#f2f4f7}
.oops-mark .pq .pq-iris{fill:#2b3236;stroke:rgba(242,239,233,.42)}
.oops h1{font-size:clamp(1.5rem,3.4vw,2.1rem)}
.oops .lede{color:var(--muted);font-size:1.08rem}
.oops .actions{justify-content:center;margin-top:18px}
.app-tracker{margin:0 0 18px}
.app-tracker li{font-size:.8rem;padding:6px 12px 6px 24px}
.figure{position:relative;overflow:hidden}
.figure::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--copper),transparent 70%);opacity:.55}
.funnel .bar{background:#edf1f5;border-radius:999px;overflow:hidden;height:10px}
.funnel .bar i{display:block;height:100%;background:linear-gradient(90deg,var(--copper),#e8a57c);border-radius:999px;transition:width .8s cubic-bezier(.2,.8,.2,1)}

/* ================================================================ ENG-152: the site's graphical theme */
html,body{overflow-x:clip}
.bleed{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.site .eyebrow{display:inline-flex;align-items:center;gap:8px}
.site .eyebrow::before{content:"";width:18px;height:2px;border-radius:2px;background:var(--copper)}
.site .eyebrow svg{width:15px;height:15px}
.hl{color:var(--copper-ink);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 14' preserveAspectRatio='none'%3E%3Cpath d='M3 10 C 48 3, 118 2, 197 8' fill='none' stroke='%23c4754c' stroke-width='3.2' stroke-linecap='round'/%3E%3C/svg%3E") bottom left/100% .34em no-repeat;padding-bottom:.06em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.pelqi-band .hl,.pq-hero .hl{color:#f3b48f}
.section-head.center .eyebrow{justify-content:center}
.site h2{letter-spacing:-.025em}

/* fountain ripples: the motif */
.ripples{position:absolute;left:50%;top:50%;width:min(1200px,150vw);aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none;z-index:-1}
.ripples i{position:absolute;inset:0;border-radius:50%;border:1.5px solid rgba(196,117,76,.38);opacity:0;animation:ripple 10s cubic-bezier(.15,.55,.35,1) infinite}
.ripples i:nth-child(2){animation-delay:2.5s}.ripples i:nth-child(3){animation-delay:5s}.ripples i:nth-child(4){animation-delay:7.5s}
.ripples.light i{border-color:rgba(243,180,143,.32)}
@keyframes ripple{0%{transform:scale(.12);opacity:0}12%{opacity:1}100%{transform:scale(1);opacity:0}}

/* browser frames */
.browser{position:relative;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 40px 90px -34px rgba(32,36,39,.5),0 0 0 1px rgba(32,36,39,.1)}
.browser-bar{display:flex;align-items:center;gap:7px;padding:10px 14px;background:linear-gradient(#f4f6f9,#e8ecf1);border-bottom:1px solid #dde3ea}
.browser-bar > i{flex:none;width:11px;height:11px;border-radius:50%;background:#e2725b}
.browser-bar > i:nth-child(2){background:#e9b65a}.browser-bar > i:nth-child(3){background:#7cbf7a}
.browser-bar .url{margin:0 auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44%;max-width:70%;padding:4px 14px;border-radius:8px;
  background:#fff;box-shadow:inset 0 0 0 1px #dfe5ec;font-size:.76rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.browser-bar .url svg{width:12px;height:12px;color:var(--ok);flex:none}
.browser-view{position:relative;aspect-ratio:16/10;background:#f6f8fa;overflow:hidden}
.browser-view img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top left;display:block}
.browser.dark{background:#15181a;box-shadow:0 40px 100px -30px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.08)}
.browser.dark .browser-bar{background:linear-gradient(#22262a,#1b1e21);border-color:#2b2f33}
.browser.dark .url{background:#2a2e32;color:#9aa3ad;box-shadow:none}

/* home hero: the app tour */
.hx{position:relative;isolation:isolate;margin-top:-24px;padding:56px 16px 110px;text-align:center;overflow:hidden}
.hx-bg{position:absolute;inset:0;z-index:-2;overflow:hidden;background:radial-gradient(60% 55% at 50% 0%,#ffffff 0%,transparent 70%),linear-gradient(180deg,#f6f8fa 0%,#f6f8fa 100%)}
.hx-bg::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(32,36,39,.11) 1px,transparent 1.3px);background-size:22px 22px;
  mask-image:radial-gradient(ellipse 70% 60% at 50% 35%,#000 20%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 35%,#000 20%,transparent 75%)}
.hx-bg .ripples{top:62%}
.hx-copy{max-width:900px;margin:0 auto}
.hx h1{font-size:clamp(2.1rem,5.4vw,3.9rem);line-height:1.04;letter-spacing:-.04em;font-weight:780;max-width:none;margin:6px 0 0}
.hx .lede{max-width:64ch;margin:18px auto 24px;font-size:1.14rem;color:var(--muted)}
.hx .actions{justify-content:center}
.hx .btn{min-height:50px;padding:0 22px;font-size:1rem}
.hx-trust{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 24px;margin:22px 0 0;padding:0;color:var(--muted);font-size:.9rem}
.hx-trust li{display:inline-flex;align-items:center;gap:8px}
.hx-trust svg{width:17px;height:17px;color:var(--copper)}
.trust-eye{width:18px;height:18px}
.hx-stage{position:relative;max-width:1140px;margin:46px auto 0;text-align:left}
.shot-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;width:fit-content;max-width:100%;margin:0 auto 18px;padding:5px;border-radius:999px;
  background:rgba(255,255,255,.78);border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.shot-tabs button{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;padding:9px 15px;border-radius:999px;
  font:620 .88rem var(--font);color:var(--muted);cursor:pointer;transition:background .25s,color .25s}
.shot-tabs button:hover{color:var(--ink);background:#f1f4f8}
.shot-tabs button svg{width:16px;height:16px;flex:none}
.shot-tabs .tab-eye{width:17px;height:17px}
.shot-tabs button[aria-selected=true]{background:var(--slate);color:#fff}
.shot-tabs button[aria-selected=true] svg{color:#f3b48f}
.shot-tabs button[aria-selected=true] .pq{--pq-ink:#f2f4f7}
.shot-tabs button[aria-selected=true]::after{content:"";position:absolute;left:16px;right:16px;bottom:4px;height:2px;border-radius:2px;background:#f3b48f;
  transform-origin:left;transform:scaleX(0);animation:tabprog 5.4s linear forwards}
.paused .shot-tabs button::after,.offscreen .shot-tabs button::after{animation-play-state:paused!important}
@keyframes tabprog{to{transform:scaleX(1)}}
.hx-frame{position:relative;perspective:1800px;--rx:3deg;--ry:0deg}
.hx-browser{transform:rotateX(var(--rx)) rotateY(var(--ry));transition:transform .6s cubic-bezier(.2,.8,.2,1);transform-origin:50% 100%}
.hx-browser .browser-view img{opacity:0;transform:scale(1.015);transition:opacity .7s ease,transform 1.2s ease}
.hx-browser .browser-view img.on{opacity:1;transform:none}
.hx-phone{position:absolute;right:-3%;bottom:-9%;width:clamp(110px,17%,200px);z-index:2;animation:floaty 8s ease-in-out infinite}
.hx .mock-float{z-index:3}
.hx .hx-pay{position:absolute;left:-4%;bottom:12%;top:auto;animation:floaty 9s ease-in-out -3s infinite}
.hx .hx-pelqi{position:absolute;right:-5%;top:16%;left:auto;bottom:auto;width:250px;animation:floaty 9s ease-in-out -6s infinite}
.wave{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:56px;z-index:1}
.wave path{fill:var(--bg)}
@media(max-width:820px){.hx{padding-bottom:80px}.hx .mock-float{display:none}.hx-phone{right:-1%;width:26%}.shot-tabs button span{display:none}.shot-tabs button{padding:9px 12px}}

/* industries, once */
.made-for{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 16px;margin:4px 0 0}
.mf-label{margin:0;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--subtle);font-weight:700}
.made-for ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0}
.made-for a{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--ink);
  font-weight:600;font-size:.88rem;text-decoration:none;box-shadow:var(--shadow-sm);transition:transform .2s,border-color .2s,box-shadow .2s}
.made-for a:hover{transform:translateY(-2px);border-color:var(--copper);box-shadow:var(--shadow)}
.made-for a svg{width:16px;height:16px;color:var(--copper)}
.demo-tag{font-style:normal;font-size:.66rem;font-weight:700;padding:2px 7px;border-radius:999px;background:#eceff3;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.mf-all{font-weight:650;color:var(--copper-ink);font-size:.92rem}

/* welcome slideshow */
.welcome{position:relative;margin-top:64px;height:clamp(460px,66vh,660px);overflow:hidden;background:#17191b;color:#fff;touch-action:pan-y;user-select:none}
.ws-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity 1.1s ease,visibility 0s 1.1s}
.ws-slide.on{opacity:1;visibility:visible;transition:opacity 1.1s ease}
.ws-slide img{width:100%;height:100%;object-fit:cover;transform:scale(1.1);pointer-events:none}
.ws-slide.on img{animation:kenburns 10s ease-out forwards}
@keyframes kenburns{from{transform:scale(1.12) translate(1.2%,.6%)}to{transform:scale(1) translate(0,0)}}
.ws-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,16,18,.82) 0%,rgba(14,16,18,.45) 42%,rgba(14,16,18,.05) 75%),linear-gradient(0deg,rgba(14,16,18,.55),transparent 40%)}
.ws-slide figcaption{position:absolute;z-index:1;left:max(20px,calc(50vw - 560px));right:20px;bottom:96px;max-width:560px}
.ws-slide figcaption > *{opacity:0;transform:translateY(18px)}
.ws-slide.on figcaption > *{animation:rise .9s cubic-bezier(.2,.8,.2,1) forwards}
.ws-slide.on figcaption > :nth-child(1){animation-delay:.35s}.ws-slide.on figcaption > :nth-child(2){animation-delay:.5s}.ws-slide.on figcaption > :nth-child(3){animation-delay:.65s}
.ws-slide .eyebrow{color:#f3b48f}
.ws-slide h2{color:#fff;font-size:clamp(1.7rem,3.6vw,2.7rem);line-height:1.08;letter-spacing:-.03em;margin:8px 0 10px}
.ws-slide p{color:#d9dee5;font-size:1.06rem;margin:0}
.ws-ctrl{position:absolute;z-index:2;left:max(20px,calc(50vw - 560px));bottom:34px;display:flex;align-items:center;gap:14px}
.ws-arrow{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:#fff;cursor:pointer;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .2s}
.ws-arrow:hover{background:rgba(255,255,255,.2)}
.ws-arrow svg{width:18px;height:18px}
.ws-dots{display:flex;gap:7px}
.ws-dots button{position:relative;overflow:hidden;width:30px;height:4px;padding:0;border:0;border-radius:2px;background:rgba(255,255,255,.3);cursor:pointer}
.ws-dots button[aria-current=true]{width:46px}
.ws-dots button[aria-current=true]::after{content:"";position:absolute;inset:0;background:#f3b48f;transform-origin:left;transform:scaleX(0);animation:tabprog 6.5s linear forwards}
.welcome.paused .ws-dots button::after,.welcome.offscreen .ws-dots button::after{animation-play-state:paused}

/* the product tour */
.tour{margin-top:84px}
.tour-row{display:grid;gap:34px;align-items:center;grid-template-columns:1fr;margin-top:72px}
@media(min-width:960px){.tour-row{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:60px}
  .tour-row.rev{grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr)}.tour-row.rev .tour-copy{order:2}}
.tour-copy h3{font-size:clamp(1.45rem,2.6vw,2rem);line-height:1.12;letter-spacing:-.028em;margin:6px 0 12px}
.tour-copy > p{color:var(--text);font-size:1.03rem}
.tour-vis{position:relative;isolation:isolate}
.tour-vis::before{content:"";position:absolute;z-index:-1;inset:10% -5% -9% 7%;border-radius:30px;
  background:radial-gradient(circle at 70% 30%,rgba(196,117,76,.22),transparent 60%),repeating-linear-gradient(135deg,rgba(196,117,76,.07) 0 2px,transparent 2px 12px)}
.tour-row.rev .tour-vis::before{inset:10% 7% -9% -5%}
.tour-vis .t-chip{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;animation:floaty 8s ease-in-out infinite}
.tour-vis .t1{left:-5%;bottom:10%}
.tour-vis .t2{right:-4%;top:12%}
.t-big{font-size:1.6rem;font-weight:780;letter-spacing:-.03em;color:var(--copper-ink)}
.tour-vis .t-phone{position:absolute;z-index:2;right:-4%;bottom:-12%;width:23%;animation:floaty 9s ease-in-out -2s infinite}
@media(max-width:700px){.tour-vis .t-chip{display:none}.tour-vis .t-phone{right:-2%;width:28%}}

/* PelQi band */
.pelqi-band{position:relative;isolation:isolate;margin-top:100px;padding:84px 16px 0;background:#141719;color:#e6eaef;overflow:hidden}
.pelqi-band::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:40px 40px;mask-image:radial-gradient(ellipse 80% 70% at 40% 30%,#000 25%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at 40% 30%,#000 25%,transparent 75%)}
.pelqi-band::after{content:"";position:absolute;z-index:-1;width:700px;height:700px;left:-200px;top:-260px;border-radius:50%;background:radial-gradient(circle,rgba(196,117,76,.4),transparent 65%);filter:blur(30px)}
.pb-inner{max-width:1120px;margin:0 auto;display:grid;gap:30px;align-items:center;grid-template-columns:1fr}
@media(min-width:900px){.pb-inner{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:56px}}
.pb-eye,.pq-stage{position:relative;isolation:isolate;display:grid;place-items:center;aspect-ratio:1;width:100%;max-width:420px;margin:0 auto}
.pb-eye .ripples,.pq-stage .ripples{width:130%}
.giant-eye{width:62%;height:auto;--pq-ink:#f2f4f7;filter:drop-shadow(0 0 42px rgba(232,149,107,.4))}
.giant-eye .pq-iris{fill:#262c30;stroke:rgba(242,239,233,.36)}
.giant-eye .pq-pupil{filter:drop-shadow(0 0 4px rgba(232,149,107,.9))}
.pb-mood{position:absolute;left:0;right:0;bottom:2%;margin:0;text-align:center;font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#9aa3ad}
.pb-copy h2,.pq-copy h1{color:#fff}
.pb-copy h2{font-size:clamp(1.6rem,3.3vw,2.5rem);line-height:1.1}
.pb-copy p,.pq-copy .lede{color:#c4cbd4}
.pelqi-band .eyebrow,.pq-hero .eyebrow{color:#f3b48f}
.ticks.light li{color:#d9dee5}
.pb-shot{max-width:1040px;margin:56px auto 0;transform:translateY(8px)}
.pb-shot .browser{border-radius:14px 14px 0 0}

/* PelQi page hero */
.pq-hero{position:relative;isolation:isolate;margin-top:-24px;padding:64px 16px 120px;background:#141719;color:#e6eaef;overflow:hidden}
.pq-hero::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:40px 40px;mask-image:radial-gradient(ellipse 70% 70% at 70% 45%,#000 25%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 70% 70% at 70% 45%,#000 25%,transparent 75%)}
.pq-hero::after{content:"";position:absolute;z-index:-1;width:760px;height:760px;right:-160px;top:-180px;border-radius:50%;background:radial-gradient(circle,rgba(196,117,76,.38),transparent 65%);filter:blur(30px)}
.pq-hero-in{max-width:1140px;margin:0 auto;display:grid;gap:30px;align-items:center;grid-template-columns:1fr}
@media(min-width:900px){.pq-hero-in{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.pq-copy h1{font-size:clamp(2rem,4.6vw,3.3rem);line-height:1.05;letter-spacing:-.035em;max-width:16ch}
.pq-copy .lede{font-size:1.1rem;max-width:56ch}
.pq-hero .wave path,.pelqi-band + * .wave path{fill:var(--bg)}
.pq-stage{max-width:470px}
.pq-card{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;padding:12px 15px;border-radius:14px;background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#f2f4f7;font-size:.86rem;
  box-shadow:0 18px 40px -18px rgba(0,0,0,.7);animation:floaty 8s ease-in-out infinite}
.pq-card b{display:block;font-weight:650}.pq-card i{display:block;font-style:normal;color:#b0b8c2;font-size:.78rem}
.pq-card.c1{top:4%;left:-10%}.pq-card.c2{top:auto;bottom:30%;right:-22%;animation-delay:-3s}.pq-card.c3{bottom:9%;left:-6%;animation-delay:-5s}
@media(max-width:900px){.pq-card.c1{left:0}.pq-card.c2{right:0}.pq-card.c3{left:2%}}
@media(max-width:560px){.pq-card{display:none}}
.duo{display:grid;gap:28px;grid-template-columns:1fr;margin-top:26px}
@media(min-width:900px){.duo{grid-template-columns:1fr 1fr}}
.duo figure{margin:0;display:flex;flex-direction:column;gap:14px}
.duo figcaption b{display:block;color:var(--ink)}.duo figcaption span{color:var(--muted);font-size:.94rem}
.ask-cloud{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:880px;margin:20px auto 14px}
.ask-cloud .chip{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-size:.92rem;cursor:default;background:#fff;box-shadow:var(--shadow-sm)}
.chip-eye{width:18px;height:18px}

/* How it works hero */
.stack-vis{position:relative;isolation:isolate;padding:0 7% 10% 0}
.stack-vis .ripples{width:120%}
.stack-vis .sv-phone{position:absolute;right:0;bottom:0;width:27%;z-index:2;animation:floaty 9s ease-in-out infinite}

/* setup band */
.setup-band{display:grid;gap:30px;align-items:center;grid-template-columns:1fr;margin-top:88px}
@media(min-width:900px){.setup-band{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px}}
.setup-band figure{position:relative;margin:0;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-lg)}
.setup-band figure::after{content:"";position:absolute;inset:auto -10% -30% auto;width:60%;aspect-ratio:1;border-radius:50%;border:2px solid rgba(243,180,143,.6);box-shadow:0 0 0 22px rgba(243,180,143,.12)}
.setup-band img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.setup-band h2{font-size:clamp(1.6rem,3.2vw,2.4rem);line-height:1.1}

/* CTA bands everywhere: dark, with ripples */
.cta-band{position:relative;overflow:hidden;isolation:isolate}
.cta-band .ripples{left:88%;width:900px}
.cta-band::before{content:"";position:absolute;z-index:-1;width:520px;height:520px;right:-120px;top:-260px;border-radius:50%;background:radial-gradient(circle,rgba(196,117,76,.4),transparent 65%);filter:blur(20px)}

/* every page hero gets a quiet ripple and dot field */
.page-hero{position:relative;isolation:isolate}
.page-hero::before{content:"";position:absolute;z-index:-1;right:-12%;top:-30%;width:620px;height:620px;border-radius:50%;
  background:repeating-radial-gradient(circle,rgba(196,117,76,.16) 0 1.5px,transparent 1.5px 34px);
  mask-image:radial-gradient(circle,#000 30%,transparent 70%);-webkit-mask-image:radial-gradient(circle,#000 30%,transparent 70%)}
.page-hero.split::before,.hero-media-split::before{right:auto;left:40%}

@media(prefers-reduced-motion:reduce){
  .ripples i{animation:none;opacity:.5;transform:scale(.6)}.ripples i:nth-child(2){transform:scale(.8)}.ripples i:nth-child(3){transform:scale(1)}.ripples i:nth-child(4){display:none}
  .ws-slide.on img,.hx-phone,.tour-vis .t-chip,.tour-vis .t-phone,.pq-card,.sv-phone,.hx .mock-float{animation:none}
  .shot-tabs button::after,.ws-dots button::after{display:none}
  .ws-slide figcaption > *{opacity:1;transform:none;animation:none!important}
  .hx-browser{transform:none}
}
.hx .mock-float,.tour-vis .t-chip{display:flex;align-items:center;gap:10px;text-align:left}
.hx .hx-pelqi{display:grid;gap:4px}
.hx .mock-float b,.hx .mock-float i,.tour-vis .t-chip b,.tour-vis .t-chip i{display:block}
.hx .mock-float i,.tour-vis .t-chip i{font-style:normal;color:var(--muted);font-size:.78rem}
.hx .hx-pelqi b{display:flex;align-items:center;gap:6px}
@media(max-width:1100px){.pq-card.c2{right:-4%;bottom:22%}}
@media(max-width:1180px){.hx .hx-pelqi{display:none}}

/* ================================================================ ENG-152: cool palette, dark heroes, clean images */
body.pub,.pub{background:var(--bg)}
.site .pub-header{background:rgba(255,255,255,.86);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom-color:rgba(15,20,25,.07)}
.site-footer{background:#0b1015;color:#aeb6c0;border-top:0}
.site-footer h4{color:#7d8794}.site-footer .foot a:not(.site-brand){color:#d3d9e0}.site-footer .foot a:hover{color:#fff}
.foot-brand .site-brand,.foot-lockup span{color:#fff}.foot-brand p{color:#98a1ab}.foot-lockup small{color:#7d8794}
.foot-base{border-top-color:rgba(255,255,255,.08);color:#7d8794}.foot-base a{color:#98a1ab}

/* sections breathe on white and cool grey */
.tour{position:relative}
.tour::before{content:"";position:absolute;z-index:-1;inset:-40px -100vmax -60px;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.phones-band{background:transparent;padding-left:0;padding-right:0}
.made-for{position:relative;padding:22px 0}
.made-for a{border-color:var(--line)}

/* clean images: no boxes, tiles or hatched panels behind them */
.tour-vis::before,.tour-row.rev .tour-vis::before{display:none}
.photo-card,.people-grid figure{background:transparent}
.setup-band figure::after{display:none}
.oops-mark{background:transparent;box-shadow:none;width:auto;height:auto}
.oops-eye{width:96px;height:96px;--pq-ink:#0f1419}
.oops-mark .pq .pq-iris{fill:#1c252e;stroke:rgba(15,20,25,.2)}
.ask-cloud .chip{background:transparent;box-shadow:none}
.pelqi-card{background:#fff;border-color:var(--line)}
.dock-head .dock-big{filter:none}
.industry-card.has-photo .ico{background:transparent;box-shadow:none;margin-top:4px}
.industry-card .ico{background:transparent}
.how-booking li svg{background:transparent;padding:4px}
.giant-eye{filter:drop-shadow(0 0 36px rgba(232,149,107,.35))}
.pq .pq-iris{stroke-width:.8}
.site .ico{background:transparent;color:var(--copper);width:auto;height:auto;justify-content:start}
.site .ico svg{width:26px;height:26px}
.site .industry-hero .ico.big{display:none}
.page-hero.split::before,.hero-media-split::before,.page-hero.split::after,.hero-media-split::after{left:-100vmax;right:-100vmax}
/* logos keep their own shape: round marks and wide wordmarks alike */
.sf-hero .sf-logo,.portal-hero .sf-logo{width:auto;height:64px;max-width:240px;border-radius:0;object-fit:contain;box-shadow:none}
.sf-logo.small{width:auto;height:30px;max-width:120px;border-radius:0;object-fit:contain}
.m-logo{width:auto;max-width:110px;height:32px;border-radius:0;object-fit:contain;box-shadow:none}
.brand-logo{max-width:150px}

/* ================================================================ ENG-153: typography */
:root{--display:"Plus Jakarta Sans","Inter",system-ui,-apple-system,"Segoe UI",sans-serif}
h1,h2,h3,.site-brand,.auth-brand,.wv-inner span,.art-line,.t-big,.figure b{font-family:var(--display);font-feature-settings:normal}
h1{letter-spacing:-.03em;font-weight:760}
h2{letter-spacing:-.022em;font-weight:720}
h3{letter-spacing:-.01em;font-weight:680}
body{letter-spacing:0}

/* ================================================================ ENG-153: PelQi's emotions */
.pq{overflow:visible}
.pq .pq-halo{fill:none;stroke:transparent}
.pq .pq-ring{transition:stroke .6s,stroke-dasharray .9s cubic-bezier(.2,.8,.2,1),opacity .6s}
.pq .pq-iris{stroke-width:.9}
.pq .pq-eye,.pq .pq-blink,.pq .pq-look,.pq .pq-glance{transform-box:view-box;transform-origin:24px 24px}
.pq .pq-look{animation:none;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.pq .pq-glance{animation:pqglance 11s ease-in-out infinite}
.pq .pq-pupil{transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.pq[data-mood=resting] .pq-ring{opacity:.45;animation:pqspin 14s linear infinite,pqbreathe 5s ease-in-out infinite}
.pq[data-mood=resting] .pq-eye{transform:scaleY(.38)}
.pq[data-mood=resting] .pq-glance{animation:none}
.pq[data-mood=listening] .pq-ring{stroke:#f7b48e;stroke-dasharray:125.7 0}
.pq[data-mood=listening] .pq-eye{transform:scale(1.06)}
.pq[data-mood=listening] .pq-glance{animation:none}
.pq[data-mood=listening] .pq-halo{stroke:rgba(247,180,142,.35);stroke-width:.6;animation:pqpulse 1.6s ease-out infinite}
.pq[data-mood=thinking] .pq-ring{stroke:#7b97e0;stroke-dasharray:18 8;animation:pqspin 1.2s linear infinite}
.pq[data-mood=thinking] .pq-glance{animation:pqscan 1.2s ease-in-out infinite}
.pq[data-mood=thinking] .pq-blink{animation:none}
.pq[data-mood=working] .pq-ring{stroke:var(--pelqi);stroke-dasharray:8 4;animation:pqspin 2.4s linear infinite}
.pq[data-mood=working] .pq-eye{transform:scaleY(.82)}
.pq[data-mood=working] .pq-glance{animation:pqscan .9s ease-in-out infinite}
.pq[data-mood=speaking] .pq-ring{stroke:#f7b48e}
.pq[data-mood=speaking] .pq-pupil{animation:pqtalk .7s ease-in-out infinite}
.pq[data-mood=speaking] .pq-glance{animation:none}
.pq[data-mood=asking] .pq-ring{stroke:#e9a23b;stroke-dasharray:125.7 0;animation:pqheart 1.6s ease-in-out infinite}
.pq[data-mood=asking] .pq-eye{transform:rotate(-8deg) scale(1.05)}
.pq[data-mood=asking] .pq-glance{animation:none}
.pq[data-mood=curious] .pq-ring{stroke:#e9a23b}
.pq[data-mood=curious] .pq-pupil{transform:scale(1.18)}
.pq[data-mood=curious] .pq-eye{transform:rotate(6deg)}
.pq[data-mood=proud] .pq-ring{stroke:#3fbf86;stroke-dasharray:125.7 0;animation:pqexhale 2s cubic-bezier(.2,.8,.2,1) 1}
.pq[data-mood=proud] .pq-eye{transform:scaleY(.8)}
.pq[data-mood=concerned] .pq-ring{stroke:#e5675f}
.pq[data-mood=concerned] .pq-eye{transform:scaleY(.66)}
.pq[data-mood=concerned] .pq-glance{animation:none}
.pq.follow .pq-glance{animation:none}
.pq.follow[data-mood=thinking] .pq-glance,.pq.follow[data-mood=working] .pq-glance{animation:pqscan 1.2s ease-in-out infinite}
@keyframes pqscan{0%,100%{transform:translate(-3px,0)}50%{transform:translate(3px,0)}}
@keyframes pqtalk{50%{transform:scale(1.25)}}
@keyframes pqbreathe{50%{opacity:.25}}
@keyframes pqpulse{0%{transform:scale(1);opacity:1}100%{transform:scale(1.18);opacity:0}}
@keyframes pqheart{0%,60%,100%{transform:rotate(-90deg) scale(1)}12%{transform:rotate(-90deg) scale(1.05)}24%{transform:rotate(-90deg) scale(1)}36%{transform:rotate(-90deg) scale(1.035)}}
@keyframes pqexhale{0%{transform:rotate(-90deg) scale(1)}40%{transform:rotate(-90deg) scale(1.07)}100%{transform:rotate(-90deg) scale(1)}}
.pq .pq-halo{transform-box:view-box;transform-origin:24px 24px}
/* ================================================================ ENG-154: Fountain's own look, light and organic */
@font-face{font-family:"DM Serif Text";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/dmserif-latin.f590ba686106.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"DM Serif Text";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/dmserif-latin-ext.18d5554c0f64.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"DM Serif Text";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/dmserif-italic-latin.2dacd3d68b20.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"DM Serif Text";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/dmserif-italic-latin-ext.ef8c9860f1d3.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Kanit";font-style:normal;font-weight:300;font-display:swap;src:url("../fonts/kanit-300-latin.f659d8a8cf76.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Kanit";font-style:normal;font-weight:300;font-display:swap;src:url("../fonts/kanit-300-latin-ext.6c364fd8d230.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Kanit";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/kanit-400-latin.b149de90fec0.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Kanit";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/kanit-400-latin-ext.0cb3ccc4fdf4.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Kanit";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/kanit-500-latin.12c6e4c44681.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Kanit";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/kanit-500-latin-ext.6a254ee125a9.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Kanit";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/kanit-600-latin.201d1d24b464.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Kanit";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/kanit-600-latin-ext.41863b69f437.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* palette: white leads, warm sand for a few bands, sunshine yellow and mint for the moments that matter */
body.site{
  --sun:#f8d613;--mint:#55e8a4;--ink:#030207;--text:#454545;--muted:#666;--subtle:#8a8a8a;
  --sand:#efe9d1;--sand-2:#e4ddc4;--paper:#faf8f2;--line:rgba(3,2,7,.1);--line-strong:rgba(3,2,7,.22);--rule:rgba(3,2,7,.82);
  --grad:linear-gradient(90deg,#f8d613,#55e8a4);--copper-ink:#030207;--surface:#fff;--bg:#fff;
  --serif:"DM Serif Text",Georgia,"Times New Roman",serif;
  --font:"Kanit",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23030207' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
  --arrow-w:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
  --shadow:0 18px 40px -26px rgba(3,2,7,.28);--shadow-lg:0 44px 90px -46px rgba(3,2,7,.42);--shadow-sm:0 1px 2px rgba(3,2,7,.05);
  background:#fff;color:var(--text);font:300 17px/1.62 var(--font)}
.site h1,.site h2,.site h3,.site .cta-h,.site .site-brand{font-family:var(--serif);font-weight:400;color:var(--ink);letter-spacing:-.008em;font-feature-settings:normal}
.site h1{line-height:1.04}.site h2{line-height:1.08}.site h3{line-height:1.2}
.site b,.site strong,.site label,.site summary{font-weight:500}
.site a{color:var(--ink)}
.site ::selection{background:rgba(248,214,19,.55)}
.site .pub-main{max-width:1240px;padding-top:0}
/* words that carry the idea: serif italic on a sunshine-to-mint underline */
.site .grad,.site .hl{font-style:italic;color:var(--ink);padding:0 .04em;-webkit-text-fill-color:currentColor;
  background:var(--grad) left 88%/100% .2em no-repeat;-webkit-box-decoration-break:clone;box-decoration-break:clone}

/* header: a floating sand bar */
.site .pub-header{position:sticky;top:0;z-index:40;padding:12px 16px 0;background:transparent;border:0;backdrop-filter:none;-webkit-backdrop-filter:none}
.site .pub-header .inner{max-width:1240px;padding:8px 10px 8px 22px;border-radius:999px;flex-wrap:wrap;
  background:rgba(239,233,209,.8);border:1px solid rgba(3,2,7,.06);backdrop-filter:saturate(1.2) blur(14px);-webkit-backdrop-filter:saturate(1.2) blur(14px)}
.site .site-brand{font-size:1.4rem;color:var(--ink);gap:10px}
.site .site-brand img{width:30px;height:30px}
.site .site-nav a:not(.btn){color:var(--ink);font-weight:400;font-size:1rem;padding:8px 12px;border-radius:999px}
.site .site-nav a:not(.btn):hover{background:rgba(3,2,7,.06);color:var(--ink)}
.site .site-nav a[aria-current=page]{box-shadow:none;background:#fff;border-radius:999px;font-weight:500}
.site .menu-btn{background:transparent;color:var(--ink);border:1px solid var(--ink);border-radius:999px;font:500 .95rem var(--font)}
@media(max-width:900px){
  .site .pub-header .inner{border-radius:26px}
  .site .site-nav a:not(.btn){border-radius:0;border-bottom-color:rgba(3,2,7,.1)}
  .site .site-nav a[aria-current=page]{background:transparent;box-shadow:inset 3px 0 0 var(--ink)}
}

/* buttons: a sunshine pill with its arrow alongside */
.site .btn{position:relative;isolation:isolate;overflow:visible;min-height:52px;padding:0 74px 0 28px;border:0;border-radius:999px;background:none;color:var(--ink);
  font:500 1rem var(--font);box-shadow:none;transition:color .2s}
.site .btn::before{content:"";position:absolute;z-index:-1;inset:0 48px 0 0;border-radius:999px;background:var(--sun);transition:background .25s}
.site .btn::after{content:"";display:block;position:absolute;z-index:-1;top:0;right:0;bottom:0;left:auto;width:52px;height:auto;border-radius:50%;
  background:var(--sun) var(--arrow) center/20px no-repeat;transform:none;transition:transform .35s cubic-bezier(.2,.8,.2,1),background-color .25s}
.site .btn:hover{background:none}
.site .btn:hover::after{transform:rotate(-45deg)}
.site .btn:hover::before{background:#ffe03c}
.site .btn.small{min-height:42px;padding:0 60px 0 20px;font-size:.95rem}
.site .btn.small::before{right:38px}
.site .btn.small::after{width:42px;background-size:17px}
.site .btn.secondary,.site .btn.ghost-light{padding:0 26px;border:1px solid var(--ink);background:transparent;color:var(--ink)}
.site .btn.secondary.small{padding:0 18px}
.site .btn.secondary::before,.site .btn.secondary::after,.site .btn.ghost-light::before,.site .btn.ghost-light::after{display:none}
.site .btn.secondary:hover,.site .btn.ghost-light:hover{background:var(--ink);color:#fff}
.site .btn.light{color:#fff}
.site .btn.light::before{background:var(--ink)}
.site .btn.light::after{background-color:var(--ink);background-image:var(--arrow-w)}
.site .btn.light:hover::before{background:#25232b}
.site .btn.link{padding:0;min-height:0;color:var(--ink);text-decoration:underline}
.site .btn.link::before,.site .btn.link::after{display:none}
.site .nav-cta .btn.small:not(.secondary){padding-right:58px}

/* labels: Appixy's gradient chip */
.site .eyebrow{display:inline-flex;align-items:center;gap:8px;width:fit-content;padding:5px 16px;margin:0 0 16px;border-radius:999px;background:var(--grad);
  color:var(--ink);font:500 .84rem/1.5 var(--font);letter-spacing:.01em;text-transform:none}
.site .eyebrow::before{display:none}
.site .eyebrow svg{width:15px;height:15px;color:var(--ink)}
.site .section-head.center .eyebrow{margin-left:auto;margin-right:auto}

/* section heads and text */
.site .section-head{max-width:760px}
.site .section-head h2,.site .home-section h2{font-size:clamp(2rem,3.8vw,3.1rem)}
.site .section-head p,.site .lede{color:var(--text);font-size:1.1rem}
.site .home-section{margin-top:96px}
.site .ticks li{color:var(--text)}
.site .ticks li::before{border-color:#0bae6c}
.site .muted{color:var(--muted)}

/* cards: white, a hairline, generous corners */
.site .card,.site .industry-card,.site .flow-step,.site .explore-card,.site .example-card,.site .m-card,.site .figure,.site .role-grid .card,
.site .ask-grid .card,.site .mock-panel,.site .setup-form,.site .pelqi-card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:none;color:var(--text)}
.site .industry-card:hover,.site .explore-card:hover,.site .example-card:hover,.site .m-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow)}
.site .industry-card h3,.site .flow-step h3,.site .card h3,.site .card h2,.site .m-name h2,.site .explore-card h3{font-size:1.45rem;color:var(--ink)}
.site .industry-card .go,.site .explore-card .go,.site .m-go{color:var(--ink);font-weight:500;text-decoration:underline;text-decoration-color:var(--sun);text-decoration-thickness:3px;text-underline-offset:4px}
.site .mini,.site .m-tags span,.site .demo-tag,.site .static-chip,.site .chip{background:var(--paper);border:1px solid var(--line);color:var(--text)}
.site .mini b,.site .mini strong{color:var(--ink)}
.site .ico{color:var(--ink)}
.site .faq details{border-bottom:1px solid var(--line-strong);padding:20px 2px}
.site .faq summary{font-family:var(--serif);font-weight:400;font-size:1.3rem;color:var(--ink)}
.site .faq details p{color:var(--text)}
.site input,.site select,.site textarea{border-color:var(--line-strong);border-radius:14px;font-family:var(--font);font-weight:400}
.site table.data th{color:var(--muted);font-weight:500}

/* the welcome hero: big serif words, the laptop, outline labels on fine lines */
.welcome-hero{position:relative;isolation:isolate;overflow:hidden;padding:64px 16px 84px;margin-top:24px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.welcome-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(34% 46% at 82% 40%,rgba(248,214,19,.2),transparent 70%),radial-gradient(30% 42% at 96% 78%,rgba(85,232,164,.22),transparent 70%),radial-gradient(40% 60% at 0% 100%,rgba(239,233,209,.9),transparent 70%)}
.wh-in{max-width:1240px;margin:0 auto;display:grid;gap:48px;align-items:center;grid-template-columns:1fr}
@media(min-width:1000px){.wh-in{grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);gap:56px}}
.wh-copy h1{font-size:clamp(2.7rem,6vw,5.4rem);line-height:1.02;margin:6px 0 24px;color:var(--ink)}
.wh-copy .lede{font-size:1.18rem;max-width:50ch;color:var(--text)}
.wh-copy .actions{margin-top:30px;gap:14px}
.wh-trust{list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;margin:26px 0 0;padding:0;color:var(--muted);font-size:.95rem}
.wh-trust li{display:inline-flex;align-items:center;gap:8px}.wh-trust svg{width:17px;height:17px;color:var(--ink)}
.wh-copy > *{opacity:0;animation:rise .9s cubic-bezier(.2,.8,.2,1) forwards}
.wh-copy > :nth-child(1){animation-delay:.05s}.wh-copy > :nth-child(2){animation-delay:.15s}.wh-copy > :nth-child(3){animation-delay:.28s}
.wh-copy > :nth-child(4){animation-delay:.4s}.wh-copy > :nth-child(5){animation-delay:.52s}
.wh-photo{position:relative;margin:0;opacity:0;animation:rise 1.1s cubic-bezier(.2,.8,.2,1) .25s forwards}
.wh-photo img{display:block;width:100%;height:auto;border-radius:30px;box-shadow:var(--shadow-lg)}
.wglass{position:absolute;display:flex;align-items:center;gap:11px;padding:12px 16px;border-radius:18px;font-size:.88rem;color:var(--ink);
  background:rgba(255,255,255,.9);border:1px solid rgba(3,2,7,.08);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 22px 44px -22px rgba(3,2,7,.4);opacity:0;animation:rise .9s cubic-bezier(.2,.8,.2,1) forwards,floaty 9s ease-in-out infinite}
.wglass b{display:block;font-weight:500}.wglass i{display:block;font-style:normal;color:var(--muted);font-size:.8rem}
.wglass.g-pay{left:-6%;top:10%;animation-delay:.9s,0s}
.wglass.g-req{right:-4%;top:40%;animation-delay:1.2s,-3s}
.wglass.g-pq{left:8%;bottom:-6%;animation-delay:1.5s,-6s}
.wglass .g-badge{background:var(--grad);color:var(--ink);border-radius:999px;padding:2px 10px;font-size:.74rem;font-weight:500}
.g-eye{width:30px;height:30px;flex:none}
.site .wglass .pq,.site .pelqi-band .pq,.site .pq-hero .pq,.site .moods-band .pq{--pq-ink:#030207}
/* outline labels joined to the page by hairlines */
.wh-tag{position:absolute;z-index:1;display:inline-flex;align-items:center;padding:6px 20px;border:1px solid var(--ink);border-radius:999px;background:#fff;
  color:var(--ink);font:400 .98rem var(--font);white-space:nowrap;pointer-events:none}
.wh-tag::before{content:"";position:absolute;background:var(--rule)}
.wh-tag.l{left:48px;top:22px}.wh-tag.l::before{right:100%;top:50%;width:100vw;height:1px}
.wh-tag.r{right:48px;top:150px}.wh-tag.r::before{left:100%;top:50%;width:100vw;height:1px}
.wh-tag.b{left:44%;bottom:22px}.wh-tag.b::before{left:50%;top:100%;width:1px;height:60px}
@media(max-width:999px){.wh-tag{display:none}.wglass.g-pay{left:2%}.wglass.g-req{right:2%}}
@media(max-width:600px){
  .welcome-hero{padding:40px 16px 56px}
  .wglass{padding:8px 12px;gap:9px;font-size:.76rem;border-radius:14px}.wglass i{font-size:.7rem}
  .wglass.g-req{display:none}.wglass.g-pay{top:-6%;left:3%}.wglass.g-pq{bottom:-7%;left:auto;right:3%}
}

/* the app tour, framed in a light browser */
.app-stage{margin-top:96px}
.app-stage .hx-stage{margin-top:34px}
.site .browser{border-radius:18px;box-shadow:var(--shadow-lg),0 0 0 1px rgba(3,2,7,.08);background:#fff}
.site .browser-bar{background:#f4f0e2;border-bottom:1px solid rgba(3,2,7,.07)}
.site .browser-bar .url{background:#fff;box-shadow:inset 0 0 0 1px rgba(3,2,7,.08);color:var(--muted);border-radius:999px}
.site .browser-bar .url svg{color:#0bae6c}
.site .browser.dark{background:#fff}
.site .browser.dark .browser-bar{background:#f4f0e2;border-color:rgba(3,2,7,.07)}
.site .browser.dark .url{background:#fff;color:var(--muted)}
.shot-tabs{display:none}

/* who it is for */
.site .made-for{margin-top:72px;padding:0}
.site .mf-label{color:var(--muted);font-weight:400;letter-spacing:.06em}
.site .made-for a{background:#fff;border:1px solid var(--ink);color:var(--ink);font-weight:400;box-shadow:none}
.site .made-for a:hover{background:var(--sand);border-color:var(--ink);transform:translateY(-2px)}
.site .made-for a svg{color:var(--ink)}
.site .mf-all{color:var(--ink);font-weight:500;text-decoration-color:var(--sun);text-decoration-thickness:3px;text-underline-offset:4px}

/* the welcome slideshow, on warm sand, faces in frame */
.welcome{position:relative;margin-top:96px;background:var(--sand);color:var(--ink);height:clamp(460px,50vw,620px);overflow:hidden}
.welcome .ws-slide{display:grid;grid-template-columns:1fr}
.welcome .ws-slide img{position:absolute;right:0;top:0;width:60%;height:100%;object-fit:cover;transform:none;
  mask-image:linear-gradient(90deg,transparent 0%,#000 24%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 24%)}
.welcome .ws-slide.on img{animation:wsfade 1.4s ease-out forwards}
@keyframes wsfade{from{opacity:.4;transform:scale(1.03)}to{opacity:1;transform:none}}
.welcome .ws-slide::after{display:none}
.welcome .ws-slide figcaption{top:50%;bottom:auto;transform:translateY(-50%);max-width:min(520px,44%)}
.welcome .ws-slide h2{color:var(--ink);font-size:clamp(2rem,3.8vw,3.2rem);line-height:1.06;letter-spacing:-.008em;margin:4px 0 14px}
.welcome .ws-slide p{color:var(--text);font-size:1.1rem}
.welcome .ws-slide .eyebrow{color:var(--ink)}
.welcome .ws-ctrl{bottom:40px}
.welcome .ws-arrow{border:1px solid var(--ink);background:transparent;color:var(--ink)}
.welcome .ws-arrow:hover{background:var(--ink);color:#fff}
.welcome .ws-dots button{background:rgba(3,2,7,.18)}
.welcome .ws-dots button[aria-current=true]::after{background:var(--ink)}
@media(max-width:800px){
  .welcome{height:auto}
  .welcome .ws-slide{position:relative;display:none}
  .welcome .ws-slide.on{display:block}
  .welcome .ws-slide img{position:relative;width:100%;height:340px;mask-image:linear-gradient(180deg,#000 72%,transparent);-webkit-mask-image:linear-gradient(180deg,#000 72%,transparent)}
  .welcome .ws-slide figcaption{position:relative;transform:none;left:auto;right:auto;max-width:none;padding:6px 20px 96px}
  .welcome .ws-ctrl{left:20px}
}

/* the product tour: rows divided by fine rules, words left, the screen right */
.site .tour{margin-top:110px}
.site .tour::before{display:none}
.site .tour .section-head{text-align:left;max-width:none;margin:0;padding-bottom:26px;border-bottom:1px solid var(--rule)}
.site .tour .section-head .eyebrow{margin-left:0}
.site .tour .section-head p{max-width:64ch}
.site .tour-row{margin-top:0;padding:44px 0;border-bottom:1px solid var(--rule)}
@media(min-width:960px){.site .tour-row,.site .tour-row.rev{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px}.site .tour-row.rev .tour-copy{order:0}}
.site .tour-copy h3{font-size:clamp(1.6rem,2.6vw,2.2rem)}
.site .tour-copy .eyebrow{background:transparent;border:1px solid var(--ink);padding:4px 14px}
.site .mock-float,.site .tour-vis .t-chip{background:rgba(255,255,255,.94);border:1px solid rgba(3,2,7,.08);color:var(--ink);border-radius:18px;box-shadow:0 22px 44px -22px rgba(3,2,7,.4)}
.site .mock-float b,.site .tour-vis .t-chip b{color:var(--ink);font-weight:500}
.site .mock-float i,.site .tour-vis .t-chip i,.site .mock-float span{color:var(--muted)}
.site .t-big{font-family:var(--serif);font-weight:400;color:var(--ink)}

/* PelQi on Fountain: a calm paper band, the eye in ink */
.pelqi-band{position:relative;isolation:isolate;margin-top:110px;padding:96px 16px 0;color:var(--ink);overflow:hidden;
  background:radial-gradient(40% 60% at 18% 30%,rgba(248,214,19,.2),transparent 70%),radial-gradient(40% 60% at 88% 80%,rgba(85,232,164,.2),transparent 70%),var(--paper);
  border-top:1px solid var(--rule)}
.pelqi-band::before{background-image:linear-gradient(rgba(3,2,7,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(3,2,7,.045) 1px,transparent 1px)}
.pelqi-band::after{display:none}
.site .pb-copy h2{color:var(--ink);font-size:clamp(2rem,3.6vw,3rem)}
.site .pb-copy p{color:var(--text)}
.site .pb-mood{color:var(--muted);font-weight:500}
.site .ticks.light li{color:var(--text)}
.site .giant-eye{--pq-ink:#030207;filter:drop-shadow(0 20px 40px rgba(3,2,7,.18))}
.site .giant-eye .pq-ring{stroke:#030207}
.site .giant-eye .pq-iris{fill:#18171d;stroke:rgba(3,2,7,.4)}
.pb-copy .actions{margin-top:26px}

/* inner page heroes: white, a warm glow, a full-width rule beneath */
.site .page-hero{position:relative;isolation:isolate;padding:72px 0 56px;color:var(--text)}
.site .page-hero::before{content:"";position:absolute;z-index:-1;inset:0 -100vmax;width:auto;height:auto;border-radius:0;mask-image:none;-webkit-mask-image:none;
  background:radial-gradient(30% 60% at 78% 40%,rgba(248,214,19,.18),transparent 70%),radial-gradient(26% 50% at 92% 85%,rgba(85,232,164,.18),transparent 70%),radial-gradient(30% 70% at 6% 10%,rgba(239,233,209,.85),transparent 70%)}
.site .page-hero::after{content:"";position:absolute;z-index:-1;left:-100vmax;right:-100vmax;bottom:0;height:1px;background:var(--rule)}
.site .page-hero h1{color:var(--ink);font-size:clamp(2.5rem,5.2vw,4.4rem);max-width:16ch;margin-bottom:18px}
.site .page-hero .lede,.site .page-hero p{color:var(--text)}
.site .page-hero + *{margin-top:72px}
.site .page-hero .hero-photo img{border-radius:28px;box-shadow:var(--shadow-lg)}
.site .page-hero .browser{box-shadow:var(--shadow-lg),0 0 0 1px rgba(3,2,7,.08)}

/* PelQi page hero */
.pq-hero{position:relative;isolation:isolate;margin-top:24px;padding:72px 16px 96px;color:var(--ink);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);
  background:radial-gradient(36% 60% at 74% 40%,rgba(248,214,19,.22),transparent 70%),radial-gradient(30% 50% at 92% 88%,rgba(85,232,164,.22),transparent 70%),var(--paper)}
.pq-hero::before{background-image:linear-gradient(rgba(3,2,7,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(3,2,7,.045) 1px,transparent 1px)}
.pq-hero::after{display:none}
.site .pq-copy h1{color:var(--ink);font-size:clamp(2.5rem,5vw,4.2rem);max-width:15ch}
.site .pq-copy .lede{color:var(--text)}
.site .pq-card{background:rgba(255,255,255,.92);border:1px solid rgba(3,2,7,.08);color:var(--ink);box-shadow:0 22px 44px -22px rgba(3,2,7,.4)}
.site .pq-card i{color:var(--muted)}
.site .pq-card b{font-weight:500}
.site .ask-cloud .chip{background:#fff;border:1px solid var(--ink);color:var(--ink)}

/* PelQi's moods */
.moods-band{display:grid;gap:30px;align-items:center;grid-template-columns:1fr;margin-top:96px}
@media(min-width:900px){.moods-band{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px}}
.mo-eye{display:grid;place-items:center}
.mo-eye .giant-eye{width:min(320px,70%)}
.moods{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 6px}
.moods button{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;border:1px solid var(--ink);background:#fff;
  color:var(--ink);font:400 .92rem var(--font);cursor:pointer;transition:all .2s}
.moods button:hover{background:var(--sand)}
.moods button[aria-pressed=true]{background:var(--ink);color:#fff}
.moods button i{width:8px;height:8px;border-radius:50%;background:#e8956b}
.moods button[data-mood=thinking] i{background:#7b97e0}.moods button[data-mood=asking] i,.moods button[data-mood=curious] i{background:#e9a23b}
.moods button[data-mood=proud] i{background:#3fbf86}.moods button[data-mood=concerned] i{background:#e5675f}.moods button[data-mood=resting] i{background:#8a8a8a}
.mood-say{color:var(--muted);min-height:1.6em;margin:6px 0 0}

/* the directory */
.site .market-hero{background:var(--sand);color:var(--ink);box-shadow:none;border:0;margin-top:28px;border-radius:30px}
.site .market-hero .mesh i:nth-child(1){background:radial-gradient(circle,rgba(248,214,19,.55),transparent 65%)}
.site .market-hero .mesh i:nth-child(2){background:radial-gradient(circle,rgba(85,232,164,.5),transparent 65%)}
.site .market-hero .mesh i:nth-child(3){background:radial-gradient(circle,rgba(255,255,255,.7),transparent 65%)}
.site .market-hero::after{background-image:linear-gradient(rgba(3,2,7,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(3,2,7,.04) 1px,transparent 1px)}
.site .market-hero h1{color:var(--ink);font-size:clamp(2.2rem,4.4vw,3.6rem)}
.site .market-hero .lede{color:var(--text)}
.site .market-search{background:rgba(255,255,255,.55);border-color:rgba(3,2,7,.08)}
.site .ms-field{border-radius:999px;background:#fff}
.site .ms-field input,.site .ms-field select{background:transparent;color:var(--ink)}
.site .ms-field:focus-within{box-shadow:0 0 0 3px rgba(248,214,19,.6)}
.site .ms-go{min-height:50px}
.site .facet-row a{background:rgba(255,255,255,.7);border:1px solid rgba(3,2,7,.14);color:var(--ink);font-weight:400}
.site .facet-row a svg{color:var(--ink)}
.site .facet-row a .n{color:var(--muted)}
.site .facet-row a:hover{background:#fff}
.site .facet-row a[aria-current=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.site .facet-row a[aria-current=true] svg,.site .facet-row a[aria-current=true] .n{color:#fff}
.site .m-cat{background:rgba(255,255,255,.92);color:var(--ink)}
.site .m-rating .stars{color:#e0b400}
.site .m-logo,.site .ex-logo{background:transparent;padding:0;height:32px}

/* setup band and photos */
.site .setup-band{margin-top:110px}
.site .setup-band figure{border-radius:30px}
.site .setup-band h2{font-size:clamp(2rem,3.6vw,3rem)}
.site .photo-card{border-radius:26px;background:transparent}
.site .photo-row figcaption b{font-family:var(--serif);font-weight:400;font-size:1.3rem}

/* closing call: Appixy's sunshine-to-mint panel */
.site .cta-band{position:relative;overflow:hidden;isolation:isolate;margin-top:110px;padding:56px clamp(24px,5vw,64px);border:0;border-radius:30px;
  background:var(--grad);color:var(--ink)}
.site .cta-band::before{content:"";display:block;position:absolute;z-index:-1;right:-80px;top:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.45),transparent 65%);filter:none}
.site .cta-band h2,.site .cta-band .cta-h{color:var(--ink);font-size:clamp(1.9rem,3.4vw,2.8rem)}
.site .cta-band p{color:rgba(3,2,7,.78);font-size:1.08rem}

/* footer: ink, with the white mark */
.site .site-footer{background:var(--ink);color:#b9b9bd;border-top:0;margin-top:110px}
.site .site-footer h4{color:#8d8c93;font-weight:500}
.site .site-footer .foot a:not(.site-brand),.site .site-footer a,.site .foot-base a{color:#e8e7ec}
.site .site-footer .foot a:hover{color:#fff}
.site .foot-brand .site-brand,.site .foot-lockup span{color:#fff}
.site .foot-brand p{color:#a3a2a9}
.site .foot-lockup small{color:#8d8c93;font-family:var(--font)}
.site .foot-base{border-top-color:rgba(255,255,255,.1);color:#8d8c93}
.site .flash.error{background:#fdecea;border-color:#f3b8b2;color:#8a2a22}

@media(prefers-reduced-motion:reduce){
  .wh-copy > *,.wh-photo,.wglass{opacity:1;animation:none!important}
  .pq .pq-glance,.pq .pq-ring,.pq .pq-halo,.pq .pq-pupil{animation:none!important}
  .welcome .ws-slide.on img{animation:none}
  .site .btn::after{display:block}
}
/* the industry reel keeps white words over its video */
.site .reel-stage{border-radius:28px}
.site .reel-slide figcaption h3,.site .reel-head h2{color:#fff}
.site .reel-slide figcaption p{color:#e9e9ec}
.site .reel-tabs a{border:1px solid var(--ink);background:#fff;font-weight:400}
.site .reel-tabs a svg{color:var(--ink)}
.site .reel-tabs a[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.site .reel-tabs a[aria-selected=true] svg{color:var(--sun)}
.pelqi-turn .turn-q{font-weight:600;margin:0 0 8px}.pelqi-turn .turn-a{line-height:1.55;white-space:normal}.turn-waiting{margin-top:12px;padding:10px 12px;border-radius:var(--r);background:var(--info-soft)}.turn-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.turn-used{margin-top:10px}.turn-used ul{margin:6px 0 0;padding-left:18px}
.publish-missing ul{margin:6px 0 0;padding-left:20px}.publish-missing li{margin:2px 0}.publish-missing a{color:inherit}
.pelqi-busy{display:flex;align-items:center;gap:8px;margin:12px 0 0;color:var(--muted,#5b6670)}.pelqi-busy[hidden]{display:none}.pelqi-busy .pq{width:22px;height:22px}.pelqi-turn{scroll-margin-top:80px}
[data-scroll-here]{scroll-margin-top:96px}

/* sign-up: search by any name, areas as tiles, then the type */
.type-search-field{position:relative}
.type-results{list-style:none;margin:6px 0 0;padding:6px;border:1px solid var(--line-strong);border-radius:12px;background:#fff;
  box-shadow:0 18px 40px -20px rgba(11,21,23,.35);max-height:320px;overflow:auto}
.type-results[hidden]{display:none}
.type-results button{display:flex;justify-content:space-between;align-items:baseline;gap:12px;width:100%;padding:10px 12px;border:0;border-radius:8px;
  background:transparent;font:inherit;text-align:left;cursor:pointer;color:var(--ink)}
.type-results button:hover,.type-results button:focus-visible{background:#f2f6f5}
.type-results button span{color:var(--muted);font-size:.82rem;white-space:nowrap}
.type-results .none{padding:10px 12px;color:var(--muted);font-size:.92rem}
.family-pick{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.type-promote{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.type-promote input,.type-promote select{min-height:36px;width:auto;max-width:200px;font-size:.88rem}

/* area tiles: ink badges, not cream squares */
.auth-page .industry-opt .ico{background:#0b1517;color:#56e7a5;border-radius:11px;box-shadow:0 0 0 1px rgba(86,231,165,.25) inset}
.auth-page .industry-opt:has(input:checked){border-color:#0b1517;background:#f3faf6;box-shadow:0 0 0 1px #0b1517 inset}
.auth-page .industry-opt:has(input:checked) .ico{background:linear-gradient(135deg,#ffd50d,#56e7a5);color:#0b1517;box-shadow:none}
.auth-page .industry-opt.off .ico{background:#e9eded;color:#7d8a8c;box-shadow:none}
.auth-page .industry-opt input[type=radio]{accent-color:#0b1517}

/* the welcome panel blobs already fade out as gradients; no blur filter, so iPhone never boxes them */
.aurora{filter:none}

/* ---------- borrowed features: import, other ways to pay, quote choices and signing, the form on your own site */
.row.four{grid-template-columns:2fr .7fr 1fr 1.3fr}
@media(max-width:700px){.row.four{grid-template-columns:1fr}}
.badge.muted{background:var(--surface-3,#eef2f2);color:var(--muted)}
.pre{white-space:pre-wrap}
.import-start summary{cursor:pointer;list-style:none;display:flex;flex-direction:column;gap:4px}
.import-start summary::-webkit-details-marker{display:none}
.import-start summary h2{margin:0}
.import-pick{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--line);margin:0}
.import-pick>span{display:flex;flex-direction:column;gap:2px;min-width:0}
.import-pick>span>span{color:var(--muted);overflow-wrap:anywhere}
.import-review h3{margin:16px 0 4px}
.pay-methods{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
@media(max-width:700px){.pay-methods{grid-template-columns:1fr}}
.embed-card textarea{font-size:.82rem;resize:vertical}
.inv-row{padding:10px 0;border-top:1px solid var(--line)}
.inv-row p{margin:0}
.record-pay{margin-top:8px}
.record-pay summary{cursor:pointer;color:var(--info);font-size:.92rem}
.record-pay form{margin-top:10px}
tr.unchosen td{color:var(--muted);text-decoration:line-through;text-decoration-color:rgba(0,0,0,.25)}
.terms-box{margin:12px 0}
.terms-box summary{cursor:pointer;font-weight:600}
.signed-box{margin:12px 0;padding:12px 14px;border:1px solid var(--line);border-radius:12px;line-height:1.7}
.signed-box .badge,.signed-box a{margin-left:6px}
/* the customer's quote: choose a package and extras */
.pick-list{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:14px 0}
.pick-row{display:flex;align-items:center;gap:12px;padding:13px 16px;border-top:1px solid var(--line);margin:0}
.pick-row:first-child{border-top:0}
.pick-row .pick-name{flex:1;min-width:0}
.pick-row b{white-space:nowrap}
label.pick-row{cursor:pointer}
label.pick-row:has(input:checked){background:color-mix(in srgb,var(--brand,#56e7a5) 10%,transparent)}
.pick-row input{width:20px;height:20px;flex:none;accent-color:var(--brand,#0b1517)}
.pick-group{border:0;margin:0;padding:0;border-top:1px solid var(--line)}
.pick-group legend{padding:12px 16px 2px;font-weight:650;font-size:.92rem;color:var(--muted)}
.pick-total{display:flex;justify-content:space-between;padding:14px 16px;border-top:1px solid var(--line);font-size:1.05rem;background:var(--surface-2,#f7f9f9)}
.sign-box{margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:14px}
.sign-box h2{margin:0 0 10px;font-size:1.05rem}
.terms-text{max-height:220px;overflow:auto;padding:12px;border-radius:10px;background:var(--surface-2,#f7f9f9);font-size:.92rem;line-height:1.5;margin-bottom:12px}
.other-ways{margin-top:16px;padding:14px 16px;border:1px solid var(--line);border-radius:14px}
.other-ways h3{margin:0 0 8px;font-size:1rem}
.other-ways ul{list-style:none;margin:0 0 8px;padding:0}
.other-ways li{display:flex;flex-wrap:wrap;gap:4px 12px;padding:6px 0;border-top:1px solid var(--line)}
.other-ways li:first-child{border-top:0}
.other-ways li b{min-width:120px}
.other-ways li span{overflow-wrap:anywhere}
/* the request form inside the business's own website */
body.embed{background:transparent;min-height:0}
.embed-main{max-width:560px;margin:0 auto;padding:12px}
.embed-main .card{margin:0}
.embed-to{font-weight:500;color:var(--muted)}
.embed-foot{text-align:center;margin:10px 0 0;font-size:.8rem}
.embed-foot a{color:var(--muted);text-decoration:none;display:inline-flex;gap:6px;align-items:center}
.embed-foot img{width:14px;height:14px}
/* the signed agreement, for print */
.agreement-page{background:#fff}
.agreement{max-width:760px;margin:0 auto;padding:32px 20px 48px;color:#111}
.agreement h1{font-size:1.5rem}
.agreement h2{font-size:1.05rem;margin-top:22px}
.agreement .signature{font-family:"Brush Script MT","Segoe Script",cursive;font-size:2rem;margin:6px 0}
@media print{.no-print{display:none}.agreement{padding:0}}

/* ---------- Plan: Starter or Growth, the trial and its banner */
.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
@media(max-width:700px){.plan-grid{grid-template-columns:1fr}}
.plan-card{display:flex;flex-direction:column;gap:8px}
.plan-grid .plan-card{margin:0}
.plan-card .badge{align-self:flex-start}
.plan-card h2{margin:0}
.plan-grid .plan-card.is-current{border:2px solid var(--ok,#11734a);padding:17px}
.plan-card form{margin-top:4px}
.plan-price{margin:0;font-size:1.05rem}
.plan-price b{font-size:1.6rem;font-family:var(--display)}
.plan-table td:not(:first-child),.plan-table th:not(:first-child){text-align:center;width:22%}
.plan-table svg{width:18px;height:18px;color:var(--ok,#11734a)}
.plan-chip{margin-left:auto;font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--grad,#56e7a5);color:#0b1517}
.trial-banner{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;justify-content:space-between;margin:0 0 16px;padding:10px 14px;
  border-radius:12px;background:#0b1517;color:#f2f7f5;font-size:.95rem}
.trial-banner a{color:#ffd50d;font-weight:650;text-decoration:none}
.trial-banner a:hover{text-decoration:underline}

/* Growth: the lock panel, the pipeline board, tags, automations and connections */
.growth-lock{display:flex;gap:16px;align-items:flex-start;border:1px dashed var(--line-strong);margin-bottom:16px}
.growth-lock h2{margin:0 0 6px}
.growth-lock p{margin:0 0 12px}
.growth-lock-ico{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#eef8d6;color:#3d5a12}
.growth-lock-ico svg{width:22px;height:22px}
.tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.tags span{font-size:.72rem;font-weight:600;padding:1px 8px;border-radius:999px;background:#eef3f1;color:#33504a}
.board{display:grid;width:100%;max-width:100%;contain:inline-size;grid-auto-flow:column;grid-auto-columns:minmax(176px,1fr);gap:10px;overflow-x:auto;padding-bottom:8px;
  scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;margin-bottom:10px}
.board-col{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:12px;scroll-snap-align:start;min-height:160px}
.board-col h2{font-size:.95rem;margin:0 0 10px;display:flex;align-items:center;gap:6px}
.board-col h2 .n{font-size:.78rem;color:var(--muted);font-weight:600}
.board-col h2::before{content:"";width:8px;height:8px;border-radius:50%;background:#9aa8a4}
.stage-talking h2::before{background:#2f8fd8}.stage-quoted h2::before{background:#e0a100}
.stage-won h2::before{background:#11734a}.stage-lost h2::before{background:#c2463d}
.board-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;min-height:60px}
.board-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.board-card .title{font-weight:650;text-decoration:none;color:var(--ink)}
.board-card .badge{font-size:.72rem}
.board-move{display:flex;gap:6px;width:100%}
.board-move select{flex:1;min-width:0;padding:4px 8px;font-size:.82rem;min-height:32px}
.board-move .btn{padding:4px 10px;min-height:32px}
.board.dnd .board-move{display:none}
.board.dnd .board-card{cursor:grab}
.board-card.dragging{opacity:.5}
.board-col.over{outline:2px dashed var(--ok,#11734a);outline-offset:-4px}
.board-empty{color:var(--muted);font-size:.85rem;padding:6px 2px}
.auto-form fieldset{border:0;margin:0;padding:0;min-width:0}
.auto-form.is-locked{opacity:.6}
.auto-row{padding:12px 0;border-bottom:1px solid var(--line)}
.auto-row:last-of-type{border-bottom:0;margin-bottom:8px}
.auto-row .check .help{display:block;font-weight:400}
.auto-row select{max-width:220px}
.hook{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:0 0 12px}
.hook.is-off{opacity:.7}
.hook-head{display:flex;gap:8px;align-items:center;justify-content:space-between}
.hook-url{overflow-wrap:anywhere;font-size:.92rem}
.hook details{margin:6px 0}
.hook details textarea{min-height:0;font-family:ui-monospace,Consolas,monospace;font-size:.82rem}
.list.compact li{padding:6px 0}
.hook-new fieldset{border:0;padding:0;margin:0 0 12px}
.hook-new legend{font-weight:600;margin-bottom:6px}
.hook-new .check{margin:4px 0}
@media(max-width:640px){.board{grid-auto-columns:78%}}

.plan-yearly{display:block;font-size:.88rem;color:var(--muted);margin-top:2px}
.plan-keep{display:flex;flex-wrap:wrap;gap:8px}

/* the Fortis admin portal */
.admin-head{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:flex-start;justify-content:space-between}
.admin-head h1{margin-bottom:4px}
.admin-bell{display:flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-weight:600}
.admin-bell svg{width:18px;height:18px}
.admin-bell [data-unread]{min-width:1.4em;text-align:center;padding:0 6px;border-radius:999px;background:#ffd50d;color:#0b1517}
.admin-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:16px;margin:16px 0}
@media(max-width:860px){.admin-grid{grid-template-columns:1fr}}
.admin-grid .card{margin:0}
.signup-bars{display:grid;grid-template-columns:repeat(30,1fr);gap:3px;align-items:end;height:140px;margin:10px 0 6px}
.signup-bars span{position:relative;display:block;height:max(var(--h),3px);min-height:3px;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#56e7a5,#ffd50d)}
.signup-bars i{position:absolute;top:-17px;left:50%;transform:translateX(-50%);font-style:normal;font-size:.68rem;color:var(--muted)}
.admin-alerts{max-height:320px;overflow:auto}
.admin-alerts li.is-new .title::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#11734a;margin-right:6px}
.admin-filter input[type=search]{flex:1;min-width:180px}
.admin-table td{vertical-align:top}
.admin-table td>div{margin-bottom:4px}
.admin-toast{position:fixed;right:16px;bottom:16px;z-index:60;max-width:min(360px,calc(100vw - 32px));padding:12px 16px;border-radius:14px;background:#0b1517;color:#fff;box-shadow:0 12px 40px rgba(0,0,0,.3);font-size:.92rem}
.admin-toast b{display:block;color:#ffd50d;margin-bottom:2px}
.pub .list .main>span{display:block}
.pub .list .main>.title{font-weight:600}

/* the admin console */
.admin-figures{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}
@media(max-width:991px){.admin-figures{grid-template-columns:repeat(2,minmax(0,1fr))}}
.admin-fig{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);color:inherit;text-decoration:none}
a.admin-fig:hover{border-color:var(--line-strong)}
.admin-fig b{font-family:var(--display);font-size:1.7rem;line-height:1.1}
.admin-fig span{color:var(--muted);font-size:.88rem}
.admin-alerts.full{max-height:none}
.admin-alert-side{display:flex;flex-direction:column;align-items:flex-end;gap:2px;white-space:nowrap}
.admin-console .content .page-head .btn[data-notify]{align-self:flex-start}
.admin-alerts .main>span{display:block}
.admin-alerts .main>.title{font-weight:600}
.admin-fig b{color:var(--ink)}

/* closing a workspace */
.danger-zone{border-color:#e9c1bd}
.danger-zone h2{color:#a3352b}
.danger-zone details summary{list-style:none;display:inline-flex;cursor:pointer}
.danger-zone details summary::-webkit-details-marker{display:none}
.close-form{margin-top:14px;max-width:520px}
.btn.danger{background:#a3352b;border-color:#a3352b;color:#fff}
.btn.danger:hover{background:#8a2b22}
.ws-actions{display:grid;gap:12px}
.ws-actions form{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}
.ws-actions .field{margin:0;flex:1;min-width:200px}

/* sign in with Google, Microsoft or Apple */
.social-signin{display:grid;gap:10px;margin-top:24px}
.social-btn{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 16px;border:1px solid var(--line-strong);
  border-radius:10px;background:#fff;color:var(--ink);font:600 .95rem var(--font);text-decoration:none;box-shadow:var(--shadow-sm);
  transition:background .15s,border-color .15s}
.social-btn:hover{background:#f3f5f7;border-color:#b9c2cc}
.social-btn:focus-visible{outline:none;box-shadow:var(--ring)}
.social-btn svg{flex:none}
.auth-or{display:flex;align-items:center;gap:12px;margin:20px 0 4px;color:var(--subtle);font-size:.85rem}
.auth-or::before,.auth-or::after{content:"";flex:1;height:1px;background:var(--line)}
.auth-or + .auth-form,.auth-or + .rise{margin-top:14px}
.social-list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px}
.social-list li{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:10px}
.social-list li > span{flex:1;min-width:0;overflow-wrap:anywhere}
.social-list form{margin:0}
.auth-links form{margin:0}
.auth-links{align-items:center}
.auth-links .btn.resend-link{display:inline;padding:0;min-height:0;font:inherit;font-weight:600;color:var(--copper-ink);box-shadow:none;background:none;border:0;line-height:inherit}
.auth-links .btn.resend-link::after{display:none}
.team-list li{flex-wrap:wrap;gap:10px}
.team-list li form{margin:0}
.team-list .main{min-width:0;overflow-wrap:anywhere}

/* the iPhone app: the Face ID lock */
#fx-lock{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:rgba(7,16,18,.96);backdrop-filter:blur(8px)}
#fx-lock[hidden]{display:none}
.fx-lock-box{display:grid;gap:16px;justify-items:center;color:#fff;font-size:1.1rem}


/* Connections: the catalogue of apps, each app's page, importers. Plain text and the owners' marks, no tiles. */
.cx-jump{display:flex;flex-wrap:wrap;gap:6px 18px;margin:-6px 0 16px;font-size:.92rem}
.cx-jump a{color:var(--muted);text-decoration:none;font-weight:600}
.cx-jump a:hover{color:var(--ink);text-decoration:underline}
.cx-group{scroll-margin-top:80px}
.cx-grid{display:grid;grid-template-columns:minmax(0,1fr);column-gap:32px}
@media(min-width:820px){.cx-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.cx-row{display:flex;gap:14px;align-items:flex-start;padding:13px 0;border-top:1px solid var(--line);color:inherit;text-decoration:none;min-width:0}
.cx-grid .cx-row:first-child{border-top:0}
@media(min-width:820px){.cx-grid .cx-row:nth-child(2){border-top:0}}
.cx-row:hover .cx-name{text-decoration:underline}
.cx-mark{flex:none;width:28px;height:28px;display:grid;place-items:center;margin-top:1px}
.cx-mark img{max-width:28px;max-height:26px;width:auto;height:auto}
.cx-mark svg{width:22px;height:22px;color:var(--muted)}
.cx-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.cx-name{font-weight:650;color:var(--ink)}
.cx-line{color:var(--muted);font-size:.9rem;overflow-wrap:anywhere}
.cx-state{font-size:.84rem;font-weight:650;color:var(--muted);overflow-wrap:anywhere}
.cx-state.connected,.cx-state.on{color:var(--ok)}
.cx-state.connect{color:var(--info)}
.cx-state.growth{color:#4f6110}
.cx-state.error{color:var(--bad)}
.cx-state.big{font-size:.95rem;white-space:nowrap}
.cx-recent,.cx-foot{margin:12px 0 0}
.cx-crumb{margin:0 0 6px;font-size:.88rem;color:var(--muted)}
.cx-crumb a{color:var(--muted)}
.cx-head{align-items:flex-start}
.cx-title{display:flex;gap:14px;align-items:flex-start;min-width:0}
.cx-logo{width:34px;height:auto;max-height:34px;margin-top:4px;flex:none}
.cx-plain{margin:0;padding-left:1.1em;display:grid;gap:8px}
.cx-plain li{padding-left:2px}
.cx-note{margin:12px 0 0}
.cx-gap{margin-top:14px}
.cx-problem{color:var(--bad);margin:10px 0}
.cx-admin{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.cx-admin code,.cx-code{overflow-wrap:anywhere;font-size:.82rem}
.cx-details{margin-top:12px}
.cx-details summary{cursor:pointer;font-weight:600}
.cx-code{white-space:pre-wrap;background:var(--surface-2);border-radius:10px;padding:10px 12px;margin:8px 0 0}
.check + .check{margin-top:6px}
.imp-map{display:grid;grid-template-columns:minmax(0,1fr);column-gap:16px}
@media(min-width:620px){.imp-map{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.imp-map select{width:100%}
.cx-sample{margin-top:var(--gap)}
.cx-sample td{max-width:220px;overflow-wrap:anywhere}
.meeting-line,.wa-line{margin:0 0 14px}
.wa-line{margin:10px 0 0}
.imp-form fieldset,.cx-group fieldset,.card form fieldset.field{border:0;padding:0;margin:0 0 12px;min-width:0}
.imp-form legend,.card form fieldset.field legend{font-weight:600;margin-bottom:6px;padding:0}
.cx-sample table{min-width:620px}
.cx-sample td{overflow-wrap:normal;word-break:normal}
