/*!
 * Ask Ayce business pages: page-level layout only.
 * Loads after ../00 Design System/css/ask-ayce.css and uses its tokens. No new colors.
 * Prefix: pb- (page blocks). Breakpoints match the system: 1023 (tablet) and 767 (mobile).
 */

/* ---------- shared ---------- */
.pb-eyebrow-row { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: var(--aa-space-16); }
.pb-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--aa-space-48); align-items: start; }
.pb-split--wide-left { grid-template-columns: 7fr 5fr; }
.pb-center { text-align: center; }
.pb-center .aa-lede { margin-inline: auto; }
.pb-num {
  display: inline-grid; place-items: center; width: 48px; height: 48px; margin-bottom: var(--aa-space-12);
  background: var(--aa-color-bg-surface); color: var(--aa-color-text-primary); border: 2px solid var(--aa-color-border-strong);
  border-radius: 52% 48% 46% 54% / 48% 54% 46% 52%;
  font-family: var(--aa-font-display); font-size: 28px; line-height: 1; padding-top: 4px;
}
.pb-list { display: grid; gap: 10px; padding: 0; margin: 0; list-style: none; }
.pb-list li { display: grid; grid-template-columns: 24px 1fr; gap: 10px; align-items: start; }
.pb-list li svg { width: 22px; height: 22px; margin-top: 2px; }
.pb-note-list li { font-family: var(--aa-font-notes); font-size: 24px; line-height: 1.15; }
.pb-tonight {
  display: flex; gap: 12px; align-items: flex-start; margin-top: var(--aa-space-24);
  font-family: var(--aa-font-notes); font-size: 24px; line-height: 1.15;
}
.pb-tonight .aa-doodle { width: 30px; flex-shrink: 0; }
.pb-cta-band { text-align: center; }
.pb-cta-band .aa-h1 { margin-bottom: var(--aa-space-16); }
.pb-cta-band .aa-lede { margin: 0 auto var(--aa-space-32); }
.pb-cta-band.aa-ground-charcoal { --aa-color-focus-ring: var(--aa-lemon); --aa-color-text-primary: var(--aa-paper); }
.pb-cta-band.aa-ground-charcoal .aa-kicker { color: var(--aa-paper); }
.pb-cta-band .pb-tonight { justify-content: center; }
.pb-fine { font-size: var(--aa-fs-small); color: var(--aa-color-text-secondary); }
.aa-ground-charcoal .pb-fine, .aa-ground-moss .pb-fine { color: rgb(251 248 239 / .86); }
.pb-sample { font-family: var(--aa-font-mono); font-size: var(--aa-fs-mono); color: var(--aa-color-text-secondary); }

/* ---------- opt-in form (hero) ---------- */
.pb-optin { position: relative; background: var(--aa-color-bg-surface); border: 2px solid var(--aa-color-border-strong); border-radius: var(--aa-radius-note); padding: var(--aa-space-24); max-width: 560px; }
.pb-optin__row { display: grid; grid-template-columns: 1fr 1.4fr; gap: 12px; }
.pb-optin .aa-btn { margin-top: var(--aa-space-16); }
.pb-optin .aa-message { margin-top: 10px; }
.pb-optin .pb-fine { margin-top: 12px; }

/* ---------- printable sheet mock (freebie art) ---------- */
.pb-sheet-art { position: relative; min-height: 600px; }
.pb-sheet {
  position: absolute; left: 6%; top: 8px; width: min(84%, 380px);
  background: var(--aa-white); color: var(--aa-charcoal);
  border: 2px solid var(--aa-charcoal); border-radius: 4px 6px 3px 5px;
  padding: 28px 26px 32px;
  transform: rotate(-2deg);
}
.pb-sheet__kicker { font-family: var(--aa-font-notes); font-size: 22px; line-height: 1.1; }
.pb-sheet__title { font-family: var(--aa-font-display); text-transform: uppercase; font-size: 46px; line-height: .88; margin: 6px 0 18px; }
.pb-sheet__title span { position: relative; z-index: 0; }
.pb-sheet ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.pb-sheet li { display: grid; grid-template-columns: 22px 1fr; gap: 10px; font-family: var(--aa-font-notes); font-size: 22px; line-height: 1.1; }
.pb-sheet li::before { content: ""; width: 18px; height: 18px; margin-top: 2px; border: 2px solid var(--aa-charcoal); border-radius: 3px 5px 2px 4px; }
.pb-sheet li.is-done::before { background: var(--aa-charcoal); }
.pb-sheet__foot { margin-top: 18px; padding-top: 10px; border-top: 1.5px dashed var(--aa-charcoal); font-family: var(--aa-font-mono); font-size: 12px; }
.pb-sheet-art .aa-sticky { position: absolute; right: 0; bottom: 0; width: min(52%, 220px); --aa-tilt: 1.6deg; }
.pb-sheet-art__arrow { position: absolute; width: 84px; left: 30%; bottom: 60px; transform: rotate(-12deg); color: var(--aa-color-text-primary); }

/* ---------- inside / feature cards ---------- */
.pb-feature .aa-h3 { margin-bottom: var(--aa-space-8); }
.pb-feature p + .aa-path { margin-top: var(--aa-space-16); }
.pb-feature { display: flex; flex-direction: column; }

/* ---------- course: who it's for ---------- */
.pb-fit { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--aa-space-48); }
.pb-fit .aa-sticky { font-size: 24px; }
.pb-fit .aa-sticky ul { display: grid; gap: 10px; margin: 8px 0 0; padding: 0; list-style: none; }
.pb-fit .aa-sticky li { padding-left: 26px; position: relative; }
.pb-fit .aa-sticky li::before { content: ""; position: absolute; left: 2px; top: .45em; width: 12px; height: 12px; border: 2px solid currentColor; border-radius: 50% 40% 55% 45%; }

/* ---------- course: curriculum ---------- */
.pb-lesson-meta { display: inline-flex; gap: 8px; align-items: center; margin-left: auto; margin-right: 8px; flex-shrink: 0; }
.aa-faq__item summary .pb-lesson-title { display: flex; gap: 14px; align-items: baseline; }
.pb-lesson-title b { font-family: var(--aa-font-display); font-weight: 400; font-size: 26px; line-height: 1; min-width: 34px; }
.pb-curriculum .aa-faq__answer ul { display: grid; gap: 6px; padding-left: 20px; margin: 0; }
.pb-curriculum .aa-faq__answer { padding-left: 52px; }
.pb-curriculum .pb-tonight { margin-top: 12px; font-size: 22px; }

/* ---------- stats strip ---------- */
.pb-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--aa-gap); }
.aa-ground-moss .aa-stat__ring { color: var(--aa-paper); }
.aa-ground-moss .aa-stat__source { color: rgb(251 248 239 / .86); }
.aa-ground-moss { --aa-color-text-primary: var(--aa-paper); --aa-color-focus-ring: var(--aa-lemon); }
.aa-ground-moss .aa-kicker, .aa-ground-moss .aa-h2 { color: var(--aa-paper); }

/* ---------- pricing pair ---------- */
.pb-pricing { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--aa-space-32); max-width: 900px; margin-inline: auto; padding-top: 16px; }
.pb-pricing--three { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: none; }

/* ---------- guarantee stamp ---------- */
.pb-guarantee { display: grid; grid-template-columns: auto 1fr; gap: var(--aa-space-48); align-items: center; max-width: 900px; margin-inline: auto; }
.pb-stamp {
  display: grid; place-items: center; text-align: center; width: 200px; height: 200px;
  background: var(--aa-color-bg-surface); color: var(--aa-color-text-primary); border: 3px dashed var(--aa-color-border-strong);
  border-radius: 52% 48% 50% 50% / 48% 52% 48% 52%;
  transform: rotate(-6deg);
}
.pb-stamp b { display: block; font-family: var(--aa-font-display); font-weight: 400; font-size: 72px; line-height: .8; padding-top: 8px; }
.pb-stamp span { display: block; font-family: var(--aa-font-notes); font-size: 24px; line-height: 1; }

/* ---------- quotes ---------- */
.pb-quotes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--aa-space-32); }

/* ---------- media kit ---------- */
.pb-kit-art { position: relative; min-height: 440px; }
.pb-kit-art .aa-sticky { position: absolute; width: min(64%, 290px); }
.pb-kit-art .aa-sticky:nth-of-type(1) { left: 0; top: 0; --aa-tilt: -1.6deg; }
.pb-kit-art .aa-sticky:nth-of-type(2) { right: 0; top: 140px; --aa-tilt: 1.3deg; }
.pb-kit-art .aa-sticky:nth-of-type(3) { left: 6%; top: 290px; --aa-tilt: -.7deg; }
.pb-work { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: var(--aa-gap); }
.pb-work .aa-video-card__cover { font-size: 32px; }
.pb-work .aa-video-card__frame .aa-kicker { font-size: 20px; }
.pb-work .aa-video-card__play { width: 52px; height: 52px; }
.pb-brands { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--aa-gap); }
.pb-brand {
  display: grid; place-items: center; gap: 4px; min-height: 120px; padding: 16px; text-align: center;
  border: 2px dashed var(--aa-color-border-strong); border-radius: var(--aa-radius-note);
  background: var(--aa-color-bg-surface);
}
.pb-brand b { font-family: var(--aa-font-display); font-weight: 400; font-size: 26px; line-height: .95; text-transform: uppercase; }
.pb-brand span { font-size: var(--aa-fs-small); color: var(--aa-color-text-secondary); }
.pb-process { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--aa-gap); counter-reset: pb-step; }
.pb-process .aa-note-card { padding-top: var(--aa-space-24); }
.pb-process .aa-steps__title { padding-top: 0; }
.pb-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 24px; }
.pb-form .pb-full { grid-column: 1 / -1; }
.pb-form-card { background: var(--aa-color-bg-surface); border: 2px solid var(--aa-color-border-strong); border-radius: var(--aa-radius-note); padding: var(--aa-space-32); }
.pb-form-card .aa-cluster { --aa-cluster: 4px 24px; }

/* ---------- link in bio ---------- */
.pb-bio-page { min-height: 100vh; }
.pb-bio { width: 100%; max-width: 480px; margin-inline: auto; padding: var(--aa-space-48) var(--aa-space-20, 20px) var(--aa-space-32); display: grid; gap: var(--aa-space-24); justify-items: center; text-align: center; }
.pb-bio__name { font-family: var(--aa-font-display); text-transform: uppercase; font-weight: 400; font-size: 56px; line-height: .88; }
.pb-bio__wordmark { width: min(260px, 70%); height: auto; }
.pb-bio__handle { font-family: var(--aa-font-mono); font-size: 14px; color: var(--aa-color-text-secondary); margin-top: 6px; }
.pb-bio__line { font-family: var(--aa-font-notes); font-size: 26px; line-height: 1.12; max-width: 22ch; }
.pb-bio .aa-linkbio { width: 100%; max-width: none; text-align: left; }
.pb-bio__latest { width: 100%; text-align: left; }
.pb-bio__latest .aa-kicker { font-size: 26px; text-align: center; }
.pb-bio__latest-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.pb-bio__latest-row .aa-video-card__frame { padding: 24% 6px 0; }
.pb-bio__latest-row .aa-video-card__frame .aa-kicker { font-size: 15px; }
.pb-bio__latest-row .aa-video-card__cover { font-size: 22px; }
.pb-bio__latest-row .aa-video-card__play { width: 44px; height: 44px; bottom: 10%; }
.pb-bio__latest-row .aa-video-card__play svg { width: 18px; }
.pb-bio__latest-row .aa-video-card__title { font-size: 14px; line-height: 1.3; }
.pb-bio__foot { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 16px; font-size: var(--aa-fs-small); color: var(--aa-color-text-secondary); }
.pb-bio__foot a { display: inline-flex; align-items: center; min-height: 44px; color: var(--aa-color-text-primary); }
.pb-bio__theme { position: absolute; right: 16px; top: 16px; }
.pb-bio-wrap { position: relative; }
.pb-bio__doodle { position: absolute; width: 80px; color: var(--aa-color-text-primary); pointer-events: none; }
.pb-bio__doodle--a { left: calc(50% - 330px); top: 300px; transform: rotate(-20deg) scaleX(-1); }
.pb-bio__doodle--b { right: calc(50% - 320px); top: 120px; width: 56px; }
@media (max-width: 767px) { .pb-bio__doodle { display: none; } }

/* ---------- resources ---------- */
.pb-filter { position: sticky; top: 0; z-index: 5; background: var(--aa-color-bg-page); border-bottom: 2px solid var(--aa-color-border-strong); padding-block: 12px; }
.pb-filter .aa-cluster { --aa-cluster: 8px; }
.pb-tools { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--aa-gap); }
.pb-tool { display: flex; flex-direction: column; gap: 10px; }
.pb-tool__head { display: flex; gap: 14px; align-items: center; }
.pb-tool__icon { width: 48px; height: 48px; flex-shrink: 0; display: grid; place-items: center; border: 2px solid var(--aa-charcoal); border-radius: 50% 46% 52% 48%; color: var(--aa-charcoal); }
.pb-tool__icon svg { width: 24px; height: 24px; }
.pb-tool .aa-h3 { margin: 0; font-size: 28px; }
.pb-tool .aa-cluster { --aa-cluster: 6px; }
.pb-tool__watch { font-size: var(--aa-fs-small); color: var(--aa-color-text-secondary); }
.pb-tool__watch b { color: var(--aa-color-text-primary); }
.pb-tool .aa-btn { margin-top: auto; align-self: flex-start; }
.pb-group { scroll-margin-top: 90px; }
.pb-group + .pb-group { margin-top: var(--aa-space-96); }
.pb-group[hidden] { display: none; }

/* ---------- thank you ---------- */
.pb-thanks { display: grid; justify-items: center; text-align: center; gap: var(--aa-space-16); }
.pb-thanks .aa-reaction { margin-bottom: var(--aa-space-8); }
.pb-thanks .aa-lede { margin-inline: auto; }
.pb-next { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--aa-gap); }

/* ---------- learner app (dashboard + lesson) ---------- */
.pb-appbar { background: var(--aa-color-bg-page); border-bottom: 2px solid var(--aa-color-border-strong); }
.pb-appbar__bar { display: flex; align-items: center; gap: var(--aa-space-16); min-height: 72px; padding-block: 10px; }
.pb-appbar__brand { display: inline-flex; align-items: center; min-height: 44px; border-radius: 8px; flex-shrink: 0; }
.pb-appbar__brand img { height: 40px; width: auto; }
.pb-appbar__brand .aa-logo-dark { display: none; }
[data-theme="dark"] .pb-appbar__brand .aa-logo-light { display: none; }
[data-theme="dark"] .pb-appbar__brand .aa-logo-dark { display: block; }
.pb-appbar__links { display: flex; gap: 4px; margin-left: auto; }
.pb-avatar {
  display: inline-grid; place-items: center; width: 44px; height: 44px; flex-shrink: 0;
  background: var(--aa-color-bg-surface); color: var(--aa-color-text-primary); border: 2px solid var(--aa-color-border-strong);
  border-radius: 50% 46% 52% 48%; font-family: var(--aa-font-body); font-weight: 800; font-size: 18px; text-decoration: none;
}
.pb-progress { display: grid; gap: 8px; }
.pb-progress__track { height: 22px; border: 2px solid var(--aa-color-border-strong); border-radius: 12px 16px 10px 14px; background: var(--aa-color-bg-surface); overflow: hidden; }
.pb-progress__fill { height: 100%; background: var(--aa-color-bg-inverse); }
.pb-progress__label { display: flex; justify-content: space-between; gap: 12px; font-size: var(--aa-fs-small); font-weight: 700; }
.pb-dash { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: var(--aa-space-48); align-items: start; }
.pb-continue { display: grid; grid-template-columns: 220px 1fr; gap: var(--aa-space-24); align-items: center; border-width: 3px; }
.pb-thumb { position: relative; aspect-ratio: 16 / 10; background: var(--aa-moss); border: 2px solid var(--aa-charcoal); border-radius: 10px 14px 9px 12px; display: grid; place-items: center; color: var(--aa-paper); overflow: hidden; }
.pb-thumb .aa-illo { width: 72%; color: var(--aa-paper); }
.pb-modules { display: grid; gap: 0; border-top: 2px solid var(--aa-color-border-strong); }
.pb-module { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 14px 4px; border-bottom: 2px solid var(--aa-color-border-strong); }
.pb-module__state { width: 40px; height: 40px; display: grid; place-items: center; border: 2px solid var(--aa-color-border-strong); border-radius: 50% 46% 52% 48%; }
.pb-module__state svg { width: 22px; height: 22px; }
.pb-module.is-done .pb-module__state { background: var(--aa-color-bg-inverse); color: var(--aa-color-text-inverse); }
.pb-module.is-current .pb-module__state { border-width: 3px; border-style: dashed; }
.pb-module__title { font-weight: 700; font-size: 18px; line-height: 1.3; }
.pb-module__title a { color: inherit; text-decoration: none; }
.pb-module__title a:hover { text-decoration: underline; }
.pb-module__meta { font-size: var(--aa-fs-small); color: var(--aa-color-text-secondary); }
.pb-aside { display: grid; gap: var(--aa-space-24); }

.pb-lesson { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: var(--aa-space-48); align-items: start; }
.pb-outline { position: sticky; top: 16px; }
.pb-outline summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 48px; cursor: pointer; font-weight: 700; border-radius: 8px; }
.pb-outline summary::-webkit-details-marker { display: none; }
.pb-outline ol { list-style: none; padding: 0; margin: 8px 0 0; display: grid; gap: 4px; }
.pb-outline a { display: grid; grid-template-columns: 28px 1fr; gap: 10px; align-items: center; min-height: 48px; padding: 6px 10px; color: var(--aa-color-text-primary); text-decoration: none; border-radius: 10px 12px 9px 13px; font-size: 16px; line-height: 1.3; }
.pb-outline a:hover { background: var(--aa-color-state-hover-wash); }
.pb-outline a[aria-current="page"] { background: var(--aa-color-bg-inverse); color: var(--aa-color-text-inverse); font-weight: 700; }
.pb-outline a[aria-current="page"]:focus-visible { outline: 3px solid var(--aa-color-focus-ring); outline-offset: 3px; }
.pb-outline .pb-dot { width: 24px; height: 24px; display: grid; place-items: center; border: 2px solid currentColor; border-radius: 50% 46% 52% 48%; }
.pb-outline .pb-dot svg { width: 16px; height: 16px; }
.pb-video { position: relative; aspect-ratio: 16 / 9; background: var(--aa-moss); color: var(--aa-paper); border: 2px solid var(--aa-color-border-strong); border-radius: var(--aa-radius-note); display: grid; place-items: center; text-align: center; overflow: hidden; }
.pb-video__cover { font-family: var(--aa-font-display); text-transform: uppercase; color: var(--aa-lemon); font-size: clamp(40px, 5vw, 80px); line-height: .86; }
.pb-video .aa-kicker { color: var(--aa-paper); }
.pb-video__play { margin-top: 20px; display: inline-flex; gap: 10px; }
.pb-video__time { position: absolute; right: 14px; top: 14px; background: var(--aa-charcoal); color: var(--aa-paper); font-family: var(--aa-font-mono); font-size: 13px; padding: 2px 8px; border-radius: 6px; }
.pb-lesson-body { max-width: 720px; }
.pb-lesson-body > * + * { margin-top: var(--aa-space-32); }
.pb-lesson-body .aa-h2 { margin-top: var(--aa-space-48); }
.pb-lesson-nav { display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; align-items: center; padding-top: var(--aa-space-24); border-top: 2px solid var(--aa-color-border-strong); }
.pb-complete[aria-pressed="true"] { --aa-btn-bg: var(--aa-color-state-success-bg); --aa-btn-fg: var(--aa-charcoal); }

/* ---------- legal ---------- */
.pb-legal { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: var(--aa-space-64); align-items: start; }
.pb-toc { position: sticky; top: 16px; }
.pb-toc .aa-kicker { font-size: 24px; }
.pb-toc ol { list-style: none; padding: 0; margin: 0; display: grid; gap: 0; }
.pb-toc a { display: flex; align-items: center; min-height: 44px; padding: 4px 10px; color: var(--aa-color-text-primary); text-decoration: none; border-radius: 10px 12px 9px 13px; font-size: 16px; font-weight: 600; }
.pb-toc a:hover { background: var(--aa-color-state-hover-wash); color: var(--aa-charcoal); }
.pb-toc li.pb-toc__doc { margin-top: 16px; font-family: var(--aa-font-notes); font-size: 24px; line-height: 1.1; padding-left: 10px; }
.pb-doc { max-width: 760px; }
.pb-doc section { scroll-margin-top: 24px; padding-top: var(--aa-space-48); }
.pb-doc h2.aa-h2 { margin-bottom: var(--aa-space-24); }
.pb-doc h3.aa-h3 { margin-bottom: var(--aa-space-16); }
.pb-doc p, .pb-doc ul { max-width: 68ch; }
.pb-doc p + p, .pb-doc p + ul, .pb-doc ul + p { margin-top: var(--aa-space-16); }
.pb-doc ul { padding-left: 22px; display: grid; gap: 8px; }
.pb-tldr { margin-bottom: var(--aa-space-24); max-width: 520px; font-size: 24px; }
.pb-doc-break { margin-top: var(--aa-space-96); padding-top: var(--aa-space-48); border-top: 3px solid var(--aa-color-border-strong); }
.pb-placeholder { background: var(--aa-white); color: var(--aa-charcoal); padding: 0 4px; border: 1.5px dashed var(--aa-charcoal); border-radius: 4px; font-family: var(--aa-font-mono); font-size: .86em; }
.pb-unpublished { border: 3px solid var(--aa-error); background: var(--aa-color-state-error-bg); color: var(--aa-charcoal); padding: 16px 20px; border-radius: 10px; font-weight: 700; max-width: 760px; }

/* ---------- responsive ---------- */
@media (max-width: 1023px) {
  .pb-split, .pb-split--wide-left, .pb-fit, .pb-quotes, .pb-guarantee { grid-template-columns: 1fr; }
  .pb-guarantee { justify-items: start; gap: var(--aa-space-32); }
  .pb-pricing--three { grid-template-columns: 1fr; max-width: 520px; margin-inline: auto; }
  .pb-work { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pb-brands, .pb-process { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pb-tools { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pb-next { grid-template-columns: 1fr; }
  .pb-dash, .pb-lesson, .pb-legal { grid-template-columns: 1fr; }
  .pb-outline, .pb-toc { position: static; }
  .pb-toc { border: 2px solid var(--aa-color-border-strong); border-radius: var(--aa-radius-note); padding: 16px; background: var(--aa-color-bg-surface); }
  .pb-sheet-art { min-height: 500px; max-width: 520px; }
  .pb-appbar__links .aa-nav__link:not([aria-current]) { display: none; }
}
@media (max-width: 767px) {
  .pb-optin__row, .pb-form, .pb-pricing, .pb-stats { grid-template-columns: 1fr; }
  .pb-form .pb-full { grid-column: auto; }
  .pb-work { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pb-brands { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pb-process, .pb-tools { grid-template-columns: 1fr; }
  .pb-continue { grid-template-columns: 1fr; }
  .pb-sheet-art { min-height: 470px; }
  .pb-sheet { left: 0; width: 88%; padding: 22px 20px 24px; }
  .pb-sheet__title { font-size: 38px; }
  .pb-sheet-art .aa-sticky { bottom: 0; width: 62%; font-size: 22px; }
  .pb-sheet-art__arrow { display: none; }
  .pb-kit-art { min-height: 430px; }
  .pb-kit-art .aa-sticky { width: 80%; font-size: 22px; }
  .pb-stamp { width: 160px; height: 160px; }
  .pb-stamp b { font-size: 56px; }
  .pb-form-card { padding: var(--aa-space-24) var(--aa-space-16); }
  .pb-curriculum .aa-faq__answer { padding: 0 4px 24px; }
  .pb-lesson-meta { display: none; }
  .pb-appbar__links { display: none; }
  .pb-appbar__bar { justify-content: space-between; }
  .pb-module { grid-template-columns: 44px minmax(0, 1fr); }
  .pb-module > .aa-btn { grid-column: 2; justify-self: start; }
  .pb-bio__latest-row .aa-video-card__cover { font-size: 19px; }
}

/* footer + app footer links: 44 px wide hit area, not just tall */
.aa-footer__bottom a, .pb-appfoot a { min-width: 44px; justify-content: center; padding-inline: 6px; }


/* link-in-bio mini reels: the time badge needs the top strip, so the kicker steps aside */
.pb-bio__latest-row .aa-video-card__frame .aa-kicker { display: none; }
.pb-bio__latest-row .aa-video-card__frame { padding-top: 34%; }

/* phone: printable mock and its sticky stack instead of overlapping */
@media (max-width: 767px) {
  .pb-sheet-art { min-height: 0; padding: 8px 4px 0; }
  .pb-sheet { position: relative; left: 0; top: 0; width: 92%; }
  .pb-sheet-art .aa-sticky { position: relative; right: auto; bottom: auto; width: 72%; margin: -28px 0 0 auto; }
}

/* the system's hero-notes sticky positions (nth-of-type top/left) don't apply to the printable mock */
.aa-hero .pb-sheet-art .aa-sticky { top: auto; left: auto; }
.aa-hero .pb-kit-art .aa-sticky { right: auto; }
.aa-hero .pb-kit-art .aa-sticky:nth-of-type(2) { right: 0; }
@media (max-width: 1023px) { .pb-sheet-art__arrow { display: none; } }

/* ---------- OS dark mode (no theme picked) ----------
   ask-ayce.css swaps the nav and divider logos for OS dark mode itself. The app bar logo and a few
   dark-only details live here, so mirror them for visitors whose device is set to dark and who have
   not picked a theme on the page. */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .pb-appbar__brand .aa-logo-light { display: none; }
  :root:not([data-theme="light"]) .pb-appbar__brand .aa-logo-dark { display: block; }
  :root:not([data-theme="light"]) .aa-footer { border-top: 2px dashed rgb(251 248 239 / .28); }
  :root:not([data-theme="light"]) .aa-series-card { --aa-color-focus-ring: var(--aa-lemon); }
  :root:not([data-theme="light"]) .aa-tag:not([class*="aa-tag--"]) { color: var(--aa-paper); border-color: var(--aa-paper); }
  :root:not([data-theme="light"]) .aa-input,
  :root:not([data-theme="light"]) .aa-textarea,
  :root:not([data-theme="light"]) .aa-select { background: rgb(251 248 239 / .06); }
}


/* Dashboard lesson titles: 44 px tall hit area */
.pb-module__title a { display: inline-flex; align-items: center; min-height: 44px; }

/* Lesson video on phones: the time badge gets its own strip above the kicker */
@media (max-width: 767px) {
  .pb-video { aspect-ratio: auto; padding: 52px 16px 24px; }
  .pb-video__time { top: 12px; right: 12px; }
}
@media (max-width: 1023px) { .pb-lesson { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 767px) { .pb-video__play { flex-wrap: wrap; justify-content: center; } }

/* ---------- templates shop (motion layer parts live in ../00 Design System/css/ask-ayce-motion.css) ---------- */
.pb-tpl-buy { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: var(--aa-space-48); align-items: center; }
.pb-tpl-buy .pb-tonight { margin-top: var(--aa-space-32); }
.pb-tpl-notes { display: grid; gap: 22px; justify-items: start; padding-block: 8px; }
.pb-tpl-notes .aa-sticky { width: min(100%, 320px); }
.pb-tpl-notes .aa-sticky:nth-child(2) { justify-self: end; }
@media (max-width: 900px) { .pb-tpl-buy { grid-template-columns: 1fr; } .pb-tpl-notes .aa-sticky:nth-child(2) { justify-self: center; } }
