.proposal-entry { padding-block: 1.3rem; font-size: .8rem; border-top: 1px solid #ffffff20; margin-top: 1.5rem; }
.proposal-entry a { color: #bbc8d8; text-underline-offset: 4px; }
.proposal-header { border-bottom: 1px solid #dce3e9; background: #fff; }
.proposal-header .container { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-block: 1rem; }
.proposal-header .brand-logo { width: 60px; height: 60px; }
.proposal-header a:last-child { font-size: .85rem; }
.proposal-header-label { font-weight: 700; font-size: .85rem; margin-left: .8rem; }
.proposal-header .brand { gap: 0; }
.proposal-intro { padding: 5rem 0; background: #eef2f3; }
.proposal-intro-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 4rem; align-items: center; }
.proposal-intro h1,.proposal-pricing-hero h1 { font-size: clamp(2.8rem,4.8vw,5rem); line-height: 1.08; letter-spacing: -.055em; margin: 1.3rem 0; }
.proposal-lede { font-size: 1.3rem; line-height: 1.6; max-width: 680px; }
.proposal-intro .button { margin-top: 1.2rem; }
.proposal-intro figure { margin: 0; }
.proposal-intro figure img { height: 480px; width: 100%; object-fit: cover; border-radius: 4px 80px 4px 4px; }
.proposal-intro figcaption,.proposal-caption { font-size: .8rem; line-height: 1.6; color: #536579; margin-top: .85rem; }
.proposal-stops { list-style: none; padding: 0; margin: 2rem 0; }
.proposal-stops li { display: grid; grid-template-columns: 55px 1fr 110px; gap: 2rem; align-items: start; padding: 1.8rem 0; border-top: 1px solid #d3dde5; }
.proposal-stops h3 { font-size: 1.3rem; }
.proposal-stops p { max-width: 740px; margin-bottom: 0; }
.proposal-step-number { font-size: 1.5rem; color: #e12836; font-weight: 700; }
.proposal-stops [data-tour-status] { font-size: .8rem; color: #536579; }
.proposal-stops .is-complete { color: #176948; }
.proposal-unlock { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1rem; background: #edf2f4; padding: 1.5rem 2rem; }
.proposal-gate { padding-block: 6rem; min-height: 65vh; }
.proposal-gate h2 { font-size: 3rem; }
.proposal-pricing-hero { background: #071b37; color: #fff; padding: 4.5rem 0; }
.proposal-pricing-hero h1,.proposal-pricing-hero .button-outline { color: #fff; }
.proposal-pricing-hero .eyebrow { color: #a6c9ed; }
.proposal-pricing-hero p { color: #d9e4f0; }
.proposal-actions { display: flex; gap: 1rem; flex-wrap: wrap; margin-top: 2rem; }
.proposal-included,.proposal-terms { display: grid; grid-template-columns: .85fr 1.3fr; gap: 5rem; }
.proposal-price { font: 800 2.8rem/1.2 'Manrope',sans-serif; letter-spacing: -.05em; margin: 1.5rem 0 .5rem; }
.proposal-price span { font: 400 .85rem/1.4 'DM Sans',sans-serif; letter-spacing: 0; white-space: nowrap; }
.proposal-included ul,.proposal-package ul,.proposal-addons ul,.proposal-terms ul { padding-left: 1.2rem; }
.proposal-included li,.proposal-package li,.proposal-addons li,.proposal-terms li { margin-block: .75rem; line-height: 1.7; }
.proposal-note { font-size: .85rem; line-height: 1.7; color: #536579; border-top: 1px solid #d3dde5; padding-top: 1.2rem; margin-top: 1.5rem; }
.proposal-packages { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.2rem; margin-top: 2.5rem; }
.proposal-package { background: white; color: #071b37; border: 1px solid #cfd9e2; border-radius: 8px; padding: 2rem; }
.proposal-package h3 { font-size: 1.4rem; line-height: 1.4; }
.proposal-package ul { font-size: .91rem; }
.proposal-package .proposal-caption { min-height: 2.6em; }
.proposal-recommended { border: 2px solid #e12836; box-shadow: 0 12px 40px #071b3709; }
.proposal-addons > article { display: grid; grid-template-columns: .8fr 1.3fr; gap: 4rem; padding: 2.5rem 0; border-bottom: 1px solid #d3dde5; }
.proposal-addons h3 { font-size: 1.6rem; }
.proposal-addon-price { font: 700 1.7rem/1.7 'Manrope',sans-serif; }
.proposal-addon-price span { font-size: .85rem; font-weight: 400; }
.proposal-monthly { background: #e9eff3; }
.proposal-monthly .proposal-price { font-size: 2.5rem; }
.proposal-footer { padding: 2rem 0; background: #071b37; color: #c4d1df; font-size: .8rem; }
.proposal-footer .container { display:flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem; }
.proposal-tour-active { padding-bottom: 210px; }
.proposal-tour-bar { position: fixed; z-index: 100; bottom: 16px; left: max(16px, calc((100vw - 1200px)/2)); right: max(16px, calc((100vw - 1200px)/2)); background: #071b37; color: #fff; border: 1px solid #69809b; border-radius: 12px; box-shadow: 0 10px 50px #0005; padding: 1.3rem 1.6rem; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 2rem; }
.proposal-tour-progress { display: block; color: #aac9e9; font-size: .72rem; letter-spacing: .06em; margin-bottom: .3rem; }
.proposal-tour-bar strong { font-size: 1.1rem; }
.proposal-tour-bar p { font-size: .82rem; color: #d9e4f0; margin: .4rem 0 0; max-width: 720px; line-height: 1.5; }
.proposal-tour-actions { display: flex; flex-wrap: wrap; gap: .6rem 1rem; max-width: 260px; align-items: center; }
.proposal-tour-actions .button { width: 100%; font-size: .82rem; min-height: 44px; padding: .8rem 1rem; }
.proposal-tour-actions > a:not(.button),.proposal-tour-exit { font: inherit; font-size: .75rem; color: #d9e4f0; text-decoration: underline; background: none; border: 0; cursor: pointer; padding: .4rem 0; }
[hidden] { display: none !important; }
@media(max-width:900px) {
 .proposal-intro-grid,.proposal-included,.proposal-terms { grid-template-columns: 1fr; gap: 2rem; }
 .proposal-intro figure img { height: 320px; }
 .proposal-packages { grid-template-columns: 1fr; }
 .proposal-package .proposal-caption { min-height: 0; }
 .proposal-addons > article { grid-template-columns: 1fr; gap: .5rem; }
 .proposal-tour-bar { gap: 1rem; }
}
@media(max-width:600px) {
 .proposal-intro,.proposal-pricing-hero { padding-block: 3rem; }
 .proposal-intro h1,.proposal-pricing-hero h1 { font-size: 2.8rem; }
 .proposal-stops li { grid-template-columns: 32px 1fr; gap: 1rem; }
 .proposal-stops [data-tour-status] { grid-column: 2; }
 .proposal-header-label { max-width: 135px; font-size: .75rem; }
 .proposal-header .brand-logo { width: 48px; height: 48px; }
 .proposal-tour-bar { bottom: 8px; left: 8px; right: 8px; padding: 1rem; grid-template-columns: 1fr; gap: .65rem; }
 .proposal-tour-bar p { display: none; }
 .proposal-tour-actions { max-width: none; width: 100%; }
 .proposal-tour-actions .button { width: auto; flex: 1 1 100%; }
 .proposal-tour-active { padding-bottom: 230px; }
 .proposal-package { padding: 1.6rem; }
}
@media print {
 .proposal-header,.proposal-footer,.proposal-actions,[data-proposal-print],.proposal-tour-bar { display: none !important; }
 .proposal-pricing-hero,.proposal-monthly,.section-tinted { background: white !important; color: #071b37 !important; }
 .proposal-pricing-hero p,.proposal-pricing-hero h1,.proposal-pricing-hero .button-outline { color: #fff; }
.proposal-pricing-hero .eyebrow { color: #35475c; }
 .proposal-pricing-hero h1 { font-size: 30pt; color: #071b37; }
 .section,.proposal-pricing-hero { padding-block: 1rem !important; }
 .container { width: 100%; max-width: none; }
 .proposal-package,.proposal-addons article { break-inside: avoid; }
 .proposal-packages { display: block; }
 .proposal-package { margin-bottom: 1rem; }
 .proposal-included,.proposal-terms { display: block; }
 .proposal-tour-active { padding-bottom: 0; }
}
.proposal-launch-offer { font-size: 1.05rem; color: #24553e; }
.proposal-pricing-chooser { margin-top: 2rem; padding: 1.6rem; border: 1px solid #b8cbd8; background: #fff; display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; align-items: center; }
.proposal-pricing-chooser label { font-weight: 600; }
.proposal-pricing-chooser select { display: block; width: 100%; min-height: 48px; padding: .75rem; margin: .5rem 0; background: #f5f7f9; color: #071b37; border: 1px solid #a9bdce; border-radius: 4px; font: inherit; }
.proposal-pricing-chooser a { font-size: .8rem; text-underline-offset: 4px; }
.proposal-commitment { display: flex; align-items: flex-start; gap: .8rem; cursor: pointer; }
.proposal-commitment input,.proposal-package-choice input { width: 20px; height: 20px; flex: none; margin: .15rem 0; accent-color: #c12532; }
.proposal-commitment small { display: block; font-size: .85rem; font-weight: 400; line-height: 1.7; margin-top: .3rem; }
.proposal-discount-note { font-weight: 600; color: #24553e; font-size: .9rem; }
#launch-options .proposal-package { display: flex; flex-direction: column; }
.proposal-package-choice { display: flex; align-items: center; gap: .6rem; cursor: pointer; margin-top: auto; padding-top: 1.3rem; font-size: .9rem; font-weight: 700; }
.proposal-package.is-selected { outline: 2px solid #071b37; outline-offset: 3px; }
.proposal-price-summary { display: grid; grid-template-columns: 1fr 1fr 1.2fr; gap: 2rem; background: #071b37; color: #fff; padding: 2rem; margin-top: 2rem; border-radius: 8px; }
.proposal-price-summary h3,.proposal-price-summary .eyebrow,.proposal-price-summary .proposal-price { color: #fff; }
.proposal-price-summary p { color: #e2ebf5; font-size: .86rem; }
.proposal-price-summary .proposal-price { font-size: 2rem; margin: .7rem 0; }
.proposal-price-summary [data-estimate="savings"] { color: #b2e8cb; }
@media(max-width:700px) {
 .proposal-pricing-chooser,.proposal-price-summary { grid-template-columns: 1fr; gap: 1.5rem; }
 .proposal-pricing-chooser { padding: 1.2rem; }
 .proposal-pricing-chooser select { font-size: .9rem; }
 .proposal-price-summary { padding: 1.4rem; }
}
@media print {
 .proposal-pricing-chooser,.proposal-package-choice { display: none !important; }
 .proposal-price-summary { background: white; color: #071b37; border: 1px solid #aaa; break-inside: avoid; }
 .proposal-price-summary h3,.proposal-price-summary p,.proposal-price-summary .eyebrow,.proposal-price-summary .proposal-price,.proposal-price-summary [data-estimate="savings"] { color: #071b37; }
}

/* Owner case study, confined to the proposal walkthrough. */
.proposal-results { background: #fff; scroll-margin-top: 2rem; }
.proposal-results-heading { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: end; }
.proposal-results-heading h2 { max-width: 520px; }
.proposal-results-heading > p { color: #536579; line-height: 1.8; }
.proposal-results-period { display: flex; flex-wrap: wrap; gap: .5rem 2rem; justify-content: space-between; font-size: .85rem; padding-block: 1.25rem; margin-top: 2rem; border-top: 1px solid #d3dde5; }
.proposal-results-period span { color: #536579; }
.proposal-results-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.2rem; }
.proposal-result-card { background: #f1f5f6; border: 1px solid #dce5e9; border-radius: 8px; padding: 1.7rem; }
.proposal-result-card h3 { font-size: 1.05rem; min-height: 3em; line-height: 1.5; }
.proposal-result-growth { font: 800 clamp(2.8rem,5vw,4rem)/1.1 'Manrope',sans-serif; letter-spacing: -.05em; color: #176948; margin: 1rem 0 0; }
.proposal-result-comparison { margin-top: 1.5rem; }
.proposal-result-comparison > div { display: grid; grid-template-columns: 1fr auto; gap: .5rem; margin-top: 1rem; font-size: .8rem; }
.proposal-result-comparison dd { font-weight: 700; margin: 0; font-variant-numeric: tabular-nums; }
.proposal-result-bar { grid-column: 1 / -1; height: 8px; width: var(--bar-width); background: #a3b5c5; border-radius: 2px; }
.proposal-result-bar.is-current { background: #176948; }
@media(max-width:900px) {
 .proposal-results-heading { grid-template-columns: 1fr; gap: .5rem; }
 .proposal-results-grid { grid-template-columns: 1fr; }
 .proposal-result-card h3 { min-height: 0; }
}
@media print { .proposal-result-card { break-inside: avoid; } }

.proposal-history-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.5rem; }
.proposal-history-chart { margin: 0; padding: 2rem; background: #f1f5f6; border: 1px solid #dce5e9; border-radius: 8px; }
.proposal-history-chart h3 { font-size: 1.35rem; }
.proposal-history-chart figcaption p { font-size: .9rem; color: #536579; }
.proposal-history-chart ol { list-style: none; padding: 0; margin: 2rem 0 0; }
.proposal-history-chart li { margin-top: 1.25rem; }
.proposal-history-chart li > div { display: flex; align-items: center; justify-content: space-between; gap: .75rem; font-size: .85rem; }
.proposal-history-chart strong { font-size: 1.1rem; font-variant-numeric: tabular-nums; }
.proposal-history-chart small { display: inline-block; padding: .15rem .4rem; margin-left: .25rem; background: #fff; color: #536579; border-radius: 3px; font-size: .65rem; }
.proposal-history-track { display: block; height: 10px; margin-top: .45rem; background: #dfe7eb; border-radius: 2px; overflow: hidden; }
.proposal-history-track > span { display: block; height: 100%; background: #6d91a6; }
.proposal-history-chart .is-latest strong { color: #176948; }
.proposal-history-chart .is-latest .proposal-history-track > span { background: #176948; }
.proposal-history-context { max-width: 950px; }
.proposal-recent-results { margin-top: 2rem; border-block: 1px solid #d3dde5; padding-block: 1.25rem; }
.proposal-recent-results summary { cursor: pointer; font-weight: 700; font-size: 1rem; }
.proposal-recent-results[open] summary { margin-bottom: 1.5rem; }
@media(max-width:700px) {
 .proposal-history-grid { grid-template-columns: 1fr; }
 .proposal-history-chart { padding: 1.25rem; }
}

/* Explain the support commitment before showing website discounts. */
.proposal-purchase-paths { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.2rem; margin-top: 2rem; }
.proposal-purchase-paths article { padding: 1.5rem; border: 1px solid #b9cbd7; border-radius: 8px; background: #fff9; }
.proposal-purchase-paths h3 { font-size: 1.2rem; margin-bottom: .7rem; }
.proposal-purchase-paths p { margin: 0; font-size: .95rem; line-height: 1.7; }
.proposal-plan-term { font-size: .85rem; line-height: 1.65; border-top: 1px solid #d3dde5; padding-top: 1rem; margin-top: 1.5rem; color: #40566b; }
.proposal-support-selection,.proposal-price-context { padding: 1rem 1.2rem; background: #e2efe7; border-left: 3px solid #176948; color: #173f2d; font-size: .95rem; line-height: 1.7; }
#monthly-options,#launch-options { scroll-margin-top: 1.5rem; }
.proposal-static-prices { overflow-x: auto; }
.proposal-static-prices table { width: 100%; border-collapse: collapse; margin-block: 1.5rem; font-size: .9rem; }
.proposal-static-prices caption { text-align: left; font-weight: 700; padding-bottom: .75rem; }
.proposal-static-prices th,.proposal-static-prices td { padding: .75rem; text-align: left; border: 1px solid #b9cbd7; }
@media(max-width:700px) { .proposal-purchase-paths { grid-template-columns: 1fr; } }
@media print {
 .proposal-pricing-hero p { color: #35475c !important; }
 .proposal-support-selection { break-inside: avoid; }
 .proposal-monthly > .container > .button { display: none; }
}
