/* Seed product explanation patterns, kept inside Context's current roles and rails. */
.product-labelled-facts{margin:16px 0 0;font:400 13px/1.5 var(--sans);color:var(--muted)}
.product-labelled-facts>div{display:flex;gap:8px}.product-labelled-facts dt::after{content:':'}.product-labelled-facts dd{margin:0}
.product-reasons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-block:24px;border-block:1px solid var(--line)}
.product-reasons p{margin:0;padding:0 24px;border-left:1px solid var(--line)}.product-reasons p:first-child{padding-left:0;border:0}
.product-chapter-heading{display:grid;grid-template-columns:4fr 8fr;gap:24px;margin-bottom:32px;align-items:start}.product-chapter-heading p{max-width:42ch;margin:0}.product-chapter-heading h3{max-width:30ch;margin:0 0 8px}
.product-anatomy-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(32px,6vw,88px);align-items:center}
.product-anatomy-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}.product-anatomy-facts{margin:0}.product-anatomy-facts>div{border-top:1px solid var(--line);padding:20px 0}.product-anatomy-facts dt{margin-bottom:8px}.product-anatomy-facts dd{margin:0;max-width:36ch;color:var(--muted)}
.product-light-study figure img{display:block;width:100%;height:auto;aspect-ratio:2.2;object-fit:cover;object-position:center 60%}
.product-light-caption{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:28px}.product-light-caption>div{max-width:44ch}.product-light-caption p+p{margin-top:12px}
.product-light-caption .text-link,.product-routine-links .text-link{display:inline-flex;align-items:center;min-height:44px;margin-top:12px}
.product-routine{border-block:1px solid var(--line)}.product-routine-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-left:0}.product-routine-steps article{border-top:1px solid var(--line);padding-top:20px}.product-routine-steps h3{margin:0 0 12px}.product-routine-steps p{max-width:38ch;margin:0}
.product-routine-links{display:flex;flex-wrap:wrap;gap:0 32px;margin-left:0}
@media(max-width:800px){.product-reasons{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 0}.product-reasons p:nth-child(3){padding-left:0;border:0}.product-anatomy-grid{grid-template-columns:1fr 1fr;gap:28px}.product-routine-steps{margin-left:0;gap:28px}.product-routine-links{margin-left:0}}
@media(max-width:600px){.product-reasons p{padding-inline:16px}.product-chapter-heading{grid-template-columns:1fr;gap:16px;margin-bottom:24px}.product-anatomy-grid,.product-light-caption{grid-template-columns:1fr;gap:24px}.product-anatomy-facts>div{padding:16px 0}.product-light-study figure img{aspect-ratio:3/2;object-position:center}.product-light-caption{margin-top:24px}.product-routine-steps{grid-template-columns:1fr;gap:24px}.product-routine-links{gap:0 16px}}

.product-routine .product-chapter-heading h3 span{display:inline-block;max-width:100%}

/* Founder-approved reassurance icons: quiet marks, with the wording doing the work. */
:root body .launch-product .purchase-reassurance li{display:grid;grid-template-columns:16px minmax(0,1fr);column-gap:8px;align-items:start}
:root body .launch-product .purchase-reassurance .purchase-reassurance-icon{width:16px;height:16px;flex:none;align-self:start;margin-top:2px;color:var(--muted);stroke:currentColor;stroke-width:1.4}

/* The product descriptor is ordinary supporting copy, not a tracked label. */
:root body #main .launch-product .product-identity>.eyebrow{font:400 13px/1.5 var(--sans);letter-spacing:0;text-transform:none;margin:0 0 8px}
@media(max-width:800px){:root body #main .launch-product .product-identity>.eyebrow{margin:0}}

/* Chapter rules share the page rail; details use the existing fine-line icon family. */
.product-anatomy-facts{border-bottom:1px solid var(--line)}
.product-anatomy-facts>div{padding:24px 0}
.product-anatomy-facts dt{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.product-anatomy-facts dd{margin-left:32px}
.product-detail-icon{width:20px;height:20px;flex:none;color:var(--muted)}
.product-routine{border:0}
.product-routine .product-chapter-heading{grid-template-columns:1fr;margin-bottom:28px}
.product-routine .product-chapter-heading h2{margin:0}
/* Peers share content-sized heading, explanation and note rows. */
.product-routine-steps{grid-template-rows:repeat(3,auto);gap:12px 0;border:1px solid var(--line);background:transparent}
.product-routine-steps article{display:grid;grid-row:span 3;grid-template-columns:24px minmax(0,1fr);grid-template-rows:subgrid;gap:12px 16px;align-items:start;padding:28px;border:0}
.product-routine-steps article>div{display:contents}
.product-routine-steps h3{grid-column:2;grid-row:1}
.product-routine-main{grid-column:2;grid-row:2}
.product-routine-note{grid-column:2;grid-row:3}
.product-routine-phrase{display:inline-block}
.product-routine-steps article+article{border-left:1px solid var(--line)}
.product-routine-icon{grid-column:1;grid-row:1;width:24px;height:24px;color:var(--muted)}
.product-routine-steps h3{margin:0}
#main .product-routine-steps .product-routine-note{font:400 13px/1.5 var(--sans);color:var(--muted);margin:0}
.product-routine-links{padding-top:8px}
@media(max-width:800px){.product-anatomy-facts>div{padding:20px 0}.product-routine-steps article{padding:24px;gap:12px}}
@media(max-width:600px){.product-routine-steps{grid-template-rows:none;gap:0}.product-routine-steps article{grid-row:auto;grid-template-rows:repeat(3,auto)}.product-routine-steps article+article{border-left:0;border-top:1px solid var(--line)}.product-routine-steps article{padding:24px 20px}.product-anatomy-facts>div{padding:20px 0}}

/* A short setting study follows the technical specifications. */
.product-room-layout{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,88px);align-items:center}
.product-room-copy{grid-column:2;grid-row:1;max-width:42ch}
.product-room-copy h2{margin:0 0 16px}
#main .product-room-copy p{margin:0;max-width:42ch}
.product-room-photo{grid-column:1;grid-row:1;max-width:480px;width:100%;margin:0}
.product-room-photo picture{display:block}
.product-room-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:50% 55%}
@media(max-width:800px){.product-room-layout{grid-template-columns:1fr;gap:24px}.product-room-copy{grid-column:1;grid-row:1}.product-room-photo{grid-column:1;grid-row:2}}

/* Reserve action geometry; reveal it only once the chapter navigation is pinned. */
/* Paint the bottom divider to the viewport edges without widening the content rail. */
:root body .product-section-nav{gap:24px;border-image:linear-gradient(var(--line),var(--line)) 0 0 1 / 0 0 1px / 0 100vw}
:root body .product-section-links a[aria-current="location"]{color:var(--ink);border-bottom-color:transparent;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
:root body .product-section-purchase{display:flex;flex:none;visibility:hidden}
:root body .product-section-nav[data-stuck="true"] .product-section-purchase{visibility:visible}
:root body .product-section-nav::before,:root body .product-section-nav::after{display:none}
:root body .product-section-purchase .button{white-space:nowrap;font:400 13px/1.5 var(--sans);min-height:44px;padding:10px 16px}
@media(max-width:800px){:root body .product-section-nav{gap:16px}:root body .product-section-purchase .button{font-size:12px;padding-inline:12px}}
/* The bottom purchase bar owns mobile scroll chrome; chapters remain in the page. */
@media(max-width:800px){:root body .product-section-nav{display:none}}

/* Supplied customer reviews keep rating, quote and attribution in shared rows. */
:root body #main .product-review-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:400 13px/1.5 var(--sans);color:var(--ink);text-decoration:none;margin:0;white-space:nowrap}
:root body #main .product-identity .product-review-link{grid-column:1/-1;justify-self:start}
.product-review-link .review-link-label{text-decoration:underline;text-underline-offset:4px}
.product-review-link:hover .review-link-label{text-decoration-thickness:2px}
:root body #main .launch-reviews .launch-section-heading{align-items:start;margin-bottom:28px}
:root body #main .review-summary{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font:400 13px/1.5 var(--sans);color:var(--ink)}
:root body #main .launch-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,auto);gap:0 32px;margin:0}
:root body #main .customer-review{display:grid;grid-row:span 3;grid-template-rows:subgrid;gap:16px;margin:0;padding:24px 0 28px;border-top:1px solid var(--line)}
.review-stars{display:inline-flex;gap:3px;vertical-align:middle;color:var(--ink)}
.review-stars svg{display:block;fill:none;stroke:currentColor;stroke-width:1.2}
.review-stars svg.is-filled{fill:currentColor}
.review-summary-stars.review-stars{color:var(--muted);flex:none}
.review-summary-stars svg{stroke:var(--line)}
.review-summary-stars svg.is-filled{stroke:currentColor}
.review-summary-stars .review-star-half{fill:currentColor;stroke:currentColor;clip-path:inset(0 50% 0 0)}
:root body #main .customer-review blockquote{margin:0}
:root body #main .customer-review blockquote p{font:400 14px/1.5 var(--sans);margin:0;max-width:45ch;text-wrap:pretty}
:root body #main .customer-review figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;margin:0;font:400 13px/1.5 var(--sans);color:var(--muted)}
.customer-review .review-author{color:var(--ink)}
.customer-review time{white-space:nowrap}
:root body #main .reviews-more{margin:0;border-bottom:0}
:root body #main .reviews-more>summary{border-top:1px solid var(--line);min-height:48px;padding:16px 36px 16px 0;font:400 14px/1.5 var(--sans);letter-spacing:0}
.reviews-more .reviews-collapse{display:none}
.reviews-more[open] .reviews-expand{display:none}
.reviews-more[open] .reviews-collapse{display:inline}
:root body #main .reviews-more>.launch-review-grid{padding:16px 0 0}
@media(max-width:1000px){:root body #main .launch-review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}}
@media(max-width:600px){:root body #main .launch-review-grid{grid-template-columns:minmax(0,1fr)}:root body #main .customer-review{gap:12px;padding:20px 0 24px}}

/* Kit contents are a scannable list, including wrapped lines. */
:root body .product-specifications .set-contents{list-style:disc;padding-inline-start:1.25em;margin:0}
:root body .product-specifications .set-contents li{text-wrap:pretty}

/* The final product offer shares Home's contained warm purchase-card treatment. */
#main>#choose-set .launch-purchase-row{background:var(--stone);padding:40px;grid-template-columns:minmax(0,1fr) 280px;gap:40px;align-items:center}
#main>#choose-set .launch-purchase-action{min-width:0;max-width:none;width:auto}
#main>#choose-set .launch-purchase-action .button{width:100%;margin:0}
#main>#choose-set .launch-purchase-summary :is(h2,p){text-wrap:pretty}
@media(max-width:1000px){#main>#choose-set .launch-purchase-row{padding:32px;gap:32px}}
@media(max-width:800px){#main>#choose-set .launch-purchase-row{grid-template-columns:minmax(0,1fr) 240px}}
@media(max-width:600px){#main>#choose-set .launch-purchase-row{padding:24px;grid-template-columns:minmax(0,1fr);gap:24px}}
