/* PureTweaks content pages (v7): Reviews, Partners, PC Check, Free Tweaks, Contact, Legal, Affiliate. */

/* One page opening for every content page */
html body[data-shared-storefront]:not(#_) :is(.partner-eyebrow,.pc-eyebrow,.contact-eyebrow,.ft-kicker,.reviews-eyebrow,.hero-badge-container,.pc-hero-meta,.aff-eyebrow,.legal-eyebrow) { display:none!important; }
html body[data-shared-storefront]:not(#_) :is(.partner-intro,.pc-check-hero,.contact-intro,.ft-hero,.legal-header) { min-height:0!important; margin:0!important; padding:calc(var(--ui-header-h) + clamp(24px,4vw,48px)) 0 clamp(16px,2.4vw,28px)!important; border:0!important; background:none!important; box-shadow:none!important; text-align:left!important; }
html body[data-shared-storefront]:not(#_) :is(.partner-intro,.pc-check-hero,.contact-intro,.ft-hero,.legal-header)::before,
html body[data-shared-storefront]:not(#_) :is(.partner-intro,.pc-check-hero,.contact-intro,.ft-hero,.legal-header)::after { display:none!important; }
html body[data-shared-storefront]:not(#_) :is(.partner-intro,.pc-check-hero,.contact-intro,.ft-hero,.legal-header) h1,
html body.reviews-page:not(#_) .hero-title { margin:0!important; color:var(--ui-text)!important; font:600 clamp(2.25rem,1.5rem + 3.2vw,4rem)/1.04 var(--ui-font-display)!important; letter-spacing:-.035em!important; text-align:left!important; text-wrap:balance; }
html body[data-shared-storefront]:not(#_) :is(.partner-lead,.pc-check-hero p,.contact-intro p,.ft-hero p,.legal-header p),
html body.reviews-page:not(#_) .hero-desc { margin:12px 0 0!important; max-width:62ch!important; color:var(--ui-soft)!important; font:400 var(--ui-fs-lead)/1.6 var(--ui-font-body)!important; text-align:left!important; }

/* Reviews: compact opening, moving row, then every full review */
html body.reviews-page:not(#_) .hero { display:block!important; min-height:0!important; padding:calc(var(--ui-header-h) + clamp(24px,4vw,48px)) max(var(--ui-edge),calc((100% - var(--ui-max)) / 2)) clamp(20px,3vw,32px)!important; background:none!important; }
html body.reviews-page:not(#_) .hero::before,html body.reviews-page:not(#_) .hero::after { display:none!important; }
html body.reviews-page:not(#_) .hero .hero-content { display:grid!important; grid-template-columns:minmax(0,7fr) minmax(0,5fr)!important; gap:8px clamp(24px,5vw,72px)!important; width:100%!important; max-width:none!important; padding:0!important; margin:0!important; align-items:end; }
html body.reviews-page:not(#_) .hero .hero-content>* { grid-column:1; grid-row:auto!important; order:0!important; }
html body.reviews-page:not(#_) .hero .hero-title .gradient-text { background:none!important; color:inherit!important; -webkit-text-fill-color:currentColor!important; }
html body.reviews-page:not(#_) .hero .reviews-hero-card { grid-column:2!important; grid-row:1 / span 2!important; display:grid; grid-template-columns:minmax(0,1fr); gap:12px; margin:0!important; padding:clamp(16px,2vw,24px)!important; border:1px solid var(--ui-line)!important; border-radius:var(--ui-r-card)!important; background:var(--ui-glass)!important; backdrop-filter:var(--ui-blur); box-shadow:none!important; transform:none!important; }
html body.reviews-page:not(#_) .reviews-hero-card::before,html body.reviews-page:not(#_) .reviews-hero-card::after { display:none!important; }
html body.reviews-page:not(#_) .reviews-score-block { display:flex; align-items:center; gap:16px; }
html body.reviews-page:not(#_) .big-rating-number { color:var(--ui-gold)!important; font:600 3rem/1 var(--ui-font-display)!important; letter-spacing:-.03em!important; text-shadow:none!important; -webkit-text-fill-color:currentColor!important; background:none!important; }
html body.reviews-page:not(#_) .reviews-score-scale { color:var(--ui-soft); font-size:var(--ui-fs-body); }
html body.reviews-page:not(#_) .score-stars { color:var(--ui-gold); }
html body.reviews-page:not(#_) .score-stars svg { width:16px; height:16px; filter:none; }
html body.reviews-page:not(#_) .score-text { color:var(--ui-text)!important; font-size:var(--ui-fs-small)!important; }
html body.reviews-page:not(#_) .score-sub-meta { color:var(--ui-soft)!important; font-size:var(--ui-fs-label)!important; }
html body.reviews-page:not(#_) .live-pulse-dot { display:none; }
html body.reviews-page:not(#_) .reviews-hero-action .btn { width:100%; }

html body.reviews-page:not(#_) .reviews-marquee { margin:0; padding:clamp(8px,1.6vw,20px) 0 clamp(20px,3vw,32px); overflow:hidden; }
html body.reviews-page:not(#_) .reviews-marquee[hidden] { display:none; }
html body.reviews-page:not(#_) .reviews-marquee-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 auto 10px; padding-inline:max(var(--ui-edge),calc((100% - var(--ui-max)) / 2)); }
html body.reviews-page:not(#_) .reviews-marquee-head h2 { margin:0; color:var(--ui-text); font:600 clamp(1.375rem,1.2rem + .8vw,1.75rem)/1.2 var(--ui-font-display); letter-spacing:-.02em; }
html body.reviews-page:not(#_) .reviews-marquee-toggle { min-width:72px; min-height:44px; padding:8px 14px; border:1px solid var(--ui-line-strong); border-radius:var(--ui-r-control); background:none; color:var(--ui-text); font:500 var(--ui-fs-small)/1.2 var(--ui-font-body); cursor:pointer; }
html body.reviews-page:not(#_) .reviews-marquee-toggle:hover { background:rgba(255,255,255,.07); }
html body.reviews-page:not(#_) .reviews-marquee-viewport { overflow:hidden; mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); padding-block:2px; }
html body.reviews-page:not(#_) .reviews-marquee-track { display:flex; width:max-content; animation:ui-reviews-right var(--marquee-duration,60s) linear infinite; will-change:transform; }
html body.reviews-page:not(#_) .reviews-marquee-group { display:flex; flex:none; gap:14px; padding-right:14px; }
html body.reviews-page:not(#_) .reviews-marquee-card { display:flex; flex-direction:column; gap:10px; flex:none; width:min(350px,78vw); height:188px; padding:18px; box-sizing:border-box; border:1px solid var(--ui-line); border-radius:var(--ui-r-card); background:var(--ui-glass); color:var(--ui-text); text-decoration:none; transition:border-color .15s ease; }
html body.reviews-page:not(#_) .reviews-marquee-card:hover { border-color:var(--ui-line-strong); }
html body.reviews-page:not(#_) .reviews-marquee-stars { display:inline-flex; gap:2px; color:var(--ui-gold); }
html body.seasonal-mode.reviews-page:not(#_) .reviews-marquee-stars { color:var(--ui-accent); }
html body.reviews-page:not(#_) .reviews-marquee-stars svg { width:14px; height:14px; }
html body.reviews-page:not(#_) .reviews-marquee-text { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; color:var(--ui-text); font:400 var(--ui-fs-body)/1.5 var(--ui-font-body); overflow-wrap:anywhere; }
html body.reviews-page:not(#_) .reviews-marquee-author { display:flex; align-items:center; gap:10px; margin-top:auto; min-width:0; }
html body.reviews-page:not(#_) .reviews-marquee-avatar { display:inline-flex; align-items:center; justify-content:center; flex:none; width:36px; height:36px; overflow:hidden; border-radius:50%; background:var(--ui-raised); color:var(--ui-text); font:600 var(--ui-fs-label)/1 var(--ui-font-body); }
html body.reviews-page:not(#_) .reviews-marquee-avatar img { width:100%; height:100%; object-fit:cover; }
html body.reviews-page:not(#_) .reviews-marquee-who { display:grid; min-width:0; gap:1px; }
html body.reviews-page:not(#_) .reviews-marquee-author strong { color:var(--ui-text); font:600 var(--ui-fs-small)/1.3 var(--ui-font-body); }
html body.reviews-page:not(#_) .reviews-marquee-who>span { overflow:hidden; color:var(--ui-soft); font-size:var(--ui-fs-label); white-space:nowrap; text-overflow:ellipsis; }
html body.reviews-page:not(#_) .reviews-marquee-viewport:is(:hover,:focus-within) .reviews-marquee-track,
html body.reviews-page:not(#_) .reviews-marquee.is-paused .reviews-marquee-track { animation-play-state:paused; }
@keyframes ui-reviews-right { from { transform:translate3d(-50%,0,0); } to { transform:translate3d(0,0,0); } }
/* Without motion the row stays readable and scrolls by hand. */
html body.pure-motion-off.reviews-page:not(#_) .reviews-marquee-track { animation:none; }
html body.pure-motion-off.reviews-page:not(#_) .reviews-marquee-viewport { overflow-x:auto; mask-image:none; -webkit-mask-image:none; }
html body.pure-motion-off.reviews-page:not(#_) .reviews-marquee-group[aria-hidden="true"],
html body.pure-motion-off.reviews-page:not(#_) .reviews-marquee-toggle { display:none; }
@media (prefers-reduced-motion:reduce) {
  html body.reviews-page:not(#_) .reviews-marquee-track { animation:none; }
  html body.reviews-page:not(#_) .reviews-marquee-viewport { overflow-x:auto; mask-image:none; -webkit-mask-image:none; }
  html body.reviews-page:not(#_) .reviews-marquee-group[aria-hidden="true"],
  html body.reviews-page:not(#_) .reviews-marquee-toggle { display:none; }
}

html body.reviews-page:not(#_) .reviews-showcase { padding:clamp(8px,2vw,24px) 0 clamp(24px,4vw,48px)!important; background:none!important; }
html body.reviews-page:not(#_) .reviews-showcase .container { width:100%!important; max-width:calc(var(--ui-max) + 2 * var(--ui-edge))!important; padding-inline:var(--ui-edge)!important; }
html body.reviews-page:not(#_) .reviews-feed-heading { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:flex-end; gap:6px 24px; margin:0 0 12px!important; }
html body.reviews-page:not(#_) .reviews-feed-heading h2 { margin:0!important; color:var(--ui-text)!important; font:600 var(--ui-fs-h2)/1.06 var(--ui-font-display)!important; letter-spacing:-.03em!important; }
html body.reviews-page:not(#_) .reviews-feed-heading p { margin:0!important; color:var(--ui-soft)!important; font-size:var(--ui-fs-body)!important; }
html body.reviews-page:not(#_) .reviews-filter-bar { margin:0 0 14px!important; padding:0!important; border:0!important; background:none!important; box-shadow:none!important; }
html body.reviews-page:not(#_) .filter-pills { display:flex; flex-wrap:wrap; gap:6px; }
html body.reviews-page:not(#_) .filter-pill { min-height:44px; padding:8px 12px!important; border:1px solid var(--ui-line)!important; border-radius:var(--ui-r-control)!important; background:none!important; box-shadow:none!important; color:var(--ui-soft)!important; font:500 var(--ui-fs-small)/1.2 var(--ui-font-body)!important; }
html body.reviews-page:not(#_) .filter-pill.active { border-color:var(--ui-text)!important; color:var(--ui-text)!important; }
html body.reviews-page:not(#_) .pill-count { color:inherit!important; background:none!important; font:inherit!important; }
html body.reviews-page:not(#_) .reviews-grid { gap:clamp(10px,1.2vw,16px)!important; }
html body.reviews-page:not(#_) .review-card { padding:clamp(16px,1.8vw,22px)!important; border:1px solid var(--ui-line)!important; border-radius:var(--ui-r-card)!important; background:var(--ui-glass)!important; backdrop-filter:var(--ui-blur); box-shadow:none!important; transform:none!important; }
html body.reviews-page:not(#_) .review-card::before,html body.reviews-page:not(#_) .review-card::after { display:none!important; }
html body.reviews-page:not(#_) .review-text { color:var(--ui-text)!important; font:400 var(--ui-fs-body)/1.6 var(--ui-font-body)!important; }
html body.reviews-page:not(#_) .reviewer-name-text { color:var(--ui-text)!important; font:600 var(--ui-fs-small)/1.3 var(--ui-font-body)!important; }
html body.reviews-page:not(#_) .reviewer-tagline { color:var(--ui-soft)!important; font-size:var(--ui-fs-label)!important; }
html body.reviews-page:not(#_) .review-stars-row { color:var(--ui-gold)!important; }
html body.reviews-page:not(#_) .review-stars-row svg { width:15px; height:15px; filter:none!important; }
html body.reviews-page:not(#_) .review-rating-value { color:var(--ui-soft)!important; font-size:var(--ui-fs-label)!important; }
html body.reviews-page:not(#_) :is(.review-package-badge,.review-bench-pill,.review-role-badge) { padding:2px 8px!important; border:1px solid var(--ui-line)!important; border-radius:4px!important; background:none!important; box-shadow:none!important; color:var(--ui-soft)!important; font:500 var(--ui-fs-label)/1.4 var(--ui-font-body)!important; letter-spacing:0!important; text-transform:none!important; }

/* Partners: applying is the main thing while the list is empty */
html body:not(#_) .partner-page { width:100%; max-width:calc(var(--ui-max) + 2 * var(--ui-edge)); margin:auto; padding-inline:var(--ui-edge); }
html body:not(#_) .partner-actions { margin-top:16px; }
html body:not(#_) :is(.partner-button,.partner-button.primary) { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:12px 20px; border-radius:var(--ui-r-control); font:600 .9375rem/1.25 var(--ui-font-body); box-shadow:none; transform:none; }
html body:not(#_) .partner-button.primary { border:1px solid var(--ui-action); background:var(--ui-action); color:var(--ui-on-action); }
html body:not(#_) .partner-directory { padding:clamp(20px,3vw,32px) 0; border:0; background:none; }
html body:not(#_) .partner-directory[hidden] { display:none; }
html body:not(#_) .partner-section-heading h2,html body:not(#_) .partner-apply h2 { margin:0; color:var(--ui-text); font:600 var(--ui-fs-h2)/1.06 var(--ui-font-display); letter-spacing:-.03em; }
html body:not(#_) .partner-apply { display:grid; grid-template-columns:minmax(0,6fr) minmax(0,6fr); gap:clamp(24px,5vw,72px); padding:clamp(12px,2vw,24px) 0 clamp(24px,4vw,48px); border:0; background:none; }
html body:not(#_) .partner-apply-copy p,html body:not(#_) .partner-apply-copy li { color:var(--ui-soft); font-size:var(--ui-fs-body); line-height:1.6; }
html body:not(#_) .partner-apply-card { padding:clamp(18px,2vw,26px); border:1px solid var(--ui-line-strong); border-radius:var(--ui-r-card); background:var(--ui-glass); backdrop-filter:var(--ui-blur); box-shadow:none; }

/* PC Check: the form starts in the first screen */
html body.pc-check-page:not(#_) .pc-check-hero { padding-bottom:12px!important; }
html body.pc-check-page:not(#_) :is(.pc-check-hero-inner,.pc-check-layout) { width:100%; max-width:calc(var(--ui-max) + 2 * var(--ui-edge)); margin:auto; padding-inline:var(--ui-edge); }
html body.pc-check-page:not(#_) .pc-wizard { padding:clamp(16px,2vw,28px); border:1px solid var(--ui-line); border-radius:var(--ui-r-card); background:var(--ui-glass); backdrop-filter:var(--ui-blur); box-shadow:none; }
html body.pc-check-page:not(#_) .pc-overline { display:none; }
html body.pc-check-page:not(#_) .pc-wizard-heading h2 { color:var(--ui-text); font:600 var(--ui-fs-h3)/1.3 var(--ui-font-display); letter-spacing:-.015em; }
html body.pc-check-page:not(#_) :is(.pc-duration,.pc-progress-meta,.pc-required-note,.pc-side-note,.pc-step-intro) { color:var(--ui-soft); font-size:var(--ui-fs-small); }
html body.pc-check-page:not(#_) :is(.pc-choice-card,.pc-priority-card,.pc-check-card) { border:1px solid var(--ui-line); border-radius:var(--ui-r-control); background:rgba(255,255,255,.02); box-shadow:none; transform:none; }
html body.pc-check-page:not(#_) :is(.pc-button,.pc-button-primary,.pc-button-secondary,.pc-button-quiet) { min-height:48px; border-radius:var(--ui-r-control); font:600 .9375rem/1.25 var(--ui-font-body); box-shadow:none; transform:none; }
html body.pc-check-page:not(#_) .pc-button-primary { border:1px solid var(--ui-action); background:var(--ui-action); color:var(--ui-on-action); }
html body.pc-check-page:not(#_) :is(input,select,textarea) { min-height:44px; border:1px solid var(--ui-line-strong); border-radius:var(--ui-r-control); background:rgba(0,0,0,.35); color:var(--ui-text); font-size:var(--ui-fs-body); }

/* Free Tweaks */
html body.ft-page:not(#_) :is(#ftMain,.ft-main) { width:100%; max-width:calc(var(--ui-max) + 2 * var(--ui-edge)); margin:auto; padding-inline:var(--ui-edge); background:none; }
html body.ft-page:not(#_) .ft-section-title h2 { color:var(--ui-text); font:600 var(--ui-fs-h2)/1.06 var(--ui-font-display); letter-spacing:-.03em; }
html body.ft-page:not(#_) :is(.ft-card,.ft-guide-card,.ft-download,.ft-step) { border:1px solid var(--ui-line)!important; border-radius:var(--ui-r-card)!important; background:var(--ui-glass)!important; backdrop-filter:var(--ui-blur); box-shadow:none!important; transform:none!important; }
html body.ft-page:not(#_) .ft-card::before,html body.ft-page:not(#_) .ft-card::after { display:none!important; }
html body.ft-page:not(#_) .ft-button { min-height:48px; border-radius:var(--ui-r-control)!important; font:600 .9375rem/1.25 var(--ui-font-body); box-shadow:none; transform:none; }

/* Contact */
html body:not(#_) .contact-main { width:100%; max-width:calc(var(--ui-max) + 2 * var(--ui-edge)); margin:auto; padding:0 var(--ui-edge) clamp(24px,4vw,48px); background:none; }
html body:not(#_) .contact-ticket-categories { gap:0; border-top:1px solid var(--ui-line); }
html body:not(#_) .contact-ticket-link { min-height:64px; padding:14px 0; border:0; border-bottom:1px solid var(--ui-line); border-radius:0; background:none; box-shadow:none; transform:none; }
html body:not(#_) .contact-ticket-link::before,html body:not(#_) .contact-ticket-link::after { display:none; }
html body:not(#_) .contact-ticket-copy strong,html body:not(#_) .contact-ticket-copy h2 { color:var(--ui-text); font:600 var(--ui-fs-h3)/1.3 var(--ui-font-display); }
html body:not(#_) .contact-ticket-copy :is(span,p) { color:var(--ui-soft); font-size:var(--ui-fs-small); }
html body:not(#_) .contact-card { padding:clamp(18px,2vw,26px); border:1px solid var(--ui-line)!important; border-radius:var(--ui-r-card)!important; background:var(--ui-glass)!important; backdrop-filter:var(--ui-blur); box-shadow:none!important; }

/* Legal and affiliate text pages read as documents */
html body.legal-page:not(#_) .legal-section-card,html body.aff-public-page:not(#_) .aff-legal-content section { border:0!important; border-bottom:1px solid var(--ui-line)!important; border-radius:0!important; background:none!important; box-shadow:none!important; backdrop-filter:none!important; padding:clamp(16px,2vw,24px) 0!important; }
html body.legal-page:not(#_) .legal-section-card :is(p,li),html body.aff-public-page:not(#_) .aff-legal-content :is(p,li) { color:var(--ui-soft)!important; font-size:var(--ui-fs-body)!important; line-height:1.65!important; max-width:72ch; }
html body.legal-page:not(#_) .legal-section-card :is(h2,h3),html body.aff-public-page:not(#_) .aff-legal-content :is(h2,h3) { color:var(--ui-text)!important; font-family:var(--ui-font-display)!important; letter-spacing:-.015em!important; }

@media (max-width:900px) {
  html body.reviews-page:not(#_) .hero .hero-content { grid-template-columns:minmax(0,1fr)!important; }
  html body.reviews-page:not(#_) .hero .reviews-hero-card { grid-column:1!important; grid-row:auto!important; margin-top:12px!important; }
  html body:not(#_) .partner-apply { grid-template-columns:minmax(0,1fr); }
}

/* Page-specific spacing */
html body:not(#_) .contact-main { padding-top:calc(var(--ui-header-h) + clamp(24px,4vw,48px)); }
html body:not(#_) .contact-intro { padding-top:0!important; }
html body:not(#_) .contact-main>* { margin-top:0; }
html body:not(#_) .partner-page { padding-top:0; }
html body:not(#_) .partner-intro { padding-top:calc(var(--ui-header-h) + clamp(24px,4vw,48px))!important; }
html body.pc-check-page:not(#_) .pc-check-hero h1 * { color:inherit!important; background:none!important; -webkit-text-fill-color:currentColor!important; }
html body.ft-page:not(#_) .ft-card-content { padding-top:12px!important; }
html body.ft-page:not(#_) .ft-card-meta { margin-top:0!important; position:static!important; transform:none!important; }
html body.ft-page:not(#_) .ft-section-title { margin-top:clamp(12px,2vw,24px)!important; }
html body.legal-page:not(#_) :is(.legal-main-section,.legal-main) { padding-top:0!important; }
html body.legal-page:not(#_) .legal-header { padding-top:calc(var(--ui-header-h) + clamp(24px,4vw,48px))!important; }
html body.legal-page:not(#_) .legal-tab-btn { min-height:44px; border-radius:var(--ui-r-control)!important; color:var(--ui-soft)!important; transform:none!important; }
html body.legal-page:not(#_) .legal-tab-btn svg { color:var(--ui-soft)!important; }
html body.legal-page:not(#_) .legal-tab-btn:hover { background:var(--ui-soft-fill)!important; border-color:var(--ui-line)!important; color:var(--ui-text)!important; }
html body.legal-page:not(#_) .legal-tab-btn.active { background:var(--ui-soft-fill)!important; border-color:var(--ui-accent)!important; box-shadow:none!important; color:var(--ui-text)!important; }
html body.legal-page:not(#_) .legal-tab-btn.active svg { color:var(--ui-accent)!important; }
html body.legal-page:not(#_) :is(.legal-header,.legal-layout,.legal-container) { max-width:calc(var(--ui-max) + 2 * var(--ui-edge))!important; margin-inline:auto!important; }