/* Final readability and the APEX custom icon system, shared by both catalogues. */
.apex-icon{display:inline-block;width:1.15em;height:1.15em;flex:none;vertical-align:-.18em;pointer-events:none}
.button .apex-icon,.text-link .apex-icon{margin-left:.45em}
.button .apex-icon,.text-link .apex-icon,.product-bottom .apex-icon{width:24px;height:24px}
.apex-editorial-emphasis{font-weight:800;color:inherit}
.season-choose-action{display:flex;justify-content:center;margin-top:28px}
.dark-section .season-choose-action .button{color:var(--paper,#fffdfa);border-color:#ffffff80;background:transparent}
.dark-section .season-choose-action .button:hover{color:var(--ink,#14212b);background:var(--gold,#c5a059);border-color:var(--gold,#c5a059)}
.icon-button .apex-icon{width:22px;height:22px;margin:0}
.apex-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-bottom:1px solid var(--line);padding-block:35px}
.apex-pillar{display:grid;grid-template-columns:46px 1fr;gap:18px;padding:10px 28px;border-right:1px solid var(--line);color:inherit;text-decoration:none}
.apex-pillar:first-child{padding-left:0}.apex-pillar:last-child{border:0}
.apex-pillar>.apex-icon{width:38px;height:38px;color:#987337}
.apex-pillar small{font-size:13px;letter-spacing:.07em;font-weight:700;color:var(--muted)}
.apex-pillar h2{font-family:Manrope,sans-serif;font-size:19px;line-height:1.4;margin:6px 0 7px;letter-spacing:-.03em}
.apex-pillar p{font-size:15px;line-height:1.65;margin:0;color:var(--muted)}
.header-cta{font-size:13px!important;min-height:44px;white-space:nowrap}
.desktop-nav>a{font-size:14px}.desktop-nav{gap:23px}
body{font-size:16px}
.hero-copy>p{font-size:clamp(16px,1.3vw,19px);line-height:1.7;max-width:510px}
.hero-subnote{font-size:13px}.hero-photo-note{font-size:12px}
.section-heading>p,.page-intro>div>p{font-size:17px;line-height:1.75}
.eyebrow,.article-meta,.tab-number,.goal-content small,.tool-card>small{font-size:12px;line-height:1.6}
.goal-content p,.protocol-card-content p,.article-card p,.article-card-content p,.tool-card p,.guide-banner p{font-size:16px;line-height:1.7}
.product-card{display:flex;flex-direction:column}
.product-card-content{display:flex;flex-direction:column;flex:1;gap:0}
.product-card-content h3{font-size:28px;line-height:1.15}
.product-card-content p{font-size:16px;line-height:1.65;margin-bottom:20px}
.product-card .product-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto!important;border:1px solid currentColor;padding:14px 15px;min-height:49px;font-size:14px!important;font-weight:700;letter-spacing:0;color:var(--ink,#14212b);transition:background .2s,color .2s}
.product-card .eyebrow{font-size:12px!important;line-height:1.6}
.breadcrumb{font-size:12px!important;line-height:1.7}
.product-card:hover .product-bottom{background:var(--ink,#14212b);color:#fff}
.bundle-card-copy p,.bundle-items,.bundle-card-copy .bundle-items{font-size:15px;line-height:1.7}
.detail-copy{font-size:17px;line-height:1.85}.detail-copy p{font-size:inherit}
.lead,.detail-heading>.lead{font-size:18px;line-height:1.75}
.related-item,.related-product-link p,.related-product-link strong,.result-card p,.result-relevance,.result-secondary,.result-note,.detail-notice,.composition-table,.catalog-usage-row,.compact-copy,.practical-meta,.practical-number,.subscription-terms{font-size:15px;line-height:1.7}
.related-block>h2,.related-section>h2{font-size:25px}
.composition-table th,.composition-table td{padding:14px 12px}
.composition-table small{font-size:13px}
.catalog-fold summary,.catalog-fold-title,.catalog-fold summary strong{font-size:18px;line-height:1.4}
.catalog-card-number,.catalog-number{font-size:14px}
.symptom-option{font-size:16px;line-height:1.6;min-height:62px}
.step-counter,.assessment-foot,.assessment-head .eyebrow{font-size:14px}
.button,.filter-button{font-size:14px;min-height:44px}
.text-button,.text-link,.footer-links a,.footer-nav a{font-size:15px}
input,select,textarea{font-size:16px}
.calendar-page p,.calendar-page label,.diary-page p,.diary-table,.calendar-detail p,.calendar-note,.calendar-reminders{font-size:16px;line-height:1.65}
.buying-price{font-family:Manrope,sans-serif;margin:9px 0 17px;font-size:23px;line-height:1.3;font-weight:800}
.buying-price small{font-size:13px;display:block;line-height:1.6;font-weight:500;margin-top:4px;color:var(--muted)}
.product-card-content .buying-price{font-size:22px;margin-bottom:20px}
.purchase-assurance{border:1px solid var(--line);padding:24px;margin:24px 0;max-width:760px;background:rgba(168,135,72,.045)}
.purchase-assurance h2{font:700 18px/1.5 Manrope,sans-serif;margin:0 0 17px}
.purchase-assurance ul{display:grid;grid-template-columns:1fr 1fr;gap:18px;list-style:none;padding:0;margin:0}
.purchase-assurance li{display:flex;gap:12px;font-size:14px;line-height:1.6}
.purchase-assurance li>.apex-icon{width:25px;height:25px;color:#987337}
.purchase-assurance strong{display:block;font-weight:700}
.purchase-assurance>p{font-size:13px;line-height:1.7;margin:18px 0 0;color:var(--muted)}
.free-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);margin:0 0 30px}
.free-flow-step{padding:25px 22px;position:relative;border-right:1px solid var(--line)}
.free-flow-step:last-child{border:0}.free-flow-step>.apex-icon{width:32px;height:32px;color:#987337;margin-bottom:15px}
.free-flow-step small{display:block;font-size:12px;font-weight:700;color:var(--muted)}
.free-flow-step h2{font-family:Manrope,sans-serif;font-size:17px;line-height:1.5;margin:6px 0 10px}
.free-flow-step p{font-size:14px;line-height:1.65;margin:0}
.free-flow-step+.free-flow-step:before{content:'';position:absolute;left:-5px;top:38px;width:8px;height:8px;background:var(--paper,#f7f6f2);border-top:1px solid var(--line);border-right:1px solid var(--line);transform:rotate(45deg)}
.site-footer p,.footer p{font-size:16px;line-height:1.65}
@media(max-width:1100px){.desktop-nav{gap:16px}.desktop-nav>a{font-size:13px}.apex-pillar{padding-inline:18px;grid-template-columns:35px 1fr;gap:12px}.apex-pillar>.apex-icon{width:30px;height:30px}}
@media(max-width:800px){
 .header-actions .header-cta{font-size:12px!important;min-height:40px;padding:10px 12px}.site-header{gap:10px}
 .hero-copy h1{font-size:clamp(42px,10.7vw,72px);line-height:.98}.hero-copy>p{font-size:16px;line-height:1.65}.hero-copy .eyebrow{font-size:11px}
 .hero-subnote{font-size:12px}.hero-photo-note{font-size:10px}.hero-actions .button{font-size:14px;min-height:46px}
 .apex-pillars{grid-template-columns:1fr;padding-block:14px}.apex-pillar{padding:23px 0!important;border-right:0;border-bottom:1px solid var(--line);grid-template-columns:35px 1fr;gap:16px}.apex-pillar h2{font-size:19px}.apex-pillar p{font-size:15px}
 .page-intro h1,.detail-heading h1,.assessment-body h2,.daily-page-intro h1{font-size:clamp(42px,11vw,60px)!important;line-height:1.05;overflow-wrap:normal;word-break:normal}
 .section-heading h2,.guide-banner h2,.final-band h2,.library-habit-banner h2{font-size:clamp(36px,10vw,52px);line-height:1.05}
 .section-heading>p,.page-intro>div>p,.detail-copy,.lead,.detail-heading>.lead{font-size:16px;line-height:1.75}
 .eyebrow,.goal-content small,.article-meta,.tool-card>small{font-size:11px;line-height:1.65}
 .goal-content p,.product-card-content p,.article-card p,.article-card-content p,.protocol-card-content p,.tool-card p,.guide-banner p,.bundle-card-copy p{font-size:15px;line-height:1.7}
 .product-card-content h3{font-size:27px}.product-card .product-bottom{font-size:14px;padding:13px 12px}.button,.filter-button{font-size:14px}
 .related-item,.related-product-link p,.related-product-link strong,.result-card p,.result-relevance,.result-secondary,.result-note,.detail-notice,.composition-table,.subscription-terms{font-size:14px;line-height:1.7}
 .catalog-fold summary,.catalog-fold-title,.catalog-fold summary strong{font-size:17px}
 .purchase-assurance{padding:21px 18px}.purchase-assurance ul{grid-template-columns:1fr}
 .free-flow{grid-template-columns:1fr}.free-flow-step{border-right:0;border-bottom:1px solid var(--line);padding:22px}.free-flow-step+.free-flow-step:before{left:38px;top:-5px;transform:rotate(135deg)}
 .buying-price{font-size:22px}.symptom-option{font-size:15px}.text-link,.text-button{font-size:14px}
}
@media(max-width:480px){.product-grid,.home-products{grid-template-columns:1fr!important;gap:22px}.product-card .product-card-content{padding:23px}.product-card-content h3{font-size:30px}.product-card-content p{font-size:16px}.product-card .product-bottom{padding:15px 16px}.header-cta{white-space:nowrap!important}.apex-report-panel .button{white-space:normal!important}}
/* These scoped rules outrank the retained product/hero styles. */
#main .hero-wide .hero-copy>p{font-size:clamp(16px,1.3vw,19px);line-height:1.7;max-width:510px}
#main .content-page p,#main .subscription-layout p{font-size:17px;line-height:1.8}
#main .tools-hub p,#main .bundle-card-copy p,#main .related-block>p,#main .daily-hero-copy>p{font-size:16px;line-height:1.75}
#main .product-card-content>p{font-size:16px;line-height:1.7}
#main .purchase-assurance>p,#main .content-page p.detail-notice{font-size:14px;line-height:1.7}
#main .catalog-synergy p.catalog-ingredients{font-size:15px;line-height:1.7}
@media(max-width:800px){#main .content-page p,#main .subscription-layout p{font-size:16px;line-height:1.75}#main .purchase-assurance>p,#main .content-page p.detail-notice{font-size:14px}#main .catalog-synergy p.catalog-ingredients{font-size:15px}}

/* Read product details first; the lower call to action owns the price. */
#main .detail-buy-final{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
#main .detail-buy-final .buying-price{margin:0}
#main .catalog-detail-page .detail-product-photo{border-radius:15px;overflow:hidden}
#main .catalog-detail-page .detail-product-photo>img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:1;border-radius:inherit}

/* Goal copy stays inside its card and over a consistent dark backdrop. */
#main .goal-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
#main .goal-card{display:flex;align-items:flex-end;min-height:370px;height:auto;isolation:isolate;background:#14212b;color:#fff}
#main .goal-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
#main .goal-card::after{z-index:1;pointer-events:none;background:linear-gradient(0deg,rgba(8,20,28,.97) 0%,rgba(8,20,28,.8) 40%,rgba(8,20,28,.36) 74%,rgba(8,20,28,.08) 100%)}
#main .goal-content{position:relative;inset:auto;z-index:2;width:100%;padding:24px;color:#fff;text-shadow:0 2px 5px #0009}
#main .goal-content h3{font-size:34px;line-height:1.05;color:#fff;margin:10px 0}
#main .goal-content small{display:block;font-size:12px;line-height:1.6;color:#fff}
#main .goal-content p{font-size:16px;line-height:1.65;color:#fff;max-width:none;padding-right:0;margin:0}
@media(max-width:1000px){#main .goal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#main .goal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#main .goal-content{padding:14px}#main .goal-content h3{font-size:28px;line-height:1.05;margin:0 0 10px}#main .goal-content small{display:none}#main .goal-content p{font-size:15px;line-height:1.55}#main .goal-card{min-height:320px}}
