/* October 2026 — continuous reading, focused service pages, original Anneva palette. */
.studio-brief { border-top: 1px solid var(--line); padding-block: 2rem 0; }
.studio-brief h2 { font-size: 1.5rem; }
.studio-brief > p { max-width: 83ch; font-size: 1rem; line-height: 1.8; color: var(--muted); }
.studio-brief > p strong { color: var(--ivory); font-weight: 600; }
.opening { row-gap: 2.5rem; padding-bottom: 2.5rem; }
.opening .intro h1 { font-size: clamp(2.7rem,4.1vw,3.7rem); }
.opening .positioning p { font-size: 1.15rem; line-height: 1.65; }
.opening .positioning strong { font-size: 1rem; }
.opening-choices .intro-art { width: min(100%,15rem); }
.direct-finder .finder-footnote { max-width: 35ch; line-height: 1.6; }
.direct-choices .service-choice { grid-template-columns: 1.3rem minmax(0,1fr); }
.direct-choices .choice-letter { font-size: 1.1rem; }
.service-comparison { border-top: 1px solid var(--line); margin-top: 2rem; padding-top: 2rem; }
.service-comparison > h3 { font-family: var(--serif); font-size: clamp(1.5rem,2.6vw,2rem); line-height: 1.3; }
.comparison-intro { color: var(--muted); max-width: 72ch; margin-block: .85rem 1.75rem; }
.comparison-scroll { max-width: 100%; overflow-x: auto; border: 1px solid var(--line); border-radius: .75rem; }
.comparison-table { width: 100%; border-collapse: collapse; table-layout: fixed; text-align: left; }
.comparison-table caption { text-align: left; padding: 1rem 1.25rem; font-size: .9rem; color: var(--muted); }
.comparison-table thead { background: #242119; }
.comparison-table th, .comparison-table td { padding: 1.3rem 1.2rem; vertical-align: top; font-size: 1rem; line-height: 1.7; border-top: 1px solid var(--line); overflow-wrap: break-word; }
.comparison-table thead th { font-weight: 600; color: var(--gold); font-size: .95rem; }
.comparison-table tbody th { font-family: var(--serif); font-weight: 400; font-size: 1.15rem; line-height: 1.5; color: var(--ivory); }
.comparison-table td { color: var(--muted); }
.comparison-table td strong { font-weight: 600; color: var(--ivory); }
.comparison-table td a { display: inline-block; margin-top: .6rem; color: var(--gold); text-decoration: underline; text-underline-offset: 4px; }
.comparison-note { font-size: .95rem; line-height: 1.75; max-width: 83ch; color: var(--muted); margin-top: 1.25rem; }
.gap-section { padding-top: 2.5rem; }
.case-section { border-top: 1px solid var(--line); }
.about-copy .scope-line { padding-block: 1rem; margin-top: 1.25rem; border-block: 1px solid var(--line); font-size: 1rem; line-height: 1.75; }
.scope-line strong { font-weight: 600; color: var(--ivory); }
.legal-access { padding-block: 0 2rem; color: var(--muted); font-size: .9rem; }
.legal-access a { color: var(--gold); text-decoration: underline; text-underline-offset: 4px; }
.faq-section .faq-list details > div { max-width: 72ch; line-height: 1.8; }
.site-header { gap: clamp(1rem,2.4vw,2.5rem); }
.site-header nav { gap: clamp(.8rem,1.8vw,1.6rem); }
.site-header nav a { min-height: 44px; display: inline-flex; align-items: center; }
/* A short, independent answer follows the heading on each service page. */
.service-page { max-width: 1060px; padding-block: 2rem 4rem; }
.service-page .offer-page-nav { margin: 0 0 2rem; display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.service-page .offer-page-nav a { text-decoration: underline; text-underline-offset: 4px; }
.service-page .offer-page-nav span { color: var(--muted); font-size: .9rem; }
.service-page h1 { max-width: 25ch; font-size: clamp(2.1rem,4.4vw,3.2rem); }
.service-answer { border-left: 3px solid var(--brand-gold); background: #fff9ec; padding: 1.5rem 1.75rem; margin-top: 2rem; border-radius: 0 .75rem .75rem 0; }
.service-answer .eyebrow { font-size: .85rem; margin-bottom: .6rem; }
.service-answer > p:last-child { font-size: 1.0625rem; line-height: 1.8; max-width: 83ch; }
.service-answer strong { font-weight: 600; }
.page-byline { font-size: .9rem; color: var(--muted); line-height: 1.7; margin-top: 1rem; }
.service-toc { margin: 1.5rem 0 0; display: flex; flex-wrap: wrap; gap: .7rem 1.5rem; font-size: .95rem; line-height: 1.6; }
.service-toc a { text-decoration: underline; text-underline-offset: 4px; }
.service-section { margin-top: 3rem; padding-top: 2.25rem; border-top: 1px solid var(--line); }
.service-section h2, .service-next h2 { font-family: var(--serif); font-size: clamp(1.65rem,3vw,2.3rem); line-height: 1.3; max-width: 32ch; margin-bottom: 1rem; }
.service-section h3 { font-family: var(--serif); font-size: 1.35rem; line-height: 1.35; margin-bottom: .65rem; }
.service-section > p { max-width: 77ch; font-size: 1.0625rem; line-height: 1.8; color: var(--muted); }
.service-section > p + p { margin-top: 1rem; }
.service-section > .eyebrow { font-size: .875rem; color: var(--ivory); margin-bottom: .75rem; }
.support-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 2rem; margin-top: 1.75rem; }
.support-grid > div { padding-top: 1rem; border-top: 2px solid var(--brand-gold); }
.support-grid p { font-size: 1rem; line-height: 1.8; color: var(--muted); }
.support-grid p + p { margin-top: 1rem; }
.support-grid .eyebrow { font-size: .85rem; color: var(--muted); margin-bottom: .5rem; }
.support-grid strong { color: var(--ivory); font-weight: 600; }
.two-options { grid-template-columns: 1fr 1fr; }
.method-steps, .booking-steps { list-style: none; padding: 0; margin: 2rem 0 0; counter-reset: steps; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 2rem; }
.method-steps > li, .booking-steps > li { counter-increment: steps; }
.method-steps > li::before, .booking-steps > li::before { content: '0' counter(steps); display: block; font-family: var(--serif); font-size: 1.6rem; color: #6e5a29; margin-bottom: .65rem; }
.method-steps p, .booking-steps p { color: var(--muted); font-size: 1rem; line-height: 1.8; }
.booking-steps a { display: inline-block; margin-top: .75rem; text-decoration: underline; text-underline-offset: 4px; font-size: 1rem; }
.service-section .service-scope { border-left: 2px solid var(--brand-gold); padding-left: 1.2rem; margin-top: 1.75rem; max-width: 78ch; font-size: 1rem; }
.deliverable-list { padding-left: 1.2rem; margin: 1.5rem 0; max-width: 78ch; font-size: 1.0625rem; line-height: 1.8; }
.deliverable-list li { margin-top: .65rem; padding-left: .25rem; }
.service-section .service-price { font-family: var(--serif); font-size: 2rem; color: var(--ivory); margin-top: 1.5rem; }
.service-price span { display: block; font: 1rem/1.7 var(--sans); color: var(--muted); margin-top: .4rem; }
.service-faq { margin-top: 3rem; }
.service-faq .faq-list summary { font-size: 1.0625rem; }
.service-next { margin-top: 3rem; padding: 2rem 0; border-top: 1px solid var(--line); }
.service-next > p { max-width: 68ch; font-size: 1rem; line-height: 1.8; color: var(--muted); }
.service-contact-actions { display: flex; align-items: stretch; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.service-contact-actions .button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; }
.related-services { border-top: 1px solid var(--line); padding-top: 1.5rem; margin: 1rem 0 0; display: flex; flex-wrap: wrap; gap: 1rem 1.5rem; font-size: 1rem; }
.related-services > p { color: var(--muted); }
.related-services a { text-decoration: underline; text-underline-offset: 4px; }
.service-section .wording-comparison { margin-block: 1.75rem; }
@media(max-width:1000px) {
 .site-header { flex-wrap: wrap; padding-block: 1rem; row-gap: .75rem; }
 .site-header nav { order: 3; width: 100%; justify-content: flex-start; flex-wrap: wrap; margin: 0; gap: .4rem 1.4rem; }
 .header-contact { margin-left: auto; }
 .comparison-table th, .comparison-table td { padding: 1rem .8rem; font-size: .95rem; }
 .comparison-table tbody th { font-size: 1.1rem; }
}
@media(max-width:760px) {
 .opening .intro h1 { font-size: clamp(2.5rem,8vw,3.4rem); }
 .studio-brief { padding-top: 1.5rem; }
 .comparison-scroll { border: 0; border-radius: 0; overflow: visible; }
 .comparison-table, .comparison-table tbody { display: block; width: 100%; }
 .comparison-table caption { display: block; padding: 0 0 .75rem; }
 .comparison-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
 .comparison-table tbody tr { display: block; border: 1px solid var(--line); border-radius: .75rem; margin-bottom: 1rem; padding: 1.25rem; }
 .comparison-table tbody th, .comparison-table td { display: block; width: 100%; padding: .6rem 0; border: 0; font-size: 1rem; }
 .comparison-table tbody th { font-size: 1.25rem; padding-top: 0; }
 .comparison-table td::before { content: attr(data-label); display: block; color: var(--gold); font-size: .8rem; font-weight: 600; margin-bottom: .3rem; }
 .comparison-table td strong { font-size: 1rem; }
 .support-grid, .two-options, .method-steps, .booking-steps { grid-template-columns: 1fr; gap: 1.5rem; }
 .service-page { padding-block: 1.5rem 3rem; }
 .service-answer { padding: 1.25rem; }
 .service-section { margin-top: 2.25rem; padding-top: 1.75rem; }
 .service-contact-actions { display: grid; grid-template-columns: 1fr; }
 .service-toc { gap: .65rem 1rem; }
 .human-space { border-radius: 2rem 0 2rem 0; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior: auto; } }

/* A calmer headline sequence, with the existing reduced-motion fallback. */
.intro h1.hook-reveal .hook-first { animation-duration: .75s; animation-delay: .2s; }
.intro h1.hook-reveal .hook-second { animation-duration: .85s; animation-delay: .75s; }
.intro h1.hook-reveal .hook-last::before { animation-duration: .9s; animation-delay: 1.55s; }
.intro h1.hook-reveal .hook-ink { animation-duration: .85s; animation-delay: 2.15s; }
.about-method:target { scroll-margin-top: 2rem; }
.review-proof { font-size: 1rem; line-height: 1.6; color: var(--muted); max-width: 24ch; }
.blog-page { padding-block: 3.5rem 5rem; }
.blog-page h1, .article-page h1 { font-family: var(--serif); color: var(--gold); font-size: clamp(2rem,4vw,3.2rem); line-height: 1.2; max-width: 29ch; margin-top: .8rem; }
.blog-intro { max-width: 65ch; color: var(--muted); font-size: 1.1rem; line-height: 1.8; margin-top: 1.5rem; }
.blog-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 2rem; margin-top: 3rem; }
.blog-card { min-width: 0; display: flex; flex-direction: column; border-top: 2px solid var(--gold); padding: 1.5rem 0; }
.blog-card > .eyebrow { font-size: .85rem; }
.blog-card h2 { font-family: var(--serif); font-size: 1.6rem; line-height: 1.35; margin-top: 1rem; }
.blog-card > p:not(.eyebrow) { font-size: 1rem; line-height: 1.8; color: var(--muted); margin-top: 1rem; margin-bottom: 1.5rem; }
.blog-read { margin-top: auto; color: var(--gold); font-size: 1rem; text-decoration: underline; text-underline-offset: 4px; }
.blog-contact { margin-top: 2.5rem; font-size: 1.0625rem; }
.blog-contact a { text-decoration: underline; color: var(--gold); text-underline-offset: 4px; }
.article-page { max-width: 860px; padding-block: 2.5rem 4rem; }
.article-breadcrumb { margin: 0 0 2rem; display: flex; flex-wrap: wrap; gap: 1rem; font-size: .95rem; }
.article-breadcrumb a { text-decoration: underline; text-underline-offset: 4px; }
.article-byline { margin-top: 1rem; font-size: .9rem; color: var(--muted); }
.article-lead { font-size: 1.125rem; line-height: 1.85; margin-top: 1.5rem; max-width: 68ch; }
.article-answer { margin-top: 2rem; padding: 1.5rem 1.75rem; border-left: 3px solid var(--gold); background: #201e18; border-radius: 0 .75rem .75rem 0; }
.article-answer > p:last-child { font-size: 1.0625rem; line-height: 1.8; margin-top: .6rem; }
.article-content { margin-top: 2.5rem; }
.article-content h2 { font-family: var(--serif); font-size: clamp(1.5rem,3vw,2rem); line-height: 1.35; margin: 2.5rem 0 1rem; max-width: 33ch; }
.article-content p, .article-content ul { font-size: 1.0625rem; line-height: 1.85; color: var(--muted); max-width: 72ch; }
.article-content p + p { margin-top: 1rem; }
.article-content ul { padding-left: 1.2rem; }
.article-content li { margin-bottom: .6rem; }
.article-content a { color: var(--gold); text-decoration: underline; text-underline-offset: 4px; }
.article-content .article-sources { font-size: .9rem; margin-top: 1.5rem; }
.article-next { border-top: 1px solid var(--line); padding-top: 2rem; margin-top: 3rem; }
.article-next h2 { font-family: var(--serif); font-size: 1.75rem; margin-bottom: 1.25rem; }
.article-next .button { white-space: normal; text-align: center; }
.article-return { display: block; margin-top: 1.5rem; text-decoration: underline; text-underline-offset: 4px; color: var(--muted); }
@media(max-width:850px) { .blog-grid { grid-template-columns: 1fr; gap: 1.5rem; } .blog-card h2 { max-width: 32ch; } .blog-page { padding-block: 2.5rem 3rem; } }
@media(max-width:500px) { .article-answer { padding: 1.25rem; } .article-page h1, .blog-page h1 { font-size: 2rem; } .article-page { padding-block: 1.75rem 3rem; } }

.vsl-status { display: block; margin-top: .4rem; font-size: .875rem; line-height: 1.55; color: var(--muted); }
.service-choice .vsl-status { color: #695424; font-size: .85rem; }
.vsl-note .source-link { color: var(--ivory); font-size: 1rem; }

/* The complete doorway is one native link, including the animated leaf. */
.door { position: relative; cursor: pointer; touch-action: manipulation; }
.door > *, .door-visual *, .door-visual::before, .door-visual::after { pointer-events: none; }
.door:hover .door-action, .door:focus-visible .door-action { color: var(--ivory); border-color: currentColor; }
.service-contact-actions .button { margin-top: 0; margin-right: 0; }
.booking-steps .button.primary { margin-top: 1rem; text-decoration: none; font-size: 1rem; text-align: center; }
.diagnostic-example { padding: clamp(1.25rem,3vw,2.5rem); background: #fff9ec; color: #292720; border: 1px solid #d9cba8; border-radius: .75rem; scroll-margin-top: 2rem; }
.diagnostic-example .comparison-scroll { margin-block: 1.75rem; }
.diagnostic-example .comparison-table thead { background: #e9dfc8; }
.diagnostic-example .comparison-table th, .diagnostic-example .comparison-table td { border-color: #d9cba8; color: #292720; }
.diagnostic-example .comparison-table caption, .diagnostic-example > p, .diagnostic-example .service-scope { color: #514c40; }
.diagnostic-example > .eyebrow, .diagnostic-example .source-link, .diagnostic-example .comparison-table td::before { color: #715b25; }
.diagnostic-example .service-scope { border-color: #b29248; }
.legal-information .comparison-table th, .legal-information .comparison-table td { font-size: 1rem; }
.legal-review-note { border-left: 3px solid var(--gold); padding: 1rem 1.25rem; background: #262219; }
.legal-information h1 { max-width: 30ch; }
@media(max-width:760px) { .diagnostic-example .comparison-table tbody tr { border-color: #d9cba8; } }

/* 22 October — role-based type scale and calmer reading paths. Original palette and families retained. */
:root { --type-body: 1.125rem; --type-small: 1rem; --type-section: clamp(2rem, 3.1vw, 2.5rem); --type-card: clamp(1.5rem, 2.1vw, 1.75rem); }
body { font-family: var(--sans); }
.opening .intro h1 { font-size: clamp(2.7rem, 4.25vw, 3.4rem); }
.section-heading h2, .about-copy h2, .gap-copy h2, .evidence-section h2, .closing h2, .service-section > h2, .service-faq > h2, .service-next > h2 { font-family: var(--serif); font-size: var(--type-section); line-height: 1.2; letter-spacing: -.03em; }
.opening .intro-copy, .studio-brief p, .gap-copy p, .gap-pair p, .case-intro, .case-stages p, .comparison-intro, .comparison-note, .section-heading > p, .door p, .evidence-grid p:not(.evidence-number), .evidence-takeaway, .review-proof, .review-source-note, .about-copy > p:not(.eyebrow), .about-copy .scope-line, .about-method .why-points p, .faq-list details > div, .faq-list details > div p, .reading-extra > p, .ai-method-content p, .closing p { font-family: var(--sans); font-size: var(--type-body); line-height: 1.7; }
.service-page .service-section > p:not(.eyebrow):not(.service-price), .service-page .support-grid p:not(.eyebrow), .service-page .method-steps p, .service-page .booking-steps p, .service-page .service-next > p, .service-page .service-answer > p:last-child { font-family: var(--sans); font-size: var(--type-body); line-height: 1.7; }
.opening .intro-copy { max-width: 43ch; margin-top: 1.5rem; }
.opening .finder h2 { font-family: var(--serif); font-size: 2rem; line-height: 1.25; }
.service-comparison > h3, .case-stages h3, .about-method > h3, .closing-contact > h3 { font-family: var(--serif); font-size: var(--type-card); line-height: 1.3; }
.finder .service-choice strong { font-size: var(--type-body); line-height: 1.5; }
.finder .service-choice small, .finder .choice-cta, .button, .source-link, .faq-list summary, .comparison-table caption, .comparison-table thead th { font-size: 1rem; line-height: 1.6; }
.finder-hint, .finder-footnote, .intro-trust, .intro-welcome > span { font-size: var(--type-small); line-height: 1.6; }
main .eyebrow { font-size: .875rem; line-height: 1.5; }
.comparison-table td, .comparison-table tbody th { font-family: var(--sans); font-size: var(--type-body); line-height: 1.65; }
.door-instruction { font-size: inherit; line-height: inherit; }
.door-aside { font-size: var(--type-body); line-height: 1.6; }
.door-top { width: 100%; max-width: none; flex-wrap: nowrap; min-height: 2.25rem; }
.door-number { font-size: 2rem; line-height: 1.1; flex-shrink: 0; }
.door-state { visibility: visible; font-family: var(--sans); font-size: 1rem; line-height: 1.4; text-align: right; }
.door h3 { font-family: var(--serif); font-size: var(--type-card); line-height: 1.25; min-height: 2.5em; }
.door-action, .door .vsl-status { font-size: 1rem; line-height: 1.6; }
.human-space .testimonials { gap: 1.5rem 2.5rem; align-items: stretch; }
.human-space .testimonials figure, .human-space .testimonials figure:nth-child(even) { padding: .75rem 0 .75rem 1.25rem; align-items: flex-start; }
.human-space .testimonials figure blockquote, .human-space .testimonials figure:first-child blockquote { font-family: var(--serif); font-size: var(--type-body); font-weight: 400; line-height: 1.7; color: var(--ivory); }
.testimonials-section .section-heading { margin-bottom: 1rem; }
.testimonials-section .section-heading > .review-proof { display: none; }
.about-section { align-items: start; }
.about-photo { align-self: start; padding-top: 1.5rem; }
.about-copy > p.human-note { font-family: var(--serif); font-size: var(--type-body); line-height: 1.7; }
.about-method .why-points h3 { font-family: var(--sans); font-size: var(--type-body); font-weight: 600; line-height: 1.5; }
.about-method .why-points { gap: 1.25rem; }
.practice-note { border-left: 2px solid var(--gold); padding-left: 1.1rem; margin-top: 1.5rem !important; }
.studio-brief { padding-top: 1.5rem; }
.studio-summary > summary { font: 1rem/1.6 var(--sans); color: var(--gold); cursor: pointer; width: fit-content; }
.studio-summary > p { margin-top: 1rem; max-width: 78ch; color: var(--muted); }
.page-shortcuts { margin-top: 1rem; gap: .6rem 1.5rem; }
.page-shortcuts a { font-size: 1rem; min-height: 44px; display: inline-flex; align-items: center; }
.vsl-explainer { margin-top: 1.5rem; max-width: 78ch; }
.vsl-explainer > summary, .reading-extra > summary { font-size: var(--type-body); line-height: 1.6; }
.vsl-explainer > p { font-size: var(--type-body); line-height: 1.7; margin-top: 1rem; max-width: 75ch; }
.vsl-explainer a { color: var(--gold); text-decoration: underline; text-underline-offset: 4px; }
.faq-section .service-toc { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 1.75rem 0 0; gap: 1rem; }
.faq-section .service-toc a { display: flex; align-items: center; min-height: 4.5rem; padding: 1rem; border: 1px solid var(--line); border-radius: .5rem; font-size: 1rem; line-height: 1.5; text-decoration: none; }
.faq-section .service-toc a:hover { border-color: var(--ivory); text-decoration: underline; text-underline-offset: 4px; }
.faq-section .ai-method { border-top: 1px solid var(--line); padding-top: 1.25rem; margin-top: 1.5rem; max-width: none; }
.faq-section .ai-method > summary { padding-block: .75rem; text-decoration: none; }
.faq-section .ai-method-content { max-width: 78ch; }
.closing { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 2rem 4rem; padding-block: 3.5rem; align-items: start; }
.closing-story h2 { margin-block: .75rem 1.25rem; }
.closing-story > p + p { margin-top: 1rem; }
.closing-story p strong { display: inline; color: var(--ivory); font-weight: 600; }
.closing-story .closing-reassurance { color: var(--muted); }
.closing-contact { border: 1px solid var(--line); border-radius: 1rem; padding: 1.75rem; }
.closing-contact > p { margin-top: .75rem; color: var(--muted); }
.closing .closing-contact > .button { display: flex; width: 100%; margin: 1.25rem 0 0; }
.closing .contact-alternatives { margin: 1.5rem 0 0; padding: 1.25rem 0 0; border-top: 1px solid var(--line); }
.closing .contact-options-label { font-size: var(--type-small); margin: 0 0 .75rem; color: var(--muted); }
.contact-options-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: .75rem; }
.closing .contact-request { margin: 0; padding: 0; min-width: 0; border: 1px solid var(--line); border-radius: .5rem; }
.closing .contact-request > summary { padding: .75rem; text-decoration: none; font: 1rem/1.5 var(--sans); color: var(--gold); }
.closing .contact-request[open] { grid-column: 1/-1; }
.closing .contact-request .contact-form { padding: 0 .75rem 1rem; }
.closing .contact-data { margin-top: 1rem; }
.closing .contact-data > summary { font-size: 1rem; color: var(--muted); }
.closing .contact-data p { font-size: 1rem; }
.closing-resources { grid-column: 1/-1; border-top: 1px solid var(--line); padding-top: 1.25rem; }
.closing-resources .reading-extra { margin: 0; max-width: none; }
.closing-resources summary { font-size: 1rem; color: var(--muted); text-decoration: none; }
.closing-resources p { font-size: 1rem; max-width: 80ch; margin-top: .75rem; }
.closing-resources a { color: var(--gold); text-decoration: underline; text-underline-offset: 4px; }
.conditions-anchor { height: 0; }
@media(max-width:900px) {
 .closing { grid-template-columns: 1fr; gap: 2rem; }
 .closing-contact { max-width: 42rem; width: 100%; }
}
@media(max-width:760px) {
 :root { --type-body: 1.0625rem; --type-section: 2rem; --type-card: 1.5rem; }
 .opening .intro h1 { font-size: clamp(2.5rem,8vw,3.4rem); }
 .about-photo { padding-top: 0; }
 .door h3 { min-height: 0; }
 .door-number { font-size: 1.75rem; }
 .door-top { flex-wrap: wrap; }
 .faq-section .service-toc { grid-template-columns: 1fr; gap: .65rem; }
 .faq-section .service-toc a { min-height: 48px; padding: .75rem 1rem; }
 .closing { padding-block: 2.5rem; }
 .closing-contact { padding: 1.25rem; }
}
@media(max-width:380px) { .contact-options-grid { grid-template-columns: 1fr; } }

/* Partnership statement: same body scale, adjacent to the existing method. */
.about-method > .partnership-note { font: var(--type-body)/1.7 var(--sans); margin-top: 1.5rem; padding-top: 1.25rem; border-top: 1px solid var(--line); color: var(--muted); }
.partnership-note strong { color: var(--ivory); font-weight: 600; }

/* Compact opening: validated voice, perspective and choice. */
.opening .intro h1 { font-size: clamp(2rem, 3.1vw, 2.8rem); line-height: 1.13; }
.opening .intro h1 .hook-last { display: inline; padding: 0; color: var(--gold); font-style: italic; }
.opening .intro h1 .hook-last::before { content: none; }
.opening .hero-timing { margin: .65rem 0 0; color: var(--gold); font-size: 1rem; line-height: 1.4; }
.opening .intro-copy { margin-top: 1rem; max-width: 48ch; font-size: 1rem; line-height: 1.55; }
.hero-services { list-style: none; padding: 0; margin: 1rem 0; display: grid; gap: .55rem; }
.hero-services li { display: grid; grid-template-columns: 7.5rem 1fr; gap: .6rem; font-size: .9375rem; line-height: 1.4; }
.hero-services a { color: var(--gold); text-underline-offset: 3px; }
.hero-services span { color: var(--ivory); }
.opening .service-contact-actions { margin-top: 1rem; }
.opening .intro-trust { margin-top: .6rem; }
@media(max-width:480px) {
 .opening .intro h1 { font-size: clamp(1.9rem, 7.7vw, 2.3rem); }
 .hero-services li { grid-template-columns: 6.5rem 1fr; gap: .5rem; }
 .opening .intro-copy { font-size: 1rem; }
}

/* A short, continuous headline sequence; all content stays in the HTML. */
.intro h1.hook-reveal .hook-first { animation-duration: .55s; animation-delay: .15s; }
.intro h1.hook-reveal .hook-second { animation-duration: .55s; animation-delay: .8s; }
.intro h1.hook-reveal .hook-ink { animation: anneva-message-in .65s 1.45s ease-out both; }
.intro.hero-sequence .hero-timing { animation: anneva-message-in .5s 2.25s ease-out both; }
@keyframes anneva-message-in { from { opacity: 0; transform: translateY(.25rem); } to { opacity: 1; transform: translateY(0); } }
@media(min-width:901px) {
 .opening > .intro { padding-top: 1.15rem; }
 .opening .intro h1 { font-size: clamp(2.4rem,3.35vw,3rem); line-height: 1.15; margin-top: 1.55rem; }
 .opening .hero-timing { margin-top: 1rem; font-size: 1.0625rem; }
 .opening .intro-copy { margin-top: 1.65rem; font-size: 1.0625rem; line-height: 1.7; }
 .hero-services { margin: 1.6rem 0; gap: .95rem; }
 .hero-services li { font-size: 1rem; line-height: 1.5; }
 .opening .service-contact-actions { margin-top: 1.6rem; }
 .opening .intro-trust { margin-top: 1rem; }
}
@media(prefers-reduced-motion:reduce) {
 .intro.hero-sequence .hero-timing, .intro h1.hook-reveal .hook-ink { animation: none !important; }
}

@media(max-width:480px) {
 .site-header nav { gap: .3rem .55rem; justify-content: space-between; }
 .site-header nav a { font-size: .875rem; }
 .opening { padding-top: 1.5rem; }
}

/* Named review excerpts, with source and service distinct from the quotation. */
.human-space .testimonials.verified-excerpts { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 2rem; }
.human-space .verified-excerpts figure { margin: 0; display: flex; flex-direction: column; gap: 1rem; }
.verified-excerpts .review-focus { color: var(--gold); font: 600 1rem/1.45 var(--sans); }
.human-space .verified-excerpts figure blockquote { margin: 0; font-size: 1.0625rem; line-height: 1.65; }
.verified-excerpts figcaption { margin-top: auto; padding-top: .5rem; font: .9375rem/1.55 var(--sans); }
.verified-excerpts figcaption strong { display: block; color: var(--ivory); font-weight: 600; }
.verified-excerpts figcaption span { display: block; color: var(--muted); margin-top: .25rem; }
@media(max-width:900px) { .human-space .testimonials.verified-excerpts { grid-template-columns: 1fr; gap: 1.75rem; } }

.testimonials-section .review-read-more { margin-top: 2rem; }

/* Original editorial illustrations and concise, independent service choices. */
.opening .intro-trust { display: block; }
.opening .intro-trust small { display: block; margin-top: .2rem; font-size: .875rem; color: var(--muted); }
.visual-finder.direct-finder { padding: 1.6rem; background: #f3eee2; border: 1px solid #cbb780; border-radius: 1.4rem .45rem 1.4rem .45rem; }
.visual-finder .eyebrow { font-size: .7rem; letter-spacing: .12em; }
.visual-finder h2 { font-size: clamp(1.8rem,2.7vw,2.35rem); margin-top: .5rem; line-height: 1.15; }
.visual-finder .finder-hint { margin-top: .65rem; color: #5b5549; font-size: .9375rem; }
.visual-choices.direct-choices { gap: .8rem; margin-top: 1.25rem; }
.visual-choices .visual-choice { padding: 0; gap: 0; grid-template-columns: 112px minmax(0,1fr); overflow: hidden; background: #fffcf5; border: 1px solid #d6c9ab; border-radius: .65rem; transition: transform .2s ease, box-shadow .2s ease, border-color .2s; }
.visual-choice .choice-art { display: block; align-self: stretch; background: #191814; overflow: hidden; }
.visual-choice .choice-art img { display: block; width: 100%; height: 100%; min-height: 126px; object-fit: cover; transition: transform .35s ease; }
.visual-choice .choice-copy { display: flex; flex-direction: column; justify-content: center; padding: .9rem 1rem; min-width: 0; }
.visual-choice .choice-category { font-size: .65rem; line-height: 1.45; letter-spacing: .055em; text-transform: uppercase; color: #6c5629; font-weight: 600; }
.finder .visual-choice strong { margin-top: .35rem; font-family: var(--serif); font-weight: 400; font-size: 1.2rem; line-height: 1.25; color: #191814; }
.finder .visual-choice .choice-cta { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin-top: .65rem; font-size: .8rem; line-height: 1.4; color: #5b4821; text-decoration: underline; text-underline-offset: 3px; }
.visual-choice .choice-cta > span { font-size: 1.05rem; text-decoration: none; }
.visual-choices .visual-choice:hover { transform: translateY(-2px); box-shadow: 0 8px 20px #29211615; border-color: #8c7138; background: #fffdf7; }
.visual-choice:hover .choice-art img { transform: scale(1.045); }
.visual-finder .finder-footnote { max-width: none; margin-top: 1rem; font-size: .8rem; line-height: 1.5; color: #625a4b; }
@media(max-width:1100px) and (min-width:801px) { .visual-finder.direct-finder { padding: 1.25rem; } .visual-choices .visual-choice { grid-template-columns: 88px minmax(0,1fr); } .visual-choice .choice-copy { padding: .8rem; } .finder .visual-choice strong { font-size: 1.1rem; } }
@media(max-width:480px) { .visual-finder.direct-finder { padding: 1.1rem !important; } .visual-choices .visual-choice { grid-template-columns: 84px minmax(0,1fr); } .visual-choice .choice-copy { padding: .85rem .75rem; } .finder .visual-choice strong { font-size: 1.12rem; } .visual-choice .choice-category { font-size: .6rem; } .finder .visual-choice .choice-cta { font-size: .75rem; } }
@media(prefers-reduced-motion:reduce) { .visual-choices .visual-choice, .visual-choice .choice-art img { transition: none; transform: none; } }

/* Give the simplified French photographic details room to breathe. */
@media(min-width:1101px) { .visual-choices .visual-choice { grid-template-columns: 144px minmax(0,1fr); } }
@media(max-width:480px) { .visual-choices .visual-choice { grid-template-columns: 100px minmax(0,1fr); } }

/* Human editorial service composition: a lead photograph and two companion scenes. */
.opening-choices .editorial-finder { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.editorial-finder .eyebrow { color: #d8c291; font-size: .65rem; letter-spacing: .14em; }
.opening .editorial-finder h2 { color: #f5f0e6; font-size: clamp(1.8rem,2.7vw,2.45rem); line-height: 1.15; margin: .55rem 0 1.3rem; }
.editorial-finder .editorial-choices { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 0; }
.editorial-choices .editorial-choice { position: relative; display: block; isolation: isolate; min-height: 245px; padding: 0; border: 1px solid #e6d4a833; border-radius: 4px; overflow: hidden; background: #28261f; color: #fff9ef; box-shadow: none; }
.editorial-choices .choice-wide { grid-column: 1 / -1; min-height: 205px; }
.editorial-choice .choice-art { position: absolute; inset: 0; z-index: -2; }
.editorial-choice .choice-art img { width: 100%; height: 100%; min-height: 0; object-fit: cover; object-position: center 40%; transition: transform .6s ease; }
.editorial-choice::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg,#11110e05 10%,#11110e55 40%,#11110ef2 100%); }
.choice-wide::after { background: linear-gradient(90deg,#11110ec9 0%,#11110e72 53%,#11110e10 100%),linear-gradient(0deg,#11110e88,transparent 65%); }
.editorial-choice .choice-number { position: absolute; left: 18px; top: 14px; color: #fff6e7; font: 400 1.25rem/1 var(--serif); border-bottom: 1px solid #ead5a0; padding-bottom: 7px; }
.editorial-choice .choice-copy { position: absolute; inset: auto 0 0; display: block; padding: 20px 18px 18px; }
.editorial-choice .choice-category { display: block; color: #f1dbad; font-size: .59rem; letter-spacing: .075em; line-height: 1.4; }
.finder .editorial-choice strong { display: block; color: #fff9ef; font: 400 clamp(1.35rem,1.85vw,1.65rem)/1.08 var(--serif); margin: .55rem 0 0; letter-spacing: -.02em; }
.finder .choice-wide strong { font-size: clamp(1.8rem,2.5vw,2.25rem); }
.finder .editorial-choice .choice-cta { display: flex; justify-content: space-between; align-items: center; gap: 8px; color: #fff5e4; font-size: .72rem; line-height: 1.4; margin-top: 1rem; text-decoration: none; }
.editorial-choice .choice-cta > span { display: grid; place-items: center; flex: 0 0 27px; height: 27px; border: 1px solid #e6d4a877; border-radius: 50%; font-size: 1rem; }
.editorial-choices .editorial-choice:hover { transform: translateY(-3px); border-color: #ead5a0; background: #28261f; box-shadow: 0 12px 28px #0003; }
.editorial-choice:hover .choice-art img { transform: scale(1.035); }
.editorial-finder .finder-footnote { color: #c6bda9; font-size: .75rem; margin-top: 14px; line-height: 1.5; max-width: 52ch; }
@media(max-width:1100px) and (min-width:801px) { .editorial-choice .choice-copy { padding: 16px 12px; } .editorial-choice .choice-category { font-size: .53rem; } .finder .editorial-choice strong { font-size: 1.35rem; } .finder .editorial-choice .choice-cta { font-size: .64rem; } }
@media(max-width:480px) { .opening-choices .editorial-finder { padding: 0 !important; } .editorial-finder .editorial-choices { gap: 9px; } .editorial-choices .editorial-choice { min-height: 230px; } .editorial-choices .choice-wide { min-height: 200px; } .editorial-choice .choice-copy { padding: 16px 12px; } .editorial-choice .choice-number { left: 12px; } .finder .editorial-choice strong { font-size: 1.4rem; } .finder .choice-wide strong { font-size: 2rem; } .editorial-choice .choice-category { font-size: .52rem; } .finder .editorial-choice .choice-cta { font-size: .66rem; } }
@media(prefers-reduced-motion:reduce) { .editorial-choices .editorial-choice, .editorial-choice .choice-art img { transition: none; transform: none !important; } }

/* Restored discovery motifs and comfortable study-source tap areas. */
.evidence-section .discovery-paths { margin-top: 1.75rem; padding-top: 1.5rem; border-top: 1px solid var(--line); }
.evidence-section .discovery-tools { max-width: 42rem; }
.evidence-section .discovery-paths > p { display: none; }
.evidence-grid a { display: inline-flex; align-items: center; min-height: 44px; padding-block: .5rem; text-decoration: underline; text-underline-offset: 3px; }
