/* ==================================================================
   QUESTION BANK LANDING PAGE
   Frozen contracts — do not add values outside these sets.
   Spacing : 4 8 12 16 24 32 48 64 96 128
   Radius  : 8px (chip) 12px (media) 18px (card) 999px (pill)
   Type    : .78 .88 1 1.2 2rem, plus --qb-display on h1 / section h2 only
   ================================================================== */

.ptm-qb-page{
	--qb-bg:#f5f7fb;--qb-card:#fff;--qb-soft:#eef2f8;--qb-ink:#0b1f3a;--qb-muted:#52627a;
	--qb-line:rgba(11,31,58,.10);--qb-blue:#3157e8;--qb-teal:#00a896;--qb-green:#108a66;
	--qb-display:clamp(2.2rem,4vw,3.4rem);
	--qb-shadow:0 1px 2px rgba(11,31,58,.05),0 8px 24px -10px rgba(11,31,58,.12);
	--qb-shadow-lg:0 2px 4px rgba(11,31,58,.05),0 24px 56px -20px rgba(11,31,58,.20);
	--qb-ease:cubic-bezier(.2,.8,.2,1);
	--qb-heat-none:#e6ebf2;--qb-heat-vol-low:#b8ddf3;--qb-heat-vol-med:#5fa8d3;--qb-heat-vol-high:#176b9d;
	--qb-heat-unscored:#ccd5e0;--qb-heat-weak:#d86767;--qb-heat-amber:#d99636;--qb-heat-yellow:#dfc84d;--qb-heat-strong:#4c9d75;
	background:var(--qb-bg);color:var(--qb-ink);font-size:1rem;
}
.ptm-qb-page *,.ptm-qb-page *:before,.ptm-qb-page *:after{box-sizing:border-box}
/* Class selectors that set display would otherwise beat the UA [hidden] rule. */
.ptm-qb-page [hidden]{display:none!important}
/* The shared homepage sections sit outside .ptm-qb-page and so outside its
   box-sizing reset. Astra supplies one, but not depending on that is cheap. */
.ptm-qb-shared,.ptm-qb-shared *,.ptm-qb-shared *:before,.ptm-qb-shared *:after{box-sizing:border-box}
.ptm-qb-page .ptm-container{margin:auto;width:min(1200px,calc(100% - 48px))}
.ptm-qb-section{padding:96px 0}
.ptm-qb-section.is-alt{background:rgba(11,31,58,.030)}
.ptm-qb-page h1,.ptm-qb-page h2,.ptm-qb-page h3,.ptm-qb-page h4{color:var(--qb-ink);font-family:"Playfair Display",serif}
.ptm-qb-page h1,.ptm-qb-section>.ptm-container>h2,.ptm-qb-close h2{font-size:var(--qb-display);letter-spacing:-.02em;line-height:1.06;margin:0 0 16px}
.ptm-qb-page h3{font-size:1.2rem;line-height:1.25;margin:0}
.ptm-qb-page h4{font-size:1rem;margin:0 0 8px}
.ptm-qb-page p,.ptm-qb-page li{line-height:1.6}
.ptm-qb-eyebrow,.ptm-qb-card-eyebrow{color:var(--qb-teal);display:block;font-size:.78rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.ptm-qb-eyebrow{margin:0 0 12px}
.ptm-qb-jump{border-bottom:1px solid var(--qb-line);border-top:1px solid var(--qb-line);padding:16px 0}
.ptm-qb-jump ul{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;list-style:none;margin:0;padding:0}
.ptm-qb-jump a{align-items:center;background:var(--qb-card);border-radius:999px;box-shadow:inset 0 0 0 1px var(--qb-line);color:var(--qb-ink);display:inline-flex;font-size:.78rem;font-weight:700;min-height:44px;padding:8px 16px;text-decoration:none}
.ptm-qb-jump a:hover{background:var(--qb-blue);box-shadow:none;color:#fff}
.ptm-qb-intro{color:var(--qb-muted);margin:0 0 32px;max-width:64ch}
.ptm-qb-badge{align-self:flex-start;background:#fff2cd;border-radius:999px;color:#684908;font-size:.78rem;font-weight:800;margin-bottom:8px;padding:4px 12px}
.ptm-qb-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.ptm-qb-btn{align-items:center;background:var(--qb-card);border:0;border-radius:999px;box-shadow:var(--qb-shadow);color:var(--qb-ink);cursor:pointer;display:inline-flex;font-size:.88rem;font-weight:800;justify-content:center;min-height:48px;padding:0 24px;text-decoration:none;transition:transform .2s var(--qb-ease),box-shadow .2s var(--qb-ease)}
.ptm-qb-btn:hover{box-shadow:var(--qb-shadow-lg);transform:translateY(-1px)}
.ptm-qb-btn.is-primary{background:var(--qb-teal);color:#fff}
.ptm-qb-section-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;margin-top:32px}
.ptm-qb-section-cta.is-centred{justify-content:center}
.ptm-qb-bullets{color:var(--qb-muted);font-size:.88rem;margin:8px 0 0;padding-left:20px}
.ptm-qb-bullets li{margin-top:4px}
.ptm-qb-worked__intro{margin-bottom:24px}
.ptm-qb-worked__intro p{color:var(--qb-muted);font-size:.88rem;margin:4px 0 0}
.ptm-qb-section.is-tinted{background:linear-gradient(135deg,rgba(0,168,150,.10),rgba(49,87,232,.09))}
.ptm-qb-section-link{margin:32px 0 0}
.ptm-qb-section-link a{color:var(--qb-blue);font-weight:800;text-decoration:none}
.ptm-qb-section-link a:hover{text-decoration:underline}
.ptm-qb-page :focus-visible{outline:2px solid var(--qb-blue);outline-offset:2px}

/* ---------- Hero ---------- */
.ptm-qb-hero{background:linear-gradient(135deg,rgba(0,168,150,.12),rgba(49,87,232,.08));overflow:hidden;padding:96px 0;position:relative}
.ptm-qb-hero__texture{height:100%;inset:0;opacity:.025;pointer-events:none;position:absolute;width:100%}
.ptm-qb-hero__texture path{fill:none;stroke:var(--qb-ink);stroke-width:1}
.ptm-qb-hero__grid{align-items:center;display:grid;gap:48px;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);position:relative}
.ptm-qb-hero__copy h1{max-width:18ch}
.ptm-qb-lede{color:var(--qb-muted);margin:0;max-width:54ch}
.ptm-qb-hero__copy>p:last-of-type{margin:16px 0 0}
.ptm-qb-hero__copy .ptm-qb-actions{justify-content:center}
.ptm-qb-hero__preview{background:var(--qb-card);border-radius:18px;box-shadow:var(--qb-shadow-lg);padding:16px}
/* A fixed stage is the whole point: a scoring matrix and a metric tile must
   occupy the same box, or the section resizes as the visitor clicks. */
.ptm-qb-carousel__stage{background:linear-gradient(145deg,var(--qb-soft),var(--qb-card));border:1px solid var(--qb-line);border-radius:12px;display:grid;overflow:hidden;padding:24px}
.ptm-qb-carousel.is-hero .ptm-qb-carousel__stage{height:360px}
.ptm-qb-carousel.is-explore .ptm-qb-carousel__stage{height:420px}
.ptm-qb-carousel__stage>[data-qb-frame]{display:none;grid-area:1/1;grid-template-rows:1fr auto;min-height:0}
.ptm-qb-carousel__stage>[data-qb-frame].is-active{display:grid}
.ptm-qb-frame__media{align-items:stretch;display:flex;justify-content:center;min-height:0;overflow:hidden}
.ptm-qb-frame__media>*{height:100%;width:100%}
/* Mocks that are shorter than the stage must fill it, not float in the middle. */
.ptm-qb-frame__media .ptm-qb-mini-tile,.ptm-qb-frame__media .ptm-qb-type,
.ptm-qb-frame__media .ptm-qb-selector,.ptm-qb-frame__media .ptm-qb-timing,
.ptm-qb-frame__media .ptm-qb-sessions,.ptm-qb-frame__media .ptm-qb-matrix-card{justify-content:center}
.ptm-qb-frame__media .ptm-heat-wrap{align-content:center;display:grid}
.ptm-qb-frame__caption{border-top:1px solid var(--qb-line);color:var(--qb-muted);font-size:.78rem;margin:12px 0 0;padding-top:12px;text-align:center}
.ptm-qb-frame__caption strong{color:var(--qb-ink)}
.ptm-qb-carousel.is-explore{display:grid;gap:32px;grid-template-columns:minmax(0,260px) minmax(0,1fr)}
.ptm-qb-carousel.is-explore .ptm-qb-carousel__stage{grid-column:2;grid-row:1}
.ptm-qb-carousel.is-explore .ptm-qb-carousel__controls{grid-column:2;grid-row:2}
.ptm-qb-carousel.is-explore .ptm-qb-carousel__tabs{grid-column:1;grid-row:1/3}
.ptm-qb-carousel__tabs{align-content:start;display:grid;gap:8px;margin-bottom:16px}
.ptm-qb-carousel__tabs button{text-align:left}
.ptm-qb-carousel__tabs button{background:var(--qb-card);border:0;border-radius:999px;box-shadow:inset 0 0 0 1px var(--qb-line);color:var(--qb-ink);cursor:pointer;font-size:.78rem;font-weight:700;min-height:40px;padding:0 16px;transition:background .3s var(--qb-ease),color .3s var(--qb-ease)}
.ptm-qb-carousel__tabs button.is-active{background:var(--qb-blue);box-shadow:none;color:#fff}
.ptm-qb-explore{background:var(--qb-card);border-radius:18px;box-shadow:var(--qb-shadow);margin-top:32px;padding:32px}
.ptm-qb-matrix-card{display:flex;flex-direction:column;width:100%}
.ptm-qb-matrix-card>b{font-size:1rem}
.ptm-qb-matrix-card>p{color:var(--qb-muted);font-size:.78rem;margin:4px 0 12px}
.ptm-qb-matrix-card>small{color:var(--qb-muted);font-size:.78rem;margin-top:12px}
.ptm-qb-carousel__controls{align-items:center;display:flex;gap:8px;justify-content:center;margin-top:12px}
/* 44px is the smallest reliable touch target. The dots stay 8px visually and
   carry an invisible 44px hit area, because an 8px tap target is unusable. */
.ptm-qb-carousel__controls button{align-items:center;background:transparent;border:0;border-radius:999px;color:var(--qb-ink);cursor:pointer;display:inline-flex;font-size:.88rem;justify-content:center;min-height:44px;min-width:44px;padding:4px 8px}
.ptm-qb-carousel__dots{display:flex;gap:8px}
.ptm-qb-carousel__dots{align-items:center}
.ptm-qb-carousel__dots button{background:#c8d0dc;border-radius:999px;height:8px;min-height:8px;min-width:8px;padding:0;position:relative;width:8px}
.ptm-qb-carousel__dots button:after{content:"";inset:-18px;position:absolute}
.ptm-qb-carousel__dots button.is-active{background:var(--qb-blue)}

/* ---------- Numbers ---------- */
.ptm-qb-stats{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}
.ptm-qb-stats article{background:var(--qb-card);border-radius:18px;box-shadow:var(--qb-shadow);display:flex;flex-direction:column;padding:32px}
.ptm-qb-stats strong{display:block;font-family:"Playfair Display",serif;font-size:2rem;letter-spacing:-.02em;line-height:1.05}
.ptm-qb-stats span{display:block;font-size:.88rem;font-weight:700;margin-top:8px}
.ptm-qb-stats small{color:var(--qb-muted);display:block;font-size:.78rem;margin-top:8px}

/* ---------- Bank switcher strip ---------- */
.ptm-qb-strip{background:var(--qb-card);border-radius:18px;box-shadow:var(--qb-shadow);display:grid;gap:32px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:16px;padding:32px}
.ptm-qb-strip__copy h3{margin-bottom:8px}
.ptm-qb-strip__copy p{color:var(--qb-muted);font-size:.88rem;margin:0}
.ptm-qb-bank{background:var(--qb-soft);border-radius:12px;padding:24px;text-align:center;transition:background .4s var(--qb-ease)}
.ptm-qb-bank__label{color:var(--qb-muted);display:block;font-size:.78rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.ptm-qb-bank__seg{background:var(--qb-card);border-radius:999px;display:inline-flex;gap:4px;margin:16px 0;padding:4px}
.ptm-qb-bank__seg button{background:transparent;border:0;border-radius:999px;color:var(--qb-ink);cursor:pointer;font-size:.88rem;font-weight:800;min-height:40px;padding:0 24px;transition:background .3s var(--qb-ease),color .3s var(--qb-ease)}
.ptm-qb-bank__seg button.is-active{background:var(--qb-teal);color:#fff}
.ptm-qb-bank.is-sjt{background:rgba(49,87,232,.07)}
.ptm-qb-bank.is-sjt .ptm-qb-bank__seg button.is-active{background:var(--qb-blue)}
.ptm-qb-bank__panes p{margin:0}
.ptm-qb-bank__panes b{display:block;font-size:1rem}
.ptm-qb-bank__panes span{color:var(--qb-muted);display:block;font-size:.78rem;margin-top:4px}

/* ---------- Session path ---------- */
.ptm-qb-path{counter-reset:path;display:grid;gap:32px;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:32px 0 0;padding:0}
.ptm-qb-path li{counter-increment:path;padding-right:24px;position:relative}
.ptm-qb-path li:last-child{padding-right:0}
.ptm-qb-path li:before{align-items:center;background:var(--qb-teal);border-radius:999px;color:#fff;content:counter(path);display:flex;font-weight:800;height:44px;justify-content:center;margin-bottom:16px;width:44px}
.ptm-qb-path li:not(:last-child):after{background:var(--qb-line);content:"";height:1px;left:56px;position:absolute;right:24px;top:22px}
.ptm-qb-path b,.ptm-qb-path span{display:block}
.ptm-qb-path span{color:var(--qb-muted);font-size:.88rem;margin-top:8px}

/* ---------- Tile contract ---------- */
.ptm-qb-grid{align-items:stretch;display:grid;gap:16px;margin-top:32px}
.ptm-qb-grid.is-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.ptm-qb-grid.is-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.ptm-qb-product-card{background:var(--qb-card);border-radius:18px;box-shadow:var(--qb-shadow);display:flex;flex-direction:column;margin-top:32px;min-width:0;padding:24px;transition:box-shadow .3s var(--qb-ease),transform .3s var(--qb-ease)}
.ptm-qb-grid .ptm-qb-product-card{height:100%;margin:0}
.ptm-qb-product-card:hover{box-shadow:var(--qb-shadow-lg);transform:translateY(-2px)}
.ptm-qb-product-card__copy{display:flex;flex-direction:column}
.ptm-qb-card-eyebrow+h3{margin-top:8px}
.ptm-qb-card-body{color:var(--qb-muted);font-size:.88rem;margin-top:8px}
.ptm-qb-card-body p{margin:0}
.ptm-qb-card-foot{color:var(--qb-muted);font-size:.78rem;margin:12px 0 0}
.ptm-qb-media{align-items:stretch;background:linear-gradient(145deg,var(--qb-soft),var(--qb-card));border:1px solid var(--qb-line);border-radius:12px;display:flex;flex:1 0 auto;justify-content:center;margin-top:16px;min-height:0;overflow:hidden;padding:16px}
.ptm-qb-media>*{width:100%}
.ptm-qb-media.is-16x10{aspect-ratio:16/10}
.ptm-qb-media.is-4x3{aspect-ratio:4/3;min-height:296px}
.ptm-qb-media.is-1x1{aspect-ratio:1/1}
.ptm-qb-media.is-auto{aspect-ratio:auto}
.ptm-qb-product-card.is-wide .ptm-qb-media{padding:32px}

/* Cards in a row share three rows — copy, media, foot — so the mock panels line
   up across the row however many lines of body copy a card carries. Without
   this, a three-line description pushes its heatmap below its neighbour's.
   Falls back to the flex layout above where subgrid is unsupported. */
@supports (grid-template-rows: subgrid) {
	.ptm-qb-grid.is-two,.ptm-qb-grid.is-three{grid-template-rows:auto 1fr auto}
	.ptm-qb-grid.is-two>.ptm-qb-product-card,
	.ptm-qb-grid.is-three>.ptm-qb-product-card{display:grid;gap:16px;grid-row:span 3;grid-template-rows:subgrid}
	/* In grid the item sizes to content, so aspect-ratio + min-height drove the
	   WIDTH (296 x 4/3 = 395px) and pushed the page sideways. Pin the width. */
	.ptm-qb-grid.is-two>.ptm-qb-product-card>.ptm-qb-media,
	.ptm-qb-grid.is-three>.ptm-qb-product-card>.ptm-qb-media{margin-top:0;min-width:0;width:100%}
	.ptm-qb-grid.is-two>.ptm-qb-product-card>.ptm-qb-card-foot,
	.ptm-qb-grid.is-three>.ptm-qb-product-card>.ptm-qb-card-foot{margin-top:0}
}

/* ---------- Dashboard mocks ---------- */
.ptm-qb-mini-tile,.ptm-qb-type,.ptm-qb-marks,.ptm-qb-paper{background:var(--qb-card);border-radius:12px;color:var(--qb-ink);display:flex;flex-direction:column;padding:16px;width:100%}
.ptm-qb-mini-tile>b,.ptm-qb-type>b,.ptm-qb-marks>b,.ptm-qb-paper>b{font-size:.88rem}
.ptm-qb-mini-tile.is-overview{background:#edf7ff}
.ptm-qb-mini-tile.is-remaining{background:#effaf5}
.ptm-qb-mini-tile.is-streak,.ptm-qb-type{background:#fff8df}
.ptm-qb-mini-tile.is-resume{background:#f5f0ff}
.ptm-qb-mini-metrics{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin:auto 0}
.ptm-qb-rings{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin:auto 0;text-align:center}
.ptm-qb-ring{display:grid;justify-items:center;min-width:0}
.ptm-qb-ring svg{height:auto;transform:rotate(-90deg);width:100%;max-width:88px}
.ptm-qb-ring__track{fill:none;stroke:rgba(11,31,58,.10);stroke-width:7}
.ptm-qb-ring__fill{fill:none;stroke:var(--qb-teal);stroke-linecap:round;stroke-width:7;transition:stroke-dashoffset 1.1s var(--qb-ease)}
.ptm-qb-ring b{font-size:1rem;margin-top:8px}
.ptm-qb-ring small{color:var(--qb-muted);font-size:.78rem}
.ptm-qb-specialties{display:flex;flex-direction:column;width:100%}
.ptm-qb-specialties>b{font-size:.88rem}
.ptm-qb-specialties ul{list-style:none;margin:12px 0 0;padding:0}
.ptm-qb-specialties li{align-items:center;display:grid;gap:12px;grid-template-columns:minmax(0,9rem) minmax(0,1fr) auto;padding:4px 0}
.ptm-qb-specialties span{font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ptm-qb-specialties em{color:var(--qb-muted);font-size:.78rem;font-style:normal}
.ptm-qb-specialties>small{color:var(--qb-muted);font-size:.78rem;margin-top:12px}
/* Elements inside a playing tile arrive in order, once. */
.ptm-qb-page.is-enhanced [data-step]{opacity:0;transform:translateY(8px)}
.ptm-qb-page.is-enhanced .is-playing [data-step]{opacity:1;transform:none;transition:opacity .45s var(--qb-ease),transform .45s var(--qb-ease)}
.ptm-qb-page.is-enhanced .is-playing [data-step="1"]{transition-delay:.05s}
.ptm-qb-page.is-enhanced .is-playing [data-step="2"]{transition-delay:.20s}
.ptm-qb-page.is-enhanced .is-playing [data-step="3"]{transition-delay:.35s}
.ptm-qb-page.is-enhanced .is-playing [data-step="4"]{transition-delay:.50s}
.ptm-qb-page.is-enhanced .is-playing [data-step="5"]{transition-delay:.65s}
.ptm-qb-page.is-enhanced .is-playing [data-step="6"]{transition-delay:.80s}
.ptm-qb-mini-metrics span{color:var(--qb-muted);font-size:.78rem}
.ptm-qb-mini-metrics strong{color:var(--qb-ink);display:block;font-size:1.2rem}
.ptm-qb-mini-line{align-items:baseline;display:flex;gap:4px;margin:auto 0 12px}
.ptm-qb-mini-line strong{font-size:2rem;letter-spacing:-.02em}
.ptm-qb-mini-line em{font-style:normal;margin-left:auto}
.ptm-qb-bar{background:#dde4ed;border-radius:999px;display:block;height:8px;overflow:hidden}
.ptm-qb-bar u{background:linear-gradient(90deg,var(--qb-green),var(--qb-teal));display:block;height:100%;transition:width .9s var(--qb-ease)}
.ptm-qb-bar.is-plain u{background:var(--qb-blue)}
.ptm-qb-mini-tile small,.ptm-qb-type small{color:var(--qb-muted);display:block;font-size:.78rem;margin-top:8px}
.ptm-qb-number{display:block;font-size:2rem;letter-spacing:-.02em;margin:8px 0}
.ptm-qb-number small{font-size:.78rem}
.ptm-qb-mini-head{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}
.ptm-qb-streak-windows{display:flex;gap:4px}
.ptm-qb-streak-windows button{background:var(--qb-card);border:0;border-radius:999px;color:var(--qb-muted);cursor:pointer;font-size:.78rem;font-weight:800;min-height:32px;padding:0 12px;position:relative}
.ptm-qb-streak-windows button:after{content:"";inset:-6px;position:absolute}
.ptm-qb-streak-windows button.is-active{background:var(--qb-blue);color:#fff}
.ptm-qb-day-row{display:grid;gap:4px;grid-auto-flow:column;margin:auto 0 0}
.ptm-qb-day-row i{background:#dfe5ed;border-radius:8px;height:12px;transition:background .4s var(--qb-ease)}
.ptm-qb-day-row i.on{background:var(--qb-teal)}
.ptm-qb-ui-button{align-self:flex-end;background:var(--qb-blue);border-radius:999px;color:#fff;display:inline-block;font-size:.78rem;font-weight:800;margin-top:16px;padding:8px 16px}
.ptm-qb-type p{align-items:center;display:flex;justify-content:space-between;margin:12px 0 4px}
.ptm-qb-type strong{font-size:1rem}
.ptm-qb-marks ul{list-style:none;margin:12px 0 0;padding:0}
.ptm-qb-marks li{align-items:center;display:flex;font-size:.78rem;gap:8px;justify-content:space-between;padding:4px 0}
.ptm-qb-marks em{border-radius:8px;font-size:.78rem;font-style:normal;font-weight:800;padding:4px 8px}
.ptm-qb-marks>p{align-items:baseline;border-top:1px solid var(--qb-line);display:flex;gap:8px;margin:12px 0 0;padding-top:12px}
.ptm-qb-marks>p strong{font-size:2rem;letter-spacing:-.02em;margin-left:auto}
.ptm-qb-marks>p small{color:var(--qb-muted);font-size:.78rem}
.ptm-qb-paper ul{list-style:none;margin:12px 0 0;padding:0}
.ptm-qb-paper li{align-items:center;border-bottom:1px solid var(--qb-line);display:flex;gap:8px;justify-content:space-between;padding:4px 0}
.ptm-qb-paper li:last-child{border:0}
.ptm-qb-paper li b{display:block;font-size:.88rem}
.ptm-qb-paper li small{color:var(--qb-muted);display:block;font-size:.78rem}
.ptm-qb-paper li em{color:var(--qb-muted);font-size:.78rem;font-style:normal;white-space:nowrap}
.ptm-qb-selector{display:flex;flex-direction:column;width:100%}
.ptm-qb-seg{background:var(--qb-soft);border-radius:999px;display:grid;gap:4px;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px;text-align:center}
.ptm-qb-seg b{border-radius:999px;font-size:.88rem;padding:8px}
.ptm-qb-seg b.is-on{background:var(--qb-blue);color:#fff}
.ptm-qb-lengths{display:flex;gap:4px;margin:12px 0}
.ptm-qb-lengths b{background:var(--qb-card);border-radius:999px;flex:1;font-size:.78rem;padding:8px 0;text-align:center;transition:background .3s var(--qb-ease),color .3s var(--qb-ease)}
.ptm-qb-lengths b.on{background:var(--qb-blue);color:#fff}
.ptm-qb-selector ul{background:var(--qb-card);border-radius:12px;list-style:none;margin:auto 0 0;padding:0}
.ptm-qb-selector li{align-items:center;border-bottom:1px solid var(--qb-line);display:flex;font-size:.88rem;justify-content:space-between;padding:8px 12px}
.ptm-qb-selector li:last-child{border:0}
.ptm-qb-selector em{color:var(--qb-muted);font-style:normal}
.ptm-qb-sessions{display:flex;flex-direction:column;justify-content:center;width:100%}
.ptm-qb-sessions p{align-items:center;border-bottom:1px solid var(--qb-line);display:grid;gap:0 12px;grid-template-columns:minmax(0,1fr) auto;margin:0;padding:4px 0}
.ptm-qb-sessions p:last-child{border:0}
.ptm-qb-sessions b{display:block;font-size:.88rem}
.ptm-qb-sessions span{color:var(--qb-muted);display:block;font-size:.78rem}
.ptm-qb-sessions em{color:var(--qb-blue);font-size:.78rem;font-style:normal;font-weight:800;grid-column:2;grid-row:1/3}

/* ---------- SJT scoring ---------- */
.ptm-qb-scoring{width:100%}
.ptm-qb-scoring__lede{margin:0 0 24px;max-width:70ch}
.ptm-qb-scoring__cols{align-items:start;display:grid;gap:32px;grid-template-columns:minmax(0,1.4fr) minmax(0,.85fr)}
.ptm-qb-scoring__hint{color:var(--qb-muted);font-size:.78rem;margin:0 0 12px}
.ptm-qb-scoring__worked{color:var(--qb-muted);font-size:.78rem;margin:12px 0 0}
.ptm-qb-scoring__worked strong{color:var(--qb-ink)}
.ptm-qb-scoring__caution{background:#fdeceb;border-radius:12px;color:#851614;font-size:.78rem;margin:12px 0 0;padding:12px}
.ptm-qb-rank-matrix{border-radius:12px;display:grid;grid-template-columns:2fr repeat(5,1fr);overflow:hidden}
.ptm-qb-rank-matrix>*{align-items:center;background:var(--qb-card);display:flex;font-size:.78rem;font-style:normal;justify-content:center;min-width:0;outline:1px solid var(--qb-line);outline-offset:-1px;padding:8px 4px}
.ptm-qb-rank-matrix .is-corner{padding:8px}
.ptm-qb-rank-matrix .is-exact{box-shadow:inset 0 0 0 2px var(--qb-green);font-weight:800}
.score-4{background:#d9f5e7;color:#086746}
.score-3{background:#fff3bc;color:#5c4a04}
.score-2{background:#ffe1b8;color:#6b4310}
.score-1{background:#ffd2d0;color:#851614}
.score-0{background:#f9b9ba;color:#851614}
.ptm-qb-scoring__key{display:flex;flex-wrap:wrap;gap:8px 16px;list-style:none;margin:12px 0 0;padding:0}
.ptm-qb-scoring__key li{align-items:center;color:var(--qb-muted);display:flex;font-size:.78rem;gap:4px}
.ptm-qb-scoring__key i{border-radius:8px;height:12px;width:12px}
.ptm-qb-select-matrix{border-radius:12px;overflow:hidden}
.ptm-qb-select-matrix p{align-items:stretch;background:var(--qb-card);display:flex;margin:0;outline:1px solid var(--qb-line);outline-offset:-1px}
.ptm-qb-select-matrix span{display:block;flex:1;font-size:.88rem;padding:8px 12px}
.ptm-qb-select-matrix small{color:var(--qb-muted);display:block;font-size:.78rem}
.ptm-qb-select-matrix b{align-items:center;display:flex;font-size:1.2rem;padding:8px 16px}
.ptm-qb-guardrail{color:var(--qb-muted);font-size:.78rem;margin:24px 0 0}

/* ---------- Heatmap: ported from the plugin. Seven rows, column flow, two systems.
   DOCUMENTED EXCEPTION: cell gap 2px and cell radius 2px sit outside the frozen
   spacing and radius scales. They are the plugin's own grid geometry (dashboard.css)
   and must not be rounded to 4px/8px, or the marketing grid stops matching the
   dashboard a member sees after signing up. ---------- */
.ptm-qb-page .ptm-heat-wrap{width:100%}
.ptm-qb-page .ptm-heat-meta{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}
.ptm-qb-page .ptm-heat-meta span{display:grid;min-width:0}
.ptm-qb-page .ptm-heat-meta small{color:var(--qb-muted);font-size:.78rem}
.ptm-qb-page .ptm-heat-meta strong{font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ptm-qb-page .ptm-heat-grid{background:var(--qb-card);border-radius:12px;display:grid;gap:2px;grid-auto-flow:column;grid-template-columns:repeat(53,minmax(0,1fr));grid-template-rows:repeat(7,9px);min-width:0;padding:8px}
.ptm-qb-page .ptm-heat-grid i{background:var(--qb-heat-none);border-radius:2px;transition:opacity .5s var(--qb-ease)}
.ptm-qb-page .ptm-heat-grid.is-volume .is-low{background:var(--qb-heat-vol-low)}
.ptm-qb-page .ptm-heat-grid.is-volume .is-medium{background:var(--qb-heat-vol-med)}
.ptm-qb-page .ptm-heat-grid.is-volume .is-high{background:var(--qb-heat-vol-high)}
.ptm-qb-page .ptm-heat-grid.is-accuracy .is-unscored{background:var(--qb-heat-unscored)}
.ptm-qb-page .ptm-heat-grid.is-accuracy .is-weak{background:var(--qb-heat-weak)}
.ptm-qb-page .ptm-heat-grid.is-accuracy .is-amber{background:var(--qb-heat-amber)}
.ptm-qb-page .ptm-heat-grid.is-accuracy .is-yellow{background:var(--qb-heat-yellow)}
.ptm-qb-page .ptm-heat-grid.is-accuracy .is-strong{background:var(--qb-heat-strong)}
.ptm-qb-page .ptm-heat-legend{display:flex;flex-wrap:wrap;gap:4px 12px;justify-content:center;margin:12px auto 0;white-space:nowrap}
.ptm-qb-page .ptm-heat-legend span{align-items:center;color:var(--qb-muted);display:inline-flex;font-size:.78rem;gap:4px}
.ptm-qb-page .ptm-heat-legend i{background:var(--qb-heat-none);border-radius:2px;height:9px;width:9px}
.ptm-qb-page .ptm-heat-legend .is-low{background:var(--qb-heat-vol-low)}
.ptm-qb-page .ptm-heat-legend .is-medium{background:var(--qb-heat-vol-med)}
.ptm-qb-page .ptm-heat-legend .is-high{background:var(--qb-heat-vol-high)}
.ptm-qb-page .ptm-heat-legend .is-unscored{background:var(--qb-heat-unscored)}
.ptm-qb-page .ptm-heat-legend .is-weak{background:var(--qb-heat-weak)}
.ptm-qb-page .ptm-heat-legend .is-amber{background:var(--qb-heat-amber)}
.ptm-qb-page .ptm-heat-legend .is-yellow{background:var(--qb-heat-yellow)}
.ptm-qb-page .ptm-heat-legend .is-strong{background:var(--qb-heat-strong)}
.ptm-qb-page .ptm-heat-readout{color:var(--qb-muted);font-size:.78rem;line-height:1.4;margin:12px 0 0;text-align:center}
.ptm-qb-domains{width:100%}
.ptm-qb-domains p{display:flex;font-size:.88rem;justify-content:space-between;margin:12px 0 4px}
.ptm-qb-domains i{background:#dde4ed;border-radius:999px;display:block;height:8px;overflow:hidden}
.ptm-qb-domains u{background:var(--qb-blue);display:block;height:100%;transition:width .9s var(--qb-ease)}
.ptm-qb-timing{display:flex;flex-direction:column;justify-content:center;width:100%}
.ptm-qb-timing p{align-items:center;border-bottom:1px solid var(--qb-line);display:flex;justify-content:space-between;margin:0;padding:12px 0}
.ptm-qb-timing p:last-child{border:0}
.ptm-qb-timing span{font-size:.88rem}
.ptm-qb-timing b{font-size:1.2rem}
.ptm-qb-timing small{color:var(--qb-muted);display:block;font-size:.78rem}

/* ---------- Runner ---------- */
.ptm-qb-features{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin:32px 0}
.ptm-qb-features article{background:var(--qb-card);border-radius:18px;box-shadow:var(--qb-shadow);padding:24px}
.ptm-qb-features b,.ptm-qb-features span{display:block}
.ptm-qb-features span{color:var(--qb-muted);font-size:.88rem;margin-top:8px}
.ptm-qb-worked{background:var(--qb-card);border-radius:18px;box-shadow:var(--qb-shadow);padding:32px;transition:background .3s var(--qb-ease)}
.ptm-qb-worked__head{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}
.ptm-qb-prefs{display:flex;flex-wrap:wrap;gap:8px}
.ptm-qb-tabs,.ptm-qb-prefs__group{background:var(--qb-soft);border-radius:999px;display:flex;gap:4px;padding:4px}
.ptm-qb-tabs button,.ptm-qb-prefs__group button{background:transparent;border:0;border-radius:999px;color:var(--qb-ink);cursor:pointer;font-size:.88rem;font-weight:700;min-height:40px;padding:0 16px;transition:background .3s var(--qb-ease),color .3s var(--qb-ease)}
.ptm-qb-tabs button[aria-selected="true"],.ptm-qb-prefs__group button.is-active{background:var(--qb-blue);color:#fff}
/* The feedback pane is hidden until the question is answered, so the second
   column must not be reserved before there is anything to put in it. */
.ptm-qb-demo{display:grid;gap:24px;grid-template-columns:minmax(0,1fr)}
.ptm-qb-page.is-enhanced .ptm-qb-demo.is-answered,
.ptm-qb-page:not(.is-enhanced) .ptm-qb-demo{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.ptm-qb-demo__question,.ptm-qb-demo__feedback{background:var(--qb-soft);border-radius:12px;padding:24px}
.ptm-qb-demo__question>p{margin:12px 0}
.ptm-qb-demo-options{display:grid;gap:8px}
.ptm-qb-demo-options button{align-items:center;background:var(--qb-card);border:1px solid var(--qb-line);border-radius:12px;color:var(--qb-ink);cursor:pointer;display:grid;font-size:.88rem;gap:12px;grid-template-columns:32px 1fr;padding:12px;text-align:left;transition:border-color .2s var(--qb-ease),background .2s var(--qb-ease)}
.ptm-qb-demo-options button b{background:var(--qb-soft);border-radius:8px;display:grid;height:32px;place-items:center}
.ptm-qb-demo-options button.is-selected{border-color:var(--qb-blue);box-shadow:0 0 0 2px rgba(49,87,232,.15)}
.ptm-qb-demo-options button.is-correct{background:#e5f8ef;border-color:#37a77c}
.ptm-qb-demo-options button.is-wrong{background:#fdeceb;border-color:#d55f58}
.ptm-qb-demo-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}
.ptm-qb-demo-actions button{background:var(--qb-blue);border:0;border-radius:999px;color:#fff;cursor:pointer;font-size:.88rem;font-weight:700;min-height:44px;padding:0 24px}
.ptm-qb-demo-actions button:last-child{background:transparent;box-shadow:inset 0 0 0 1px var(--qb-line);color:var(--qb-ink)}
.ptm-qb-demo__note{border-top:1px solid var(--qb-line);color:var(--qb-muted);font-size:.78rem;margin-top:16px;padding-top:12px}
.ptm-qb-rank-demo{display:grid;gap:8px}
.ptm-qb-rank-demo>div{align-items:center;background:var(--qb-card);border:1px solid var(--qb-line);border-radius:12px;display:grid;gap:8px;grid-template-columns:32px 1fr 32px 32px;padding:8px}
.ptm-qb-rank-demo>div>b{background:var(--qb-soft);border-radius:8px;display:grid;height:32px;place-items:center}
.ptm-qb-rank-demo>div>span{font-size:.88rem}
.ptm-qb-rank-demo button{background:transparent;border:1px solid var(--qb-line);border-radius:8px;color:var(--qb-ink);cursor:pointer;height:32px}
.ptm-qb-rank-demo em{color:var(--qb-muted);display:none;font-size:.78rem;font-style:normal;grid-column:2/5}
.ptm-qb-rank-demo.is-graded em{display:block}
.ptm-qb-page:not(.is-enhanced) .ptm-qb-demo-options [data-correct="1"]{background:#e5f8ef;border-color:#37a77c}
.ptm-qb-page:not(.is-enhanced) .ptm-qb-rank-demo em{display:block}
.ptm-qb-page.is-enhanced .ptm-qb-demo__feedback{display:none}
.ptm-qb-page.is-enhanced .ptm-qb-demo.is-answered .ptm-qb-demo__feedback{display:block}
.ptm-qb-worked.size-s .ptm-qb-demo{font-size:.88rem}
.ptm-qb-worked.size-l .ptm-qb-demo{font-size:1.2rem}
.ptm-qb-worked.is-dark{background:#0b162a}
.ptm-qb-worked.is-dark h4,.ptm-qb-worked.is-dark .ptm-qb-demo{color:#edf4ff}
.ptm-qb-worked.is-dark .ptm-qb-demo__question,.ptm-qb-worked.is-dark .ptm-qb-demo__feedback{background:#132743}
.ptm-qb-worked.is-dark .ptm-qb-demo-options button,.ptm-qb-worked.is-dark .ptm-qb-rank-demo>div{background:#1c3150;border-color:rgba(197,213,235,.22);color:#edf4ff}
.ptm-qb-worked.is-dark .ptm-qb-demo-options button b,.ptm-qb-worked.is-dark .ptm-qb-rank-demo>div>b{background:#243c60}
.ptm-qb-worked.is-dark .ptm-qb-rank-demo button{background:#243c60;border-color:rgba(197,213,235,.35);color:#edf4ff}
.ptm-qb-worked.is-dark .ptm-qb-demo-actions button:last-child{box-shadow:inset 0 0 0 1px rgba(197,213,235,.35);color:#edf4ff}
.ptm-qb-worked.is-dark .ptm-qb-demo__note,.ptm-qb-worked.is-dark .ptm-qb-worked__intro p{color:#b6c3d8}
.ptm-qb-worked.is-dark .ptm-qb-tabs,.ptm-qb-worked.is-dark .ptm-qb-prefs__group{background:#1c3150}
.ptm-qb-worked.is-dark .ptm-qb-tabs button,.ptm-qb-worked.is-dark .ptm-qb-prefs__group button{color:#edf4ff}

/* ---------- Revision pools ---------- */
.ptm-qb-pools{width:100%}
.ptm-qb-pools__tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.ptm-qb-pools__tabs button{align-items:center;background:var(--qb-card);border:0;border-radius:999px;box-shadow:inset 0 0 0 1px var(--qb-line);color:var(--qb-ink);cursor:pointer;display:inline-flex;font-size:.88rem;font-weight:700;gap:8px;min-height:44px;padding:0 24px;transition:background .3s var(--qb-ease),color .3s var(--qb-ease)}
.ptm-qb-pools__tabs button em{color:var(--qb-muted);font-size:.78rem;font-style:normal;font-weight:800}
.ptm-qb-pools__tabs button[aria-selected="true"]{background:var(--qb-blue);box-shadow:none;color:#fff}
.ptm-qb-pools__tabs button[aria-selected="true"] em{color:rgba(255,255,255,.82)}
.ptm-qb-pool__note{color:var(--qb-muted);font-size:.88rem;margin:0 0 12px}
.ptm-qb-pool__list{background:var(--qb-card);border-radius:12px;list-style:none;margin:0;padding:0}
.ptm-qb-pool__list li{border-bottom:1px solid var(--qb-line);padding:12px 16px}
.ptm-qb-pool__list li:last-child{border:0}
.ptm-qb-pool__list b{display:block;font-size:.88rem}
.ptm-qb-pool__list span{color:var(--qb-muted);display:block;font-size:.78rem;margin-top:4px}

/* ---------- FAQ, close, countdown ---------- */
.ptm-qb-faq{align-items:start;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:auto;max-width:1000px;text-align:left}
.ptm-qb-section.is-centred>.ptm-container>h2,.ptm-qb-section.is-centred>.ptm-container>.ptm-qb-intro{margin-left:auto;margin-right:auto;text-align:center}
.ptm-qb-faq details{background:var(--qb-card);border-radius:18px;box-shadow:var(--qb-shadow);padding:24px}
.ptm-qb-faq summary{cursor:pointer;font-weight:800}
.ptm-qb-faq details div{color:var(--qb-muted);font-size:.88rem;margin-top:12px}
.ptm-qb-faq details p{margin-bottom:0}
.ptm-qb-sample-note{color:var(--qb-muted);font-size:.78rem;margin:24px 0 0}
.ptm-qb-centre{text-align:center}
.ptm-qb-close{background:linear-gradient(135deg,rgba(0,168,150,.14),rgba(49,87,232,.1));padding:96px 0;text-align:center}
.ptm-qb-close p{color:var(--qb-muted);margin:0 auto;max-width:56ch}
.ptm-qb-close .ptm-qb-actions{justify-content:center}
.ptm-qb-countdown{padding:64px 0}
.ptm-qb-countdown__grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}
.ptm-qb-countdown article{background:var(--qb-card);border-radius:18px;box-shadow:var(--qb-shadow);padding:32px}
.ptm-qb-countdown article h3{margin-bottom:16px}
.ptm-qb-countdown article>div{display:flex;gap:12px}
.ptm-qb-countdown article span{background:var(--qb-soft);border-radius:12px;display:grid;font-size:.78rem;padding:12px;place-items:center}
.ptm-qb-countdown article b{font-size:1.2rem}
.ptm-qb-countdown>div>p{color:var(--qb-muted);font-size:.78rem;margin-top:16px}

/* ---------- Dark theme ---------- */
[data-ptm-theme="dark"] .ptm-qb-page,.ptm-dark .ptm-qb-page{
	--qb-bg:#0b162a;--qb-card:#132743;--qb-soft:#1c3150;--qb-ink:#edf4ff;--qb-muted:#b6c3d8;
	--qb-line:rgba(197,213,235,.20);--qb-heat-none:#1c3150;
	--qb-heat-vol-low:#28506a;--qb-heat-vol-med:#347da5;--qb-heat-vol-high:#55a6d0;
	--qb-heat-unscored:#2a3b52;--qb-heat-weak:#a94f4f;--qb-heat-amber:#a86d25;--qb-heat-yellow:#a69234;--qb-heat-strong:#327955;
	--qb-shadow:0 1px 2px rgba(0,0,0,.30),0 8px 24px -10px rgba(0,0,0,.50);
	--qb-shadow-lg:0 2px 4px rgba(0,0,0,.30),0 24px 56px -20px rgba(0,0,0,.60);
}
[data-ptm-theme="dark"] .ptm-qb-section.is-alt,.ptm-dark .ptm-qb-section.is-alt{background:rgba(255,255,255,.025)}
[data-ptm-theme="dark"] .ptm-qb-mini-tile.is-overview,.ptm-dark .ptm-qb-mini-tile.is-overview{background:#172e48}
[data-ptm-theme="dark"] .ptm-qb-mini-tile.is-remaining,.ptm-dark .ptm-qb-mini-tile.is-remaining{background:#15372f}
[data-ptm-theme="dark"] .ptm-qb-mini-tile.is-streak,[data-ptm-theme="dark"] .ptm-qb-type,.ptm-dark .ptm-qb-mini-tile.is-streak,.ptm-dark .ptm-qb-type{background:#3b3015}
[data-ptm-theme="dark"] .ptm-qb-mini-tile.is-resume,.ptm-dark .ptm-qb-mini-tile.is-resume{background:#29213e}
[data-ptm-theme="dark"] .ptm-qb-rank-matrix>i,.ptm-dark .ptm-qb-rank-matrix>i,
[data-ptm-theme="dark"] .ptm-qb-select-matrix b,.ptm-dark .ptm-qb-select-matrix b{color:#0b1f3a}

/* ---------- Motion ---------- */
.ptm-qb-page.is-enhanced [data-qb-reveal],.ptm-qb-page.is-enhanced [data-qb-reveal-group]>*{opacity:0;transform:translateY(16px)}
.ptm-qb-page.is-enhanced .is-revealed{opacity:1;transform:none;transition:opacity .5s var(--qb-ease),transform .5s var(--qb-ease)}
.ptm-qb-page.is-enhanced .ptm-heat-grid i{opacity:0}
.ptm-qb-page.is-enhanced .is-playing .ptm-heat-grid i{opacity:1}

/* ---------- Responsive ---------- */
@media(max-width:1080px){
	.ptm-qb-page .ptm-heat-grid{grid-template-columns:repeat(27,minmax(0,1fr));grid-template-rows:repeat(7,10px)}
	.ptm-qb-page .ptm-heat-grid i:nth-child(-n+176){display:none}
}
@media(max-width:1200px){
	.ptm-qb-stats,.ptm-qb-grid.is-three,.ptm-qb-features{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:980px){
	.ptm-qb-section,.ptm-qb-hero{padding:64px 0}
	.ptm-qb-hero__grid{grid-template-columns:minmax(0,1fr)}
	.ptm-qb-explore{padding:24px}
	.ptm-qb-carousel.is-explore{grid-template-columns:minmax(0,1fr)}
	.ptm-qb-carousel.is-explore .ptm-qb-carousel__stage,
	.ptm-qb-carousel.is-explore .ptm-qb-carousel__controls,
	.ptm-qb-carousel.is-explore .ptm-qb-carousel__tabs{grid-column:1;grid-row:auto}
	.ptm-qb-carousel.is-explore .ptm-qb-carousel__tabs{grid-auto-flow:column;grid-auto-columns:max-content;min-width:0;overflow-x:auto}
	.ptm-qb-carousel.is-explore .ptm-qb-carousel__stage{height:460px}
	.ptm-qb-strip{gap:24px;grid-template-columns:minmax(0,1fr)}
	.ptm-qb-stats,.ptm-qb-grid.is-three,.ptm-qb-features{grid-template-columns:repeat(2,minmax(0,1fr))}
	.ptm-qb-path{grid-template-columns:repeat(2,minmax(0,1fr))}
	.ptm-qb-path li:nth-child(2):after{display:none}
	.ptm-qb-scoring__cols{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:720px){
	.ptm-qb-grid.is-two,.ptm-qb-demo,.ptm-qb-countdown__grid,.ptm-qb-faq{grid-template-columns:minmax(0,1fr)}
	.ptm-qb-page .ptm-heat-grid{grid-template-columns:repeat(14,minmax(0,1fr))}
	.ptm-qb-page .ptm-heat-grid i:nth-child(-n+267){display:none}
}
@media(max-width:640px){
	.ptm-qb-stats,.ptm-qb-grid.is-three,.ptm-qb-features{grid-template-columns:minmax(0,1fr)}
	/* Below this width a fixed proportion buys nothing; let the mock set its own height. */
	.ptm-qb-media.is-4x3,.ptm-qb-media.is-16x10,.ptm-qb-media.is-1x1{aspect-ratio:auto;min-height:0}
}
@media(max-width:520px){
	.ptm-qb-page .ptm-container{width:min(100% - 32px,1200px)}
	.ptm-qb-section,.ptm-qb-hero,.ptm-qb-close{padding:48px 0}
	.ptm-qb-stats,.ptm-qb-grid.is-three,.ptm-qb-features{grid-template-columns:minmax(0,1fr)}
	.ptm-qb-stats article,.ptm-qb-worked,.ptm-qb-countdown article,.ptm-qb-strip{padding:24px}
	.ptm-qb-path{grid-template-columns:minmax(0,1fr);margin-left:24px}
	.ptm-qb-path li{border-left:1px solid var(--qb-line);padding:0 0 24px 32px}
	.ptm-qb-path li:before{left:-24px;position:absolute;top:0}
	.ptm-qb-path li:after{display:none}
	.ptm-qb-product-card{padding:16px}
	.ptm-qb-explore{padding:16px}
	.ptm-qb-carousel__stage{padding:16px}
	.ptm-qb-carousel.is-hero .ptm-qb-carousel__stage{height:400px}
	.ptm-qb-carousel.is-explore .ptm-qb-carousel__stage{height:520px}
	.ptm-qb-carousel__tabs{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start}
	.ptm-qb-carousel__tabs button{flex:0 0 auto}
	.ptm-qb-section-cta{flex-direction:column;justify-content:stretch}
	.ptm-qb-media{padding:12px}
	.ptm-qb-btn{width:100%}
	.ptm-qb-pools__tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory}
	.ptm-qb-pools__tabs button{flex:0 0 auto;scroll-snap-align:start}
	.ptm-qb-page .ptm-heat-grid{grid-template-columns:repeat(9,minmax(0,1fr));grid-template-rows:repeat(7,12px)}
	.ptm-qb-page .ptm-heat-grid i:nth-child(-n+302){display:none}
	.ptm-qb-rank-matrix>*{padding:8px 0}
	.ptm-qb-rank-matrix .is-corner{padding:4px}
	.ptm-qb-prefs,.ptm-qb-prefs__group{width:100%}
	.ptm-qb-prefs__group{justify-content:center}
	.ptm-qb-tabs{overflow-x:auto}
	.ptm-qb-tabs button{flex:0 0 auto}
}
@media(prefers-reduced-motion:reduce){
	.ptm-qb-page *{animation:none!important;transition:none!important}
	.ptm-qb-page.is-enhanced [data-qb-reveal],.ptm-qb-page.is-enhanced [data-qb-reveal-group]>*{opacity:1;transform:none}
	.ptm-qb-page.is-enhanced .ptm-heat-grid i{opacity:1}
	.ptm-qb-page.is-enhanced [data-step]{opacity:1;transform:none}
	.ptm-qb-ring__fill{stroke-dashoffset:var(--qb-ring-to,0)}
}
@media print{
	.ptm-qb-page.is-enhanced [data-qb-reveal],.ptm-qb-page.is-enhanced [data-qb-reveal-group]>*{opacity:1!important;transform:none!important}
	.ptm-qb-page.is-enhanced .ptm-heat-grid i{opacity:1!important}
}
