/* =========================================================================
   Shahzeb Speaks v2: Paper & Ink (approved 18 Oct 2026)
   Loaded last on every page. Order: legacy CSS -> skin/*.css (generated)
   -> this file. Tokens, ink regions, header, footer, type, buttons, tools.
   ========================================================================= */

:root{
  --bg:#F5F3EE;--surface:#FBFAF7;--raised:#FFFFFF;--ink-band:#14131A;--ink-band-2:#1C1A23;
  --border:#E2DDD2;--border-strong:#8E8A80;--text:#17161C;--muted:#5A5D69;
  --psych:#6A2C7E;--psych-tint:#F1E8F4;--dev:#1F4BC0;--dev-tint:#E8EEFB;
  --cta:#C4471A;--cta-text:#FFFFFF;
  --ok:#1E6E45;--ok-tint:#E6F2EA;--warn:#8A5A00;--warn-tint:#FBF0D9;--bad:#B3261E;--bad-tint:#FBE7E4;
  --on-ink:#EDEAF3;--on-ink-muted:#A9A6B4;--psych-on-ink:#B79AE0;--dev-on-ink:#7FA4FF;--ink-line:#2E2B36;
  --shadow:0 1px 2px rgba(23,22,28,.06),0 10px 28px -14px rgba(23,22,28,.22);
  --font-body:"Schibsted Grotesk",Georgia,sans-serif;
  --font-display:"Newsreader",Georgia,serif;
  --font-mono:"JetBrains Mono",ui-monospace,monospace;
  --fs-h2:clamp(2rem,3vw,2.75rem);
  --font-main:var(--font-body);
}

/* ---------- Base ---------- */
html{background:var(--bg)}
body.ss-v2{--text-main:var(--text);--text-muted:var(--muted);--bg-dark:var(--bg);--bg-card:var(--raised);--bg-card-hover:var(--surface);--primary:var(--text);background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.ss-v2 :is(h1,h2,h3){font-family:var(--font-display);font-weight:600;letter-spacing:-.012em;text-wrap:balance}
body.ss-v2 :is(h4,h5,h6){font-family:var(--font-body);letter-spacing:0}
body.ss-v2 :is(p,li){text-wrap:pretty}
body.ss-v2 ::selection{background:var(--psych-tint);color:var(--text)}
body.ss-v2 :focus-visible{outline:2px solid var(--accent,var(--dev));outline-offset:3px;border-radius:4px}
body.ss-v2 code,body.ss-v2 pre,body.ss-v2 kbd{font-family:var(--font-mono)}

/* Gradient-filled words become one accent, in italic serif. */
body.ss-v2 :is(.text-gradient,.text-gradient-animated,.gradient-text,[class*="text-gradient"]){
  background:none!important;-webkit-text-fill-color:currentColor!important;color:var(--psych)!important;
  font-family:var(--font-display);font-style:italic;font-weight:500;animation:none!important}

/* Decorative orbs, glows and blobs from the old theme. */
body.ss-v2 :is(.hero-bg-effects,.accent-circle,.home-audits-bg-deco,.ft-orb,.ft-orb-1,.ft-orb-2,[class*="-orb-"],[class$="-orb"],[class*=" orb-"],.particles,[class*="-blob"]){display:none!important}
body.ss-v2 div:is([class*="glow"]):empty{display:none!important}

/* Paper grain (3%), static image: no repaint cost. */
body.ss-v2::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:2147483000;opacity:.035;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}

/* ---------- Ink regions: header, footer, page heroes ----------
   The generated skin maps light text to var(--text) etc.; re-scoping the
   tokens here makes the same rules render light-on-ink in these regions. */
body.ss-v2 :is(.navbar,footer[role="contentinfo"],.service-detail-hero,.page-hero-banner,.legal-page-hero,.art-hero,.category-hero-section,
  .hero-section,.iolist-hero,.tst-hero,.single-product-hero,.shop-hero,.services-hero,.psy-hero,.project-hero,.portfolio-hero,
  .ioapp-hero,.generic-page-hero,.cs-single-hero,.country-hero,.contact-hero,.city-hero,.blog-hero-section,.archive-hero,
  .apps-hero,.adev-hero,.about-hero,.resume-hero,.ba-hero,.bas-hero,.audit-hero,.case-studies-hero,.faq-hero,.help-hero){
  --bg:var(--ink-band);--surface:#1d1b24;--raised:var(--ink-band-2);--border:var(--ink-line);--border-strong:#4A4756;
  --text:var(--on-ink);--muted:var(--on-ink-muted);--dev:var(--dev-on-ink);--psych:var(--psych-on-ink);
  --dev-tint:#16203A;--psych-tint:#241C2E;--ok:#5BC08A;--ok-tint:#132A1F;--warn:#E3B04F;--warn-tint:#2C2312;--bad:#F07A6E;--bad-tint:#2E1715;
  --text-main:var(--on-ink);--text-muted:var(--on-ink-muted);--bg-dark:var(--ink-band);--bg-card:var(--ink-band-2);--bg-card-hover:#1d1b24;--primary:var(--on-ink);
  --shadow:0 1px 2px rgba(0,0,0,.4),0 14px 34px -18px rgba(0,0,0,.75);
  background-color:var(--ink-band);color:var(--on-ink)}
body.ss-v2 :is(.service-detail-hero,.page-hero-banner,.legal-page-hero,.art-hero,.category-hero-section,.hero-section,.iolist-hero,.tst-hero,
  .single-product-hero,.shop-hero,.services-hero,.psy-hero,.project-hero,.portfolio-hero,.ioapp-hero,.generic-page-hero,.cs-single-hero,
  .country-hero,.contact-hero,.city-hero,.blog-hero-section,.archive-hero,.apps-hero,.adev-hero){position:relative;isolation:isolate;overflow:hidden}
body.ss-v2 canvas.sx-flow-legacy{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}

/* ---------- Header ---------- */
body.ss-v2 .navbar{background:var(--ink-band)!important;border-bottom:1px solid #24222b!important;box-shadow:none!important;backdrop-filter:none!important}
body.ss-v2 .navbar .logo{font-family:var(--font-display)!important;font-weight:600!important;letter-spacing:-.01em;color:var(--on-ink)!important;-webkit-text-fill-color:currentColor!important;background:none!important}
body.ss-v2 .navbar .logo span{color:var(--psych-on-ink)!important;-webkit-text-fill-color:currentColor!important;background:none!important}
body.ss-v2 .nav-pill-container{background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}
body.ss-v2 .nav-links a{font-family:var(--font-body)!important;font-weight:500!important;font-size:.93rem!important;color:var(--on-ink-muted)!important;background:transparent!important;box-shadow:none!important;border-radius:6px!important;padding:10px 12px!important;transition:color .12s,background-color .12s!important}
body.ss-v2 .nav-links a:hover{color:var(--on-ink)!important;background:#ffffff0d!important}
body.ss-v2 .nav-links a.active{color:var(--on-ink)!important;box-shadow:inset 0 -2px 0 var(--psych-on-ink)!important;border-radius:0!important}
body.ss-v2 .btn-lets-talk{background:var(--cta)!important;color:#fff!important;border:0!important;border-radius:6px!important;box-shadow:none!important;font-family:var(--font-body)!important;font-weight:600!important;animation:none!important}
body.ss-v2 .btn-lets-talk:hover{box-shadow:0 8px 20px -10px var(--cta)!important;transform:none}
body.ss-v2 .cart-btn{color:var(--on-ink)!important;background:transparent!important;border:1px solid var(--ink-line)!important;border-radius:6px!important;box-shadow:none!important}
body.ss-v2 .cart-badge{background:var(--cta)!important;color:#fff!important;box-shadow:none!important}
body.ss-v2 .hamburger,body.ss-v2 .mobile-close-btn{color:var(--on-ink)!important;background:transparent!important;border-color:var(--ink-line)!important}
@media (max-width:1024px){
  body.ss-v2 .nav-pill-container.active{background:var(--ink-band)!important;border-left:1px solid var(--ink-line)!important}
  body.ss-v2 .nav-pill-container.active .nav-links a{font-size:1.05rem!important;padding:14px 16px!important}
}

/* ---------- Footer ---------- */
body.ss-v2 footer[role="contentinfo"]{border-top:0!important}
body.ss-v2 footer[role="contentinfo"] :is(h3,h4,.footer-col h3,.footer-col h4){font-family:var(--font-body)!important;font-size:.76rem!important;font-weight:600!important;letter-spacing:.12em;text-transform:uppercase;color:var(--on-ink-muted)!important}
body.ss-v2 footer[role="contentinfo"] a{color:var(--on-ink)!important;opacity:.86;transition:opacity .12s}
body.ss-v2 footer[role="contentinfo"] a:hover{opacity:1}
body.ss-v2 footer[role="contentinfo"] .footer-links a{display:inline-block;padding:7px 0}
body.ss-v2 .footer-social-btn{background:transparent!important;border:1px solid var(--ink-line)!important;border-radius:6px!important;box-shadow:none!important;color:var(--on-ink)!important}
body.ss-v2 .footer-social-btn:hover{border-color:var(--psych-on-ink)!important}
body.ss-v2 .footer-bottom{border-top:1px solid var(--ink-line)!important}

/* ---------- Buttons (legacy classes) ---------- */
body.ss-v2 :is(.btn,.btn-primary,.btn-glow,.btn-premium,.btn-outline,.btn-outline-premium,.btn-cta-blue,.hat-btn,.side-cart-checkout-btn,.side-cart-view-btn,.side-cart-browse-btn){
  border-radius:6px!important;box-shadow:none!important;animation:none!important;font-family:var(--font-body)!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important}
body.ss-v2 :is(.btn-primary,.btn-glow,.btn-premium){background:var(--text)!important;color:var(--bg)!important;border:1px solid var(--text)!important}
body.ss-v2 :is(.btn-cta-blue,.hat-btn,.btn-buy,.add-to-cart-btn,.product-add-to-cart,.buy-now-btn,.side-cart-checkout-btn,[class*="checkout-btn"],[class*="add-to-cart"]:is(button,a)){background:var(--cta)!important;color:#fff!important;border:0!important}
/* Every ink hero: its primary button is the CTA (legacy gradients there converted to nothing) */
body.ss-v2 :is(.service-detail-hero,.page-hero-banner,.legal-page-hero,.art-hero,.category-hero-section,.hero-section,.iolist-hero,.tst-hero,.single-product-hero,.shop-hero,.services-hero,.psy-hero,.project-hero,.portfolio-hero,.ioapp-hero,.generic-page-hero,.cs-single-hero,.country-hero,.contact-hero,.city-hero,.blog-hero-section,.archive-hero,.apps-hero,.adev-hero,.about-hero,.resume-hero,.ba-hero,.bas-hero,.audit-hero,.case-studies-hero,.faq-hero,.help-hero) :is(a,button)[class*="btn"][class*="primary"]:not([class*="ghost"]):not([class*="outline"]){background-color:var(--cta)!important;background-image:none!important;color:#fff!important;border:0!important}
/* Ink-hero buttons whose accent background re-scoped to the pastel on-ink tint: primary = CTA, ghost = outline */
body.ss-v2 :is(.adev-btn,.hero-cta-glass .btn-glow-primary):not(.adev-btn-ghost){background:var(--cta)!important;color:#fff!important;border:0!important}
body.ss-v2 .adev-btn-ghost{background:transparent!important;color:#EDEAF3!important;border:1px solid rgba(237,234,243,.28)!important}
body.ss-v2 :is(.btn-outline,.btn-outline-premium,.btn-secondary){background:transparent!important;color:var(--text)!important;border:1px solid var(--border-strong)!important}
body.ss-v2 :is(.btn,.btn-primary,.btn-outline,.btn-cta-blue,.hat-btn):hover{transform:translateY(-1px)}
body.ss-v2 :is(.btn,.btn-primary,.btn-outline)::before{display:none!important}

/* ---------- Shape: one radius scale ---------- */
body.ss-v2 :is([class$="-card"],[class*="-card "],.card){border-radius:10px}
body.ss-v2 :is(input,select,textarea){border-radius:6px}

/* ---------- Section rhythm ---------- */
body.ss-v2 .section-header h2,body.ss-v2 .section-title{font-size:var(--fs-h2)!important;line-height:1.1}
body.ss-v2 .section-header .subtitle,body.ss-v2 .section-subtitle{font-family:var(--font-body);font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);background:none!important;border:0!important;padding:0!important;box-shadow:none!important}
body.ss-v2 .section-header .subtitle i{display:none}

/* ---------- Free tools (.ft-*) ---------- */
body.ss-v2 .ft-hero{background:var(--bg)!important}
body.ss-v2 .ft-hero h1{font-family:var(--font-display)!important;color:var(--text)!important}
body.ss-v2 :is(.ft-card,.ft-tile,.ft-answer,.ft-note,.ft-related a,.ft-hubgroup){background:var(--raised)!important;border:1px solid var(--border)!important;box-shadow:var(--shadow)}
body.ss-v2 .ft-tile .ft-v{font-family:var(--font-display);font-variant-numeric:tabular-nums lining-nums}
body.ss-v2 :is(.ft-field input,.ft-field select,.ft-field textarea){background:var(--surface)!important;border:1px solid var(--border-strong)!important;color:var(--text)!important}
body.ss-v2 .ft-table td.num,body.ss-v2 .ft-table th.num{font-variant-numeric:tabular-nums}
body.ss-v2 .ft-answer{border-left:1px solid var(--border)!important}
body.ss-v2 .ft-verdict{border-left-width:1px!important}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  body.ss-v2 *,body.ss-v2 *::before,body.ss-v2 *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
@view-transition{navigation:auto}
::view-transition-old(root),::view-transition-new(root){animation-duration:.18s}

/* =========================================================================
   Front page additions (classes not in the generated ss-home.css)
   ========================================================================= */
.sx-home .sx-hero2 h1.sx-h1-label{display:block;font:600 .8rem/1.4 var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--on-ink-muted);margin:22px 0 14px;max-width:46ch}
.sx-home .sx-display{font-family:var(--font-display);font-weight:500;font-size:clamp(2.3rem,4.3vw,4.1rem);line-height:1.04;letter-spacing:-.012em;color:var(--on-ink);margin:0}
.sx-home .sx-display .sx-p{color:var(--psych-on-ink)}
.sx-home .sx-display .sx-d{color:var(--dev-on-ink);font-style:italic}
@media (min-width:961px){.sx-home .sx-display .sx-ln{white-space:nowrap}}
.sx-home .sx-lead{color:var(--on-ink-muted);max-width:56ch;margin:24px 0 32px;font-size:1.1rem}
.sx-home .sx-btn-row{display:flex;flex-wrap:wrap;gap:10px}
.sx-home .sx-muted{color:var(--muted)}
.sx-home .sx-about h2{font-size:var(--fs-h2);margin:10px 0 18px}
.sx-home .sx-about h2 em{color:var(--accent)}
.sx-home .sx-apps h2 em{color:var(--dev-on-ink)}
.sx-home .sx-audit-card h3{font-size:1.18rem;margin:6px 0}
.sx-home .sx-cover{text-decoration:none}
.sx-home .sx-cover-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.32;filter:grayscale(.3)}
.sx-home .sx-price s{color:var(--muted);font-weight:400;margin-left:6px}
.sx-home .sx-svc-cols{display:grid;grid-template-columns:1.2fr 1fr;gap:56px}
.sx-home .sx-svc-group{font:600 .78rem var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--accent,var(--dev));margin:0 0 6px;padding-bottom:12px;border-bottom:1px solid var(--text)}
.sx-home .sx-svc{display:grid;grid-template-columns:44px 1fr 24px;gap:16px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--border);text-decoration:none;color:var(--text);transition:padding .3s cubic-bezier(.22,.8,.24,1)}
.sx-home .sx-svc:hover{padding-left:8px}
.sx-home .sx-svc h3{font-size:1.25rem;margin:0}
.sx-home .sx-svc p{margin:4px 0 0;color:var(--muted);font-size:.95rem}
.sx-home .sx-idx{font:500 .78rem var(--font-mono);color:var(--muted)}
.sx-home .sx-go{color:var(--accent,var(--dev));transition:transform .2s}
.sx-home .sx-svc:hover .sx-go{transform:translateX(4px)}
.sx-home .sx-list a{display:grid;grid-template-columns:160px 1fr 70px;gap:28px;padding:24px 0;border-bottom:1px solid var(--border);text-decoration:none;color:var(--text);align-items:baseline}
.sx-home .sx-list a:first-child{border-top:1px solid var(--text)}
.sx-home .sx-list h3{font-size:1.4rem;margin:0;transition:color .12s}
.sx-home .sx-list a:hover h3{color:var(--accent)}
.sx-home .sx-list p{color:var(--muted);margin:6px 0 0;font-size:.95rem}
.sx-home .sx-rt{text-align:right;font:500 .78rem var(--font-mono);color:var(--muted)}
.sx-home .sx-audit-tool{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;padding:40px;align-items:center}
.sx-home .sx-audit-tool h2{font-size:clamp(1.7rem,2.6vw,2.3rem);margin:10px 0 14px}
.sx-home .sx-cta-band{padding:72px 0}
.sx-home .sx-cta-band h2{color:var(--on-ink);font-weight:500;max-width:22ch;margin:0}
.sx-home .sx-cta-band h2 em{color:var(--psych-on-ink)}
@media (max-width:960px){
  .sx-home .sx-svc-cols,.sx-home .sx-audit-tool{grid-template-columns:1fr}
  .sx-home .sx-list a{grid-template-columns:1fr;gap:6px}
  .sx-home .sx-rt{text-align:left}
  .sx-home .sx-audit-tool{padding:26px}
}
/* Three hero facts on one line on desktop */
.sx-home .sx-facts{gap:20px 36px}
.sx-home .sx-facts>div{max-width:170px}
.sx-home .sx-facts span{display:block;line-height:1.4}

/* ---------- v2 footer (footer.php .sx-foot) ---------- */
body.ss-v2 footer.sx-foot{background:var(--ink-band)!important;color:var(--on-ink);padding:0!important;margin:0;font-family:var(--font-body);position:relative;overflow:hidden}
body.ss-v2 .sx-foot-wrap{max-width:1200px;margin:0 auto;padding:0 28px}
body.ss-v2 .sx-foot-top{display:flex;justify-content:space-between;align-items:center;gap:28px;flex-wrap:wrap;padding:64px 0 48px;border-bottom:1px solid var(--ink-line)}
body.ss-v2 .sx-foot-line{font:500 clamp(1.7rem,3vw,2.5rem)/1.15 var(--font-display);color:var(--on-ink);margin:0;max-width:24ch;text-wrap:balance}
body.ss-v2 .sx-foot-line em{color:var(--psych-on-ink)}
body.ss-v2 footer.sx-foot a.sx-foot-cta{display:inline-flex;align-items:center;gap:8px;background:var(--cta);color:#fff!important;opacity:1;font:600 .95rem var(--font-body);padding:13px 22px;border-radius:6px;text-decoration:none;transition:box-shadow .2s,transform .12s}
body.ss-v2 footer.sx-foot a.sx-foot-cta:hover{box-shadow:0 10px 24px -10px var(--cta)}
body.ss-v2 .sx-foot-cta svg{width:16px;height:16px;transition:transform .2s}
body.ss-v2 .sx-foot-cta:hover svg{transform:translateX(3px)}
body.ss-v2 .sx-foot-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr 1.3fr;gap:48px;padding:52px 0 36px}
body.ss-v2 a.sx-foot-logo{font:600 1.6rem var(--font-display);color:var(--on-ink)!important;opacity:1;text-decoration:none;letter-spacing:-.01em}
body.ss-v2 .sx-foot-logo span{color:var(--psych-on-ink);font-style:italic}
body.ss-v2 .sx-foot-brand p{color:var(--on-ink-muted);font-size:.95rem;line-height:1.6;margin:16px 0 22px;max-width:40ch}
body.ss-v2 .sx-foot-social{list-style:none;display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;padding:0}
body.ss-v2 footer.sx-foot .sx-foot-social a{font:500 .8rem var(--font-mono);color:var(--on-ink-muted)!important;opacity:1;text-decoration:none;border-bottom:1px solid transparent;padding-bottom:2px}
body.ss-v2 footer.sx-foot .sx-foot-social a:hover{color:var(--on-ink)!important;border-color:var(--psych-on-ink)}
body.ss-v2 footer.sx-foot .sx-foot-col h3{font:600 .74rem var(--font-body)!important;letter-spacing:.14em!important;text-transform:uppercase;color:var(--on-ink-muted)!important;margin:6px 0 16px!important}
body.ss-v2 .sx-foot-col ul{list-style:none;margin:0;padding:0}
body.ss-v2 .sx-foot-col li{margin:0}
body.ss-v2 footer.sx-foot .sx-foot-col li a{display:inline-block;padding:6px 0;color:var(--on-ink)!important;opacity:.82;text-decoration:none;font-size:.94rem;transition:opacity .15s,transform .2s}
body.ss-v2 footer.sx-foot .sx-foot-col li a:hover{opacity:1;transform:translateX(3px)}
body.ss-v2 .sx-foot-news .sub-blurb{color:var(--on-ink-muted);font-size:.92rem;line-height:1.55;margin:0 0 14px}
body.ss-v2 .sx-foot-news .sub-form{display:flex;gap:8px;flex-wrap:wrap;margin:0}
body.ss-v2 .sx-foot-news .sub-input{flex:1 1 180px;min-width:0;min-height:44px;background:#1C1A23!important;border:1px solid #3A3744!important;border-radius:6px!important;color:var(--on-ink)!important;padding:0 14px!important;font:500 .95rem var(--font-body)!important}
body.ss-v2 .sx-foot-news .sub-input::placeholder{color:#8B8896}
body.ss-v2 .sx-foot-news .sub-input:focus{outline:none;border-color:var(--psych-on-ink)!important;box-shadow:0 0 0 3px #B79AE026}
body.ss-v2 .sx-foot-news .sub-form :is(button,input[type=submit]){min-height:44px;padding:0 20px!important;background:var(--on-ink)!important;color:var(--ink-band)!important;border:0!important;border-radius:6px!important;font:600 .92rem var(--font-body)!important;cursor:pointer;box-shadow:none!important}
body.ss-v2 .sx-foot-news .sub-form :is(button,input[type=submit]):hover{background:#fff!important}
body.ss-v2 .sx-foot-news .sub-hp{position:absolute!important;left:-9999px!important}
body.ss-v2 .sx-foot-news .sub-note{font-size:.88rem;margin:0 0 10px}
body.ss-v2 .sx-foot-news .sub-note-good{color:#8FD9AE}
body.ss-v2 .sx-foot-news .sub-note-bad{color:#F5A49A}
body.ss-v2 .sx-foot-contact{list-style:none;margin:22px 0 0;padding:16px 0 0;border-top:1px solid var(--ink-line);display:grid;gap:6px;font-size:.88rem;color:var(--on-ink-muted)}
body.ss-v2 footer.sx-foot .sx-foot-contact a{color:var(--on-ink-muted)!important;opacity:1;text-decoration:none}
body.ss-v2 footer.sx-foot .sx-foot-contact a:hover{color:var(--on-ink)!important}
body.ss-v2 .sx-foot-mark{font:500 clamp(4rem,13vw,11.5rem)/.82 var(--font-display);letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1px #3A3744;white-space:nowrap;user-select:none;margin:8px 0 -6px;padding-top:12px}
body.ss-v2 .sx-foot-mark em{font-style:italic}
body.ss-v2 .sx-foot-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:22px 0 28px;border-top:1px solid var(--ink-line);font-size:.84rem;color:var(--on-ink-muted)}
body.ss-v2 .sx-foot-bottom p{margin:0}
body.ss-v2 .sx-foot-legal{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
body.ss-v2 footer.sx-foot .sx-foot-legal a{color:var(--on-ink-muted)!important;opacity:1;text-decoration:none}
body.ss-v2 footer.sx-foot .sx-foot-legal a:hover{color:var(--on-ink)!important}
body.ss-v2 .sx-foot-legal img{display:block;opacity:.7}
@media (max-width:960px){body.ss-v2 .sx-foot-grid{grid-template-columns:1fr 1fr;gap:36px}}
@media (max-width:600px){
  body.ss-v2 .sx-foot-wrap{padding:0 18px}
  body.ss-v2 .sx-foot-top{padding:48px 0 36px}
  body.ss-v2 .sx-foot-grid{grid-template-columns:1fr 1fr;gap:30px 20px}
  body.ss-v2 .sx-foot-brand,body.ss-v2 .sx-foot-news{grid-column:1/-1}
  body.ss-v2 .sx-foot-bottom{flex-direction:column;align-items:flex-start;padding-bottom:96px}
}

/* back-to-top: quiet ink square instead of the old glass/gradient */
body.ss-v2 .back-to-top{background:var(--ink-band)!important;border:1px solid #3A3744!important;border-radius:8px!important;box-shadow:0 10px 24px -12px rgba(0,0,0,.5)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;color:var(--on-ink)!important}
body.ss-v2 .back-to-top::before{display:none!important}
body.ss-v2 .back-to-top:hover{border-color:var(--psych-on-ink)!important;box-shadow:0 12px 28px -12px rgba(0,0,0,.55)!important}
/* a page that already ends on an ink CTA band does not need the footer's own CTA line */
body.ss-v2:has(main > section.sx-cta-band:last-child) .sx-foot-top{display:none}
body.ss-v2 footer.sx-foot{border-top:1px solid var(--ink-line)!important}
/* 19 Oct 2026: the footer wordmark was too large; a quiet signature instead */
body.ss-v2 .sx-foot-mark{font-size:clamp(2rem,4.4vw,3.6rem);line-height:1;letter-spacing:-.02em;-webkit-text-stroke:1px #34313D;margin:4px 0 0;padding:20px 0 18px;opacity:.9}
@media (max-width:600px){body.ss-v2 .sx-foot-mark{font-size:2.2rem;padding:14px 0 12px}}
