/* Product Comparison Hub — page layer on top of site.css */
/* ---- Hub building blocks (hub-*): hero extras, section heads, card variants, promos, newsletter card ---- */
.hub-hero .hero__inner { min-height: clamp(360px, 31vw, 470px); }
.hub-hero .hero__copy { max-width: 590px; }
.hub-hero .breadcrumb { margin-bottom: 1rem; }
.hub-hero .hero__title { font-size: clamp(2.3rem, 1.3rem + 3.6vw, 4rem); line-height: 1.05; }
.hub-hero .hero__title .accent--inline { display: inline; }
.hub-script { max-width: 17rem; text-align: center; line-height: 1.05; padding: 2.25rem 1.25rem; border-radius: 50%; background: radial-gradient(closest-side, rgba(255, 255, 255, .9) 70%, rgba(255, 255, 255, 0) 100%); }
.hub-hero.hero--bleed .hero__bg::after { background: linear-gradient(90deg, rgba(250, 252, 249, .97) 0%, rgba(250, 252, 249, .92) 40%, rgba(250, 252, 249, .4) 56%, rgba(250, 252, 249, 0) 70%); }
@media (max-width: 899px) { .hub-hero.hero--bleed .hero__bg::after { background: linear-gradient(180deg, rgba(250, 252, 249, 0) 55%, rgba(250, 252, 249, 1) 100%); } }
.hub-feats { list-style: none; padding: 0; margin: 1.6rem 0 0; display: flex; flex-wrap: wrap; gap: .9rem 1.5rem; }
.hub-feats li { display: flex; align-items: center; gap: .6rem; font-size: .9rem; font-weight: 500; color: var(--ink); line-height: 1.3; max-width: 10.5rem; }
.hub-feats .icon { width: 34px; height: 34px; color: var(--green-700); }

.hub-h2 { margin: 0; }
.hub-h2--line { display: flex; align-items: center; gap: 1rem; }
.hub-h2--line::after { content: ""; flex: none; width: 46px; height: 3px; border-radius: 2px; background: var(--green-600); }
.hub-h2--under::after { content: ""; display: block; width: 40px; height: 3px; border-radius: 2px; background: var(--green-600); margin-top: .55rem; }
.hub-head-icon { display: flex; align-items: center; gap: .9rem; }
.hub-head-icon__icon { width: 44px; height: 44px; color: var(--green-700); }
.hub-list { list-style: none; padding: 0; margin: 0; }

/* Category card: picture on top, centred copy, soft "Explore" chip */
.hub-cat .card__media { aspect-ratio: 4 / 3; }
.hub-cat .card__body { align-items: center; text-align: center; gap: .35rem; }
.hub-cat .card__title { font-size: 1rem; }
.hub-cat .card__text { font-size: .82rem; }
.hub-chip-link { display: inline-flex; align-items: center; gap: .35rem; margin-top: auto; padding: .4rem 1.1rem; border-radius: var(--radius-sm); background: var(--green-100); color: var(--green-800); font-weight: 600; font-size: .85rem; position: relative; z-index: 2; }
.hub-chip-link .icon { width: 1em; height: 1em; }
.hub-cat .hub-chip-link { margin-top: .5rem; }

/* Product cards */
.hub-products .product-card .card__media img { padding: .75rem; }
.hub-products .product-card .card__media .badge { border-radius: var(--radius-pill); text-transform: none; letter-spacing: 0; font-size: .74rem; }
.hub-products--center .card__body { align-items: center; text-align: center; }
.hub-products .card__text { font-size: .85rem; }

/* Comparison + buying-guide promo panels */
.hub-promos { display: grid; gap: 1.25rem; }
@media (min-width: 980px) { .hub-promos { grid-template-columns: 1fr 1fr; } }
.hub-promo { display: flex; flex-direction: column; gap: 1rem; padding: clamp(1rem, .8rem + 1vw, 1.35rem); border-radius: var(--radius-lg); background: #eef6fb; border: 1px solid #dbe9f3; }
.hub-promo__head { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .2rem .85rem; align-items: start; }
.hub-promo__head > .icon { width: 40px; height: 40px; color: #1f6fb8; grid-column: 1; grid-row: 1 / span 3; }
.hub-promo__head h2 { grid-column: 2; font-size: clamp(1.15rem, 1rem + .6vw, 1.4rem); margin: 0; }
.hub-promo__head p { grid-column: 2; margin: 0; font-size: .85rem; color: var(--muted); }
.hub-promo__head .link-arrow { grid-column: 2; grid-row: 3; font-size: .82rem; color: #1f6fb8; }
@media (min-width: 560px) {
  .hub-promo__head { grid-template-columns: auto minmax(0, 1fr) auto; }
  .hub-promo__head > .icon { grid-row: 1 / span 2; }
  .hub-promo__head .link-arrow { grid-column: 3; grid-row: 1; padding-top: .3rem; }
  .hub-promo__head p { grid-column: 2 / span 2; grid-row: 2; }
}
.hub-promo__body { position: relative; display: grid; gap: 1rem; padding: .85rem; background: #fff; border-radius: var(--radius); box-shadow: var(--shadow-xs); }
@media (min-width: 560px) { .hub-promo__body { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); align-items: center; } }
.hub-promo__media { border-radius: var(--radius-sm); overflow: hidden; min-height: 200px; background: var(--mint-50); }
.hub-promo__media img { width: 100%; height: 100%; object-fit: cover; }
.hub-kicker { margin: 0; font-size: .76rem; font-weight: 600; color: var(--green-700); }
.hub-promo__body h3 { font-size: 1.15rem; margin: .1rem 0 .6rem; }
.hub-promo__body h3 a { color: inherit; text-decoration: none; }
.hub-promo__body .check-list { gap: .3rem; margin-bottom: .9rem; }
.hub-promo__body .check-list li { font-size: .86rem; }

/* Latest articles + newsletter card */
.hub-split { display: grid; gap: 1.5rem; }
@media (min-width: 1000px) { .hub-split { grid-template-columns: minmax(0, 1.9fr) minmax(0, 1fr); align-items: start; } }
.hub-articles { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fill, minmax(min(100%, 160px), 1fr)); }
.hub-article .card__media { aspect-ratio: 16 / 10; }
.hub-article .card__body { padding: .75rem .85rem .9rem; gap: .35rem; }
.hub-article .card__title { font-size: .9rem; }
.hub-meta { flex-direction: column; gap: .15rem; }
.hub-meta .icon { width: 1em; height: 1em; }
.card__meta .icon { width: 1em; height: 1em; }

.hub-news { position: relative; overflow: hidden; display: grid; gap: 1rem; padding: clamp(1.1rem, .9rem + 1vw, 1.5rem); border-radius: var(--radius-lg); background: linear-gradient(135deg, var(--mint-50), #fff 70%); border: 1px solid var(--mint-100); }
.hub-news__head { display: flex; gap: .85rem; align-items: flex-start; position: relative; z-index: 1; }
.hub-news__icon { flex: none; width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; background: var(--green-700); color: #fff; }
.hub-news__icon .icon { width: 24px; height: 24px; }
.hub-news h2 { font-size: clamp(1.1rem, 1rem + .5vw, 1.3rem); margin: 0 0 .35rem; padding-right: 2.5rem; }
.hub-news p { margin: 0; font-size: .86rem; color: var(--muted); }
.hub-news .inline-form { position: relative; z-index: 1; }
.hub-news__leaf { position: absolute; right: -24px; top: -12px; width: 96px; opacity: .8; transform: scaleX(-1); pointer-events: none; }
.hub-checks { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: .4rem 1.1rem; font-size: .82rem; color: var(--ink); }
.hub-checks li { display: inline-flex; align-items: center; gap: .35rem; }
.hub-checks .icon { color: var(--green-600); width: 1.05em; height: 1.05em; }

/* Small circle arrow and row variants */
.hub-circle { flex: none; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: var(--green-100); color: var(--green-700); }
.hub-circle .icon { width: 15px; height: 15px; }

/* Process steps with arrows between them */
.hub-steps { margin-top: 1rem; }
.hub-steps .step__icon { background: var(--green-700); color: #fff; box-shadow: 0 0 0 6px var(--green-100); }
@media (min-width: 1000px) {
  .hub-steps { grid-template-columns: repeat(4, 1fr); gap: 2.25rem; }
  .hub-steps .step { position: relative; }
  .hub-steps .step:not(:last-child)::after { content: ""; position: absolute; right: -1.45rem; top: 24px; width: 10px; height: 10px; border-top: 2px solid var(--teal-800); border-right: 2px solid var(--teal-800); transform: rotate(45deg); }
}

/* Placeholder values in narrow cards: break at spaces, keep stars on their own line */
#main .rating { flex-wrap: wrap; row-gap: .1rem; }
#main .rating .ph, #main .card__title .ph, #main .price .ph, #main .card__meta .ph { word-break: normal; overflow-wrap: anywhere; }
#main .card__title .ph { font-size: .82em; }
.hub-products--center .rating { flex-direction: column; }
#main > .section--tight + .section--tight { padding-top: .5rem; }

/* Hero: copy left, A-vs-B stage right */
.pc-hero { background: linear-gradient(100deg, #fbfdfb 0%, #f2f7ef 60%, #e9f2e5 100%); }
#main .hub-h2, .pc-hero .hero__title { font-family: Georgia, "Times New Roman", serif; }
.pc-hero .hero__title { font-size: clamp(2.3rem, 1.4rem + 3.4vw, 3.9rem); line-height: 1.05; }
.pc-hero .hero__title .accent { color: var(--green-600); }
.pc-hero .breadcrumb { margin-bottom: 1.25rem; }
.pc-hero__rule { display: block; width: 40px; height: 3px; border-radius: 2px; background: var(--green-600); margin-bottom: 1rem; }
.pc-stage { position: relative; display: grid; gap: .75rem; }
.pc-stage__media { position: relative; border-radius: var(--radius-lg); overflow: hidden; -webkit-mask-image: radial-gradient(ellipse 75% 85% at 50% 50%, #000 62%, transparent 100%); mask-image: radial-gradient(ellipse 75% 85% at 50% 50%, #000 62%, transparent 100%); }
.pc-stage__media img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.pc-stage__script { margin: 0; font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.3rem); text-align: center; }
.pc-stage__card { background: rgba(255, 255, 255, .95); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-sm); padding: .8rem .95rem; font-size: .82rem; }
.pc-stage__card .check-list { gap: .3rem; }
.pc-stage__card .check-list li { font-size: .8rem; }
.pc-stage__label { margin: 0 0 .45rem; font-family: var(--font-head); font-weight: 700; color: var(--ink); }
@media (max-width: 899px) {
  .pc-stage { grid-template-columns: 1fr 1fr; }
  .pc-stage__script, .pc-stage__media { grid-column: 1 / -1; }
}
@media (min-width: 900px) {
  .pc-stage { display: block; padding-top: 3.5rem; }
  .pc-stage__script { position: absolute; top: 0; right: 8%; z-index: 2; }
  .pc-stage__card { position: absolute; top: 22%; width: 168px; z-index: 2; }
  .pc-stage__card--a { left: -2%; }
  .pc-stage__card--b { right: -2%; }
}
.pc-vs {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 1;
  width: 48px; height: 48px; border-radius: 50%; display: grid; place-items: center;
  background: var(--teal-900); color: #fff; border: 3px solid #fff; box-shadow: var(--shadow-sm);
  font-family: var(--font-head); font-weight: 800; font-size: .95rem; letter-spacing: .02em;
}
.pc-vs--lg { width: 64px; height: 64px; font-size: 1.25rem; }
.pc-vs--sm { width: 34px; height: 34px; font-size: .72rem; border-width: 2px; }

/* Trust strip with big filled icons */
.pc-trust { background: linear-gradient(90deg, #eef6ea, #f6faf4); }
.pc-trust .trust-strip__list { padding-block: 1.4rem; gap: 1.25rem; }
.pc-trust .trust-item__icon { width: 60px; height: 60px; background: var(--green-700); color: #fff; }
.pc-trust .trust-item__icon .icon { width: 28px; height: 28px; }

/* Category cards: tinted picture, copy left, arrow bottom right */
.pc-cat .card__media { aspect-ratio: 16 / 10; }
.pc-cat .card__media img { object-fit: cover; }
.pc-cat .card__title { font-size: .95rem; }
.pc-cat .card__text { font-size: .8rem; }
.pc-cat__go { align-self: flex-end; margin-top: auto; }

/* Category pills */
.pc-pill { align-self: flex-start; }
.pc-pill--blue { background: #2f55b5; }
.pc-pill--violet { background: #4b4fb8; }
.pc-pill--orange { background: var(--orange-100); color: #8a3b00; }

/* Popular comparisons + goal panel */
.pc-duo { display: grid; gap: 2rem; }
@media (min-width: 1000px) { .pc-duo { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .pc-duo__left { border-right: 1px solid var(--line); padding-right: 2rem; } }
.pc-pops { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); }
.pc-pop { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: .65rem .8rem; padding: .85rem; align-items: center; }
.pc-pop__media { position: relative; }
.pc-pop__media img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: var(--radius-sm); }
.pc-pop__media .pc-vs { left: auto; right: -12px; top: auto; bottom: 8px; transform: none; }
.pc-pop__body { display: flex; flex-direction: column; gap: .3rem; min-width: 0; }
.pc-pop .card__title { font-size: .92rem; }
.pc-pop .card__text { font-size: .8rem; }
.pc-pop__btn { grid-column: 1 / -1; justify-self: end; }
.pc-goal { position: relative; overflow: hidden; display: grid; gap: 1.25rem; padding: clamp(1.1rem, .9rem + 1vw, 1.75rem); border-radius: var(--radius-lg); background: var(--mint-50); border: 1px solid var(--mint-100); }
@media (min-width: 560px) { .pc-goal { grid-template-columns: minmax(0, 1fr) 140px; align-items: center; } }
.pc-goal__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .85; }
.pc-goal__copy, .pc-blocks { position: relative; }
.pc-goal h3 { font-size: 1.15rem; margin-bottom: .35rem; }
.pc-goal p { font-size: .86rem; color: var(--muted); }
.pc-goal .check-list { margin-bottom: 1.1rem; }
.pc-goal .btn { white-space: normal; }
.pc-blocks { display: grid; gap: 4px; justify-items: center; }
@media (max-width: 559px) { .pc-blocks { grid-template-columns: repeat(auto-fit, minmax(90px, 1fr)); } }
.pc-block { width: 100%; max-width: 132px; display: grid; justify-items: center; gap: .15rem; padding: .5rem .35rem; border-radius: 6px; background: linear-gradient(180deg, #e9cfa6, #d9b886); color: #2f2414; box-shadow: inset 0 -3px 0 rgba(0, 0, 0, .08), 0 2px 4px rgba(60, 40, 10, .18); font-family: var(--font-head); font-weight: 700; font-size: .68rem; letter-spacing: .04em; text-transform: uppercase; text-align: center; }
.pc-block .icon { width: 22px; height: 22px; color: #12403f; }

/* Latest articles */
.pc-latest .card__media { aspect-ratio: 2 / 1; }
.pc-latest .card__title { font-size: .95rem; }

/* How we compare */
.pc-how { display: grid; gap: 1.5rem; align-items: center; }
@media (min-width: 1000px) { .pc-how { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); } }
.pc-how__title { font-size: clamp(1.25rem, 1.1rem + .6vw, 1.5rem); margin-bottom: 1.1rem; }
.pc-how > * { min-width: 0; }
.pc-how__list { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); }
.pc-how__item > div { min-width: 0; }
@media (min-width: 1000px) { .pc-how__list { grid-template-columns: repeat(4, 1fr); gap: .75rem; } .pc-how__item { gap: .55rem; } .pc-how__item .feature__icon { width: 44px; height: 44px; } .pc-how__item .feature__icon .icon { width: 20px; height: 20px; } }
.pc-how__item h3 { font-size: .88rem; }
.pc-how__item p { font-size: .78rem; }
.pc-how__more { margin: 1rem 0 0; }

/* Review fixes: keep "View All" on the heading row in the half-width column; date + read time on one row */
.pc-duo .section-head { flex-wrap: nowrap; align-items: flex-start; }
.pc-duo .section-head .link-pill { flex: none; }
.pc-feat .card__meta, .pc-latest .card__meta { flex-direction: row; flex-wrap: wrap; gap: .25rem .9rem; }
@media (min-width: 1000px) { .pc-duo .hub-h2 { font-size: clamp(1.45rem, .6rem + 1.25vw, 1.95rem); } }

/* ===================== Push to 95: match the design's proportions at 1280 ===================== */
#main > .section--tight { padding-block: 1.6rem; }
#main > .section--tight + .section--tight { padding-top: .35rem; }
#main .hub-h2 { font-size: 1.85rem; letter-spacing: -.005em; }
#main .section-head { margin-bottom: 1.1rem; align-items: center; }
.hub-h2--under::after { width: 34px; margin-top: .6rem; }
.pc-viewall { color: var(--green-700); font-size: .98rem; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1.5px; }
.pc-viewall:hover { color: var(--green-800); }
.pc-duo .section-head .pc-viewall { flex: none; }

/* Hero: copy left, photo bleeding to the right edge with the A/B cards on it */
.pc-hero .hero__inner { display: block; min-height: 366px; padding-block: 1.1rem 1.6rem; }
.pc-hero .hero__copy { position: relative; z-index: 2; max-width: 545px; }
.pc-hero .breadcrumb { margin-bottom: 1.6rem; font-size: .8rem; }
.pc-hero__rule { margin-bottom: .9rem; }
.pc-hero .hero__title { font-size: 3.55rem; line-height: 1.04; margin-bottom: .32em; }
.pc-hero .hero__title .accent { display: block; }
.pc-hero .hero__lead { font-size: 1.06rem; line-height: 1.5; max-width: 505px; color: var(--text); margin-bottom: 0; }
.pc-hero .hero__actions { margin-top: 1.4rem; }
.pc-hero .btn--lg { min-height: 52px; padding-inline: 2.1rem; font-size: 1.08rem; }
.pc-stage__media img { aspect-ratio: auto; }
.pc-stage__line { display: none; }
.pc-stage__arrow { display: none; }
@media (min-width: 900px) {
  .pc-stage { position: absolute; top: 0; bottom: 0; right: 0; width: 58%; padding: 0; z-index: 1; }
  .pc-stage__media { position: absolute; inset: 0; border-radius: 0; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 24%); mask-image: linear-gradient(90deg, transparent 0, #000 24%); }
  .pc-stage__media img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 60%; }
  .pc-stage__line { display: block; position: absolute; left: 52.2%; top: 14%; bottom: 6%; width: 1.5px; background: rgba(15, 47, 54, .18); }
  .pc-stage .pc-vs { left: 52.2%; top: 49%; }
  .pc-stage__card { top: 25%; width: 172px; padding: .7rem .8rem; }
  .pc-stage__card--a { left: 9%; right: auto; }
  .pc-stage__card--b { left: auto; right: 3.5%; }
  .pc-stage__script { top: 4%; left: 58%; right: auto; font-size: 2.15rem; color: var(--teal-900); }
  .pc-stage__script::after { content: ""; display: block; width: 150px; height: 3px; margin: .25rem 0 0 4.2rem; border-radius: 2px; background: var(--orange-500); transform: rotate(-8deg); }
  .pc-stage__arrow { display: block; position: absolute; left: -2.6rem; top: 1.3rem; width: 42px; height: 36px; color: var(--teal-900); transform: rotate(-4deg); }
}
.pc-stage__label { font-size: .95rem; }
.pc-stage__card .check-list { gap: .35rem; }
.pc-stage__card .check-list li { font-size: .78rem; gap: .4rem; line-height: 1.3; white-space: nowrap; }
.pc-stage__card .check-list .icon { color: #fff; background: var(--green-600); border-radius: 50%; padding: 2px; width: 15px; height: 15px; }

/* Trust strip: big filled circles, larger copy */
.pc-trust .trust-strip__list { padding-block: 1.15rem; }
.pc-trust .trust-item { gap: 1.1rem; }
.pc-trust .trust-item__icon { width: 70px; height: 70px; }
.pc-trust .trust-item__icon .icon { width: 32px; height: 32px; }
.pc-trust .trust-item__title { font-size: .98rem; margin-bottom: .2rem; }
.pc-trust .trust-item__text { font-size: .86rem; line-height: 1.45; }
@media (min-width: 900px) { .pc-trust .trust-strip__list > li + li { padding-left: 2rem; } }

/* Category cards: 6 across, picture on top, arrow beside the last text line */
.pc-cat .card__media { aspect-ratio: 178 / 107; }
.pc-cat .card__body { position: relative; padding: .8rem 2.6rem .85rem .85rem; gap: .25rem; }
.pc-cat .card__title { font-size: .98rem; font-weight: 700; }
.pc-cat .card__text { font-size: .86rem; line-height: 1.45; color: var(--text); }
.pc-cat__go { position: absolute; right: .7rem; bottom: .75rem; margin: 0; width: 28px; height: 28px; background: var(--green-200); color: var(--teal-900); }

/* Featured cards: wide photo, uppercase pill, larger title */
.pc-feat .card__media { aspect-ratio: 375 / 152; }
.pc-feat .card__body { padding: .9rem 1.2rem 1rem; gap: .4rem; }
.pc-pill { text-transform: uppercase; letter-spacing: .03em; font-size: .72rem; font-weight: 700; padding: .25rem .7rem; }
.pc-feat .card__title { font-size: 1.16rem; font-weight: 700; }
.pc-feat .card__text { font-size: .92rem; line-height: 1.5; }
.pc-feat .card__meta, .pc-latest .card__meta { font-size: .82rem; gap: .25rem 1.6rem; }
.pc-vs { width: 52px; height: 52px; font-size: 1.05rem; }

/* Popular + goal */
.pc-duo { gap: 2rem; }
@media (min-width: 1000px) { .pc-duo { grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr); } .pc-duo__left { padding-right: 1.6rem; } }
.pc-pops { gap: .9rem; }
.pc-pop { grid-template-columns: 118px minmax(0, 1fr); gap: .3rem .9rem; padding: .85rem .9rem; align-items: start; }
.pc-pop__media img { aspect-ratio: 118 / 92; object-fit: cover; border-radius: 6px; }
.pc-pop__body { padding-top: .35rem; gap: .25rem; }
.pc-pop .card__title { font-size: .92rem; font-weight: 700; line-height: 1.3; }
.pc-pop .card__text { font-size: .8rem; line-height: 1.45; }
.pc-pop__btn { min-height: 34px; padding: .4rem 1rem; border-radius: 6px; font-size: .82rem; margin-top: -.6rem; }
.pc-goal { padding: 1.5rem 1.4rem; background: linear-gradient(100deg, #f1f7ee 0%, #eaf3e6 60%, #dfeedb 100%); }
.pc-goal h3 { font-size: 1.2rem; font-weight: 700; }
.pc-goal p { font-size: .93rem; line-height: 1.5; color: var(--text); }
.pc-goal .check-list { gap: .7rem; margin-bottom: 1.4rem; }
.pc-goal .check-list li { font-size: .96rem; color: var(--ink); }
.pc-goal .check-list .icon { color: #fff; background: var(--green-600); border-radius: 50%; padding: 2px; width: 19px; height: 19px; }
.pc-goal .btn { border-radius: 8px; min-height: 48px; padding-inline: 1.6rem; font-size: 1rem; }
.pc-block { max-width: 118px; font-size: .64rem; padding: .55rem .35rem; }

/* Latest articles: wide short photos, meta on one row */
.pc-latest .card__media { aspect-ratio: 275 / 88; }
.pc-latest .card__body { padding: .8rem 1.1rem .9rem; gap: .4rem; }
.pc-latest .card__title { font-size: 1.02rem; font-weight: 700; }

/* How we compare band + newsletter card */
#main > .section--mint-solid { padding-block: 1.3rem 1.4rem; background: linear-gradient(90deg, #eef6ea, #f4f9f2); }
#main .pc-how__title { font-family: var(--font-head); font-size: 1.35rem; margin-bottom: 1rem; }
.pc-how { gap: 2rem; }
@media (min-width: 1000px) { .pc-how { grid-template-columns: minmax(0, 1.75fr) minmax(0, 1fr); } .pc-how > div:first-child { border-right: 1px solid var(--line-strong); padding-right: 1.6rem; } }
.pc-how__item h3 { font-size: .84rem; font-weight: 700; margin-bottom: .2rem; }
.pc-how__item p { font-size: .76rem; line-height: 1.45; color: var(--text); }
@media (min-width: 1000px) {
  .pc-how__list { gap: 0; }
  .pc-how__item { gap: .6rem; padding-right: .6rem; }
  .pc-how__item + .pc-how__item { border-left: 1px solid var(--line-strong); padding-left: .7rem; }
  .pc-how__item .feature__icon { width: 46px; height: 46px; background: #d9ecd2; box-shadow: 0 0 0 4px #e9f4e4; }
  .pc-how__item .feature__icon .icon { width: 24px; height: 24px; stroke-width: 2.4; }
}
.hub-news { grid-template-columns: 96px minmax(0, 1fr); align-items: center; gap: .4rem 1rem; padding: 1rem 1.1rem; background: linear-gradient(135deg, #e3f0de, #f3f8f1 70%); }
.pc-news__art { grid-row: 1 / span 2; width: 96px; height: 96px; object-fit: cover; border-radius: 50%; }
.hub-news__head { display: contents; }
.hub-news__head > div { grid-column: 2; }
.hub-news h2 { font-size: 1.2rem; padding-right: 0; margin-bottom: .3rem; }
.hub-news p { font-size: .86rem; color: var(--text); }
.hub-news .inline-form { grid-column: 2; gap: 0; flex-wrap: nowrap; }
.hub-news .inline-form .input-wrap { flex: 1 1 auto; }
.hub-news .inline-form input[type="email"] { height: 42px; border-radius: 8px 0 0 8px; font-size: .86rem; }
.hub-news .inline-form .btn { height: 42px; min-height: 42px; border-radius: 0 8px 8px 0; padding-inline: 1rem; font-size: .86rem; }
.hub-news .form-status:empty { display: none; }
@media (max-width: 559px) { .hub-news { grid-template-columns: 64px minmax(0, 1fr); } .pc-news__art { width: 64px; height: 64px; grid-row: 1; } .hub-news .inline-form { grid-column: 1 / -1; } }

/* Push to 95, round 3: tighter card copy so titles keep to the design's line counts */
.pc-cat .card__body { padding: .75rem .8rem .8rem; }
.pc-cat .card__title { font-size: .92rem; }
.pc-cat .card__text { font-size: .8rem; padding-right: 1.9rem; }
.pc-cat__go { width: 26px; height: 26px; right: .6rem; bottom: .7rem; }
.pc-pop { grid-template-columns: 104px minmax(0, 1fr); padding: .8rem .8rem .75rem; }
.pc-pop__media img { aspect-ratio: 104 / 84; }
.pc-pop .card__title { font-size: .86rem; }
.pc-pop .card__text { font-size: .76rem; }
.pc-goal h3 { font-size: 1.06rem; }
.pc-goal p { font-size: .88rem; }
.pc-goal .check-list li { font-size: .92rem; }
.pc-latest .card__title { font-size: .95rem; }
.pc-how__item h3 { font-size: .78rem; }
.pc-how__item p { font-size: .72rem; }
#main > .section--tight { padding-block: 1.35rem; }
#main .card__meta { margin: 0; }
@media (min-width: 1000px) {
  .pc-how { grid-template-columns: minmax(0, 1.9fr) minmax(0, 1fr); gap: 1.6rem; }
  .pc-how__item .feature__icon { width: 40px; height: 40px; }
  .pc-how__item .feature__icon .icon { width: 21px; height: 21px; }
  .pc-how__item { gap: .5rem; }
  .pc-how__item h3 { white-space: nowrap; }
  .pc-how__item:last-child h3 { white-space: normal; }
}
@media (min-width: 1000px) { .pc-how { grid-template-columns: minmax(0, 1.72fr) minmax(0, 1.08fr); } }
.hub-news { grid-template-columns: 84px minmax(0, 1fr); padding: .95rem 1rem; }
.pc-news__art { width: 84px; height: 84px; }
.hub-news h2 { font-size: 1.12rem; }
.hub-news p { font-size: .84rem; line-height: 1.45; }
.hub-news .inline-form .btn { padding-inline: .85rem; }
@media (min-width: 900px) {
  .pc-stage__media img { position: absolute; width: 132%; max-width: none; height: auto; left: -10%; bottom: -14%; object-fit: fill; }
  .pc-stage__line { left: 59%; }
  .pc-stage .pc-vs { left: 59%; top: 52%; }
  .pc-stage__card--a { left: 7.5%; }
  .pc-stage__card { top: 30%; }
  .pc-stage__script { left: 60%; }
}
.pc-pop__btn { margin-top: .1rem; }
@media (min-width: 1000px) {
  .pc-how { grid-template-columns: minmax(0, 1.85fr) minmax(0, 1fr); }
  .pc-how__item h3, .pc-how__item:last-child h3 { white-space: normal; font-size: .76rem; }
  .pc-how__list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (min-width: 900px) {
  .pc-hero .hero__inner { position: static; }
  .pc-stage__media img { bottom: -5%; width: 128%; left: -8%; }
}
.pc-vs.pc-vs--sm { width: 34px; height: 34px; font-size: .72rem; }
.pc-vs.pc-vs--lg { width: 62px; height: 62px; font-size: 1.25rem; }
@media (max-width: 899px) {
  .pc-hero .hero__title { font-size: clamp(2.3rem, 1.6rem + 3vw, 3rem); }
  .pc-hero .hero__lead { font-size: 1.02rem; }
  .pc-stage__media { margin-top: .5rem; border-radius: var(--radius-lg); }
}
.pc-cat .card__text { font-size: .79rem; padding-right: 1.5rem; }
.pc-cat .card__media img { object-fit: cover; }
