/*
  ppro-access: sign-in pages. Figma "Peptide Pro 2026" frame 10488:5860.
  Tokens sampled from that frame: brand #32A3C2, pale #E5F2F7, promo #8CDDF7, ink #0F2126, field border #DFE7EB.
  Scale: space 4/8/12/16/24/32/48/64 · type 12/13/14/15/16/18/26/32/44/52 · radius 8 (fields, cards), 999 (buttons, chips).
*/
@font-face { font-family: "Volda Sans"; font-weight: 400; font-display: swap; src: url("/wp-content/uploads/2026/04/VoldaSans-Regular.ttf") format("truetype"); }
@font-face { font-family: "Volda Sans"; font-weight: 500; font-display: swap; src: url("/wp-content/uploads/2026/04/VoldaSans-Medium.ttf") format("truetype"); }
@font-face { font-family: "Volda Sans"; font-weight: 700; font-display: swap; src: url("/wp-content/uploads/2026/04/VoldaSans-Bold.ttf") format("truetype"); }

:root {
	--brand: #32a3c2; --brand-dark: #1f86a3; --pale: #e5f2f7; --promo: #8cddf7; --ink: #0f2126; --ink-2: #44585e; --ink-3: #6b7d82;
	--field: #e5f2f7; --field-line: #dfe7eb; --line: #e3ecef; --error: #b42318; --error-bg: #fef3f2; --warn-bg: #fff8e6; --ok-bg: #ecf8f2;
}
*, *::before, *::after { box-sizing: border-box; }
[hidden] { display: none !important; }
html, body { margin: 0; }
body.ppa { color: var(--ink); background: var(--brand); font-family: "Volda Sans", system-ui, -apple-system, "Segoe UI", sans-serif; font-size: 16px; line-height: 1.5; -webkit-font-smoothing: antialiased; }
.ppa p { margin: 0; }
.ppa a { color: var(--brand-dark); text-underline-offset: 3px; }
.ppa img { display: block; max-width: 100%; height: auto; }
.ppa :is(button, input, select) { font: inherit; }
.ppa :focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }
.ppa svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }

.ppa-shell { display: grid; grid-template-columns: minmax(0, 1fr) minmax(480px, 44%); min-height: 100vh; }

/* Left: why an account */
.ppa-story { position: relative; overflow: hidden; display: flex; flex-direction: column; padding: 40px 64px 48px; background: var(--pale); }
/* Stand-in for the Figma molecule artwork: a dot field faded in from the top right. */
.ppa-story::before { content: ""; position: absolute; inset: -10% -10% 30% 35%; background-image: radial-gradient(circle, rgba(50, 163, 194, .35) 1.2px, transparent 1.6px); background-size: 14px 14px; -webkit-mask-image: radial-gradient(ellipse at 80% 15%, #000 0%, transparent 65%); mask-image: radial-gradient(ellipse at 80% 15%, #000 0%, transparent 65%); pointer-events: none; }
.ppa-story > * { position: relative; }
.ppa-logo img { width: 112px; }
.ppa-story-body { max-width: 640px; margin: auto 0; padding: 48px 0; }
.ppa-eyebrow { margin-bottom: 12px !important; color: var(--brand); font-size: 14px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.ppa h1 { margin: 0 0 24px; font-size: 52px; font-weight: 500; line-height: 1.08; letter-spacing: -.02em; }
.ppa h1 { text-wrap: balance; }
.ppa h1 em { color: var(--brand); font-style: normal; white-space: nowrap; }
.ppa h1 [data-for="signup"], body[data-view="register"] h1 [data-for="signin"] { display: none; }
body[data-view="register"] h1 [data-for="signup"] { display: inline; }
.ppa-lead { max-width: 560px; color: var(--ink-2); font-size: 18px; }
.ppa-lead strong { color: var(--ink); font-weight: 700; }
/* One sentence per line on wide screens; they flow together once the column narrows. */
.ppa-lead > span { display: block; }
.ppa-features { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 48px 0 0; padding: 0; list-style: none; }
.ppa-features li > strong { display: block; margin-bottom: 4px; font-weight: 500; }
.ppa-features li > span:not(.ppa-ficon) { display: block; color: var(--ink-2); font-size: 14px; line-height: 1.45; text-wrap: balance; }
.ppa-features li > span a { display: block; color: inherit; }
.ppa-ficon { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; margin-bottom: 16px; border-radius: 50%; background: var(--brand); color: #fff; }
.ppa-trust { height: 20px; margin-bottom: 16px; }

/* Right: the sign-in card */
.ppa-auth { display: flex; flex-direction: column; justify-content: center; padding: 48px 64px; background: var(--brand); }
.ppa-auth-inner { width: 100%; max-width: 520px; margin: 0 auto; }
.ppa-mlogo { display: none; }

.ppa-promo { display: flex; align-items: center; gap: 16px; margin-bottom: 24px !important; padding: 12px 16px; border-radius: 12px; background: var(--promo); color: var(--ink); line-height: 1.35; }
.ppa-promo-tag { flex-shrink: 0; padding: 6px 12px; border-radius: 6px; background: var(--ink); color: #fff; font-size: 13px; font-weight: 700; letter-spacing: .02em; }

.ppa-card { padding: 40px 48px; border-radius: 16px; background: #fff; }
.ppa-panel h2 { margin: 0 0 4px; font-size: 32px; font-weight: 500; line-height: 1.2; letter-spacing: -.01em; text-align: center; }
.ppa-panel h2:focus { outline: none; }
.ppa-sub { margin-bottom: 32px !important; color: var(--ink-2); text-align: center; }
.ppa-panel--center { text-align: center; }
.ppa-panel--center .ppa-sub { margin-bottom: 16px !important; }
.ppa-bigicon { display: inline-flex; align-items: center; justify-content: center; width: 64px; height: 64px; margin-bottom: 16px; border-radius: 50%; background: var(--pale); color: var(--brand-dark); }
.ppa-bigicon svg { width: 28px; height: 28px; }

.ppa-alert { margin: -8px 0 24px; padding: 12px 16px; border-radius: 8px; font-size: 15px; line-height: 1.45; }
.ppa-alert--error { background: var(--error-bg); color: var(--error); }
.ppa-alert--warn { background: var(--warn-bg); color: #7a4b00; }
.ppa-alert--ok { background: var(--ok-bg); color: #155e3b; }
.ppa-alert form { margin-top: 8px; }
.ppa-linkbtn { padding: 0; border: 0; background: none; color: inherit; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }

/* Google's button rules: white, #747775 border, full-colour G. */
.ppa-google { display: flex; align-items: center; justify-content: center; gap: 10px; height: 50px; border: 1px solid #747775; border-radius: 999px; background: #fff; color: #1f1f1f !important; font-weight: 500; text-decoration: none; transition: background .15s; }
.ppa-google:hover { background: #f4f7f8; }
.ppa-google svg { width: 18px; height: 18px; }
.ppa-or { display: flex; align-items: center; gap: 16px; margin: 24px 0 !important; color: var(--ink-3); font-size: 15px; }
.ppa-or::before, .ppa-or::after { content: ""; flex: 1; height: 1px; background: var(--line); }

.ppa-field { margin-bottom: 20px; }
.ppa-field label { display: block; margin-bottom: 8px; font-size: 15px; }
.ppa-field :is(input, select) { width: 100%; height: 48px; padding: 0 16px; border: 1px solid var(--field-line); border-radius: 8px; background: var(--field); color: var(--ink); font-size: 16px; transition: border-color .15s, background .15s, box-shadow .15s; }
.ppa-field select { appearance: none; padding-right: 40px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2344585e' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; background-size: 18px; }
.ppa-field :is(input, select):focus { outline: none; border-color: var(--brand); background-color: #fff; box-shadow: 0 0 0 3px rgba(50, 163, 194, .25); }
.ppa-hint { margin-top: 6px !important; color: var(--ink-3); font-size: 13px; line-height: 1.4; }
.ppa-two { display: grid; grid-template-columns: 1fr 1fr; gap: 0 12px; }
.ppa-pw { position: relative; }
.ppa-pw input { padding-right: 72px; }
.ppa-eye { position: absolute; top: 50%; right: 8px; transform: translateY(-50%); padding: 6px 10px; border: 0; border-radius: 6px; background: transparent; color: var(--brand-dark); font-size: 14px; font-weight: 500; cursor: pointer; }
.ppa-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 24px; font-size: 15px; }
.ppa-check { display: inline-flex; align-items: flex-start; gap: 8px; color: var(--ink-2); cursor: pointer; }
.ppa-check input { flex-shrink: 0; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--brand); }
.ppa-check--consent { margin: 4px 0 24px; font-size: 14px; line-height: 1.45; }
.ppa-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.ppa-btn { width: 100%; height: 50px; border: 0; border-radius: 999px; background: var(--brand); color: #fff; font-size: 16px; font-weight: 500; cursor: pointer; transition: background .15s; }
.ppa-btn:hover { background: var(--brand-dark); }
.ppa-btn[aria-busy="true"] { opacity: .7; cursor: progress; }
.ppa-alt { margin-top: 16px !important; color: var(--ink-2); font-size: 15px; text-align: center; }
.ppa-switch { margin-top: 24px !important; color: var(--ink-2); text-align: center; }
.ppa-switch a { font-weight: 700; }


.ppa-legal { padding: 24px 64px; background: var(--ink); color: #a9bcc1; font-size: 12px; line-height: 1.6; }
.ppa-legal p { max-width: 960px; }
.ppa-legal p + p { margin-top: 8px; }
.ppa-legal strong { color: #fff; }
.ppa-legal a { color: #fff; }

@media (max-width: 1200px) {
	.ppa-story { padding: 40px 48px; }
	.ppa h1 { font-size: 44px; }
	.ppa-features { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.ppa-auth { padding: 48px 40px; }
	.ppa-card { padding: 32px; }
}
@media (max-width: 900px) {
	.ppa-shell { display: flex; flex-direction: column; min-height: 0; }
	.ppa-auth { order: 1; padding: 16px 16px 32px; }
	.ppa-story { order: 2; padding: 40px 16px 48px; }
	.ppa-story-body { margin: 0; padding: 0; }
	.ppa-story .ppa-logo { display: none; }
	.ppa-mlogo { display: flex; justify-content: center; margin-bottom: 16px; }
	.ppa-mlogo img { width: 72px; border-radius: 4px; background: #fff; }
	.ppa h1 { font-size: 32px; }
	.ppa-lead { font-size: 16px; }
	.ppa-lead > span { display: inline; }
	.ppa h1 em { white-space: normal; }
	.ppa-features { gap: 24px 16px; margin-top: 32px; }
	.ppa-legal { padding: 24px 16px; }
}
@media (max-width: 600px) {
	.ppa-features { grid-template-columns: 1fr; gap: 20px; }
	.ppa-features li { display: grid; grid-template-columns: 48px 1fr; column-gap: 16px; align-items: start; }
	.ppa-features .ppa-ficon { grid-row: span 2; margin-bottom: 0; }
}
@media (max-width: 480px) {
	.ppa-promo { gap: 12px; font-size: 14px; }
	.ppa-card { padding: 24px 20px; border-radius: 14px; }
	.ppa-panel h2 { font-size: 26px; }
	.ppa-sub { margin-bottom: 24px !important; }
	.ppa-two { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { .ppa * { transition: none !important; } }

/* Post-sign-in destination note (all arms) */
.ppa-dest { display: flex; gap: 12px; align-items: baseline; justify-content: space-between; margin: 0 0 24px !important; padding: 12px 16px; border-left: 3px solid var(--brand); border-radius: 0 8px 8px 0; background: var(--pale); color: var(--ink-2); font-size: 14px; }
.ppa-dest button { padding: 0; border: 0; background: none; color: var(--brand-dark); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }

/* =====================================================================
   Arm B: store preview. Figma catalog components: Pricing Card 11935:4, Promo 11947:224.
   Price teal #1B5A6E, amber tag #DC9B38, sky #8CDDF7.
   ===================================================================== */
body.ppa--b { background: var(--pale); }
.ppb-top { background: #fff; border-bottom: 1px solid var(--line); }
.ppb-top-inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; max-width: 1280px; margin: 0 auto; padding: 12px 32px; }
.ppb-top img { width: 56px; }
.ppb-top p { color: var(--ink-2); font-size: 14px; }
.ppb-top p a { color: var(--ink); font-weight: 500; }
.ppb-main { display: grid; grid-template-columns: 420px minmax(0, 1fr); gap: 32px; align-items: start; max-width: 1280px; margin: 0 auto; padding: 48px 32px 64px; }
.ppa--b .ppa-auth { position: sticky; top: 24px; display: block; padding: 0; background: none; }
.ppa--b .ppa-card { padding: 32px; border-radius: 16px; box-shadow: 0 1px 2px rgba(15, 33, 38, .04), 0 12px 32px rgba(15, 33, 38, .06); }
.ppa--b .ppa-eyebrow { margin-bottom: 12px !important; }
.ppa--b .ppa-panel h2 { font-size: 28px; text-align: left; }
.ppa--b .ppa-sub { margin-bottom: 24px !important; text-align: left; }
.ppa--b .ppa-field :is(input, select) { border-color: #cddde3; background-color: #fff; }
.ppa--b .ppa-btn { background: var(--ink); }
.ppa--b .ppa-btn:hover { background: #1f3a42; }
.ppb-store { display: grid; gap: 32px; min-width: 0; }
.ppb-store > section { min-width: 0; }
.ppb-promo { display: grid; grid-template-columns: 1fr auto; gap: 24px 32px; align-items: end; padding: 32px 40px; border-radius: 16px; background: var(--ink); color: #fff; }
.ppb-tag { display: inline-block; margin-bottom: 16px !important; padding: 4px 12px; border-radius: 999px; background: #dc9b38; color: var(--ink); font-size: 14px; font-weight: 500; letter-spacing: .02em; text-transform: uppercase; }
.ppb-promo h2 { margin: 0 0 8px; font-size: 40px; font-weight: 500; line-height: 1.1; letter-spacing: -.02em; }
.ppb-promo p:not(.ppb-tag) { color: #b9cbd0; }
.ppb-pill { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; height: 52px; padding: 0 6px 0 24px; border: 0; border-radius: 999px; background: var(--promo); color: var(--ink); font-size: 16px; font-weight: 500; text-align: left; cursor: pointer; transition: background .15s; }
.ppb-pill:hover { background: #a7e6fa; }
.ppb-pill[aria-pressed="true"] { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--ink); }
.ppb-pill-arrow { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--ink); color: #fff; }
.ppb-pill-arrow svg { width: 18px; height: 18px; }
.ppb-shelf-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.ppb-shelf-head h2 { margin: 0; font-size: 22px; font-weight: 500; }
.ppb-shelf-head p { color: var(--ink-2); font-size: 14px; }
.ppb-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
.ppb-card { display: flex; flex-direction: column; height: 100%; padding: 12px 12px 20px; border-radius: 16px; background: #fff; }
.ppb-card-img { display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; margin-bottom: 16px; border-radius: 12px; background: var(--pale); }
.ppb-card-img img { width: 72%; }
.ppb-card-body { display: flex; flex: 1; flex-direction: column; padding: 0 8px; }
.ppb-card h3 { margin: 0 0 12px; font-size: 20px; font-weight: 500; line-height: 1.2; }
.ppb-locked { display: flex; align-items: center; gap: 8px; margin: auto 0 16px !important; padding-top: 16px; border-top: 1px solid var(--line); color: #1b5a6e; font-weight: 500; }
.ppb-locked svg { width: 18px; height: 18px; }
.ppb-card .ppb-pill { width: 100%; height: 48px; padding-left: 20px; font-size: 15px; }
.ppb-card .ppb-pill-arrow { width: 36px; height: 36px; }
body.ppa--b .ppa-legal { background: transparent; color: var(--ink-3); border-top: 1px solid var(--line); }
body.ppa--b .ppa-legal strong { color: var(--ink-2); }
body.ppa--b .ppa-legal a { color: var(--ink); }

/* =====================================================================
   Arm C: lab label. White sign-in, dark showcase; monospace spec labels like the packaging.
   ===================================================================== */
body.ppa--c { background: #fff; }
.ppc-label { font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; font-size: 12px; line-height: 1.4; letter-spacing: .08em; text-transform: uppercase; }
.ppc-shell { display: grid; grid-template-columns: minmax(440px, 46%) 1fr; min-height: 100vh; }
.ppa--c .ppa-auth { display: flex; flex-direction: column; justify-content: flex-start; padding: 32px 48px; background: #fff; }
.ppc-logo img { width: 72px; }
.ppa--c .ppa-card { width: 100%; max-width: 400px; margin: auto; padding: 48px 0; background: none; border-radius: 0; }
.ppa--c .ppa-panel h2 { font-size: 40px; font-weight: 700; letter-spacing: -.02em; text-align: left; }
.ppa--c .ppa-sub { text-align: left; }
.ppa--c .ppa-field :is(input, select) { border-color: #b9c9ce; border-radius: 6px; background-color: #fff; }
.ppa--c .ppa-btn, .ppa--c .ppa-google { border-radius: 6px; }
.ppa--c .ppa-btn { background: #0d4a5c; font-weight: 700; }
.ppa--c .ppa-btn:hover { background: #13627a; }
.ppc-foot { display: flex; justify-content: space-between; gap: 16px; color: var(--ink-3); font-size: 14px; }
.ppc-foot a { color: var(--ink-2); }
.ppc-chip { display: none; }
.ppc-show { display: flex; flex-direction: column; gap: 48px; padding: 48px 64px; background: #082430; color: #e6f1f4; }
.ppc-show-top { display: flex; justify-content: space-between; color: #9fbcc6; }
.ppc-offer { max-width: 560px; margin-top: auto; }
.ppc-offer-label { display: flex; align-items: center; gap: 8px; margin-bottom: 16px !important; color: #7fd6ea; }
.ppc-offer-label::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #7fd6ea; }
.ppc-offer h2 { margin: 0 0 16px; color: #fff; font-weight: 700; }
.ppc-offer-big { display: block; color: #7fd6ea; font-size: 88px; line-height: .95; letter-spacing: -.035em; }
.ppc-offer-meta { margin-bottom: 24px !important; color: #9fbcc6; font-size: 18px; }
.ppc-btn-light { display: inline-flex; align-items: center; gap: 8px; height: 48px; padding: 0 24px; border: 1px solid rgba(230, 241, 244, .5); border-radius: 6px; background: transparent; color: #fff; font-weight: 700; cursor: pointer; transition: background .15s, border-color .15s; }
.ppc-btn-light:hover { border-color: #fff; background: rgba(255, 255, 255, .08); }
.ppc-tagline { max-width: 520px; margin-top: auto !important; color: #fff; font-size: 56px; font-weight: 700; line-height: 1.02; letter-spacing: -.03em; }
.ppc-tagline em { color: #7fd6ea; font-style: normal; }
.ppc-shelf-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 16px; color: #9fbcc6; }
.ppc-shelf-head p:last-child { font-size: 14px; }
.ppc-shelf { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
.ppc-item { display: block; width: 100%; padding: 0; border: 0; background: none; color: inherit; text-align: left; cursor: pointer; }
.ppc-item-img { display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 3; margin-bottom: 12px; border-radius: 12px; background: #eaf3f5; outline: 2px solid transparent; outline-offset: 3px; transition: outline-color .15s; }
.ppc-item-img img { width: auto; height: 84%; }
.ppc-item:hover .ppc-item-img { outline-color: rgba(127, 214, 234, .5); }
.ppc-item[aria-pressed="true"] .ppc-item-img { outline-color: #7fd6ea; }
.ppc-item-name { display: block; color: #fff; font-weight: 700; }
body.ppa--c .ppa-legal { background: #fff; color: var(--ink-3); border-top: 1px solid var(--line); }
body.ppa--c .ppa-legal strong { color: var(--ink-2); }
body.ppa--c .ppa-legal a { color: var(--ink); }

@media (max-width: 1080px) {
	.ppb-main { grid-template-columns: 380px minmax(0, 1fr); gap: 24px; padding: 32px 24px 48px; }
	.ppb-promo { grid-template-columns: 1fr; padding: 28px; }
	.ppc-show { padding: 48px; }
	.ppc-offer-big { font-size: 72px; }
}
@media (max-width: 900px) {
	.ppb-top-inner { padding: 12px 16px; }
	.ppb-main { grid-template-columns: 1fr; gap: 24px; padding: 16px 16px 40px; }
	.ppa--b .ppa-auth { position: static; order: 0; } /* the baseline's mobile rule moves .ppa-auth to order 1 */
	.ppb-store { order: 1; }
	.ppa--b .ppa-card { padding: 24px 20px; }
	.ppb-promo { padding: 24px 20px; }
	.ppb-promo h2 { font-size: 32px; }
	.ppb-pill { width: 100%; }
	.ppb-grid { display: flex; overflow-x: auto; gap: 12px; margin: 0 -16px; padding: 0 16px 8px; scroll-snap-type: x mandatory; scrollbar-width: none; }
	.ppb-grid li { flex: 0 0 72%; scroll-snap-align: start; }
	.ppb-shelf-head { flex-direction: column; gap: 2px; }
	.ppc-shell { display: flex; flex-direction: column; min-height: 0; }
	.ppa--c .ppa-auth { order: 0; padding: 20px 16px 40px; }
	.ppc-show { order: 1; }
	.ppa--c .ppa-card { margin: 0 auto; padding: 24px 0 0; }
	.ppa--c .ppa-panel h2 { font-size: 32px; }
	.ppc-foot { display: none; }
	.ppc-chip { display: flex; align-items: center; gap: 8px; width: 100%; margin-top: 20px; padding: 12px 16px; border: 0; border-radius: 6px; background: #082430; color: #e6f1f4; font-size: 14px; text-align: left; cursor: pointer; }
	.ppc-chip b { color: #7fd6ea; }
	.ppc-show { gap: 32px; padding: 48px 16px; }
	.ppc-show-top { display: none; }
	.ppc-offer, .ppc-tagline { margin-top: 0 !important; }
	.ppc-offer-big { font-size: 64px; }
	.ppc-tagline { font-size: 36px; }
	.ppc-btn-light { width: 100%; justify-content: center; }
}

/* 21+ statement + policy links, under the card in every arm */
.ppa-terms { max-width: 520px; margin: 20px auto 0 !important; color: rgba(255, 255, 255, .88); font-size: 13px; line-height: 1.55; text-align: center; }
.ppa-terms a { color: #fff; font-weight: 500; }
.ppa--b .ppa-terms { margin-top: 16px !important; color: var(--ink-2); text-align: left; }
.ppa--b .ppa-terms a, .ppa--c .ppa-terms a { color: var(--brand-dark); }
.ppa--c .ppa-terms { margin-top: 24px !important; color: var(--ink-3); text-align: left; }

/* Privacy Policy / Terms for logged-out visitors */
body.ppa--legal { background: #fff; }
.ppl-top { padding: 16px 24px; border-bottom: 1px solid var(--line); }
.ppl-top img { width: 64px; }
.ppl-doc { max-width: 760px; margin: 0 auto; padding: 48px 24px 64px; }
.ppl-doc h1 { margin: 0 0 32px; font-size: 40px; font-weight: 500; line-height: 1.1; letter-spacing: -.02em; }
.ppl-doc-body { color: var(--ink-2); font-size: 16px; line-height: 1.7; }
.ppl-doc-body :is(h1, h2, h3, h4) { margin: 32px 0 12px; color: var(--ink); font-weight: 500; line-height: 1.25; }
.ppl-doc-body h1, .ppl-doc-body h2 { font-size: 24px; }
.ppl-doc-body :is(h3, h4) { font-size: 18px; }
.ppl-doc-body p, .ppl-doc-body ul, .ppl-doc-body ol { margin: 0 0 16px; }
.ppl-doc-body li { margin-bottom: 6px; }
.ppl-doc-body a { color: var(--brand-dark); }
.ppl-doc-body img { max-width: 100%; height: auto; }
body.ppa--legal .ppa-legal { background: var(--ink); }
@media (max-width: 480px) { .ppl-doc { padding: 32px 16px 48px; } .ppl-doc h1 { font-size: 30px; } }

/* Staff preview bar (?ppro_preview=<arm> while signed in as a shop manager). */
.ppa-previewbar { position: sticky; top: 0; z-index: 50; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; padding: 8px 16px; background: var(--ink); color: #fff; font-size: 14px; }
.ppa-previewbar a { color: #fff; opacity: .7; }
.ppa-previewbar a[aria-current] { opacity: 1; font-weight: 700; text-decoration: none; }
.ppa-previewbar span { margin-left: auto; opacity: .7; }
