/* Tokens de la page Tax : réutilisables pour les futures pages produit. */
.tax-product, .tax-pricing {
  --tax-ink: #122e47;
  --tax-muted: #526775;
  --tax-blue: #075c9d;
  --tax-navy: #062b52;
  --tax-accent: #0fc5c9;
  --tax-paper: #f8faf9;
  --tax-soft: #edf4f5;
  --tax-line: #d7e2e6;
  --tax-radius: 1rem;
  --tax-content: 76rem;
}
[hidden] { display: none !important; }
.tax-product { color: var(--tax-ink); background: #fff; font-family: "Segoe UI", Arial, sans-serif; font-size: 1rem; line-height: 1.65; }
.tax-product h1, .tax-product h2, .tax-product h3 { color: var(--tax-ink); }
.tax-product h1 { font-size: clamp(3.2rem, 6.1vw, 5.4rem); font-weight: 650; letter-spacing: -0.062em; line-height: 1.04; }
.tax-product h2 { margin-bottom: 1.4rem; font-size: clamp(2.1rem, 3.8vw, 3.5rem); font-weight: 620; letter-spacing: -0.052em; line-height: 1.1; }
.tax-product h2 span { color: var(--tax-blue); }
.tax-product h3 { font-size: 1.35rem; font-weight: 650; line-height: 1.3; letter-spacing: -0.025em; }
.tax-product p { margin-bottom: 1.15rem; }
.tax-product a { text-underline-offset: 0.22em; }
.tax-product :focus-visible, .tax-pricing :focus-visible { outline: 3px solid #1271b8; outline-offset: 4px; box-shadow: 0 0 0 2px #fff; }
.tax-product section[id] { scroll-margin-top: 7rem; }
.tax-shell { width: min(calc(100% - 4rem), var(--tax-content)); margin-inline: auto; }
.tax-section { padding-block: clamp(4.5rem, 8vw, 7.2rem); }
.tax-eyebrow { margin: 0 0 1.5rem; color: var(--tax-blue); font-size: 0.76rem; font-weight: 750; letter-spacing: 0.1em; line-height: 1.5; text-transform: uppercase; }
.tax-note { color: var(--tax-muted); font-size: 0.86rem; line-height: 1.6; }
.tax-strong { color: var(--tax-ink); font-weight: 650; }
.tax-split { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(2.5rem, 8vw, 8rem); align-items: start; }
.tax-section-heading { max-width: 47rem; margin-bottom: 2.8rem; }
.tax-section-heading > p:last-child { max-width: 40rem; color: var(--tax-muted); font-size: 1.08rem; }
.tax-button { display: inline-flex; gap: 0.7rem; align-items: center; justify-content: center; min-height: 3.35rem; padding: 0.85rem 1.3rem; font-size: 0.94rem; font-weight: 650; line-height: 1.3; text-align: center; text-decoration: none; border: 1px solid transparent; border-radius: 0.45rem; transition: background 150ms ease, border-color 150ms ease; }
.tax-button:hover { text-decoration: none; }
.tax-button--primary { color: #fff; background: var(--tax-navy); border-color: var(--tax-navy); }
.tax-button--primary:hover { color: #fff; background: #104878; border-color: #104878; }
.tax-button--secondary { color: var(--tax-ink); background: #fff; border-color: #a9bdc7; }
.tax-button--secondary:hover { background: #edf6f8; border-color: #6b8fa2; }
.tax-button--small { min-height: 2.7rem; padding: 0.6rem 0.85rem; font-size: 0.85rem; }
.tax-button:disabled { opacity: 0.65; cursor: wait; }
.tax-actions { display: flex; flex-wrap: wrap; gap: 0.7rem; align-items: center; margin-top: 1.9rem; }
.tax-text-link { display: inline-flex; align-items: center; gap: 0.65rem; color: var(--tax-blue); font-weight: 650; font-size: 0.94rem; text-decoration: none; }
.tax-text-link:hover { text-decoration: underline; }
.tax-text-link .icon { width: 1.1rem; }

.tax-header { position: sticky; z-index: 40; top: 0; background: #fff; border-bottom: 1px solid var(--tax-line); }
.tax-header__inner { display: flex; gap: 1.25rem; align-items: center; min-height: 5.2rem; }
.tax-brand { display: inline-flex; align-items: center; gap: 0.8rem; flex-shrink: 0; text-decoration: none; }
.tax-brand img { width: 8.1rem; height: auto; }
.tax-brand > span { padding-left: 0.8rem; color: #135e8b; font-size: 1.2rem; font-weight: 650; line-height: 1.3; border-left: 1px solid #c6d7de; }
.tax-nav { display: flex; gap: 1.2rem; margin-left: auto; }
.tax-nav a, .tax-login { color: #3d596e; font-size: 0.87rem; font-weight: 550; text-decoration: none; }
.tax-nav a:hover, .tax-login:hover { color: #075c9d; text-decoration: underline; }
.tax-header__actions { display: flex; gap: 1rem; align-items: center; }
.tax-menu-toggle { display: none; width: 2.8rem; height: 2.8rem; padding: 0.7rem; color: var(--tax-ink); background: white; border: 1px solid var(--tax-line); border-radius: 0.45rem; }
.tax-mobile-nav { max-height: calc(100dvh - 5.2rem); overflow-y: auto; padding-block: 0.5rem 1rem; border-top: 1px solid var(--tax-line); }
.tax-mobile-nav .tax-shell { display: grid; }
.tax-mobile-nav a:not(.tax-button) { padding-block: 0.75rem; color: var(--tax-ink); font-weight: 600; text-decoration: none; border-bottom: 1px solid var(--tax-line); }
.tax-mobile-nav .tax-button { margin-top: 0.8rem; }

.tax-hero { padding-block: clamp(3.6rem, 6.5vw, 6rem) 0; background: var(--tax-paper); }
.tax-hero__eyebrow { max-width: 42rem; margin-bottom: 2.1rem; }
.tax-hero__grid { display: grid; grid-template-columns: minmax(0, 1fr) 12.5rem; gap: 3rem; align-items: center; }
.tax-hero h1 { margin: 0 0 1.7rem; }
.tax-hero h1 span { color: var(--tax-blue); }
.tax-hero__lede { max-width: 42rem; color: #3e596d; font-size: 1.17rem; line-height: 1.7; }
.tax-hero__reassurance { margin-top: 1rem; margin-bottom: 0.3rem !important; color: #335b67; font-size: 0.89rem; font-weight: 600; }
.tax-hero__reassurance span { padding-inline: 0.3rem; }
.tax-hero__trial { color: #5c707d; font-size: 0.84rem; }
.tax-hero__trial br { display: none; }
.tax-hero__trial a { margin-left: 0.3rem; color: #42667b; }
.tax-hero__aside { padding-left: 1.75rem; border-left: 1px solid #cbdde3; }
.tax-hero__aside > img { width: 4.5rem; height: 4.5rem; margin-bottom: 2rem; }
.tax-hero__aside p { color: #577181; font-size: 1.1rem; line-height: 1.5; }
.tax-hero__aside strong { display: inline-block; margin-top: 0.4rem; color: #123b5a; font-size: 1.6rem; font-weight: 600; letter-spacing: -0.04em; line-height: 1.25; }
.tax-hero__aside > span { color: #627782; font-size: 0.81rem; line-height: 1.5; }
.tax-hero__baseline { display: flex; justify-content: space-between; gap: 1.5rem; padding-block: 1.55rem; margin-top: 3.5rem; color: #35586f; font-size: 0.91rem; font-weight: 600; border-top: 1px solid var(--tax-line); }
.tax-hero__baseline span:last-child { color: #075c9d; }
.tax-hero__capture { grid-column: 1 / -1; width: 100%; max-width: 68rem; margin: 1rem auto 0; }
.tax-hero__grid:has(.tax-hero__capture) { grid-template-columns: 1fr; }
.tax-reality__copy { padding-top: 2.75rem; color: var(--tax-muted); font-size: 1.08rem; }
.tax-reality__copy .tax-strong { margin-top: 1.7rem; }
.tax-how { background: var(--tax-paper); }
.tax-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.3rem; padding: 0; margin: 0; list-style: none; }
.tax-steps li { border-top: 1px solid #b9cdd5; }
.tax-step-number { display: block; margin-block: 0.65rem 2rem; color: #617e8f; font-size: 0.75rem; font-weight: 650; letter-spacing: 0.05em; }
.tax-steps .icon { width: 1.55rem; height: 1.55rem; margin-bottom: 1.3rem; color: #0c7597; }
.tax-steps p { max-width: 23rem; margin-bottom: 0; color: var(--tax-muted); font-size: 0.97rem; }
.tax-closeup { color: #d8e6ef; background: var(--tax-navy); }
.tax-closeup h2 { color: #fff; }
.tax-closeup .tax-eyebrow { color: #7ddcdd; }
.tax-closeup__intro { display: grid; grid-template-columns: 1.25fr 0.75fr; gap: 3rem; align-items: end; margin-bottom: 2.7rem; }
.tax-closeup__intro > p { max-width: 25rem; color: #bfd0e0; }
.tax-source-path { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; gap: 1.3rem; padding-block: 2rem 1.5rem; border-top: 1px solid #41617e; border-bottom: 1px solid #41617e; }
.tax-source-path div > span { display: block; margin-bottom: 1.1rem; color: #82d8db; font-size: 0.82rem; }
.tax-source-path strong { color: white; font-weight: 600; }
.tax-source-path p { margin-top: 0.6rem; color: #bcd0df; font-size: 0.94rem; }
.tax-source-path__arrow { align-self: center; color: #7eb1c4; font-size: 1.5rem; }
.tax-closeup__footnote { margin-top: 1.5rem; margin-bottom: 0 !important; color: #abc5d7; font-size: 0.86rem; }
.tax-example { background: #edf5f3; }
.tax-example__grid { display: grid; grid-template-columns: 0.7fr 1fr; gap: clamp(2.5rem, 7vw, 7rem); align-items: center; }
.tax-example__figure { padding-block: 1.5rem; color: #326e77; }
.tax-example__figure > span { font-size: 0.8rem; font-weight: 650; letter-spacing: 0.06em; text-transform: uppercase; }
.tax-example__figure p { display: flex; gap: 0.75rem; align-items: baseline; margin: 0.2rem 0 -0.4rem; color: #134b61; font-size: clamp(6rem, 13vw, 10rem); font-weight: 550; letter-spacing: -0.09em; line-height: 1.1; }
.tax-example__figure p span { font-size: 1.25rem; font-weight: 500; letter-spacing: -0.03em; }
.tax-example__figure small { color: #477883; font-size: 0.94rem; }
.tax-example__grid > div:last-child > p { max-width: 38rem; color: #45616e; }
.tax-example .tax-note { padding-top: 1rem; margin-top: 1.7rem; border-top: 1px solid #c6dcd7; }
.tax-benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.5rem; }
.tax-benefits article { padding-top: 1rem; border-top: 1px solid var(--tax-line); }
.tax-benefits article > span { display: block; margin-bottom: 1.8rem; color: #5f7e8d; font-size: 0.8rem; }
.tax-benefits h3 { margin-bottom: 1.1rem; }
.tax-benefits p, .tax-benefits small { color: var(--tax-muted); font-size: 0.95rem; }
.tax-benefits small { display: block; font-size: 0.83rem; }
.tax-trust { background: var(--tax-paper); }
.tax-trust__points article { padding-block: 1.4rem; border-top: 1px solid var(--tax-line); }
.tax-trust__points article:first-child { padding-top: 0; border-top: 0; }
.tax-trust__points h3 { font-size: 1.2rem; }
.tax-trust__points p { margin-bottom: 0; color: var(--tax-muted); font-size: 0.96rem; }

.tax-pricing { font-family: "Segoe UI", Arial, sans-serif; color: var(--tax-ink); }
.tax-pricing__bar { display: flex; justify-content: space-between; gap: 2rem; align-items: center; margin-bottom: 2rem; }
.tax-pricing__bar > p { margin: 0; font-size: 0.86rem; font-weight: 650; }
.tax-pricing__bar > p > span { display: inline-block; max-width: 38rem; margin-top: 0.3rem; color: var(--tax-muted); font-weight: 400; }
.tax-billing { display: flex; flex-shrink: 0; padding: 0.25rem; background: #edf3f6; border: 1px solid #d1dfe6; border-radius: 0.55rem; }
.tax-billing button { min-height: 2.8rem; padding: 0.6rem 0.85rem; color: #3d5b6c; font-size: 0.92rem; font-weight: 600; background: transparent; border: 0; border-radius: 0.35rem; }
.tax-billing button[aria-pressed="true"] { color: #fff; background: var(--tax-navy); }
.tax-billing small { display: block; font-size: 0.7rem; font-weight: 500; }
.tax-plan-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; align-items: stretch; }
.tax-plan { display: flex; flex-direction: column; min-width: 0; padding: clamp(1.2rem, 2.3vw, 2rem); background: #fff; border: 1px solid #c7d9e3; border-radius: 0.7rem; }
.tax-plan--recommended { border: 2px solid #167bad; background: #f6fbfd; }
.tax-plan__label { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0.5rem; align-items: center; min-height: 2rem; margin-bottom: 1rem; }
.tax-plan__label h3 { margin: 0; color: var(--tax-ink); font-size: 1.28rem; font-weight: 650; letter-spacing: -0.025em; }
.tax-plan__label > span { padding: 0.25rem 0.5rem; color: #0a5e82; font-size: 0.72rem; font-weight: 650; background: #dff0f6; border-radius: 0.25rem; }
.tax-plan__description { min-height: 4.4rem; margin: 0 0 1.7rem; color: var(--tax-muted); font-size: 0.94rem; line-height: 1.5; }
.tax-plan__amount { margin: 0 0 0.1rem; }
.tax-plan__amount > span { display: flex; flex-wrap: wrap; gap: 0.3rem; align-items: baseline; }
.tax-plan__amount strong { color: var(--tax-navy); font-size: clamp(1.85rem, 3vw, 2.7rem); font-weight: 600; letter-spacing: -0.055em; line-height: 1.3; font-variant-numeric: tabular-nums; }
.tax-plan__amount > span > span { color: #4a6679; font-size: 0.9rem; }
.tax-plan__billing { margin-bottom: 1rem; color: var(--tax-muted); font-size: 0.78rem; }
.tax-plan__volume { min-height: 2.8rem; margin-block: 0 1.3rem; color: #385e73; font-size: 0.92rem; }
.tax-plan__volume strong { color: var(--tax-blue); font-weight: 750; }
.tax-plan .tax-button { width: 100%; }
.tax-plan ul { display: grid; gap: 0.8rem; padding: 1.5rem 0 0; margin: 1.5rem 0 0; list-style: none; border-top: 1px solid var(--tax-line); }
.tax-plan li { position: relative; padding-left: 1rem; color: #405b6b; font-size: 0.9rem; line-height: 1.5; }
.tax-plan li::before { position: absolute; top: 0.68em; left: 0; width: 0.22rem; height: 0.22rem; content: ""; background: #26899d; border-radius: 50%; }
.tax-period-note { margin-block: 1rem 1.75rem; }
.tax-comparison { border-top: 1px solid var(--tax-line); border-bottom: 1px solid var(--tax-line); }
.tax-comparison summary { display: flex; justify-content: space-between; gap: 1rem; align-items: center; padding-block: 1.15rem; color: #244b66; font-size: 0.98rem; font-weight: 600; cursor: pointer; list-style: none; }
.tax-comparison summary::-webkit-details-marker { display: none; }
.tax-comparison[open] summary .icon { transform: rotate(180deg); }
.tax-table-scroll { overflow-x: auto; }
.tax-table-scroll table { width: 100%; min-width: 40rem; border-collapse: collapse; text-align: left; }
.tax-table-scroll caption { padding-block: 0.75rem; color: #4c6c7e; font-size: 0.83rem; text-align: left; }
.tax-table-scroll th, .tax-table-scroll td { padding: 0.85rem 0.6rem; color: #3f5c6d; font-size: 0.85rem; border-top: 1px solid var(--tax-line); }
.tax-table-scroll thead th { color: #204661; font-weight: 650; }
.tax-table-scroll tbody th { width: 45%; font-weight: 500; }
.tax-comparison > .tax-note { padding-block: 1rem; max-width: 60rem; }
.tax-trial-note { display: flex; justify-content: space-between; gap: 2rem; align-items: center; padding: 1.5rem; margin-top: 2rem; color: #254e62; background: #edf6f4; border-left: 3px solid #0e9a9c; }
.tax-trial-note p { max-width: 47rem; margin: 0.4rem 0 0; color: #4b6c73; font-size: 0.91rem; }
.tax-trial-note a { flex-shrink: 0; }
.tax-cancellation { max-width: 66rem; margin-top: 1.2rem; }

.tax-founder { background: #f1f5f7; }
.tax-founder__grid { display: grid; grid-template-columns: 0.65fr 1fr; gap: 5rem; align-items: center; }
.tax-founder__signature { display: grid; justify-items: start; gap: 2rem; padding: 2rem 0; }
.tax-founder__signature span { color: #37647d; font-size: 1.5rem; font-weight: 500; letter-spacing: -0.035em; line-height: 1.35; }
.tax-founder__grid > div:last-child > p:not(.tax-eyebrow) { color: #4b6473; }
.tax-founder__portrait { width: min(100%, 22rem); max-height: 28rem; object-fit: cover; border-radius: 0.6rem; }
.tax-faq-grid { display: grid; grid-template-columns: 0.7fr 1.3fr; gap: 5rem; }
.tax-faq-grid > div:first-child > p:last-child { max-width: 22rem; color: var(--tax-muted); }
.tax-faq { border-top: 1px solid var(--tax-line); }
.tax-faq details { border-bottom: 1px solid var(--tax-line); }
.tax-faq summary { display: flex; gap: 1rem; justify-content: space-between; align-items: center; padding-block: 1.2rem; color: #284c65; font-size: 0.98rem; font-weight: 600; cursor: pointer; list-style: none; }
.tax-faq summary::-webkit-details-marker { display: none; }
.tax-faq summary .icon { width: 1rem; height: 1rem; }
.tax-faq details[open] summary .icon { transform: rotate(180deg); }
.tax-faq details > p { max-width: 43rem; padding-bottom: 0.4rem; color: var(--tax-muted); font-size: 0.94rem; }
.tax-demo { background: #edf3f5; }
.tax-demo__grid { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 5rem; align-items: start; }
.tax-demo__grid > div > p:not(.tax-eyebrow) { max-width: 31rem; color: #4f6a79; }
.tax-demo__aside { padding-top: 1.25rem; margin-top: 2rem; color: #234c64 !important; font-size: 0.92rem; border-top: 1px solid #c9dbe3; }
.tax-form { padding: clamp(1.4rem, 3vw, 2.25rem); background: #fff; border: 1px solid #cddde5; border-radius: 0.75rem; }
.tax-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.tax-field { display: grid; gap: 0.4rem; margin-bottom: 1rem; }
.tax-field label { color: #305168; font-size: 0.88rem; font-weight: 650; }
.tax-field label span { display: inline; color: #5d7685; font-size: 0.76rem; font-weight: 400; }
.tax-field input, .tax-field textarea { width: 100%; min-height: 2.9rem; padding: 0.75rem; color: #213e52; background: #fff; border: 1px solid #aebfc9; border-radius: 0.35rem; }
.tax-field textarea { min-height: 7rem; resize: vertical; }
.tax-field input:focus, .tax-field textarea:focus { outline: 2px solid #0b76a5; outline-offset: 2px; }
.tax-field [aria-invalid="true"] { border-color: #a6253b; }
.tax-field-error { display: none; color: #a6253b; font-size: 0.8rem; }
.tax-field-error:not(:empty) { display: block; }
.tax-form__privacy { color: #536e7e; font-size: 0.8rem; line-height: 1.6; }
.tax-form .tax-button { width: 100%; }
.tax-form__status { margin-top: 1rem; margin-bottom: 0 !important; color: #25616a; font-size: 0.9rem; }
.tax-form__status[data-tone="error"] { color: #a6253b; }
.tax-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
.tax-final { padding-block: 5rem; color: #d1e2ee; background: var(--tax-navy); }
.tax-final .tax-eyebrow { color: #7bdddb; }
.tax-final h2 { color: #fff; font-size: clamp(2.3rem, 4.5vw, 4rem); }
.tax-final .tax-actions { margin-bottom: 1.2rem; }
.tax-final .tax-button--primary { color: #063454; background: #fff; border-color: #fff; }
.tax-final .tax-button--primary:hover { background: #e3f7f6; }
.tax-final .tax-button--secondary { color: #fff; background: transparent; border-color: #799ab5; }
.tax-final .tax-button--secondary:hover { background: #123f66; }
.tax-final > div > p:last-child { margin: 0; color: #b6cedd; font-size: 0.87rem; }
.tax-footer { padding-block: 3rem 1.5rem; background: #fff; }
.tax-footer__top { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 2rem; align-items: start; }
.tax-footer__top > p { color: #456779; font-size: 0.98rem; }
.tax-footer nav { display: grid; gap: 0.6rem; }
.tax-footer nav a { color: #45687d; font-size: 0.87rem; text-decoration: none; }
.tax-footer nav a:hover { text-decoration: underline; }
.tax-footer__bottom { display: flex; justify-content: space-between; gap: 1rem; padding-top: 1.5rem; margin-top: 2rem; color: #5d7482; font-size: 0.77rem; border-top: 1px solid var(--tax-line); }
.tax-gallery { display: grid; gap: 2.5rem; margin-top: 3.5rem; }
.tax-capture { margin: 0; }
.tax-capture > a { position: relative; display: block; border: 1px solid #bacfd9; border-radius: 0.7rem; }
.tax-capture img { width: 100%; height: auto; border-radius: 0.65rem; }
.tax-capture a > span { position: absolute; right: 1rem; bottom: 1rem; display: inline-flex; gap: 0.45rem; align-items: center; padding: 0.6rem 0.75rem; color: #fff; font-size: 0.8rem; background: #123d5f; border-radius: 0.35rem; }
.tax-capture figcaption { margin-top: 0.9rem; color: var(--tax-muted); font-size: 0.9rem; }
.tax-capture figcaption > span { display: block; color: #35556b; }
.tax-capture figcaption small { display: block; margin-top: 0.6rem; color: #5a7080; font-size: 0.78rem; line-height: 1.6; }
.tax-capture figcaption small strong { font-weight: 650; }
.tax-explorer { min-width: 0; margin-top: 3.5rem; padding-top: 2.5rem; border-top: 1px solid #c5d6df; }
.tax-explorer__heading h3 { margin-bottom: 0.7rem; }
.tax-explorer__heading > p:last-child { color: var(--tax-muted); font-size: 0.95rem; }
.tax-explorer__heading .tax-eyebrow { margin-bottom: 0.75rem; }
.tax-screen-tabs { display: flex; gap: 0.4rem; max-width: 100%; overflow-x: auto; padding: 0.3rem 0.2rem 0.8rem; margin-top: 1.2rem; }
.tax-screen-tabs button { flex: 0 0 auto; min-height: 2.85rem; padding: 0.65rem 0.95rem; color: #3a5c72; font-size: 0.88rem; font-weight: 650; white-space: nowrap; background: #fff; border: 1px solid #b9cfdc; border-radius: 0.4rem; }
.tax-screen-tabs button[aria-selected="true"] { color: #fff; background: var(--tax-navy); border-color: var(--tax-navy); }
.tax-screen-panel { padding-top: 1rem; }
.tax-screen-panel h4 { margin: 0 0 1rem; color: #2e536b; font-size: 1.05rem; font-weight: 600; }
.tax-screen-panel + .tax-screen-panel { margin-top: 2rem; }
.js .tax-screen-panel + .tax-screen-panel { margin-top: 0; }
.tax-evidence { margin-top: 2.5rem; }
.tax-evidence--light { padding: clamp(1rem, 3vw, 2rem); background: #f5f9fb; border-radius: 0.7rem; }
.tax-evidence--light h3 { color: #244b63; }
.tax-video video { display: block; width: 100%; height: auto; max-height: 70vh; background: #031e35; }
.tax-video summary { padding-block: 1rem; color: #d5e6f1; cursor: pointer; }
.tax-video details p { white-space: pre-line; }
.tax-lightbox { width: min(calc(100vw - 2rem), 90rem); max-width: 90rem; max-height: calc(100dvh - 2rem); padding: 1rem; color: #16364c; background: #fff; border: 0; border-radius: 0.6rem; }
.tax-lightbox::backdrop { background: rgba(4, 24, 44, 0.85); }
.tax-lightbox__header { display: flex; gap: 1rem; justify-content: space-between; align-items: center; margin-bottom: 1rem; }
.tax-lightbox__header > div { display: flex; gap: 0.5rem; }
.tax-lightbox__header .tax-button { min-height: 2.6rem; padding: 0.6rem 0.85rem; font-size: 0.85rem; }
.tax-lightbox h2 { margin: 0; font-size: 1.1rem; }
.tax-lightbox__viewport { max-height: calc(100dvh - 15rem); overflow: auto; overscroll-behavior: contain; background: #edf3f7; border: 1px solid #c7dae5; }
.tax-lightbox__viewport img { display: block; width: 100%; max-width: none; height: auto; }
.tax-lightbox[data-zoomed="true"] .tax-lightbox__viewport img { width: var(--capture-width); }
.tax-lightbox > p { margin-top: 1rem; margin-bottom: 0; color: #526a79; font-size: 0.85rem; white-space: pre-line; }
@media (max-width: 1100px) {
  .tax-nav { display: none; }
  .tax-header__actions { margin-left: auto; }
  .tax-menu-toggle { display: block; }
  .tax-hero__grid { grid-template-columns: minmax(0, 1fr) 10rem; gap: 1.5rem; }
  .tax-hero h1 { font-size: clamp(3rem, 6.1vw, 4.6rem); }
  .tax-plan__description { min-height: 5.5rem; }
  .tax-faq-grid, .tax-demo__grid { gap: 3rem; }
}
@media (max-width: 800px) {
  .tax-shell { width: calc(100% - 3rem); }
  .tax-hero__grid, .tax-split, .tax-closeup__intro, .tax-founder__grid, .tax-faq-grid, .tax-demo__grid { grid-template-columns: 1fr; gap: 2rem; }
  .tax-hero h1 { font-size: clamp(3rem, 7.4vw, 4.5rem); }
  .tax-hero__aside { display: none; }
  .tax-hero__baseline { gap: 1rem; font-size: 0.8rem; }
  .tax-reality__copy { padding-top: 0; }
  .tax-steps { gap: 1.2rem; }
  .tax-steps h3 { font-size: 1.2rem; }
  .tax-example__grid { grid-template-columns: 0.5fr 1fr; gap: 2rem; }
  .tax-benefits { gap: 1.3rem; }
  .tax-benefits h3 { font-size: 1.15rem; }
  .tax-pricing__bar { align-items: flex-start; flex-direction: column; gap: 1.1rem; }
  .tax-plan-grid { grid-template-columns: 1fr; }
  .tax-plan__description, .tax-plan__volume { min-height: 0; }
  .tax-plan__label { justify-content: flex-start; gap: 1rem; }
  .tax-plan__description { margin-bottom: 1rem; }
  .tax-trial-note { flex-direction: column; align-items: flex-start; gap: 1rem; }
  .tax-founder__signature { display: none; }
  .tax-source-path { grid-template-columns: 1fr; gap: 0.75rem; }
  .tax-source-path__arrow { display: none; }
  .tax-source-path div { padding-block: 1rem; border-bottom: 1px solid #41617e; }
  .tax-source-path div:last-child { border: 0; }
}
@media (max-width: 560px) {
  .tax-shell { width: calc(100% - 2.5rem); }
  .tax-header__inner { min-height: 4.5rem; gap: 0.6rem; }
  .tax-brand { gap: 0.5rem; }
  .tax-brand img { width: 6.8rem; }
  .tax-brand > span { padding-left: 0.5rem; font-size: 1.05rem; }
  .tax-header__actions { display: none; }
  .tax-menu-toggle { margin-left: auto; }
  .tax-hero { padding-top: 2.6rem; }
  .tax-hero__eyebrow { max-width: 22rem; margin-bottom: 1.7rem; font-size: 0.68rem; }
  .tax-hero h1 { font-size: clamp(2.05rem, 8.5vw, 3rem); line-height: 1.1; letter-spacing: -0.055em; }
  .tax-hero__lede { font-size: 1.02rem; }
  .tax-actions { flex-direction: column; align-items: stretch; }
  .tax-actions .tax-button { width: 100%; padding-inline: 0.8rem; }
  .tax-hero__reassurance { font-size: 0.79rem; }
  .tax-hero__trial { font-size: 0.78rem; }
  .tax-hero__trial br { display: block; }
  .tax-hero__trial a { display: inline-block; margin: 0.2rem 0 0; }
  .tax-hero__baseline { flex-direction: column; gap: 0.45rem; margin-top: 2rem; font-size: 0.84rem; }
  .tax-hero__baseline span::before { display: inline-block; width: 1.2rem; color: #1497a7; content: "—"; }
  .tax-section { padding-block: 3.5rem; }
  .tax-product h2 { font-size: 2.05rem; }
  .tax-steps, .tax-benefits, .tax-example__grid { grid-template-columns: 1fr; gap: 2rem; }
  .tax-step-number { margin-bottom: 1rem; }
  .tax-steps .icon { margin-bottom: 0.9rem; }
  .tax-example__figure { padding: 0 0 1.3rem; border-bottom: 1px solid #c5ddd8; }
  .tax-example__figure p { font-size: 7rem; }
  .tax-benefits article > span { margin-bottom: 1rem; }
  .tax-form__row { grid-template-columns: 1fr; gap: 0; }
  .tax-footer__top { grid-template-columns: 1fr; gap: 1.5rem; }
  .tax-footer__bottom { flex-direction: column; }
  .tax-lightbox h2 { font-size: 1rem; }
  .tax-lightbox__header { flex-direction: column; align-items: start; }
  .tax-lightbox__viewport { max-height: calc(100dvh - 19rem); }
}
@media (prefers-reduced-motion: reduce) {
  .tax-product { scroll-behavior: auto; }
  .tax-product *, .tax-pricing * { transition: none !important; }
}
