:root{--service-ink:#0d1512;--service-paper:#f4f8f5;--service-quiet:#e3eadf;--service-copy:#3d4f45;--service-lime:#c8f169}
.service-shell,.service-section{width:min(1200px,calc(100% - 48px));margin-inline:auto}
.service-hero{position:relative;min-height:min(820px,calc(100svh - 72px));display:flex;align-items:flex-end;overflow:hidden;background:var(--service-ink);color:var(--service-paper)}
.service-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.citation-hero>img{object-position:58% center}.press-hero>img{object-position:62% center}
.service-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,14,11,.95) 0%,rgba(7,14,11,.82) 34%,rgba(7,14,11,.22) 70%,rgba(7,14,11,.12) 100%)}
.service-hero-copy{position:relative;z-index:1;padding:clamp(110px,16vh,180px) 0 clamp(70px,10vh,110px);animation:service-enter .58s cubic-bezier(.2,.7,.2,1) both}
.service-kicker,.service-hero-copy small{display:block;color:var(--service-lime);font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.service-hero-copy h1{max-width:760px;margin:18px 0 20px;font:800 clamp(48px,6.8vw,92px)/.95 'Bricolage Grotesque',sans-serif;letter-spacing:-.055em}
.service-hero-copy>p{max-width:620px;margin:0;color:#d8e2dc;font-size:clamp(18px,2vw,23px);line-height:1.55}
.service-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin:30px 0 22px}
.service-text-link{color:inherit;font-weight:650;text-decoration:none;border-bottom:1px solid currentColor;padding:10px 0;transition:border-color .18s,color .18s}
.service-text-link:hover{color:var(--service-lime);border-color:var(--service-lime)}
.service-section{padding:clamp(76px,10vw,132px) 0}
.service-section h2,.service-final h2{margin:12px 0 20px;color:var(--service-ink);font:750 clamp(38px,5vw,68px)/1 'Bricolage Grotesque',sans-serif;letter-spacing:-.045em}
.service-section p{color:var(--service-copy);font-size:17px;line-height:1.7}
.service-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(48px,8vw,110px);align-items:start}
.reconcile-sheet,.report-specimen{background:#fff;border:1px solid #c8d4cc;box-shadow:0 24px 70px rgba(13,21,18,.08)}
.reconcile-sheet>div{display:grid;grid-template-columns:.7fr 1.2fr 1.2fr 1.2fr;gap:16px;padding:18px 22px;border-bottom:1px solid #dce5df;align-items:center;font-size:13px}
.reconcile-sheet .sheet-head{background:var(--service-ink);color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.reconcile-sheet .sheet-head b{color:var(--service-lime)}
.reconcile-sheet>div span:nth-child(n+3){text-decoration:line-through;color:#8b514a;transition:color .35s,text-decoration-color .35s}
.reconcile-sheet.is-reconciled>div span:nth-child(n+3){color:#2f6b45;text-decoration-color:transparent}.reconcile-sheet.is-reconciled>div:nth-child(2) span:nth-child(n+3){font-size:0}.reconcile-sheet.is-reconciled>div:nth-child(2) span:nth-child(n+3)::after{content:'North Street Dental';font-size:13px}.reconcile-sheet.is-reconciled>div:nth-child(3) span:nth-child(n+3){font-size:0}.reconcile-sheet.is-reconciled>div:nth-child(3) span:nth-child(n+3)::after{content:'42 North Street';font-size:13px}.reconcile-sheet.is-reconciled>div:nth-child(4) span:nth-child(n+3){font-size:0}.reconcile-sheet.is-reconciled>div:nth-child(4) span:nth-child(n+3)::after{content:'+1 512 555 0142';font-size:13px}
.reconcile-sheet>p{margin:0;padding:14px 22px;font-size:12px}
.service-ink{width:100%;padding-inline:max(24px,calc((100% - 1200px)/2));background:var(--service-ink);color:var(--service-paper)}
.service-ink h2,.service-final h2{color:var(--service-paper)}.service-ink .eyebrow{color:var(--service-lime)}
.section-intro{max-width:720px}.service-number-list{list-style:none;margin:56px 0 32px;padding:0;border-top:1px solid #324039}
.service-number-list li{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:30px 0;border-bottom:1px solid #324039}.service-number-list li>span{color:var(--service-lime);font:700 15px 'Bricolage Grotesque',sans-serif}.service-number-list h3{margin:0 0 7px;font-size:25px}.service-number-list p{margin:0;color:#b7c4bc}
.service-disclosure{max-width:800px!important;color:#b7c4bc!important;font-size:14px!important}.service-disclosure a{color:var(--service-lime)}
.report-specimen [role=tablist]{display:flex;gap:4px;padding:8px;background:#e7ede9;border-bottom:1px solid #c8d4cc}.report-specimen [role=tab]{min-height:44px;padding:10px 16px;border:0;background:transparent;color:var(--service-copy);font:600 13px inherit;cursor:pointer}.report-specimen [role=tab][aria-selected=true]{background:var(--service-ink);color:var(--service-lime)}
.report-specimen [role=tabpanel]{padding:30px}.report-specimen [role=tabpanel]>strong{font:700 28px 'Bricolage Grotesque',sans-serif}.report-specimen dl{display:grid;grid-template-columns:repeat(3,1fr);margin:28px 0 0}.report-specimen dl div{padding:0 18px;border-left:1px solid #dce5df}.report-specimen dl div:first-child{padding-left:0;border:0}.report-specimen dt{font-size:12px;color:#687870}.report-specimen dd{margin:8px 0 0;font:750 28px 'Bricolage Grotesque',sans-serif}
.report-specimen table{width:100%;border-collapse:collapse;font-size:13px}.report-specimen th,.report-specimen td{text-align:left;padding:13px 8px;border-bottom:1px solid #dce5df}.status-live{display:inline-block;color:#235c39;font-weight:700}.status-live::before{content:'';display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#55a56e}
.package-section{border-top:1px solid #d6dfd9}.service-package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:54px;border:1px solid #bccbc2}
.service-package-grid>a{position:relative;display:flex;min-height:360px;flex-direction:column;padding:34px;color:var(--service-ink);text-decoration:none;border-right:1px solid #bccbc2;transition:background .2s,color .2s,transform .2s}.service-package-grid>a:last-child{border-right:0}.service-package-grid>a:hover,.service-package-grid>a:focus-visible{z-index:1;background:var(--service-ink);color:var(--service-paper);transform:translateY(-5px);outline:3px solid var(--service-lime);outline-offset:0}.service-package-grid span{color:#587163;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.service-package-grid>a:hover span{color:var(--service-lime)}.service-package-grid strong{margin:30px 0 10px;font:750 clamp(28px,3vw,40px) 'Bricolage Grotesque',sans-serif}.service-package-grid b{font-size:17px}.service-package-grid small{margin-top:28px;color:#64756c;line-height:1.6}.service-package-grid>a:hover small{color:#bdc9c2}.service-package-grid em{margin-top:auto;padding-top:34px;color:inherit;font-style:normal;font-weight:700}
.enterprise-row{display:grid;grid-template-columns:140px 1fr auto;gap:20px;align-items:center;padding:24px 28px;color:var(--service-ink);text-decoration:none;border:1px solid #bccbc2;border-top:0}.enterprise-row span{font-weight:800}.enterprise-row em{font-style:normal;font-weight:700}.enterprise-row:hover em{color:#4d6a15}
.prep-section{display:grid;grid-template-columns:1fr 1.6fr;gap:70px;background:var(--service-quiet);width:100%;padding-inline:max(24px,calc((100% - 1200px)/2))}.prep-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.prep-groups h3{margin:0 0 18px;font-size:17px}.prep-groups ul,.fit-columns ul{margin:0;padding-left:18px;color:var(--service-copy);line-height:1.8}
.fit-columns{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #bccbc2}.fit-columns>div{padding:28px 28px 28px 0}.fit-columns>div+div{padding-left:28px;border-left:1px solid #bccbc2}.fit-columns h3{font:700 24px 'Bricolage Grotesque',sans-serif}.fit-columns a{display:inline-block;margin-top:20px;color:var(--service-ink);font-weight:700}
.process-section{display:grid;grid-template-columns:360px 1fr;gap:90px}.process-intro{position:sticky;top:110px;align-self:start}.process-track{list-style:none;margin:0;padding:0;border-top:1px solid #bccbc2}.process-track li{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:28px 0;border-bottom:1px solid #bccbc2}.process-track li>span{font-weight:800;color:#6b7d73}.process-track h3{margin:0 0 8px;font-size:25px}.process-track p{margin:0}.process-track code{background:var(--service-quiet);padding:3px 6px}.version-step{background:linear-gradient(90deg,var(--service-quiet),transparent);padding-inline:20px!important;margin-inline:-20px}
.release-report{padding:30px}.release-report>p{margin:18px 0 0;font-size:12px}.standards-section{width:100%;padding-inline:max(24px,calc((100% - 1200px)/2));background:var(--service-quiet)}.standards-section ol{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;margin:45px 0;padding:0;border-top:1px solid #abbcb1;border-bottom:1px solid #abbcb1}.standards-section li{padding:28px 22px;border-right:1px solid #abbcb1;font-weight:700}.standards-section li:last-child{border:0}.standards-section li span{display:block;margin-bottom:22px;color:#5b6e63;font-size:12px}.standards-section>a{color:var(--service-ink);font-weight:700}
.faq-section{max-width:900px}.faq-list{margin-top:46px;border-top:1px solid #bccbc2}.faq-list details{border-bottom:1px solid #bccbc2}.faq-list summary{position:relative;padding:24px 48px 24px 0;cursor:pointer;font-size:18px;font-weight:700;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:'+';position:absolute;right:8px;font-size:24px;font-weight:400}.faq-list details[open] summary::after{content:'–'}.faq-list details p{margin:0;padding:0 60px 24px 0}
.service-final{padding:clamp(80px,10vw,130px) 0;background:var(--service-ink);color:var(--service-paper)}.service-final h2{max-width:930px}.service-final .service-actions{margin-bottom:0}
[data-reveal]{opacity:0;transform:translateY(12px);transition:opacity .55s ease,transform .55s ease}[data-reveal].is-visible{opacity:1;transform:none}
@keyframes service-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:900px){.service-shell,.service-section{width:min(100% - 32px,720px)}.service-hero{min-height:680px}.service-hero-shade{background:linear-gradient(0deg,rgba(7,14,11,.96),rgba(7,14,11,.26) 80%)}.service-hero>img{object-position:68% center}.service-hero-copy{padding-bottom:64px}.service-hero-copy h1{font-size:clamp(44px,11vw,68px)}.service-split,.prep-section,.process-section{grid-template-columns:1fr;gap:44px}.service-ink,.prep-section,.standards-section{width:100%}.process-intro{position:static}.service-package-grid{grid-template-columns:1fr}.service-package-grid>a{min-height:0;border-right:0;border-bottom:1px solid #bccbc2}.service-package-grid>a:last-child{border-bottom:0}.enterprise-row{grid-template-columns:1fr}.prep-groups,.standards-section ol{grid-template-columns:1fr}.standards-section li{border-right:0;border-bottom:1px solid #abbcb1}.standards-section li:last-child{border-bottom:0}}
@media(max-width:560px){.service-shell,.service-section{width:calc(100% - 28px)}.service-hero{min-height:calc(100svh - 64px)}.service-hero-copy h1{font-size:44px}.service-hero-copy>p{font-size:17px}.service-actions{align-items:flex-start;flex-direction:column}.reconcile-sheet{overflow:hidden}.reconcile-sheet>div{grid-template-columns:.75fr 1.25fr}.reconcile-sheet>div>*:nth-child(n+3){display:none}.report-specimen [role=tablist]{overflow:auto}.report-specimen [role=tab]{white-space:nowrap}.report-specimen dl{grid-template-columns:1fr;gap:18px}.report-specimen dl div{padding:0;border:0}.report-specimen [role=tabpanel]{padding:22px}.report-specimen table,.report-specimen thead,.report-specimen tbody,.report-specimen tr,.report-specimen th,.report-specimen td{display:block}.report-specimen thead{position:absolute;clip:rect(0 0 0 0)}.report-specimen tr{padding:12px 0;border-bottom:1px solid #dce5df}.report-specimen td{padding:3px 0;border:0}.fit-columns{grid-template-columns:1fr}.fit-columns>div+div{padding-left:0;border-left:0;border-top:1px solid #bccbc2}.service-package-grid>a{padding:28px}.faq-list details p{padding-right:0}}
@media(prefers-reduced-motion:reduce){.service-hero-copy,[data-reveal],.service-package-grid>a{animation:none;transition:none;transform:none}[data-reveal]{opacity:1}}
