.skip-link{position:absolute;top:-5rem;left:1rem;z-index:10;background:#fff;padding:.8rem}
.skip-link:focus{top:1rem}
.research-hero{padding-block:4.5rem;max-width:1000px}
.research-hero h1{max-width:22ch}
.research-hero .lead{font-size:1.15rem}
.research-intro{max-width:58ch;margin-top:1.2rem}
.research-hero .hero-note{max-width:72ch;margin-top:1.5rem}
.research-guide{background:var(--pale);border-block:1px solid var(--line);padding-block:2.75rem}
.research-guide h2{font-size:1.65rem}
.research-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;padding-left:1.5rem;margin-block:1.5rem}
.research-steps li{padding-left:.4rem}
.research-steps li::marker{color:var(--blue);font-weight:700}
.research-steps strong,.research-steps span{display:block}
.research-steps span{margin-top:.4rem;font-size:.95rem}
.section-intro{max-width:70ch;margin-top:1rem;color:var(--muted)}
.research-case{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line)}
.case-heading{display:flex;align-items:center;gap:1.1rem;margin-bottom:1.5rem}
.case-number{font-size:2.3rem;color:var(--blue);font-variant-numeric:tabular-nums;font-weight:700}
.case-heading h3{font-size:1.55rem;margin-top:.2rem}
.research-comparison{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:3rem;align-items:start}
.research-comparison figure{margin:0;padding:1rem;background:var(--pale);border:1px solid var(--line);border-radius:.6rem}
.research-comparison figure a{display:block}
.research-comparison img{display:block;width:100%;height:auto;box-shadow:0 3px 12px #142a4512}
.research-comparison figcaption{margin-top:.8rem;font-size:.875rem;color:var(--muted)}
.extracted-text{min-width:0;padding-block:.6rem}
.extracted-text blockquote{margin:0 0 1.5rem;padding:1.25rem;border-left:3px solid var(--blue);background:#eef3fd;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.65;color:var(--ink);overflow-wrap:anywhere}
.check-point{margin-top:1.5rem;padding:1.2rem;border:1px solid var(--line);border-radius:.4rem}
.check-point p{margin-top:.5rem}
.case-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-block:1.5rem}
.source-credit{font-size:.9rem;color:var(--muted);overflow-wrap:anywhere}
.source-credit cite{font-style:normal;font-weight:650;color:var(--ink)}
.source-detail code{display:block;overflow-wrap:anywhere;font-size:.8rem;padding:.7rem;background:var(--pale)}
.research-scope{max-width:850px}
.research-scope h2{margin-bottom:1.2rem}
.research-scope .button{margin-top:1.5rem}
.research-provenance{max-width:850px}
.research-provenance h2{font-size:1.5rem;margin-bottom:1rem}
.research-provenance p{overflow-wrap:anywhere}
@media(max-width:760px){.research-comparison{grid-template-columns:minmax(0,1fr);gap:1.5rem}.research-comparison figure{max-width:430px;width:100%;margin-inline:auto}.research-steps{grid-template-columns:minmax(0,1fr);gap:1rem}.research-hero{padding-block:2.75rem}.research-hero h1{font-size:clamp(1.8rem,7.8vw,2.6rem)}.research-hero .lead{font-size:1rem}.case-heading h3{font-size:1.3rem}.case-actions .button{width:100%}.research-case{margin-top:2rem}.research-guide{padding-block:2rem}}


.sample-local-file{margin-top:0!important}
.sample-local-file summary{min-height:44px;cursor:pointer;font-weight:650}
.case-actions button{font:inherit}

.practice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-block:2rem}
.practice-card{min-width:0;display:flex;flex-direction:column;padding:1.4rem;border:1px solid var(--line);border-radius:.6rem;background:#fff}
.practice-card h3{font-size:1.5rem;margin-bottom:.6rem}
.practice-card figure{margin:1rem 0;background:var(--pale);padding:1rem;border-radius:.4rem}
.practice-card img{display:block;width:100%;height:auto;max-width:300px;margin:auto;box-shadow:0 3px 12px #142a4512}
.practice-card figcaption{text-align:center;margin-top:.7rem;font-size:.8rem;color:var(--muted)}
.practice-card .case-actions{margin-top:auto;padding-top:1rem;margin-bottom:0}
.practice-card .button{width:100%;text-align:center}
.practice-explanation{padding:1.5rem;background:var(--pale);border:1px solid var(--line);border-radius:.6rem;margin-bottom:1.5rem}
.practice-explanation h3{font-size:1.15rem;margin-bottom:1rem}
.practice-explanation blockquote{margin:0 0 1rem;padding:1rem;border-left:3px solid var(--blue);background:#fff;line-height:1.9}
.practice-section{scroll-margin-top:6rem}
@media(max-width:760px){.practice-grid{grid-template-columns:minmax(0,1fr)}.practice-card{padding:1rem}.practice-explanation{padding:1rem}}

.sample-return{display:block;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line)}
.sample-return p{margin:0 0 .5rem}
.sample-return-links{display:flex;flex-wrap:wrap;gap:.5rem 1rem}
.sample-return a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;overflow-wrap:anywhere}
.practice-card [data-hic-sample]{scroll-margin-top:2rem}

/* Invoice demo: one document preview and a linear choice list. */
.invoice-demo-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:2.5rem;align-items:start;margin-block:2rem}
.invoice-demo-preview{margin:0;max-width:360px}
.invoice-demo-preview img{display:block;width:100%;height:auto;border:1px solid var(--line)}
.invoice-demo-preview figcaption{margin-top:.7rem;color:var(--muted);font-size:.875rem}
.invoice-demo-options{min-width:0}
.invoice-demo-list{padding-left:1.5rem;margin-block:1.2rem}
.invoice-demo-list>li{padding-block:1.1rem;border-top:1px solid var(--line)}
.invoice-demo-list>li::marker{color:var(--blue);font-weight:700}
.invoice-demo-list h3{font-size:1.25rem}
.invoice-demo-list .case-actions{margin-block:1rem 0}
.invoice-demo-reading{border-block:1px solid var(--line);padding-block:1rem}
.invoice-demo-reading summary{cursor:pointer;min-height:44px;font-weight:650}
.invoice-demo-reading p{max-width:70ch;margin-top:.8rem}
.invoice-demo-guide{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:1.5rem}
.invoice-demo-guide p{max-width:65ch}
.invoice-demo-guide .button{flex-shrink:0;white-space:normal}
#invoice-actions{scroll-margin-top:6rem}
@media(max-width:760px){.invoice-demo-layout{grid-template-columns:minmax(0,1fr);gap:1.5rem}.invoice-demo-preview{width:100%;margin-inline:auto}.invoice-demo-guide{display:block}.invoice-demo-guide .button{margin-top:1rem;width:100%;text-align:center}.invoice-demo-list .button{width:100%;text-align:center}}
