/* Page composition. Portable tokens, buttons, headings and surfaces live in modern-ui.css. */
/* Long-page anchor jumps stay immediate, including keyboard navigation. */
html:has(.cb-reasons) { scroll-behavior: auto; }
/* The original hero photo treatment is retained. */
.cb-reasons .cbr-hero { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; padding-block: 72px 80px; }
.cb-reasons .cbr-hero h1 { font-size: clamp(32px,3.6vw,48px); letter-spacing: -.045em; line-height: 1.55; color: var(--cbm-deep); }
.cb-reasons .cbr-hero h1 > span { display: block; }
.cb-reasons .cbr-hero h1 .cbm-marker { display: inline-block; }
.cb-reasons .cbr-hero-statement { font-size: 24px; font-weight: 700; line-height: 1.65; letter-spacing: -.015em; margin-top: 26px; }
.cb-reasons .cbr-hero .cbm-lead { margin-top: 18px; font-size: 15px; }
.cb-reasons .cbr-hero .cbm-text-link { margin-top: 20px; }
.cb-reasons .cbr-hero-photo { position: relative; border-radius: 32px; background: #eeefed; overflow: hidden; align-self: stretch; min-height: 510px; }
.cb-reasons .cbr-hero-photo > img { width: 100%; height: calc(100% - 64px); top: 64px; position: absolute; object-fit: cover; object-position: 54% center; }
.cb-reasons .cbr-photo-note { position: absolute; top: 12px; left: 30px; font-family: var(--cbm-script); color: var(--cbm-deep); font-size: 35px; transform: rotate(-4deg); }
.cb-reasons .cbr-hero-photo figcaption { position: absolute; bottom: 0; left: 0; right: 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 22px 28px; color: var(--cbm-deep); background: var(--cbm-yellow); font-size: 13px; font-weight: 700; }
.cb-reasons .cbr-photo-dot { width: 10px; height: 10px; flex: none; border-radius: 50%; background: var(--cbm-blue); }
.cb-reasons .cbr-intro { padding-block: 24px 56px; }
.cb-reasons .cbr-intro h2 { font-size: clamp(27px,3vw,38px); }
.cb-reasons .cbr-intro .cbm-section-head { margin-bottom: 30px; }
.cb-reasons .cbr-promises { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.cb-reasons .cbr-promise { display: grid; grid-template-columns: 52px 1fr; grid-template-rows: auto 1fr auto auto; align-items: center; gap: 16px 14px; position: relative; padding: 30px; background: #fff9e4; border-radius: 26px; color: var(--cbm-deep); min-height: 300px; }
.cb-reasons .cbr-promise:nth-child(2) { background: var(--cbm-sky); }
.cb-reasons .cbr-promise-icon { width: 52px; height: 52px; background: #fff; border-radius: 15px; padding: 3px; }
.cb-reasons .cbr-promise-label { font-size: 14px; font-weight: 700; line-height: 1.8; }
.cb-reasons .cbr-promise-value { grid-column: 1 / -1; display: flex; align-items: baseline; margin-block: 4px 0; white-space: nowrap; line-height: 1; }
.cb-reasons .cbr-promise-value > span { font-size: 20px; font-weight: 700; }
.cb-reasons .cbr-promise-value > strong { font-size: 90px; letter-spacing: -.055em; margin-right: .05em; }
.cb-reasons .cbr-promise-value strong span { font-size: 40px; vertical-align: .15em; letter-spacing: -.08em; }
.cb-reasons .cbr-promise p { grid-column: 1 / -1; font-size: 13px; margin-top: 4px; }
.cb-reasons .cbr-promise-blue { background: var(--cbm-blue); color: #fff; }
.cb-reasons .cbr-promise-words { grid-column: 1 / -1; font-size: 34px; line-height: 1.45; font-weight: 700; }
.cb-reasons .cbr-promise-link { grid-column: 1 / -1; justify-self: start; display: inline-flex; align-items: center; gap: 12px; margin-top: 4px; padding-bottom: 3px; border-bottom: 1px solid currentColor; font-size: 12px; font-weight: 700; }
.cb-reasons .cbr-promise-link > span { font-size: 16px; line-height: 1; }
.cb-reasons .cbr-promise:hover .cbr-promise-link { border-bottom-width: 2px; padding-bottom: 2px; }
.cb-reasons .cbr-jump { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 16px; padding-block: 24px; border-block: 1px solid var(--cbm-line); }
.cb-reasons .cbr-jump a { display: flex; align-items: center; gap: 10px; font-size: 12px; color: var(--cbm-sub); padding: 4px 0; }
.cb-reasons .cbr-jump a > span { font-family: var(--cbm-script); font-size: 22px; color: var(--cbm-blue); line-height: 1; }
.cb-reasons .cbr-jump a:hover { color: var(--cbm-blue); text-decoration: underline; text-underline-offset: 7px; }
/* A reason, its evidence and its caveats share one visible card. */
.cb-reasons .cbr-proofs { display: flex; flex-direction: column; gap: 24px; }
.cb-reasons .cbr-proof { display: grid; grid-template-columns: .8fr 1.2fr; gap: 60px; background: #fff; border-radius: 30px; padding: 44px 48px; }
.cb-reasons .cbr-proof-meta { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
.cb-reasons .cbr-proof-icon { width: 72px; height: 72px; flex: none; }
.cb-reasons .cbr-number { display: block; color: var(--cbm-blue); font-family: var(--cbm-mono); font-size: 15px; }
.cb-reasons .cbr-proof-title h3 { font-size: 27px; color: var(--cbm-deep); }
.cb-reasons .cbr-proof-title h3 > span { display: inline-block; }
.cb-reasons .cbr-proof-body > p { color: var(--cbm-sub); }
.cb-reasons .cbr-evidence { margin-top: 24px; }
.cb-reasons :is(.cbr-evidence,.cbr-honest,.cbr-ask) > span { display: block; font-size: 11px; letter-spacing: .08em; font-weight: 700; margin-bottom: 6px; color: var(--cbm-sub); }
.cb-reasons .cbr-evidence > span { color: var(--cbm-blue); }
.cb-reasons .cbr-evidence a { color: var(--cbm-blue); font-size: 14px; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.cb-reasons .cbr-honest { margin-top: 22px; font-size: 14px; color: var(--cbm-sub); }
.cb-reasons .cbr-ask { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--cbm-line); font-size: 14px; }
.cb-reasons .cbr-visit { width: 100%; aspect-ratio: 1.6; object-fit: cover; height: auto; border-radius: 16px; margin-top: 24px; }
/* Free preparation is presented as a lesson pass, with its conditions in view. */
.cb-reasons .cbr-lesson { display: grid; grid-template-columns: 1.1fr 1fr; border-radius: 32px; background: var(--cbm-sky); padding: 16px; gap: 12px; }
.cb-reasons .cbr-lesson-copy { padding: 34px; }
.cb-reasons .cbr-lesson-copy :is(h2,p):where(:not(.cb-h2-label)):where(h2,.cb-h2-display) { color: var(--cbm-deep); font-size: clamp(32px,3.6vw,46px); margin-block: 24px; }
/* The h2 is a short topic label; the catchphrase stays a paragraph with the former h2 look (2026-10-02). */
.cb-reasons .cbr-lesson-copy h2.cb-h2-label { color: var(--cbm-deep); font-size: 13px; line-height: 1.6; letter-spacing: .08em; word-break: keep-all; margin-block: 24px 0; }
.cb-reasons .cbr-lesson-copy p.cb-h2-display { font-family: var(--cbm-body); line-height: 1.5; letter-spacing: -.035em; word-break: normal; overflow-wrap: anywhere; line-break: strict; margin-top: 4px; }
.cb-reasons .cbr-free { display: inline-block; background: var(--cbm-yellow); color: var(--cbm-deep); border-radius: 6px; padding: 7px 14px; font-size: 15px; font-weight: 700; transform: rotate(-2deg); }
.cb-reasons .cbr-lesson-terms { font-size: 13px; margin-block: 16px; color: var(--cbm-deep); }
.cb-reasons .cbr-lesson-visual { display: flex; align-items: center; justify-content: center; padding: 28px 24px; color: var(--cbm-deep); border-left: 1px dashed #afc3e5; }
.cb-reasons .cbr-lesson-ticket { position: relative; width: 100%; padding: 28px 16px 30px; display: flex; flex-direction: column; align-items: center; background: #fff; border-radius: 22px; transform: rotate(2deg); box-shadow: 0 14px 24px -22px #234f9860; }
.cb-reasons .cbr-lesson-ticket::before { content: ''; width: 70px; height: 20px; position: absolute; top: -10px; left: calc(50% - 35px); background: #ffd93bcc; transform: rotate(-5deg); }
.cb-reasons .cbr-lesson-visual img { width: 130px; height: 130px; }
.cb-reasons .cbr-lesson-value { display: flex; align-items: baseline; margin-top: 6px; line-height: 1.15; }
.cb-reasons .cbr-lesson-value span { font-size: 24px; font-weight: 700; }
.cb-reasons .cbr-lesson-value strong { font-size: 132px; letter-spacing: -.055em; margin-right: .04em; }
.cb-reasons .cbr-lesson-visual p { margin-top: 12px; font-size: 12px; text-align: center; }
.cb-reasons .cbr-lesson-visual .cbm-script { margin-top: 16px; transform: rotate(-5deg); color: var(--cbm-blue); font-size: 33px; }
.cb-reasons .cbr-story { background: #214c91; color: #fff; }
.cb-reasons .cb-wave--story { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='30' viewBox='0 0 140 30' preserveAspectRatio='none'%3E%3Cpath d='M0 12 Q 35 26 70 12 T 140 12 L 140 0 L 0 0 Z' fill='%23214c91'/%3E%3C/svg%3E"); }
.cb-reasons .cbr-story-grid { display: grid; grid-template-columns: .92fr 1.08fr; gap: 64px; align-items: center; }
.cb-reasons .cbr-story .cbm-eyebrow { color: #c5d8f7; }
.cb-reasons .cbr-story h2 { font-size: clamp(28px,3.1vw,40px); }
.cb-reasons .cbr-story-memory { background: #fff; color: var(--cbm-deep); padding: 10px 10px 12px; border-radius: 8px; margin: 36px 12px 0 4px; transform: rotate(-3deg); }
.cb-reasons .cbr-story-memory img { width: 100%; height: auto; aspect-ratio: 1.5; object-fit: cover; border-radius: 3px; }
.cb-reasons .cbr-story-memory figcaption { font-size: 12px; padding: 10px 8px 0; }
.cb-reasons .cbr-story-copy { position: relative; padding: 44px; background: #fffefa; color: var(--cbm-ink); border-radius: 22px; box-shadow: 0 20px 35px -25px #102b56; }
.cb-reasons .cbr-story-copy::before { content: ''; position: absolute; top: -12px; left: calc(50% - 48px); width: 96px; height: 26px; background: #ffd93bcc; transform: rotate(-3deg); }
.cb-reasons .cbr-story-copy > p { line-height: 2.1; margin-bottom: 22px; font-size: 15px; }
.cb-reasons .cbr-story-signoff { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 18px; border-top: 1px solid var(--cbm-line); padding-top: 20px; }
.cb-reasons .cbr-story-author { display: flex; align-items: center; gap: 12px; }
.cb-reasons .cbr-story-author img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
.cb-reasons .cbr-story-author figcaption { font-size: 11px; color: var(--cbm-sub); }
.cb-reasons .cbr-story-author strong { display: block; font-size: 17px; color: var(--cbm-deep); }
.cb-reasons .cbr-story-copy .cbm-script { color: var(--cbm-blue); font-size: 29px; transform: rotate(-4deg); }
.cb-reasons .cbr-types { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.cb-reasons .cbr-types .cbm-panel { border: 1px solid var(--cbm-line); background: #fff; padding: 36px; }
.cb-reasons .cbr-types .cbr-type-us { border: 2px solid #91b1e6; background: #f4f7fe; }
.cb-reasons .cbr-type-flow { display: grid; grid-template-columns: 1fr 24px .8fr; align-items: center; gap: 12px; padding: 24px 0; margin-bottom: 8px; }
.cb-reasons .cbr-type-flow > span { font-size: 16px; font-weight: 700; text-align: center; }
.cb-reasons .cbr-type-flow > span:not([aria-hidden]) { padding: 18px 10px; border-radius: 12px; background: #edf0f4; }
.cb-reasons .cbr-type-us .cbr-type-flow > span:first-child { background: var(--cbm-yellow); color: var(--cbm-deep); transform: rotate(-3deg); }
.cb-reasons .cbr-type-us .cbr-type-flow > span:last-child { background: #dce7fa; color: var(--cbm-deep); }
.cb-reasons .cbr-types-note { max-width: 760px; margin: 28px auto 0; color: var(--cbm-sub); }
.cb-reasons .cbr-editorial { display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; }
.cb-reasons .cbr-editorial .cbm-lead { margin-top: 24px; }
.cb-reasons .cbr-promise-note { display: flex; align-items: center; gap: 16px; margin-top: 34px; color: var(--cbm-blue); }
.cb-reasons .cbr-promise-note img { width: 90px; height: 90px; }
.cb-reasons .cbr-promise-note .cbm-script { font-size: 34px; transform: rotate(-5deg); }
.cb-reasons .cbr-notdo { background: #fff; border-radius: 24px; padding: 8px 30px; }
.cb-reasons .cbr-notdo > div { display: flex; gap: 20px; align-items: start; border-bottom: 1px dashed var(--cbm-line); padding: 24px 0; }
.cb-reasons .cbr-notdo > div:last-child { border-bottom: 0; }
.cb-reasons .cbr-notdo > div > span { display: grid; place-items: center; width: 32px; height: 32px; flex: none; border-radius: 50%; background: #eef3fc; color: var(--cbm-blue); font-size: 22px; line-height: 1; margin-top: 3px; }
.cb-reasons .cbr-notdo strong { display: block; font-size: 21px; }
.cb-reasons .cbr-notdo p > span { display: block; color: var(--cbm-sub); margin-top: 6px; font-size: 14px; }
.cb-reasons .cbr-table-note { color: var(--cbm-blue); font-size: 32px; max-width: 220px; transform: rotate(-5deg); flex: none; padding-bottom: 8px; border-bottom: 4px solid var(--cbm-yellow); }
.cb-reasons .cbr-table-scroll { overflow-x: auto; border: 1px solid var(--cbm-line); border-radius: 24px; box-shadow: 0 16px 35px -30px #234f9860; }
.cb-reasons .cbr-table-hint { display: none; }
.cb-reasons .cbr-table { border-collapse: collapse; width: 100%; min-width: 560px; table-layout: fixed; line-height: 1.8; margin: 0; }
.cb-reasons .cbr-table :is(th,td) { padding: 23px 28px; border: 0; border-bottom: 1px solid var(--cbm-line); background: #fff; color: var(--cbm-ink); text-align: left; font-size: 15px; }
.cb-reasons .cbr-table thead th { background: var(--cbm-soft); color: var(--cbm-sub); font-size: 16px; }
.cb-reasons .cbr-table thead th:first-child { width: 29%; }
.cb-reasons .cbr-table thead th:last-child { width: 40%; background: var(--cbm-blue); color: #fff; }
.cb-reasons .cbr-table td:last-child { background: #edf3ff; color: var(--cbm-deep); font-weight: 700; }
.cb-reasons .cbr-table tbody tr:last-child :is(th,td) { border-bottom: 0; }
/* A keepsake notebook: visual details sit outside the editable text. */
.cb-reasons .cbr-questions-card { position: relative; background: linear-gradient(90deg,transparent 43px,#dce6f5 43px,#dce6f5 44px,transparent 44px),#fff; border-radius: 22px; padding: 38px 32px 32px 66px; box-shadow: 0 14px 30px -24px #234f9860; }
.cb-reasons .cbr-questions-card::before { content: ''; position: absolute; top: -12px; left: calc(50% - 45px); width: 90px; height: 26px; background: #ffd93bdd; transform: rotate(3deg); }
.cb-reasons .cbr-questions-card::after { content: ''; position: absolute; left: 12px; top: 40px; bottom: 28px; width: 18px; background: radial-gradient(circle,var(--cbm-soft) 5px,transparent 6px) center top / 18px 34px repeat-y; }
.cb-reasons .cbr-questions-label { font-size: 13px; font-weight: 700; padding-bottom: 16px; border-bottom: 2px solid var(--cbm-blue); color: var(--cbm-deep); }
.cb-reasons .cbr-question-list { list-style: none; padding: 0; }
.cb-reasons .cbr-question-list li { display: flex; align-items: baseline; gap: 18px; padding: 17px 0; border-bottom: 1px solid #e2e9f3; font-size: 15px; }
.cb-reasons .cbr-question-list li > span { font-family: var(--cbm-mono); color: var(--cbm-blue); font-size: 12px; flex: none; }
.cb-reasons .cbr-save { color: var(--cbm-blue); display: block; width: fit-content; margin-top: 36px; padding-bottom: 8px; border-bottom: 3px solid var(--cbm-yellow); transform: rotate(-5deg); }
.cb-reasons .cbr-fit { border-top: 1px solid var(--cbm-line); }
.cb-reasons .cbr-fit > div { display: grid; grid-template-columns: 46px 1.2fr 1fr; gap: 24px; align-items: center; padding: 26px 0; border-bottom: 1px solid var(--cbm-line); }
.cb-reasons .cbr-fit-index { font-family: var(--cbm-script); color: var(--cbm-blue); font-size: 34px; line-height: 1; transform: rotate(-4deg); }
.cb-reasons .cbr-fit h3 { font-size: 21px; }
.cb-reasons .cbr-fit p { font-size: 14px; color: var(--cbm-sub); }
.cb-reasons .cbr-fit-end { font-size: 22px; font-weight: 700; line-height: 1.9; margin-top: 44px; }
.cb-reasons .cbr-fit-end .cbm-blue { background: linear-gradient(transparent 76%,#fff0a1 76%,#fff0a1 96%,transparent 96%); }
/* People: the approved photo-and-story composition is preserved. */
.cb-reasons .cbr-people { display: grid; gap: 96px; padding-top: 22px; }
.cb-reasons .cbr-person { display: grid; grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr); align-items: center; gap: clamp(44px,6vw,92px); }
.cb-reasons .cbr-person:nth-child(even) { grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr); }
.cb-reasons .cbr-person:nth-child(even) .cbr-person-portrait { order: 2; }
.cb-reasons .cbr-person-portrait { position: relative; min-width: 0; padding: 0 12px; }
.cb-reasons .cbr-person-photo { padding: 12px 12px 22px; border-radius: 26px; background: #fff; box-shadow: 0 12px 32px -22px #234f9838; transform: rotate(-2deg); }
.cb-reasons .cbr-person:nth-child(even) .cbr-person-photo { transform: rotate(2deg); }
.cb-reasons .cbr-person-photo img { width: 100%; aspect-ratio: 1 / 1.04; height: auto; object-fit: cover; object-position: center 35%; border-radius: 17px; }
.cb-reasons .cbr-person-photo figcaption { padding-top: 17px; text-align: center; }
.cb-reasons .cbr-person-signature { display: block; font-family: var(--cbm-script); color: var(--cbm-deep); font-size: clamp(34px,3.4vw,45px); line-height: 1.1; font-weight: 600; }
.cb-reasons .cbr-person-caption { display: block; margin-top: 10px; color: var(--cbm-sub); font-size: 12px; letter-spacing: .02em; }
.cb-reasons .cbr-person-highlight { position: absolute; top: -22px; right: -10px; width: 112px; height: 112px; border-radius: 50%; display: flex; flex-direction: column; justify-content: center; align-items: center; background: var(--cbm-yellow); color: var(--cbm-deep); transform: rotate(7deg); font-size: 13px; font-weight: 700; line-height: 1.45; }
.cb-reasons .cbr-person-highlight > span { display: block; }
.cb-reasons .cbr-person-highlight strong { font-size: 37px; letter-spacing: -.055em; line-height: 1.2; margin-right: 2px; }
.cb-reasons .cbr-person-copy { min-width: 0; }
.cb-reasons .cbr-person-role { color: var(--cbm-sub); font-size: 12px; font-weight: 700; letter-spacing: .07em; margin-bottom: 3px; }
.cb-reasons .cbr-person-copy h3 { font-size: 22px; color: var(--cbm-deep); }
.cb-reasons .cbr-person-quote { margin-top: 24px; color: var(--cbm-deep); font-size: clamp(25px,2.5vw,32px); line-height: 1.75; font-weight: 700; letter-spacing: -.025em; text-wrap: pretty; }
.cb-reasons .cbr-person-quote::before { content: ''; display: block; width: 42px; height: 5px; background: var(--cbm-yellow); border-radius: 3px; margin-bottom: 16px; transform: rotate(-4deg); }
.cb-reasons .cbr-person-story { color: var(--cbm-sub); font-size: 15px; line-height: 2; margin-top: 20px; }
.cb-reasons .cbr-person-topics { margin-top: 24px; }
.cb-reasons .cbr-person-topics > p { font-size: 12px; color: var(--cbm-deep); font-weight: 700; margin-bottom: 8px; }
.cb-reasons .cbr-person-topics ul { display: flex; flex-wrap: wrap; gap: 7px; list-style: none; padding: 0; }
.cb-reasons .cbr-person-topics li { padding: 4px 11px; background: #e6ecf6; color: var(--cbm-deep); border-radius: 5px; font-size: 12px; }
.cb-reasons .cbr-person-link { display: flex; justify-content: space-between; align-items: center; gap: 12px; color: var(--cbm-blue); font-size: 14px; font-weight: 700; border-bottom: 1px solid #b5c6df; padding-block: 16px; margin-top: 12px; }
.cb-reasons .cbr-person-link span { flex: none; font-size: 21px; line-height: 1; }
.cb-reasons .cbr-person-link:hover { border-bottom-color: var(--cbm-blue); }
.cb-reasons .cbr-people-booking { display: flex; width: fit-content; margin: 60px auto 0; flex-direction: row; gap: 24px; }
.cb-reasons .cbr-people-booking > span { font-size: 18px; }
.cb-reasons .cbr-social { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 64px; border-top: 1px solid var(--cbm-line); margin-top: 72px; padding-top: 64px; }
.cb-reasons .cbr-social h3 { font-size: 27px; margin-bottom: 20px; color: var(--cbm-deep); }
.cb-reasons .cbr-social-copy > p:not(.cbm-eyebrow) { color: var(--cbm-sub); font-size: 15px; }
.cb-reasons .cbr-social a { margin-top: 12px; }
.cb-reasons .cbr-social-photos { display: grid; grid-template-columns: repeat(10,1fr); grid-template-rows: 40px auto 40px auto; padding: 10px; }
.cb-reasons .cbr-social-photos img { width: 100%; aspect-ratio: 1.4; height: auto; object-fit: cover; border: 8px solid #fff; border-bottom-width: 22px; box-shadow: 0 12px 26px -20px #234f9866; }
.cb-reasons .cbr-social-photos img:first-child { grid-area: 1 / 1 / 3 / 8; transform: rotate(-7deg); }
.cb-reasons .cbr-social-photos img:nth-child(2) { grid-area: 2 / 4 / 4 / 11; transform: rotate(6deg); }
.cb-reasons .cbr-social-photos .cbm-script { grid-area: 4 / 1 / 5 / 11; justify-self: center; margin-top: 24px; font-size: 33px; color: var(--cbm-blue); transform: rotate(-4deg); }
.cb-reasons .cbr-paths { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.cb-reasons .cbr-paths article { position: relative; padding: 32px; border-radius: 22px; border: 1px solid var(--cbm-line); background: #fff; }
.cb-reasons .cbr-paths article:nth-child(2) { background: #f4f7fd; border-color: #dae4f4; }
.cb-reasons .cbr-path-letter { display: grid; place-items: center; width: 52px; height: 52px; background: #fff4c7; border-radius: 50%; font-family: var(--cbm-script); font-size: 36px; color: var(--cbm-deep); line-height: 1; margin-bottom: 24px; transform: rotate(-5deg); }
.cb-reasons .cbr-paths h3 { font-size: 21px; margin-bottom: 16px; }
.cb-reasons .cbr-paths p { color: var(--cbm-sub); font-size: 14px; }
.cb-reasons .cbr-takehome { display: grid; grid-template-columns: 1fr 1.25fr; gap: 48px; align-items: center; background: #fff8df; padding: 40px; border-radius: 28px; margin-top: 40px; }
.cb-reasons .cbr-takehome h3 { font-size: 24px; color: var(--cbm-deep); }
.cb-reasons .cbr-takehome img { width: 92px; height: 92px; margin-bottom: 18px; }
.cb-reasons .cbr-takehome .cbm-script { display: inline-block; margin-top: 16px; font-size: 32px; color: var(--cbm-blue); transform: rotate(-4deg); }
.cb-reasons .cbr-takehome ul { list-style: none; padding: 24px 28px; background: #fff; border-radius: 12px; box-shadow: 0 10px 25px -24px #234f9870; }
.cb-reasons .cbr-takehome li { position: relative; padding: 13px 0 13px 26px; font-size: 15px; border-bottom: 1px solid #eef0f4; }
.cb-reasons .cbr-takehome li:last-child { border-bottom: 0; }
.cb-reasons .cbr-takehome li::before { content: ''; position: absolute; left: 2px; top: 24px; width: 12px; height: 7px; border: solid var(--cbm-blue); border-width: 0 0 2px 2px; transform: rotate(-45deg); }
.cb-reasons .cb-final__box { max-width: 1040px; padding: 46px 30px; border: 1px solid #ffffff40; border-radius: 36px; background: #ffffff08; }
.cb-reasons .cb-final__script { font-size: 52px; transform: rotate(-4deg); }
.cb-reasons .cb-final__h2 { margin-top: 24px; word-break: keep-all; overflow-wrap: normal; }
/* Keep 「聞きたいことだけ」 together after the first intentional wrap opportunity. */
.cb-reasons .cb-final__h2 wbr ~ wbr { display: none; }
.cb-reasons .cb-final__btns { gap: 18px; }

.cb-reasons .cbr-mobile-br { display: none; }
@media (min-width: 761px) and (max-width: 1050px) {
  .cb-reasons .cbr-hero { gap: 32px; }
  .cb-reasons .cbr-hero-photo { min-height: 520px; }
  .cb-reasons .cbr-proof { gap: 32px; padding: 36px; }
  .cb-reasons .cbr-promise { padding: 24px 20px; gap: 16px 10px; grid-template-columns: 46px 1fr; }
  .cb-reasons .cbr-promise-icon { width: 46px; height: 46px; }
  .cb-reasons .cbr-promise-label { font-size: 12px; }
  .cb-reasons .cbr-promise-value > strong { font-size: 72px; }
  .cb-reasons .cbr-promise-words { font-size: 29px; }
  .cb-reasons .cbr-promise p { font-size: 12px; }
  .cb-reasons .cbr-jump { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .cb-reasons .cbr-story-grid, .cb-reasons .cbr-editorial { gap: 36px; }
  .cb-reasons .cbr-story-grid { grid-template-columns: .85fr 1.15fr; }
  .cb-reasons .cbr-story-copy { padding: 32px; }
  .cb-reasons .cbr-lesson-copy { padding: 24px; }
  .cb-reasons .cbr-lesson-visual { padding: 24px 14px; }
  .cb-reasons .cbr-lesson-value strong { font-size: 104px; }
  .cb-reasons .cbr-lesson-value span { font-size: 21px; }
  .cb-reasons .cbr-types .cbm-panel { padding: 28px; }
  .cb-reasons .cbr-type-flow { gap: 8px; }
  .cb-reasons .cbr-type-flow > span { font-size: 14px; }
  .cb-reasons .cbr-notdo { padding-inline: 24px; }
  .cb-reasons .cbr-notdo strong { font-size: 19px; }
  .cb-reasons .cbr-questions-card { padding-right: 26px; padding-left: 58px; }
  .cb-reasons .cbr-table-note { max-width: 165px; font-size: 29px; }
  .cb-reasons .cbr-social { gap: 40px; }
  .cb-reasons .cbr-paths { gap: 16px; }
  .cb-reasons .cbr-paths article { padding: 26px; }
  .cb-reasons .cbr-takehome { gap: 30px; padding: 32px; }
}
@media (max-width: 760px) {
  .cb-reasons .cbr-hero { grid-template-columns: 1fr; gap: 32px; padding-block: 36px 48px; }
  .cb-reasons .cbr-hero-copy { display: contents; }
  .cb-reasons .cbr-hero-heading { order: 0; }
  .cb-reasons .cbr-hero-photo { order: 1; }
  .cb-reasons .cbr-hero-detail { order: 2; }
  .cb-reasons .cbr-hero-detail .cbm-lead:first-child { margin-top: 0; }
  .cb-reasons .cbr-hero h1 { font-size: clamp(30px,7.8vw,48px); }
  .cb-reasons .cbr-hero-statement { font-size: 21px; margin-top: 22px; }
  .cb-reasons .cbr-hero .cbm-lead { font-size: 14px; }
  .cb-reasons .cbr-hero-photo { min-height: 0; height: 360px; border-radius: 24px; }
  .cb-reasons .cbr-hero-photo > img { object-position: center; }
  .cb-reasons .cbr-photo-note { font-size: 30px; top: 12px; left: 24px; }
  .cb-reasons .cbr-hero-photo figcaption { padding: 18px 20px; font-size: 12px; }
  .cb-reasons .cbr-proof { grid-template-columns: 1fr; gap: 22px; padding: 28px 24px; border-radius: 24px; }
  .cb-reasons .cbr-proof-meta { gap: 12px; margin-bottom: 16px; }
  .cb-reasons .cbr-proof-icon { width: 60px; height: 60px; }
  .cb-reasons .cbr-proof-title h3 { font-size: 24px; }
  .cb-reasons .cbr-intro { padding-top: 16px; padding-bottom: 40px; }
  .cb-reasons .cbr-mobile-br { display: inline; }
  .cb-reasons .cbr-intro h2 { font-size: 27px; }
  .cb-reasons .cbr-promises { grid-template-columns: 1fr; gap: 16px; }
  .cb-reasons .cbr-promise { min-height: 256px; padding: 24px; border-radius: 22px; }
  .cb-reasons .cbr-promise-value > strong { font-size: 80px; }
  .cb-reasons .cbr-promise-words { font-size: 32px; }
  .cb-reasons .cbr-jump { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 18px; padding-block: 20px; }
  .cb-reasons .cbr-jump a { font-size: 12px; gap: 8px; }
  .cb-reasons .cbr-lesson { grid-template-columns: 1fr; border-radius: 24px; padding: 8px; gap: 0; }
  .cb-reasons .cbr-lesson-copy { padding: 26px 16px; }
  .cb-reasons .cbr-free { font-size: 13px; padding-inline: 10px; }
  .cb-reasons .cbr-lesson-visual { border-left: 0; border-top: 1px dashed #afc3e5; margin-inline: 16px; padding: 32px 0 20px; }
  .cb-reasons .cbr-lesson-ticket { width: min(100%,340px); padding: 24px 12px; }
  .cb-reasons .cbr-lesson-visual img { width: 106px; height: 106px; }
  .cb-reasons .cbr-lesson-value strong { font-size: 114px; }
  .cb-reasons .cbr-lesson-value span { font-size: 22px; }
  .cb-reasons .cbr-lesson-visual .cbm-script { font-size: 30px; }
  .cb-reasons .cbr-story-grid, .cb-reasons .cbr-editorial { grid-template-columns: 1fr; gap: 38px; }
  .cb-reasons .cbr-story-memory { max-width: 420px; margin: 28px 8px 4px; }
  .cb-reasons .cbr-story-copy { padding: 30px 24px; border-radius: 20px; }
  .cb-reasons .cbr-story-copy > p { font-size: 14px; }
  .cb-reasons .cbr-story-signoff { gap: 14px; }
  .cb-reasons .cbr-types { grid-template-columns: 1fr; gap: 20px; }
  .cb-reasons .cbr-types .cbm-panel { padding: 28px 24px; }
  .cb-reasons .cbr-type-flow { gap: 8px; }
  .cb-reasons .cbr-type-flow > span { font-size: 13px; }
  .cb-reasons .cbr-type-flow > span:not([aria-hidden]) { padding: 16px 6px; }
  .cb-reasons .cbr-promise-note { margin-top: 24px; }
  .cb-reasons .cbr-promise-note img { width: 72px; height: 72px; }
  .cb-reasons .cbr-promise-note .cbm-script { font-size: 30px; }
  .cb-reasons .cbr-notdo { padding: 4px 22px; }
  .cb-reasons .cbr-notdo > div { gap: 14px; padding-block: 22px; }
  .cb-reasons .cbr-notdo strong { font-size: 18px; }
  .cb-reasons .cbr-notdo p > span { font-size: 13px; }
  .cb-reasons .cbr-table :is(th,td) { padding: 18px 20px; font-size: 13px; }
  .cb-reasons .cbr-table-scroll { border-radius: 18px; }
  .cb-reasons .cbr-table-hint { display: block; color: var(--cbm-sub); font-size: 12px; margin-bottom: 12px; }
  .cb-reasons .cbr-table-note { display: inline-block; font-size: 26px; max-width: none; margin-top: 24px; }
  .cb-reasons .cbr-questions-card { padding: 30px 18px 24px 36px; border-radius: 18px; background-position: -20px 0; }
  .cb-reasons .cbr-questions-card::after { left: 3px; width: 14px; background-size: 14px 34px; }
  .cb-reasons .cbr-question-list li { gap: 12px; font-size: 14px; }
  .cb-reasons .cbr-save { margin-top: 24px; font-size: 32px; }
  .cb-reasons .cbr-fit > div { grid-template-columns: 30px 1fr; gap: 10px 16px; align-items: start; padding-block: 24px; }
  .cb-reasons .cbr-fit-index { font-size: 30px; margin-top: 3px; }
  .cb-reasons .cbr-fit h3 { font-size: 20px; }
  .cb-reasons .cbr-fit p { grid-column: 2; font-size: 13px; }
  .cb-reasons .cbr-fit-end { font-size: 19px; margin-top: 30px; }
  .cb-reasons .cbr-people { gap: 64px; padding-top: 18px; }
  .cb-reasons .cbr-person, .cb-reasons .cbr-person:nth-child(even) { grid-template-columns: 1fr; gap: 32px; }
  .cb-reasons .cbr-person:nth-child(even) .cbr-person-portrait { order: 0; }
  .cb-reasons .cbr-person-portrait { width: min(100%,440px); margin-inline: auto; padding-inline: 8px; }
  .cb-reasons .cbr-person-photo { padding: 10px 10px 18px; border-radius: 22px; }
  .cb-reasons .cbr-person-photo img { aspect-ratio: 1 / .94; border-radius: 14px; }
  .cb-reasons .cbr-person-highlight { width: 96px; height: 96px; right: 0; top: -16px; font-size: 12px; }
  .cb-reasons .cbr-person-highlight strong { font-size: 32px; }
  .cb-reasons .cbr-person-signature { font-size: 36px; }
  .cb-reasons .cbr-person-quote { font-size: 25px; margin-top: 20px; }
  .cb-reasons .cbr-person-story { font-size: 14px; }
  .cb-reasons .cbr-person-topics li { font-size: 11px; }
  .cb-reasons .cbr-people-booking { margin-top: 36px; }
  .cb-reasons .cbr-social { grid-template-columns: 1fr; gap: 28px; margin-top: 48px; padding-top: 40px; }
  .cb-reasons .cbr-social h3 { font-size: 25px; }
  .cb-reasons .cbr-social-photos { max-width: 440px; width: 100%; margin-inline: auto; }
  .cb-reasons .cbr-social-photos .cbm-script { font-size: 29px; }
  .cb-reasons .cbr-paths { grid-template-columns: 1fr; gap: 16px; }
  .cb-reasons .cbr-paths article { padding: 26px; }
  .cb-reasons .cbr-path-letter { margin-bottom: 20px; }
  .cb-reasons .cbr-takehome { grid-template-columns: 1fr; gap: 24px; padding: 28px 20px 20px; margin-top: 28px; }
  .cb-reasons .cbr-takehome h3 { font-size: 21px; }
  .cb-reasons .cbr-takehome img { width: 76px; height: 76px; }
  .cb-reasons .cbr-takehome .cbm-script { font-size: 29px; }
  .cb-reasons .cbr-takehome ul { padding: 16px 18px; }
  .cb-reasons .cbr-takehome li { font-size: 14px; }
  .cb-reasons .cb-final { padding-inline: 20px; }
  .cb-reasons .cb-final__box { padding: 32px 16px; border-radius: 24px; }
  .cb-reasons .cb-final__script { font-size: 43px; }
  .cb-reasons .cb-final__h2 { font-size: 26px; }
}
