/* Uses the approved palette and intrinsic section heights at all sizes. */
.product-terms .product-status{font-size:14px;font-weight:700;display:inline-block;padding:10px 14px;background:var(--paper);border-radius:7px;margin:0 0 22px}
.product-page{--course-accent:var(--green);--course-line:var(--green-ink);width:min(1280px,100%);padding:30px 40px 0;margin:auto}
.product-page-groups{--course-accent:var(--lavender);--course-line:var(--lavender-ink)}
.product-page-organization{--course-accent:var(--peach);--course-line:var(--peach-ink)}
.product-page p,.product-page li{font-size:17px;line-height:1.6}
.product-page h2{font-size:36px;line-height:1.15;max-width:24ch}
.product-page h3{font-size:23px;line-height:1.25;letter-spacing:-.025em}
.product-page ul{margin:0;padding-left:22px}.product-page li+li{margin-top:12px}
.product-page .product-route li,.product-page .product-modules>li{margin-top:0}
.product-breadcrumb{display:flex;align-items:center;gap:14px;font-size:14px;color:var(--muted);margin-bottom:36px;flex-wrap:wrap}.product-breadcrumb a{padding-block:10px}
.product-hero{display:grid;grid-template-columns:1.4fr 1fr;gap:52px;align-items:center;margin-bottom:44px}
.product-eyebrow{display:flex;gap:12px;align-items:center;border-bottom:3px solid var(--course-line);padding-bottom:14px;margin-bottom:24px;max-width:520px}
.product-eyebrow span{font-size:14px;font-weight:700}
.product-hero h1{font-size:clamp(38px,4.3vw,60px);line-height:1.07;letter-spacing:-.045em;max-width:17ch;overflow-wrap:normal}
.product-hero .product-lead{font-size:19px;line-height:1.6;margin:24px 0 28px;max-width:48ch}
.product-hero .button{width:max-content;max-width:100%;display:inline-flex;font-size:16px}.product-hero .text-link{display:table;margin-top:8px;font-size:15px}
.product-route{background:var(--course-accent);padding:30px;border-radius:20px}.product-route h2{font-size:28px;margin-bottom:24px}
.product-page .product-small-label{font-size:13px;font-weight:500;line-height:1.45;margin:0 0 12px;color:var(--muted)}
.product-route .product-small-label,.product-outcome .product-small-label{color:var(--ink)}
.product-route ol{list-style:none;padding:0;margin:0}.product-route li{display:grid;grid-template-columns:34px 1fr;gap:14px;align-items:start;margin:0;padding:18px 0;border-top:1px solid color-mix(in srgb,var(--ink) 16%,transparent)}
.product-route li span{font-size:13px;border:1px solid color-mix(in srgb,var(--ink) 35%,transparent);border-radius:50%;width:32px;height:32px;display:grid;place-items:center}
.product-route .product-route-note{font-size:14px;padding-top:8px}
.product-jump{display:flex;gap:4px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px;position:sticky;top:56px;z-index:8;box-shadow:0 5px 14px #00000007}
.product-jump a{flex:1;text-align:center;text-decoration:none;padding:12px 10px;min-height:46px;font-size:15px;border-radius:7px}.product-jump a:hover{background:var(--paper)}
.product-section{margin-top:64px;scroll-margin-top:70px}
.product-fit{display:grid;grid-template-columns:1fr 1.35fr;gap:48px;align-items:start;padding:32px 0 0}.product-fit ul{background:#fff;border:1px solid var(--line);border-radius:16px;list-style:none;padding:26px 30px}.product-fit li{position:relative;padding-left:25px}.product-fit li:before{content:'→';position:absolute;left:0;font-weight:700}
.product-section-head{margin-bottom:28px}.product-section-head>p:last-child:not(.product-small-label){max-width:66ch;color:var(--muted);margin-top:18px}
.product-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;list-style:none;padding:0;margin:0}
.product-modules>li{display:flex;flex-direction:column;margin:0;background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;min-width:0}
.product-module-head{display:grid;grid-template-columns:38px 1fr;gap:14px;align-items:start;margin-bottom:18px}.product-module-head>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--course-accent);font-size:14px;font-weight:700}.product-module-head h3{margin:3px 0 0}
.product-check{margin-top:auto;padding-top:22px}.product-check strong{display:block;font-size:14px;font-weight:700;border-top:1px solid var(--line);padding:16px 0 8px}.product-check p{font-size:15px;color:var(--muted)}
.product-outcome{background:var(--course-accent);padding:34px;border-radius:20px;display:grid;grid-template-columns:1fr 1.3fr;gap:24px 48px}.product-outcome-note{grid-column:1/-1;border-top:1px solid color-mix(in srgb,var(--ink) 18%,transparent);padding-top:20px}.product-outcome .product-outcome-note{font-size:15px}
.product-formats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.product-formats article{padding:30px;background:#fff;border:1px solid var(--line);border-radius:16px}.product-formats h3{margin-bottom:18px}.product-pending,.product-role{padding:20px;background:var(--paper);border-radius:10px;margin-top:24px}.product-pending strong,.product-role strong{display:block;font-size:16px;margin-bottom:10px}.product-pending p,.product-role p{font-size:15px}
.product-boundary{border:1px solid color-mix(in srgb,var(--ink) 18%,transparent);border-radius:12px;padding:24px 30px;margin-top:20px;display:grid;grid-template-columns:1fr 2fr;gap:30px}.product-boundary p{font-size:16px}
.product-terms{background:#fff;border-radius:20px;padding:34px;display:grid;grid-template-columns:1fr 1.2fr;gap:24px 48px}.product-terms h2{margin-bottom:18px}.product-terms>div>p:last-child{font-size:16px;color:var(--muted)}.product-terms dl{margin:0}.product-terms dl>div{padding:0 0 18px;margin-bottom:18px;border-bottom:1px solid var(--line)}.product-terms dl>div:last-child{margin:0}.product-terms dt{font-size:16px;font-weight:700;margin-bottom:7px}.product-terms dd{margin:0;color:var(--muted);font-size:15px;line-height:1.5}.product-terms .product-expenses{grid-column:1/-1;margin:0;font-size:15px;border-top:1px solid var(--line);padding-top:22px}
.product-evidence{display:grid;grid-template-columns:1.3fr 1fr;gap:40px}.product-evidence h2,.product-evidence h3{margin-bottom:18px}.product-evidence aside{padding:26px;border:1px solid var(--line);border-radius:16px}.product-evidence .text-link{font-size:16px;margin-top:12px}
.product-faq{display:grid;grid-template-columns:1fr 1.4fr;gap:40px}.product-faq details{border-bottom:1px solid var(--line)}.product-faq details:first-child{border-top:1px solid var(--line)}.product-faq summary{padding:22px 0;display:flex;justify-content:space-between;align-items:center;gap:24px;list-style:none;font-weight:500;cursor:pointer}.product-faq summary::-webkit-details-marker{display:none}.product-faq summary span{font-size:24px;flex:none}.product-faq details[open] summary span{transform:rotate(45deg)}.product-faq details p{padding:0 0 22px;font-size:16px;color:var(--muted)}
.product-close{display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px;border-block:1px solid var(--line);padding-block:36px}.product-close h2{font-size:30px;max-width:28ch}.product-close p:last-child{max-width:60ch;margin-top:18px;font-size:16px}.product-close .button{font-size:16px;width:auto;max-width:310px}
.product-other{padding-block:36px 48px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.product-other h2{grid-column:1/-1;font-size:23px;margin-bottom:4px;max-width:none}.product-other a{padding:20px;background:#fff;border:1px solid var(--line);border-radius:10px;text-decoration:none;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:16px}.product-other a:hover{border-color:var(--ink)}
@media (min-width:700px) and (max-width:999px){.product-page{padding-inline:30px}.product-hero{grid-template-columns:1fr;gap:30px}.product-hero h1{font-size:48px;max-width:23ch}.product-hero .product-lead{max-width:58ch}.product-route ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.product-route li{display:block}.product-route li span{margin-bottom:14px}.product-fit{grid-template-columns:1fr;gap:24px}.product-modules{grid-template-columns:1fr}.product-outcome{gap:30px}.product-formats article{padding:24px}.product-terms,.product-faq{grid-template-columns:1fr;gap:26px}.product-close{grid-template-columns:1fr;gap:24px}.product-close .button{justify-self:start}.product-page h2{font-size:32px}}
@media (max-width:699px){.product-page{padding:16px 18px 0}.product-breadcrumb{font-size:13px;gap:10px;margin-bottom:22px}.product-page h2{font-size:29px}.product-page h3{font-size:21px}.product-page p,.product-page li{font-size:16px}.product-hero{grid-template-columns:1fr;gap:26px;margin-bottom:26px}.product-hero h1{font-size:37px;line-height:1.12;overflow-wrap:anywhere;max-width:20ch}.product-eyebrow{padding-bottom:12px;margin-bottom:20px}.product-hero .product-lead{font-size:17px;margin:20px 0 24px}.product-hero .button{width:100%;font-size:15px}.product-hero .text-link{font-size:14px}.product-route{padding:24px;border-radius:16px}.product-route h2{font-size:25px}.product-route li{padding:16px 0}.product-jump{top:52px;gap:0;padding:4px}.product-jump a{font-size:12px;padding:12px 4px;min-height:44px}.product-section{margin-top:42px;scroll-margin-top:42px}.product-fit{grid-template-columns:1fr;gap:20px;padding-top:0}.product-fit ul{padding:22px}.product-modules{grid-template-columns:1fr;gap:16px}.product-modules>li{padding:22px}.product-module-head{grid-template-columns:32px 1fr;gap:12px}.product-module-head>span{width:30px;height:30px;font-size:12px}.product-module-head h3{font-size:20px;margin-top:2px}.product-check p{font-size:14px}.product-section-head{margin-bottom:22px}.product-outcome,.product-terms{grid-template-columns:1fr;gap:24px;padding:24px}.product-outcome-note{grid-column:auto}.product-outcome .product-outcome-note{font-size:14px}.product-formats{grid-template-columns:1fr;gap:16px}.product-formats article{padding:24px}.product-pending,.product-role{padding:18px}.product-boundary{display:block;padding:22px}.product-boundary h3{margin-bottom:12px}.product-terms .product-expenses{grid-column:auto;font-size:14px}.product-evidence,.product-faq{grid-template-columns:1fr;gap:24px}.product-evidence aside{padding:24px}.product-faq summary{font-size:16px}.product-close{grid-template-columns:1fr;gap:24px;padding-block:28px}.product-close h2{font-size:28px}.product-close .button{max-width:none;width:100%;font-size:15px}.product-other{grid-template-columns:1fr;padding-block:28px 36px}.product-other h2{font-size:21px}.product-other a{font-size:15px;padding:18px}}
