.cap-sales { background: var(--paper); }
.cap-sales em { color: var(--sun-deep); font-weight: inherit; }
.cap-hero { padding: 150px 0 0; background: radial-gradient(circle at 16% 28%, rgba(255,167,38,.16), transparent 28%), linear-gradient(180deg,#fffaf2 0%,#f7eddf 100%); }
.cap-hero-grid { min-height: 650px; display: grid; grid-template-columns: .9fr 1.1fr; gap: 72px; align-items: center; padding-bottom: 72px; }
.cap-hero-copy h1 { max-width: 660px; margin-bottom: 28px; font-size: clamp(3.6rem,6.4vw,6.8rem); letter-spacing: -.065em; }
.cap-lead { max-width: 650px; color: var(--earth); font-family: var(--serif); font-size: clamp(1.25rem,2vw,1.65rem); line-height: 1.5; }
.cap-hero-actions { display: flex; align-items: center; gap: 26px; margin-top: 38px; }
.cap-text-link { padding: 12px 0; border-bottom: 1px solid var(--earth); color: var(--earth); font-weight: 750; font-size: .84rem; }
.cap-trust-line { display: flex; flex-wrap: wrap; gap: 18px; margin: 32px 0 0; padding: 0; list-style: none; color: var(--earth-soft); font-size: .75rem; font-weight: 700; }
.cap-trust-line li::before { content: "✓"; margin-right: 7px; color: var(--sun-deep); }
.cap-hero-visual { position: relative; margin: 0; }
.cap-hero-visual::before { content: ""; position: absolute; inset: 22px -18px -22px 22px; border: 1px solid rgba(93,64,55,.22); }
.cap-hero-visual img { position: relative; z-index: 1; display: block; width: 100%; aspect-ratio: 16/10.2; object-fit: cover; box-shadow: var(--shadow); }
.cap-hero-visual figcaption { position: absolute; z-index: 2; right: -28px; bottom: -34px; display: flex; align-items: center; gap: 14px; padding: 19px 23px; background: var(--earth); color: white; box-shadow: 0 18px 40px rgba(47,33,29,.25); }
.cap-hero-visual figcaption span { color: var(--sun); font-family: var(--serif); font-size: 2.2rem; }
.cap-hero-visual figcaption small { font-size: .62rem; font-weight: 800; line-height: 1.45; letter-spacing: .12em; }
.cap-proof-strip { border-top: 1px solid rgba(93,64,55,.1); background: #fffefd; }
.cap-proof-strip .container { min-height: 94px; display: grid; grid-template-columns: repeat(4,1fr); align-items: center; }
.cap-proof-strip span { display: flex; align-items: baseline; justify-content: center; gap: 8px; padding: 8px 18px; border-right: 1px solid var(--line); color: var(--earth-soft); font-size: .78rem; }
.cap-proof-strip span:last-child { border: 0; }
.cap-proof-strip b { color: var(--earth); font-family: var(--serif); font-size: 1.9rem; font-weight: 500; }

.cap-problem-grid { display: grid; grid-template-columns: .95fr 1.05fr; gap: 100px; align-items: start; }
.cap-problem h2 { max-width: 560px; }
.cap-problem-copy p:not(.large-copy) { max-width: 630px; color: var(--earth-soft); }
.cap-frictions { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; margin-top: 75px; padding: 1px; background: var(--line); }
.cap-frictions article { min-height: 245px; padding: 38px; background: var(--white); }
.cap-frictions article > span { color: var(--sun-deep); font-size: .7rem; font-weight: 900; letter-spacing: .16em; }
.cap-frictions h3 { margin: 44px 0 13px; font-size: 1.7rem; }
.cap-frictions p { color: var(--earth-soft); font-size: .91rem; }

.cap-transformation { padding: 120px 0; background: var(--earth-dark); color: rgba(255,255,255,.75); }
.cap-transformation h2 { color: white; }
.cap-transformation .section-heading > p:last-child { max-width: 760px; color: rgba(255,255,255,.68); }
.cap-outcomes { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(255,255,255,.17); border-left: 1px solid rgba(255,255,255,.17); }
.cap-outcomes article { min-height: 190px; padding: 32px; border-right: 1px solid rgba(255,255,255,.17); border-bottom: 1px solid rgba(255,255,255,.17); }
.cap-outcomes span { color: var(--sun); font-size: .68rem; font-weight: 900; letter-spacing: .15em; }
.cap-outcomes p { margin: 45px 0 0; color: white; font-family: var(--serif); font-size: 1.22rem; line-height: 1.45; }

.cap-method { background: #fffefd; }
.cap-module-list { border-top: 1px solid var(--line); }
.cap-module-list details { border-bottom: 1px solid var(--line); }
.cap-module-list summary { display: grid; grid-template-columns: 74px minmax(0,1fr) auto; gap: 28px; align-items: center; padding: 34px 12px; cursor: pointer; list-style: none; }
.cap-module-list summary::-webkit-details-marker { display: none; }
.cap-module-number { align-self: start; color: var(--sun-deep); font-family: var(--serif); font-size: 2.1rem; }
.cap-module-list summary small { color: var(--violet); font-size: .63rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.cap-module-list summary h3 { margin: 6px 0 8px; font-size: clamp(1.6rem,2.5vw,2.3rem); }
.cap-module-list summary p { max-width: 700px; margin: 0; color: var(--earth-soft); font-size: .88rem; }
.cap-module-list summary > b { color: var(--earth-soft); font-size: .73rem; letter-spacing: .08em; text-transform: uppercase; }
.cap-module-list summary > b i { display: inline-grid; width: 32px; height: 32px; margin-left: 14px; place-items: center; border: 1px solid var(--line); border-radius: 50%; color: var(--earth); font-size: 1rem; font-style: normal; }
.cap-module-list details[open] summary > b i { transform: rotate(45deg); }
.cap-module-lessons { margin: 0 0 30px 112px; border-left: 1px solid rgba(255,167,38,.5); }
.cap-module-lessons div { display: grid; grid-template-columns: 64px 1fr auto; gap: 18px; align-items: center; padding: 12px 24px; }
.cap-module-lessons span,.cap-module-lessons small { color: var(--earth-soft); font-size: .7rem; }
.cap-module-lessons strong { font-family: var(--serif); font-size: 1.05rem; font-weight: 500; }
.cap-sample-link { margin: 42px 0 0; text-align: center; }
.cap-sample-link a { display: inline-block; padding-bottom: 6px; border-bottom: 1px solid var(--earth); font-weight: 800; font-size: .84rem; }

.cap-inside { background: var(--paper-deep); }
.cap-inside-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 100px; align-items: center; }
.cap-workbook-preview { position: relative; min-height: 570px; }
.cap-paper { position: absolute; inset: 22px 38px 22px 0; display: flex; flex-direction: column; padding: 55px 48px; background: #fffdf7; box-shadow: 0 28px 70px rgba(75,48,37,.18); transform: rotate(-2deg); }
.cap-paper-back { inset: 45px 0 0 55px; background: #ddc9ad; transform: rotate(4deg); }
.cap-paper small { color: var(--violet); font-size: .61rem; font-weight: 900; letter-spacing: .14em; }
.cap-paper h3 { margin: 46px 0 64px; font-size: 2.5rem; }
.cap-paper > span { margin: 24px 0 9px; color: var(--earth-soft); font-size: .61rem; font-weight: 900; letter-spacing: .12em; }
.cap-paper i { display: block; height: 22px; border-bottom: 1px solid var(--line); }
.cap-paper footer { margin-top: auto; padding-top: 30px; border-top: 1px solid var(--line); color: var(--earth-soft); font-size: .62rem; letter-spacing: .12em; }
.cap-inside h2 { font-size: clamp(2.6rem,4.7vw,4.8rem); }
.cap-deliverables { margin-top: 45px; }
.cap-deliverables article { display: grid; grid-template-columns: 50px 1fr; gap: 18px; padding: 20px 0; border-top: 1px solid var(--line); }
.cap-deliverables article > span { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; background: var(--sun-soft); color: var(--earth); }
.cap-deliverables h3 { margin: 0 0 5px; font-size: 1.2rem; }
.cap-deliverables p { margin: 0; color: var(--earth-soft); font-size: .88rem; }

.cap-fit { background: #fffefd; }
.cap-fit-grid { display: grid; grid-template-columns: 1fr 1fr; box-shadow: var(--shadow); }
.cap-fit article { padding: clamp(38px,5vw,72px); }
.cap-fit h2 { font-size: clamp(2.2rem,3.8vw,3.8rem); }
.cap-fit ul,.cap-offer ul { margin: 38px 0 0; padding: 0; list-style: none; }
.cap-fit li,.cap-offer li { position: relative; padding: 14px 0 14px 31px; border-top: 1px solid var(--line); }
.cap-fit li::before,.cap-offer li::before { content: "✓"; position: absolute; left: 2px; color: var(--sun-deep); font-weight: 900; }
.cap-fit-no { background: var(--earth); color: rgba(255,255,255,.72); }
.cap-fit-no h2 { color: white; }
.cap-fit-no li { border-color: rgba(255,255,255,.13); }
.cap-fit-no > p:last-child { margin: 30px 0 0; padding: 18px; border: 1px solid rgba(255,255,255,.18); font-size: .78rem; }

.cap-bonuses { background: var(--paper); }
.cap-bonus-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.cap-bonus-grid article { min-height: 310px; padding: 38px; border: 1px solid var(--line); background: var(--white); }
.cap-bonus-grid article > span { display: grid; width: 54px; height: 54px; margin-bottom: 46px; place-items: center; border-radius: 50%; background: var(--sun-soft); font-size: 1.4rem; }
.cap-bonus-grid small { color: var(--violet); font-size: .62rem; font-weight: 900; letter-spacing: .14em; }
.cap-bonus-grid h3 { margin: 10px 0 12px; font-size: 1.7rem; }
.cap-bonus-grid p { color: var(--earth-soft); }

.cap-offer { padding: 120px 0; background: linear-gradient(135deg,#2f211d,#5d4037); color: rgba(255,255,255,.76); }
.cap-offer-grid { display: grid; grid-template-columns: 1fr 480px; gap: 90px; align-items: center; }
.cap-offer h2 { color: white; font-size: clamp(3rem,5vw,5.2rem); }
.cap-offer > .container > div > p:not(.eyebrow) { max-width: 650px; font-size: 1.12rem; }
.cap-offer li { max-width: 570px; border-color: rgba(255,255,255,.14); color: white; }
.cap-price-card { padding: 46px; border: 1px solid rgba(255,255,255,.25); background: #fffaf2; color: var(--earth); box-shadow: 0 30px 80px rgba(0,0,0,.24); }
.cap-price-card > small:first-child { color: var(--violet); font-size: .65rem; font-weight: 900; letter-spacing: .13em; }
.cap-price { display: flex; align-items: baseline; gap: 13px; margin: 24px 0 15px; }
.cap-price strong { color: var(--earth-dark); font-family: var(--serif); font-size: 4.8rem; font-weight: 500; letter-spacing: -.07em; }
.cap-price span { color: var(--earth-soft); font-size: .72rem; }
.cap-price-card > p { color: var(--earth-soft); }
.cap-price-card form { margin-top: 28px; }
.cap-price-card .check-field { align-items: flex-start; margin: 14px 0; color: var(--earth); font-size: .72rem; line-height: 1.45; }
.cap-price-card .check-field a { text-decoration: underline; }
.cap-price-card button:disabled { opacity: .55; cursor: not-allowed; transform: none; }
.cap-payment-note { display: block; margin-top: 13px; color: var(--earth-soft); font-size: .68rem; line-height: 1.5; text-align: center; }
.cap-secure { display: flex; align-items: center; gap: 12px; margin-top: 28px; padding-top: 22px; border-top: 1px solid var(--line); }
.cap-secure > span { display: grid; width: 35px; height: 35px; place-items: center; border: 1px solid var(--line); border-radius: 50%; }
.cap-secure strong,.cap-secure small { display: block; }
.cap-secure strong { font-size: .74rem; }
.cap-secure small { color: var(--earth-soft); font-size: .65rem; }

.cap-faq { background: #fffefd; }
.cap-faq-grid { display: grid; grid-template-columns: .7fr 1.3fr; gap: 100px; }
.cap-faq-grid h2 { font-size: clamp(2.7rem,4.5vw,4.5rem); }
.cap-faq-grid > div:first-child > a { display: inline-block; margin-top: 15px; padding-bottom: 5px; border-bottom: 1px solid var(--earth); font-size: .82rem; font-weight: 800; }
.cap-final { padding: 120px 0; background: var(--earth-dark); color: white; text-align: center; }
.cap-final .container > span { display: inline-grid; width: 76px; height: 76px; margin-bottom: 28px; place-items: center; border-radius: 50%; background: var(--sun); color: var(--earth-dark); font-size: 2rem; }
.cap-final .eyebrow { justify-content: center; }
.cap-final h2 { color: white; font-size: clamp(3rem,5.4vw,5.5rem); }

.cap-back { display: inline-block; margin-bottom: 55px; color: var(--earth); font-size: .76rem; font-weight: 800; }
.cap-sample,.cap-diagnostic { padding-top: 88px; background: var(--paper); }
.cap-sample-hero,.cap-diagnostic-hero { padding: 80px 0 70px; background: linear-gradient(180deg,#fffaf2,#f7eddf); }
.cap-sample-hero .container,.cap-diagnostic-hero .container { max-width: 880px; }
.cap-sample-hero h1,.cap-diagnostic-hero h1 { max-width: 860px; margin-bottom: 22px; font-size: clamp(3.4rem,6.4vw,6.3rem); letter-spacing: -.06em; }
.cap-sample-hero .container > p:not(.eyebrow),.cap-diagnostic-hero .container > p:not(.eyebrow) { max-width: 730px; color: var(--earth-soft); font-family: var(--serif); font-size: 1.35rem; }
.cap-sample-hero .container > div { display: flex; gap: 14px; margin-top: 25px; }
.cap-sample-hero .container > div span { padding: 7px 11px; border: 1px solid var(--line); color: var(--earth-soft); font-size: .67rem; font-weight: 800; }
.cap-sample-layout { display: grid; grid-template-columns: minmax(0,760px) 300px; gap: 70px; align-items: start; padding-top: 80px; padding-bottom: 110px; }
.cap-lesson-article > header { margin-bottom: 60px; padding-bottom: 35px; border-bottom: 1px solid var(--line); }
.cap-lesson-article > header small { color: var(--violet); font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.cap-lesson-article > header p { margin: 16px 0 0; color: var(--earth-soft); }
.cap-lesson-article > section:not(.cap-sample-exercise) { margin-bottom: 50px; }
.cap-lesson-article h2 { font-size: clamp(2rem,3.2vw,3rem); }
.cap-lesson-article p { color: var(--earth); font-size: 1.02rem; line-height: 1.85; }
.cap-lesson-article blockquote { margin: 30px 0; padding: 28px 32px; border-left: 4px solid var(--sun); background: var(--sun-soft); font-family: var(--serif); font-size: 1.25rem; }
.cap-sample-exercise { margin-top: 70px; padding: 45px; background: var(--earth); color: white; }
.cap-sample-exercise > small { color: var(--sun); font-size: .62rem; font-weight: 900; letter-spacing: .14em; }
.cap-sample-exercise h2 { margin: 10px 0; color: white; }
.cap-sample-exercise > p { color: rgba(255,255,255,.7); }
.cap-sample-exercise label { display: block; margin: 28px 0; }
.cap-sample-exercise label > span { display: block; margin-bottom: 9px; font-size: .78rem; font-weight: 800; }
.cap-sample-exercise textarea,.cap-sample-exercise input { width: 100%; border: 1px solid rgba(255,255,255,.18); border-radius: 4px; padding: 15px; background: rgba(255,255,255,.08); color: white; }
.cap-preview-note { font-size: .7rem !important; }
.cap-checkpoint { display: flex; gap: 18px; margin-top: 32px; padding: 28px; border: 1px solid var(--line); }
.cap-checkpoint > span { display: grid; width: 42px; height: 42px; flex: 0 0 auto; place-items: center; border-radius: 50%; background: var(--sage-soft); color: var(--sage); }
.cap-checkpoint small { color: var(--earth-soft); font-size: .6rem; font-weight: 900; letter-spacing: .13em; }
.cap-checkpoint p { margin: 6px 0 0; font-family: var(--serif); font-size: 1.1rem; }
.cap-sample-aside { position: sticky; top: 30px; padding: 30px; border: 1px solid var(--line); background: var(--white); }
.cap-sample-aside > div small,.cap-sample-aside > div strong,.cap-sample-aside > div span { display: block; }
.cap-sample-aside > div small { color: var(--violet); font-size: .6rem; font-weight: 900; letter-spacing: .14em; }
.cap-sample-aside > div strong { margin-top: 10px; font-family: var(--serif); font-size: 2.5rem; font-weight: 500; }
.cap-sample-aside > div span { color: var(--earth-soft); font-size: .75rem; }
.cap-sample-aside ul { margin: 28px 0; padding: 0; list-style: none; }
.cap-sample-aside li { padding: 10px 0; border-top: 1px solid var(--line); font-size: .78rem; }
.cap-sample-aside li::before { content: "✓"; margin-right: 9px; color: var(--sun-deep); }
.cap-sample-aside > a:last-child { display: block; margin-top: 18px; color: var(--earth-soft); font-size: .72rem; text-align: center; text-decoration: underline; }

.cap-diagnostic-wrap { max-width: 880px; padding-top: 75px; padding-bottom: 110px; }
.cap-scale { display: flex; justify-content: space-between; margin-bottom: 22px; color: var(--earth-soft); font-size: .68rem; }
.cap-diagnostic-form fieldset { display: grid; grid-template-columns: 1fr 240px; gap: 25px; align-items: center; margin: 0; padding: 27px 0; border: 0; border-top: 1px solid var(--line); }
.cap-diagnostic-form legend { display: contents; font-family: var(--serif); font-size: 1.15rem; }
.cap-diagnostic-form legend > span { margin-right: 10px; color: var(--sun-deep); font-family: var(--sans); font-size: .65rem; font-weight: 900; }
.cap-radio-row { display: grid; grid-template-columns: repeat(4,1fr); gap: 8px; }
.cap-radio-row input { position: absolute; opacity: 0; }
.cap-radio-row span { display: grid; height: 42px; place-items: center; border: 1px solid var(--line); border-radius: 50%; cursor: pointer; font-size: .75rem; font-weight: 800; }
.cap-radio-row input:checked + span { border-color: var(--earth); background: var(--earth); color: white; }
.cap-diagnostic-form > button { margin-top: 35px; }
.cap-diagnostic-form > p { color: var(--earth-soft); font-size: .68rem; }
.cap-result-card { padding: clamp(36px,6vw,70px); border: 1px solid var(--line); background: var(--white); box-shadow: var(--shadow); }
.cap-result-card h2 { font-size: clamp(2.6rem,5vw,4.5rem); }
.cap-score-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 20px; margin: 50px 0; }
.cap-score-grid div > span { display: block; height: 8px; margin-bottom: 13px; overflow: hidden; border-radius: 10px; background: var(--paper-deep); }
.cap-score-grid i { display: block; height: 100%; background: var(--sun); }
.cap-score-grid strong,.cap-score-grid small { display: block; }
.cap-score-grid strong { font-size: .78rem; }
.cap-score-grid small { color: var(--earth-soft); font-size: .67rem; }
.cap-result-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.cap-result-note { margin: 30px 0 0; color: var(--earth-soft); font-size: .7rem; }

.cap-thanks { min-height: 100vh; display: grid; padding: 130px 24px 80px; place-items: center; background: radial-gradient(circle at 50% 10%,rgba(255,167,38,.2),transparent 34%),var(--paper); }
.cap-thanks > section { width: min(720px,100%); padding: clamp(36px,7vw,80px); border: 1px solid var(--line); background: var(--white); text-align: center; box-shadow: var(--shadow); }
.cap-thanks-mark { display: grid; width: 72px; height: 72px; margin: 0 auto 28px; place-items: center; border-radius: 50%; background: var(--sage-soft); color: var(--sage); font-size: 1.8rem; }
.cap-thanks .eyebrow { justify-content: center; }
.cap-thanks h1 { font-size: clamp(3rem,6vw,5.5rem); }
.cap-thanks > section > p:not(.eyebrow) { max-width: 560px; margin: 0 auto 35px; color: var(--earth-soft); }
.cap-thanks-next { margin: 35px 0; text-align: left; }
.cap-thanks-next article { display: flex; gap: 17px; padding: 18px 0; border-top: 1px solid var(--line); }
.cap-thanks-next article > span { color: var(--sun-deep); font-size: .65rem; font-weight: 900; }
.cap-thanks-next strong { display: block; font-family: var(--serif); }
.cap-thanks-next p { margin: 3px 0 0; color: var(--earth-soft); font-size: .78rem; }
.cap-pending { display: flex; flex-direction: column; gap: 6px; margin: 28px 0; padding: 24px; background: var(--paper-deep); }
.cap-pending > span { width: 22px; height: 22px; margin: 0 auto 8px; border: 3px solid var(--line); border-top-color: var(--sun-deep); border-radius: 50%; animation: cap-spin .9s linear infinite; }
.cap-pending small { color: var(--earth-soft); }
@keyframes cap-spin { to { transform: rotate(360deg); } }

@media (max-width: 980px) {
  .cap-hero-grid,.cap-problem-grid,.cap-inside-grid,.cap-offer-grid,.cap-faq-grid,.cap-sample-layout { grid-template-columns: 1fr; }
  .cap-hero-grid { gap: 45px; }.cap-hero-visual { max-width: 760px; }.cap-problem-grid,.cap-faq-grid { gap: 35px; }
  .cap-offer-grid { gap: 55px; }.cap-price-card { max-width: 600px; }.cap-sample-aside { position: static; }
  .cap-inside-grid { gap: 55px; }.cap-workbook-preview { min-height: 520px; max-width: 600px; width: 100%; }
}
@media (max-width: 740px) {
  .cap-hero { padding-top: 110px; }.cap-hero-grid { min-height: 0; padding-bottom: 60px; }.cap-hero-copy h1 { font-size: clamp(3rem,15vw,4.6rem); }
  .cap-hero-actions { align-items: stretch; flex-direction: column; }.cap-text-link { align-self: flex-start; }
  .cap-hero-visual figcaption { right: -8px; bottom: -24px; }.cap-proof-strip .container { grid-template-columns: 1fr 1fr; padding: 18px 0; }.cap-proof-strip span:nth-child(2) { border-right: 0; }
  .cap-frictions,.cap-outcomes,.cap-bonus-grid,.cap-fit-grid { grid-template-columns: 1fr; }.cap-frictions article { min-height: 190px; }.cap-frictions h3 { margin-top: 25px; }
  .cap-module-list summary { grid-template-columns: 48px minmax(0,1fr); gap: 12px; padding: 25px 0; }.cap-module-list summary > b { grid-column: 2; }.cap-module-lessons { margin-left: 48px; }.cap-module-lessons div { grid-template-columns: 48px 1fr; padding-inline: 15px; }.cap-module-lessons small { grid-column: 2; }
  .cap-workbook-preview { min-height: 450px; }.cap-paper { inset: 10px 20px 10px 0; padding: 35px 28px; }.cap-paper-back { inset: 35px 0 0 35px; }.cap-paper h3 { margin: 35px 0; font-size: 2rem; }
  .cap-offer,.cap-transformation { padding: 85px 0; }.cap-price-card { padding: 30px 24px; }.cap-price strong { font-size: 4rem; }
  .cap-sample,.cap-diagnostic { padding-top: 76px; }.cap-sample-hero,.cap-diagnostic-hero { padding: 55px 0; }.cap-sample-hero h1,.cap-diagnostic-hero h1 { font-size: clamp(2.8rem,14vw,4.2rem); }
  .cap-sample-layout { padding-top: 55px; gap: 45px; }.cap-sample-exercise { padding: 30px 22px; }
  .cap-diagnostic-form fieldset { grid-template-columns: 1fr; gap: 15px; }.cap-scale { display: none; }.cap-radio-row { max-width: 280px; }
  .cap-score-grid { grid-template-columns: 1fr 1fr; }.cap-result-actions { align-items: stretch; flex-direction: column; }
}
