@charset "UTF-8";
/* 品質ページだけを再構成。トップ・商品ページの共通スタイルは変更しない。 */
.quality-page { --quality-ink:#294b3b; --quality-text:#303c37; --quality-muted:#506255; --quality-soft:#f2f5ef; --quality-rule:#d5ded4; color:var(--quality-text); font-size:1.125rem; line-height:1.75; }
.quality-page .quality-wrap { width:min(1160px,calc(100% - 80px)); margin-inline:auto; }
.quality-page :is(h1,h2,h3) { color:var(--quality-ink); font-weight:700; letter-spacing:.015em; overflow-wrap:anywhere; }
.quality-page h1 { font-size:clamp(2rem,3.9vw,3.5rem); line-height:1.35; margin:0 0 24px; }
.quality-page h2 { font-size:1.875rem; line-height:1.5; margin:0 0 20px; text-wrap:pretty; }
.quality-page h3 { font-size:1.5rem; line-height:1.5; margin:0 0 16px; }
.quality-page main :is(p,li,dt,dd,a,th,td,caption,figcaption,summary) { font-size:1.125rem; line-height:1.75; }
.quality-page p { margin:0 0 20px; }
.quality-page figure { margin:0; }
.quality-page :is(section[id],nav[id],article[id],span[id]) { scroll-margin-top:28px; }
.quality-page :is(.quality-hero,.quality-section-heading,.quality-test-content,.quality-function-grid,.quality-certifications) > * { min-width:0; }
.quality-page main a { color:var(--quality-ink); text-underline-offset:5px; }
.quality-page main a:hover { text-decoration-thickness:2px; }
.quality-page a:focus-visible,.quality-page summary:focus-visible { outline:3px solid #345d48; outline-offset:5px; }
.quality-page .quality-review-notice { background:#e9eee6; padding:10px 24px; text-align:center; font-size:1rem; color:#405449; }
.quality-page .quality-breadcrumb ol { display:flex; flex-wrap:wrap; gap:8px; list-style:none; padding:24px 0 0; margin:0; }
.quality-page .quality-breadcrumb li + li::before { content:'›'; margin-right:8px; }
.quality-page .quality-hero-band { background:linear-gradient(115deg,#f4f6ef 0%,#f9faf6 55%,#fff 100%); border-bottom:1px solid #e5ebe2; }
.quality-page .quality-eyebrow { display:flex; align-items:center; gap:12px; color:var(--quality-muted); margin-bottom:16px; font-weight:500; }
.quality-page .quality-eyebrow::before { content:''; display:block; width:28px; height:2px; background:#7b9770; flex-shrink:0; }
.quality-page .quality-hero { display:grid; grid-template-columns:1.15fr 1fr; column-gap:64px; row-gap:28px; align-items:center; padding:36px 0 44px; }
.quality-page .quality-hero-copy > p { max-width:34em; }
.quality-page .quality-target-summary { color:var(--quality-ink); font-weight:600; margin-top:-8px; margin-bottom:24px; }
.quality-page main .quality-lead { color:var(--quality-ink); font-size:1.5rem; font-weight:600; line-height:1.6; margin-bottom:28px; }
.quality-page .quality-lead > span { display:block; }
.quality-page .quality-hero-photo { align-self:center; padding:20px; background:#fff; border-radius:4px; }
.quality-page .quality-hero-photo img { display:block; width:100%; height:360px; object-fit:contain; }
.quality-page figcaption { margin-top:16px; color:var(--quality-muted); }
.quality-page .quality-hero-photo figcaption { padding:0 10px; }
.quality-page .quality-hero-links { display:flex; flex-wrap:wrap; gap:12px 24px; list-style:none; padding:0; margin:28px 0 0; }
.quality-page .quality-hero-links a { display:inline-flex; align-items:center; gap:10px; font-weight:600; }
.quality-page .quality-hero-links a::after { content:'↓'; }
.quality-page .quality-target-overview { grid-column:1/-1; padding-top:24px; border-top:1px solid var(--quality-rule); }
.quality-page .quality-target-overview > p { margin:0 0 16px; color:var(--quality-muted); }
.quality-page .quality-targets { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:1.3fr 1fr 1fr; }
.quality-page .quality-targets li + li { border-left:1px solid var(--quality-rule); padding-left:28px; }
.quality-page .quality-targets a { display:flex; align-items:center; gap:16px; padding:8px 24px 8px 0; text-decoration:none; }
.quality-page .quality-targets strong { display:block; font-size:1.375rem; }
.quality-page .quality-target-photo { display:flex; gap:4px; flex-shrink:0; }
.quality-page .quality-target-photo img { width:52px; height:60px; object-fit:cover; border-radius:3px; }
.quality-page .quality-link-arrow { margin-left:auto; flex-shrink:0; }
.quality-page .quality-section-heading { display:grid; grid-template-columns:1fr 1.1fr; gap:64px; align-items:start; margin-bottom:36px; }
.quality-page .quality-section-heading h2 > span { display:block; }
.quality-page .quality-bar-condition { display:block; margin-top:4px; color:var(--quality-muted); font-size:1.125rem; font-weight:400; }
.quality-page .quality-section-heading > p,.quality-page .quality-section-heading p:last-child { margin-bottom:0; }
.quality-page .quality-sek { padding:84px 0 72px; }
.quality-page .quality-sek h2 > span { display:block; }
.quality-page .quality-certifications { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.quality-page .quality-certification { padding:28px; background:#fff; border:1px solid var(--quality-rule); border-top:3px solid #819c78; border-radius:3px; display:grid; grid-row:span 6; grid-template-rows:subgrid; row-gap:0; }
.quality-page .quality-mark-area { height:112px; min-height:112px; display:flex; align-items:flex-start; justify-content:flex-start; margin-bottom:20px; }
.quality-page .quality-sek-mark { width:auto; max-width:100%; height:112px; object-fit:contain; }
.quality-page .quality-mark-area-integrated { position:relative; height:var(--sek-mark-area-height); min-height:var(--sek-mark-area-height); }
.quality-page .quality-mark-area-integrated .quality-sek-mark { position:absolute; left:var(--sek-image-left); top:var(--sek-image-top); width:var(--sek-image-width); max-width:none; height:auto; }
/* 3種類とも原本内の図形幅・上端・左端で整列。付属名称と余白は一体で保持。 */
.quality-page .quality-mark-placeholder { display:flex; flex-direction:column; justify-content:center; align-items:center; width:180px; height:104px; max-width:100%; background:#f6f7f4; border:1px dashed #b9c6b5; color:var(--quality-muted); font-size:1rem; line-height:1.6; }
.quality-page .quality-mark-placeholder > span { font-size:1rem; }
.quality-page .quality-certification .quality-conditions > div { grid-template-columns:1fr; gap:2px; }
.quality-page .quality-certification .quality-conditions dd { font-size:1.375rem; font-weight:600; color:var(--quality-ink); }
.quality-page .quality-certification .quality-certification-supplement dd { font-size:1.125rem; font-weight:400; color:var(--quality-text); }
.quality-page .quality-certification .quality-certifier-line { display:block; overflow-wrap:anywhere; }
.quality-page .quality-certification .quality-certification-supplement { margin-bottom:0; }
.quality-page .quality-certification details { margin-top:20px; }
.quality-page .quality-certification details .quality-conditions dd { font-size:1.125rem; font-weight:400; }
.quality-page .quality-certification-common { margin-top:28px; padding:24px 28px; background:var(--quality-soft); }
.quality-page .quality-certification-common .quality-conditions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:0; }
.quality-page .quality-certification-common .quality-conditions > div { display:block; margin:0; }
.quality-page .quality-sek-scope { margin:24px 0 16px; max-width:56em; }
.quality-page .quality-functions { padding:72px 0; border-top:1px solid var(--quality-rule); }
.quality-page .quality-function-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.quality-page .quality-function-photo { display:grid; grid-template-columns:1fr; gap:4px; height:246px; overflow:hidden; border-radius:3px; background:var(--quality-soft); }
.quality-page .quality-function-photo[data-count="2"] { grid-template-columns:1fr 1fr; }
.quality-page .quality-function-photo img { display:block; width:100%; height:100%; min-height:0; object-fit:cover; }
.quality-page .quality-function-body { padding:26px 0 0; }
.quality-page .quality-function-body h3 { padding-bottom:16px; border-bottom:2px solid #a6b69c; }
.quality-page .quality-function-body p { min-height:7em; }
.quality-page .quality-function-links { list-style:none; padding:0; margin:20px 0 0; }
.quality-page .quality-function-links li + li { margin-top:10px; }
.quality-page .quality-function-links a { font-weight:600; }
.quality-page .quality-image-note { margin:28px 0 0; color:var(--quality-muted); }
.quality-page .quality-basics { background:var(--quality-soft); padding:44px; border-radius:4px; margin:0 0 80px; }
.quality-page .quality-basic-pair { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.quality-page .quality-basic-pair a { display:grid; grid-template-columns:1fr auto; align-items:center; column-gap:16px; padding:22px 28px; background:#fff; text-decoration:none; border-bottom:2px solid #a6b69c; }
.quality-page .quality-basic-pair strong { grid-column:1; font-size:1.5rem; }
.quality-page .quality-basic-pair a > span:last-child { grid-column:2; grid-row:1/3; }
.quality-page .quality-basic-note { margin:28px 0 0; }
.quality-page .quality-toc { padding:0 0 28px; }
.quality-page .quality-toc ol { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.quality-page .quality-toc a { display:flex; align-items:start; gap:16px; padding:24px 20px; border:1px solid var(--quality-rule); border-radius:3px; text-decoration:none; height:100%; }
.quality-page .quality-toc a:hover { background:var(--quality-soft); }
.quality-page .quality-nav-number { font-size:1rem; line-height:2; color:var(--quality-muted); }
.quality-page .quality-nav-copy { min-width:0; }
.quality-page .quality-toc strong { display:block; font-size:1.25rem; }
.quality-page .quality-nav-copy > span { display:block; margin-top:8px; color:var(--quality-muted); }
.quality-page .quality-test-scope { max-width:55em; padding:0 0 24px; margin:0; }
.quality-page .quality-test { padding:64px 0; border-top:1px solid var(--quality-rule); }
.quality-page .quality-test[data-kind="pressure"],.quality-page .quality-test[data-kind="dog"],.quality-page .quality-test[data-kind="deodorization"] { padding:48px 40px; background:#f7f8f4; border-top:0; border-radius:4px; margin:16px 0; }
.quality-page .quality-test-intro { max-width:52em; margin-bottom:32px; }
.quality-page .quality-test-intro p:last-child { margin-bottom:0; }
.quality-page .quality-test-label { display:flex; align-items:center; gap:16px; color:var(--quality-muted); margin-bottom:18px; }
.quality-page .quality-test-number { color:var(--quality-ink); font-size:1.5rem; line-height:1; font-weight:500; padding-right:16px; border-right:1px solid #b5c3ae; }
.quality-page .quality-test-content { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; align-items:start; }
.quality-page .quality-test[data-kind="cedar"] .quality-test-content { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); }
.quality-page .quality-test[data-kind="deodorization"] .quality-test-content { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); }
.quality-page .quality-result { min-width:0; }
.quality-page .quality-result-statement { font-weight:600; color:var(--quality-ink); border-left:3px solid #9caf8b; padding-left:20px; }
.quality-page .quality-value { color:var(--quality-ink); font-weight:700; font-size:1.875rem; line-height:1.4; white-space:nowrap; }
.quality-page .quality-value-unit { font-size:1.125rem; margin-left:3px; }
.quality-page .quality-result-statement .quality-value { font-size:2.25rem; }
.quality-page .quality-result-ending { display:inline-block; white-space:nowrap; }
.quality-page .quality-conditions { margin:24px 0 0; }
.quality-page .quality-conditions > div { display:grid; grid-template-columns:120px minmax(0,1fr); gap:16px; margin-top:12px; }
.quality-page dt { font-weight:600; }
.quality-page dd { margin:0; overflow-wrap:anywhere; }
.quality-page .quality-takeaway { margin:24px 0 0; max-width:50em; }
.quality-page .quality-conclusion { display:grid; grid-template-columns:210px 1fr; gap:24px; max-width:none; padding:24px 0; margin-top:28px; border-top:1px solid var(--quality-rule); border-bottom:1px solid var(--quality-rule); }
.quality-page .quality-conclusion > span { font-weight:700; color:var(--quality-ink); }
.quality-page .quality-reading-facts .quality-conditions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.quality-page .quality-reading-facts .quality-conditions > div { display:block; margin:0; }
.quality-page .quality-reading-facts dd { margin-top:6px; }
.quality-page .quality-test-note { margin:28px 0; max-width:54em; color:var(--quality-muted); }
.quality-page details { border-top:1px solid var(--quality-rule); padding-top:10px; }
.quality-page summary { color:var(--quality-ink); cursor:pointer; text-decoration:underline; text-underline-offset:5px; padding:10px 0; font-weight:600; }
.quality-page .quality-details-content { padding:20px 0; max-width:55em; }
.quality-page .quality-details-content dt { margin-top:16px; }
.quality-page .quality-details-content dd { margin-top:6px; }
.quality-page .quality-review-context { color:var(--quality-muted); margin-top:20px; border-top:1px dashed #becbc0; padding-top:16px; }
.quality-page .quality-review-context p:last-child { margin:0; }
.quality-page table { width:100%; margin:0; border-collapse:collapse; }
.quality-page caption { text-align:left; color:var(--quality-ink); font-weight:700; margin-bottom:16px; }
.quality-page th,.quality-page td { padding:14px 12px; border:0; border-bottom:1px solid var(--quality-rule); vertical-align:top; background:none; }
.quality-page thead th { color:var(--quality-ink); padding-top:0; }
.quality-page .quality-material-type { display:block; font-weight:600; }
.quality-page .quality-thickness-guide { display:block; font-size:inherit; font-weight:400; margin-top:4px; }
.quality-page .quality-thickness-guide > span { white-space:nowrap; }
/* 実測の同一データから棒長とラベルを生成。最小幅を付けず、0から比較する。 */
.quality-page .quality-chart { padding:28px; background:#f0f4ed; border-radius:4px; border-top:3px solid #95aa84; }
.quality-page [data-kind="pressure"] .quality-chart,.quality-page [data-kind="deodorization"] .quality-chart { background:#fff; }
.quality-page .quality-chart figcaption { color:var(--quality-ink); font-weight:700; margin:0 0 24px; }
.quality-page .quality-chart figcaption > span { display:block; font-weight:400; color:var(--quality-text); margin-top:4px; }
.quality-page .quality-chart ol { list-style:none; padding:0; margin:0; display:grid; gap:24px; }
.quality-page .quality-bar-label { display:flex; align-items:baseline; flex-wrap:wrap; gap:8px 16px; margin-bottom:10px; }
.quality-page .quality-bar-label > span { flex:1 1 150px; }
.quality-page .quality-bar-label > strong { color:var(--quality-ink); font-size:1.375rem; white-space:nowrap; }
.quality-page .quality-bar-label > strong > span { font-size:1.125rem; font-weight:400; }
.quality-page .quality-bar-track { height:20px; border-inline:1px solid #9daf9c; background:repeating-linear-gradient(to right,#fff 0,#fff calc(25% - 1px),#d9e2da calc(25% - 1px),#d9e2da 25%); }
.quality-page [data-kind="pressure"] .quality-bar-track,.quality-page [data-kind="deodorization"] .quality-bar-track { background:repeating-linear-gradient(to right,#eef2e9 0,#eef2e9 calc(25% - 1px),#d9e2da calc(25% - 1px),#d9e2da 25%); }
.quality-page .quality-bar-track > span { display:block; height:100%; background:#557b61; }
.quality-page .quality-chart-axis { display:flex; justify-content:space-between; font-size:1.125rem; margin-top:12px; color:var(--quality-muted); }
.quality-page .quality-diagram { padding:8px 0; }
.quality-page .quality-concept-labels { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
.quality-page .quality-concept-labels > div { padding:10px 12px; background:#f6f0e5; border-radius:3px; }
.quality-page .quality-concept-labels > div + div { background:#eaf0e9; }
.quality-page .quality-concept-labels :is(span,strong) { display:block; }
.quality-page .quality-concept-labels strong { color:var(--quality-ink); text-wrap:balance; }
.quality-page .quality-concept-image { display:block; width:100%; height:auto; border-radius:3px; }
.quality-page .quality-concept .quality-concept-middle { margin:12px 0; text-align:center; font-weight:600; color:var(--quality-ink); }
.quality-page .quality-concept-direction { display:flex; gap:16px; align-items:center; color:var(--quality-ink); }
.quality-page .quality-concept-direction > span { flex-shrink:0; }
.quality-page .quality-concept-direction i { position:relative; flex:1; height:2px; background:#648572; margin-right:3px; }
.quality-page .quality-concept-direction i::after { content:''; position:absolute; right:0; top:-4px; width:10px; height:10px; border-top:2px solid #648572; border-right:2px solid #648572; transform:rotate(45deg); }
.quality-page .quality-diagram-conclusion { text-align:center; padding:16px; background:#eaf0e5; color:var(--quality-ink); font-weight:600; }
.quality-page .quality-process { list-style:none; margin:0; padding:0; display:grid; gap:24px; }
.quality-page .quality-process li { display:grid; grid-template-columns:1fr 1.25fr; align-items:center; gap:16px; padding:20px; background:#fff; border-left:3px solid #a1b391; position:relative; }
.quality-page .quality-process li + li::before { content:'↓'; position:absolute; top:-28px; left:50%; color:#648572; }
.quality-page .quality-culture-flow { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.quality-page .quality-culture-flow h3 { font-size:1.125rem; text-align:center; padding:12px 4px; border-bottom:2px solid #8da992; }
.quality-page .quality-culture-flow ol { list-style:none; padding:0; margin:0; }
.quality-page .quality-culture-flow li { padding:12px; background:var(--quality-soft); text-align:center; margin-bottom:28px; position:relative; }
.quality-page .quality-culture-flow li > span { display:inline-block; white-space:nowrap; }
.quality-page .quality-culture-flow li + li::before { content:'↓'; position:absolute; top:-29px; left:50%; color:#648572; }
.quality-page .quality-odor-map h3 { font-size:1.375rem; }
.quality-page .quality-odor-map ul { list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:12px; }
.quality-page .quality-odor-map li { background:#fff; border:1px solid var(--quality-rule); padding:12px 16px; }
.quality-page .quality-odor-plus { color:#648572; font-size:1.5rem; margin:20px 0; }
.quality-page .quality-find { padding:48px; background:#eaf0e5; border-radius:4px; margin:64px 0 80px; }
.quality-page .quality-find > p { max-width:45em; }
.quality-page .quality-find-actions { display:flex; flex-wrap:wrap; gap:24px; margin-top:28px; }
.quality-page .quality-button { display:inline-flex; align-items:center; justify-content:center; gap:24px; padding:16px 24px; color:#fff; background:#294b3b; border:1px solid #294b3b; border-radius:3px; text-decoration:none; font-weight:600; }
.quality-page .quality-button-secondary { background:#fff; color:#294b3b; }
.quality-page .quality-example-label { display:block; margin-top:10px; color:var(--quality-muted); }
@media(max-width:1050px) {
 .quality-page .quality-hero { column-gap:32px; }
 .quality-page .quality-section-heading { gap:32px; }
 .quality-page .quality-certifications { gap:16px; }
 .quality-page .quality-certification { padding:24px 20px; }
 .quality-page .quality-targets { grid-template-columns:1fr; }
 .quality-page .quality-targets li + li { border-left:0; border-top:1px solid var(--quality-rule); padding-left:0; }
 .quality-page .quality-function-grid { gap:24px; }
 .quality-page .quality-function-photo { height:200px; }
 .quality-page .quality-function-body p { min-height:0; }
 .quality-page .quality-test-content { gap:32px; }
}
@media(max-width:900px) {
 .quality-page .quality-hero,.quality-page .quality-section-heading { grid-template-columns:1fr; gap:28px; }
 .quality-page .quality-hero-photo { max-width:560px; justify-self:center; }
 .quality-page .quality-target-overview { grid-column:auto; }
 .quality-page .quality-certifications,.quality-page .quality-function-grid { grid-template-columns:1fr; }
 .quality-page .quality-certification { display:grid; grid-row:auto; grid-template-rows:none; grid-template-columns:180px minmax(0,1fr); gap:0 28px; }
 .quality-page .quality-mark-area { grid-column:1; grid-row:1/7; align-items:start; }
 .quality-page .quality-certification > :not(.quality-mark-area) { grid-column:2; }
 .quality-page .quality-certification-aligned-mark { grid-template-columns:100px minmax(0,1fr); column-gap:20px; }
 .quality-page .quality-certification-aligned-mark .quality-mark-area { margin-bottom:0; }
 .quality-page .quality-function-grid article { display:grid; grid-template-columns:.9fr 1.1fr; gap:28px; }
 .quality-page .quality-function-photo { height:280px; }
 .quality-page .quality-function-body { padding:0; }
 .quality-page .quality-test-content,.quality-page .quality-test[data-kind] .quality-test-content { grid-template-columns:1fr; gap:28px; }
 .quality-page .quality-diagram { max-width:600px; }
 .quality-page .quality-toc ol { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .quality-page .quality-reading-facts .quality-conditions { grid-template-columns:1fr; gap:16px; }
 .quality-page .quality-conclusion { grid-template-columns:1fr; gap:12px; }
}
@media(max-width:700px) {
 .quality-page .quality-wrap { width:calc(100% - 40px); }
 .quality-page h1 { font-size:2rem; }
 .quality-page h2 { font-size:1.625rem; }
 .quality-page h3 { font-size:1.375rem; }
 .quality-page main .quality-lead { font-size:1.375rem; }
 .quality-page .quality-hero { padding:36px 0; }
 .quality-page .quality-hero-photo { padding:16px; }
 .quality-page .quality-hero-photo img { height:auto; max-height:300px; }
 .quality-page .quality-hero-photo figcaption { padding:0; }
 .quality-page .quality-targets a { padding-right:4px; gap:12px; }
 .quality-page .quality-target-photo img { width:36px; height:52px; }
 .quality-page .quality-targets strong { font-size:1.25rem; }
 .quality-page .quality-sek,.quality-page .quality-functions { padding:48px 0; }
 .quality-page .quality-certification { display:block; padding:24px; }
 .quality-page .quality-certification-aligned-mark { display:grid; grid-template-columns:80px minmax(0,1fr); column-gap:16px; }
 .quality-page .quality-certification-aligned-mark .quality-mark-area { grid-column:1; grid-row:1; height:var(--sek-mobile-mark-area-height); min-height:var(--sek-mobile-mark-area-height); }
 .quality-page .quality-certification-aligned-mark .quality-sek-mark { width:var(--sek-mobile-image-width); left:var(--sek-mobile-image-left); top:var(--sek-mobile-image-top); }
 .quality-page .quality-certification.quality-certification-aligned-mark > .quality-card-title { grid-column:2; grid-row:1; align-self:center; margin:0; }
 .quality-page .quality-certification-aligned-mark > .quality-card-title > span { display:block; }
 .quality-page .quality-certification-aligned-mark > :not(.quality-mark-area):not(.quality-card-title) { grid-column:1 / -1; }
 .quality-page .quality-certification-aligned-mark > p { margin:20px 0 0; }
 .quality-page .quality-certification-common { padding:24px; }
 .quality-page .quality-certification-common .quality-conditions { grid-template-columns:1fr; gap:20px; }
 .quality-page .quality-function-grid { gap:40px; }
 .quality-page .quality-function-grid article { display:block; }
 .quality-page .quality-function-photo { height:240px; }
 .quality-page .quality-function-body { padding:24px 0 0; }
 .quality-page .quality-basics { padding:28px 20px; margin-bottom:48px; }
 .quality-page .quality-basic-pair { grid-template-columns:1fr; gap:16px; }
 .quality-page .quality-basic-pair a { padding:20px; }
 .quality-page .quality-toc ol { grid-template-columns:1fr; gap:12px; }
 .quality-page .quality-toc a { padding:20px; }
 .quality-page .quality-test,.quality-page .quality-test[data-kind] { padding:40px 0; border-radius:0; margin:0; background:transparent; border-top:1px solid var(--quality-rule); }
 .quality-page .quality-test-number { font-size:1.25rem; }
 .quality-page .quality-test-label { gap:12px; }
 .quality-page .quality-test-intro { margin-bottom:28px; }
 .quality-page .quality-chart { padding:20px 16px; }
 .quality-page [data-kind="cedar"] .quality-bar-label { display:block; }
 .quality-page [data-kind="cedar"] .quality-bar-label > strong { display:block; margin-top:4px; }
 .quality-page [data-kind="pressure"] .quality-chart,.quality-page [data-kind="deodorization"] .quality-chart { background:#f0f4ed; }
 .quality-page .quality-conditions > div { grid-template-columns:1fr; gap:4px; }
 .quality-page .quality-find { padding:28px 20px; margin:40px 0 48px; }
 .quality-page .quality-find-actions,.quality-page .quality-find-actions > div { display:block; width:100%; }
 .quality-page .quality-find-actions > div + div { margin-top:24px; }
 .quality-page .quality-button { display:flex; padding:16px; gap:12px; }
 .quality-page table,.quality-page caption { display:block; }
 .quality-page thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .quality-page tbody { display:grid; gap:20px; }
 .quality-page tr { display:grid; gap:10px; padding-bottom:20px; border-bottom:1px solid var(--quality-rule); }
 .quality-page th,.quality-page td { display:block; border:0; padding:0; }
 .quality-page td::before { content:attr(data-label); display:block; color:var(--quality-muted); margin-bottom:4px; }
 .quality-page .quality-process li { grid-template-columns:1fr; gap:8px; }
 .quality-page .quality-culture-flow { gap:12px; }
.quality-page .quality-culture-flow li { padding:12px 8px; }
}

@media(max-width:360px) {
 .quality-page .quality-certification-aligned-mark { grid-template-columns:72px minmax(0,1fr); column-gap:14px; }
 .quality-page .quality-certification-aligned-mark .quality-mark-area { height:var(--sek-narrow-mark-area-height); min-height:var(--sek-narrow-mark-area-height); }
 .quality-page .quality-certification-aligned-mark .quality-sek-mark { width:var(--sek-narrow-image-width); left:var(--sek-narrow-image-left); top:var(--sek-narrow-image-top); }
}

/* 01：02と同じ読み分け。共通のdetails・グラフ部品を使い、差分は01内に限定。 */
.quality-page [data-kind="capture"] h3 { text-wrap:balance; }
.quality-page [data-kind="capture"] .quality-test-intro h2 > span { display:inline-block; }
.quality-page [data-kind="capture"] .quality-test-intro { margin-bottom:28px; }
.quality-page [data-kind="capture"] .quality-capture-overview { display:grid; grid-template-columns:1.15fr 1fr; grid-template-areas:'image copy'; gap:40px; align-items:center; margin-bottom:32px; }
.quality-page [data-kind="capture"] .quality-capture-overview-copy { grid-area:copy; min-width:0; }
.quality-page [data-kind="capture"] .quality-capture-overview-copy p:last-child { margin-bottom:0; }
.quality-page [data-kind="capture"] .quality-capture-illustration { grid-area:image; min-width:0; }
.quality-page [data-kind="capture"] .quality-concept-image { object-fit:contain; aspect-ratio:4 / 3; }
.quality-page [data-kind="capture"] .quality-capture-illustration figcaption { margin-top:12px; }
.quality-page [data-kind="capture"] .quality-test-details { margin:0; padding:0; border:0; }
.quality-page [data-kind="capture"] .quality-test-details > summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:64px; padding:16px 20px; border:1px solid var(--quality-rule); border-radius:3px; background:#fff; color:var(--quality-ink); list-style:none; text-decoration:none; }
.quality-page [data-kind="capture"] .quality-test-details > summary::-webkit-details-marker { display:none; }
.quality-page [data-kind="capture"] .quality-test-details > summary::marker { content:''; }
.quality-page [data-kind="capture"] .quality-test-details > summary:hover { background:#edf2e8; }
.quality-page [data-kind="capture"] .quality-capture-summary-label > span { display:inline-block; }
.quality-page [data-kind="capture"] .quality-capture-toggle { width:20px; height:20px; position:relative; flex-shrink:0; }
.quality-page [data-kind="capture"] .quality-capture-toggle::before,.quality-page [data-kind="capture"] .quality-capture-toggle::after { content:''; position:absolute; background:currentColor; }
.quality-page [data-kind="capture"] .quality-capture-toggle::before { left:2px; right:2px; top:9px; height:2px; }
.quality-page [data-kind="capture"] .quality-capture-toggle::after { top:2px; bottom:2px; left:9px; width:2px; }
.quality-page [data-kind="capture"] .quality-test-details[open] .quality-capture-toggle::after { display:none; }
.quality-page [data-kind="capture"] .quality-test-details > .quality-details-content { max-width:none; padding:36px 0 0; }
.quality-page [data-kind="capture"] .quality-capture-measurement > p { max-width:52em; }
.quality-page [data-kind="capture"] .quality-capture-measurement h3 > span { display:inline-block; }
.quality-page [data-kind="capture"] .quality-capture-results { display:grid; grid-template-columns:1.15fr 1fr; gap:40px; align-items:start; margin-top:28px; }
.quality-page [data-kind="capture"] .quality-capture-results > * { min-width:0; }
.quality-page [data-kind="capture"] .quality-capture-results > .quality-conditions { margin-top:0; }
.quality-page [data-kind="capture"] .quality-capture-results .quality-conditions > div { display:block; margin-top:0; margin-bottom:24px; }
.quality-page [data-kind="capture"] .quality-capture-results .quality-conditions dd { margin-top:6px; }
.quality-page [data-kind="capture"] :is(.quality-capture-reading,.quality-capture-method) { margin-top:32px; padding-top:28px; border-top:1px solid var(--quality-rule); }
.quality-page [data-kind="capture"] :is(.quality-capture-reading,.quality-capture-method) > p { max-width:52em; }
.quality-page [data-kind="capture"] .quality-capture-reading > a { font-weight:600; display:inline-block; padding-block:6px; }
.quality-page [data-kind="capture"] .quality-capture-reading .quality-test-note { margin:20px 0 0; }
@media(max-width:1050px) {
 .quality-page [data-kind="capture"] .quality-capture-overview { grid-template-columns:1fr; grid-template-areas:'copy' 'image'; gap:28px; }
 .quality-page [data-kind="capture"] .quality-capture-results { grid-template-columns:1fr; gap:28px; }
}
@media(max-width:700px) {
 .quality-page [data-kind="capture"] .quality-test-details > summary { padding-inline:16px; gap:16px; background:var(--quality-soft); }
}

/* 02：短い概要と、結果・条件・根拠をまとめた一段の詳細欄。 */
.quality-page [data-kind="pressure"] h3 { text-wrap:balance; }
.quality-page [data-kind="pressure"] .quality-test-intro h2 > span { display:inline-block; }
.quality-page [data-kind="pressure"] .quality-test-intro { margin-bottom:28px; }
.quality-page [data-kind="pressure"] .quality-pressure-overview { display:grid; grid-template-columns:1.15fr 1fr; grid-template-areas:'image copy'; gap:40px; align-items:center; margin-bottom:32px; }
.quality-page [data-kind="pressure"] .quality-pressure-overview-copy { grid-area:copy; min-width:0; }
.quality-page [data-kind="pressure"] .quality-pressure-overview-copy .quality-lead > span { text-wrap:balance; }
.quality-page [data-kind="pressure"] .quality-pressure-overview-copy p:last-child { margin-bottom:0; }
.quality-page [data-kind="pressure"] .quality-pressure-illustration { grid-area:image; min-width:0; }
.quality-page [data-kind="pressure"] .quality-pressure-image { display:block; width:100%; height:auto; aspect-ratio:2 / 1; object-fit:contain; }
.quality-page [data-kind="pressure"] .quality-pressure-illustration figcaption { margin-top:12px; }
.quality-page [data-kind="pressure"] .quality-test-details { margin:0; padding:0; border:0; }
.quality-page [data-kind="pressure"] .quality-test-details > summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:64px; padding:16px 20px; border:1px solid var(--quality-rule); border-radius:3px; background:#fff; color:var(--quality-ink); list-style:none; text-decoration:none; }
.quality-page [data-kind="pressure"] .quality-test-details > summary::-webkit-details-marker { display:none; }
.quality-page [data-kind="pressure"] .quality-test-details > summary::marker { content:''; }
.quality-page [data-kind="pressure"] .quality-test-details > summary:hover { background:#edf2e8; }
.quality-page [data-kind="pressure"] .quality-pressure-toggle { width:20px; height:20px; position:relative; flex-shrink:0; }
.quality-page [data-kind="pressure"] .quality-pressure-toggle::before,.quality-page [data-kind="pressure"] .quality-pressure-toggle::after { content:''; position:absolute; background:currentColor; }
.quality-page [data-kind="pressure"] .quality-pressure-toggle::before { left:2px; right:2px; top:9px; height:2px; }
.quality-page [data-kind="pressure"] .quality-pressure-toggle::after { top:2px; bottom:2px; left:9px; width:2px; }
.quality-page [data-kind="pressure"] .quality-test-details[open] .quality-pressure-toggle::after { display:none; }
.quality-page [data-kind="pressure"] .quality-test-details > .quality-details-content { max-width:none; padding:36px 0 0; }
.quality-page [data-kind="pressure"] .quality-pressure-results { display:grid; grid-template-columns:1.15fr 1fr; gap:40px; align-items:start; margin-top:28px; }
.quality-page [data-kind="pressure"] .quality-pressure-results > * { min-width:0; }
.quality-page [data-kind="pressure"] .quality-pressure-chart-group { padding:24px; background:#fff; border-top:3px solid #95aa84; border-radius:3px; }
.quality-page [data-kind="pressure"] .quality-pressure-velocity { color:var(--quality-ink); margin:0 0 8px; }
.quality-page [data-kind="pressure"] .quality-pressure-velocity strong { white-space:nowrap; }
.quality-page [data-kind="pressure"] .quality-pressure-explanation { margin:0 0 24px; font-weight:600; color:var(--quality-ink); }
.quality-page [data-kind="pressure"] .quality-chart { padding:0; border:0; background:none; }
.quality-page [data-kind="pressure"] .quality-bar-label > strong { font-size:2rem; line-height:1.4; }
.quality-page [data-kind="pressure"] .quality-bar-label > strong > span { font-size:1.125rem; }
.quality-page [data-kind="pressure"] :is(.quality-pressure-reading,.quality-pressure-ventilation) h4 { margin:0 0 16px; font-size:1.125rem; line-height:1.75; color:var(--quality-ink); }
.quality-page [data-kind="pressure"] .quality-pressure-reading .quality-test-note { margin:20px 0 0; }
.quality-page [data-kind="pressure"] :is(.quality-pressure-purpose,.quality-pressure-method,.quality-pressure-care) { margin-top:40px; padding-top:32px; border-top:1px solid var(--quality-rule); }
.quality-page [data-kind="pressure"] :is(.quality-pressure-purpose,.quality-pressure-method,.quality-pressure-care) > p { max-width:52em; }
.quality-page [data-kind="pressure"] .quality-pressure-ventilation { margin-top:28px; }
.quality-page [data-kind="pressure"] .quality-pressure-ventilation ol { list-style:none; display:flex; margin:0; padding:0; gap:32px; }
.quality-page [data-kind="pressure"] .quality-pressure-ventilation li { position:relative; flex:1; min-width:0; display:flex; align-items:center; justify-content:center; text-align:center; padding:12px 4px; background:#fff; color:var(--quality-ink); }
.quality-page [data-kind="pressure"] .quality-pressure-ventilation li + li::before { content:'→'; position:absolute; left:-26px; color:#506255; }
.quality-page [data-kind="pressure"] .quality-pressure-care > a { font-weight:600; display:inline-block; padding-block:6px; }
@media(max-width:1050px) {
 .quality-page [data-kind="pressure"] .quality-pressure-overview { grid-template-columns:1fr; grid-template-areas:'copy' 'image'; gap:28px; }
 .quality-page [data-kind="pressure"] .quality-pressure-results { grid-template-columns:1fr; gap:28px; }
 .quality-page [data-kind="pressure"] .quality-pressure-ventilation ol { gap:24px; }
 .quality-page [data-kind="pressure"] .quality-pressure-ventilation li + li::before { left:-21px; }
}
@media(max-width:700px) {
 .quality-page [data-kind="pressure"] .quality-pressure-ventilation ol { flex-direction:column; gap:26px; }
 .quality-page [data-kind="pressure"] .quality-pressure-ventilation li { background:var(--quality-soft); padding:8px 16px; }
 .quality-page [data-kind="pressure"] .quality-pressure-ventilation li + li::before { content:'↓'; top:-29px; left:calc(50% - .5em); }
 .quality-page [data-kind="pressure"] .quality-pressure-chart-group { padding:20px 16px; background:var(--quality-soft); }
 .quality-page [data-kind="pressure"] :is(.quality-pressure-purpose,.quality-pressure-method,.quality-pressure-care) { margin-top:32px; }
 .quality-page [data-kind="pressure"] .quality-test-details > summary { padding-inline:16px; gap:16px; background:var(--quality-soft); }
}

/* 03：重要条件付きの結果を概要に残し、測定量と根拠を一段の詳細へ。 */
.quality-page [data-kind="cedar"] .quality-test-intro { margin-bottom:28px; }
.quality-page [data-kind="cedar"] .quality-test-intro h2 > span { display:inline-block; }
.quality-page [data-kind="cedar"] .quality-cedar-overview { display:grid; grid-template-columns:1fr 1.15fr; grid-template-areas:'image copy' 'image result'; gap:24px 40px; align-items:start; margin-bottom:32px; }
.quality-page [data-kind="cedar"] .quality-cedar-overview > * { min-width:0; }
.quality-page [data-kind="cedar"] .quality-cedar-overview-copy { grid-area:copy; align-self:end; }
.quality-page [data-kind="cedar"] .quality-cedar-overview-copy p { margin:0; }
.quality-page [data-kind="cedar"] .quality-cedar-origin { grid-area:image; width:100%; max-width:440px; justify-self:center; align-self:center; }
.quality-page [data-kind="cedar"] .quality-cedar-photo { display:block; width:100%; height:auto; object-fit:contain; border-radius:3px; }
.quality-page [data-kind="cedar"] .quality-cedar-origin figcaption { margin-top:12px; }
.quality-page [data-kind="cedar"] .quality-cedar-overview-result { grid-area:result; }
.quality-page [data-kind="cedar"] .quality-result-statement { border:0; padding:0; margin:0; font-size:1.5rem; line-height:1.65; }
.quality-page [data-kind="cedar"] .quality-cedar-analyte { display:inline-block; }
.quality-page [data-kind="cedar"] .quality-cedar-result-lead { display:block; font-size:1.125rem; font-weight:400; }
.quality-page [data-kind="cedar"] .quality-result-statement .quality-value { font-size:2.5rem; margin-left:6px; }
.quality-page [data-kind="cedar"] .quality-cedar-result-note { margin:16px 0 0; font-size:1.125rem; }
.quality-page [data-kind="cedar"] .quality-test-details { margin:0; padding:0; border:0; }
.quality-page [data-kind="cedar"] .quality-test-details > summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:64px; padding:16px 20px; border:1px solid var(--quality-rule); border-radius:3px; background:#fff; color:var(--quality-ink); list-style:none; text-decoration:none; }
.quality-page [data-kind="cedar"] .quality-test-details > summary::-webkit-details-marker { display:none; }
.quality-page [data-kind="cedar"] .quality-cedar-summary-label > span { display:inline-block; }
.quality-page [data-kind="cedar"] .quality-cedar-toggle { width:20px; height:20px; position:relative; flex-shrink:0; }
.quality-page [data-kind="cedar"] .quality-cedar-toggle::before,.quality-page [data-kind="cedar"] .quality-cedar-toggle::after { content:''; position:absolute; background:currentColor; }
.quality-page [data-kind="cedar"] .quality-cedar-toggle::before { left:2px; right:2px; top:9px; height:2px; }
.quality-page [data-kind="cedar"] .quality-cedar-toggle::after { top:2px; bottom:2px; left:9px; width:2px; }
.quality-page [data-kind="cedar"] .quality-test-details[open] .quality-cedar-toggle::after { display:none; }
.quality-page [data-kind="cedar"] .quality-test-details > .quality-details-content { max-width:none; padding:36px 0 0; }
.quality-page [data-kind="cedar"] .quality-cedar-results { display:grid; grid-template-columns:1.15fr 1fr; gap:40px; align-items:start; margin-top:28px; }
.quality-page [data-kind="cedar"] .quality-cedar-results > * { min-width:0; }
.quality-page [data-kind="cedar"] .quality-cedar-formula { margin:16px 0; font-weight:600; }
.quality-page [data-kind="cedar"] .quality-cedar-formula > span { display:inline-block; }
.quality-page [data-kind="cedar"] .quality-conditions { margin:0 0 20px; }
.quality-page [data-kind="cedar"] .quality-conditions > div { display:block; margin:16px 0 0; }
.quality-page [data-kind="cedar"] .quality-conditions dd { margin-top:4px; }
.quality-page [data-kind="cedar"] :is(.quality-cedar-scope,.quality-cedar-method) { margin-top:32px; padding-top:28px; border-top:1px solid var(--quality-rule); }
.quality-page [data-kind="cedar"] .quality-chart { padding:24px; background:#fff; border:1px solid var(--quality-rule); border-top:3px solid #95aa84; }
.quality-page [data-kind="cedar"] .quality-chart figcaption { font-size:1.25rem; }
.quality-page [data-kind="cedar"] .quality-chart figcaption > span { font-size:1rem; }
.quality-page [data-kind="cedar"] .quality-chart figcaption > .quality-chart-title { font-size:1.25rem; font-weight:700; color:var(--quality-ink); margin:0; }
.quality-page [data-kind="cedar"] .quality-chart-title > span { display:inline-block; }
.quality-page [data-kind="cedar"] .quality-column-plot { --plot-height:248px; position:relative; padding-left:44px; }
.quality-page [data-kind="cedar"] .quality-column-plot::before { content:''; position:absolute; bottom:0; left:44px; right:0; height:var(--plot-height); border-top:1px solid var(--quality-rule); background:linear-gradient(to top,#d5ded4 1px,transparent 1px); background-size:100% 50%; pointer-events:none; }
.quality-page [data-kind="cedar"] .quality-column-axis { position:absolute; left:0; bottom:0; height:var(--plot-height); width:36px; display:flex; flex-direction:column; justify-content:space-between; color:var(--quality-muted); font-size:1rem; line-height:1; text-align:right; white-space:nowrap; }
.quality-page [data-kind="cedar"] .quality-column-axis > span:first-child { transform:translateY(-50%); }
.quality-page [data-kind="cedar"] .quality-column-axis > span:last-child { transform:translateY(50%); }
.quality-page [data-kind="cedar"] .quality-chart ol { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; position:relative; }
.quality-page [data-kind="cedar"] .quality-chart li { display:flex; flex-direction:column; min-width:0; }
.quality-page [data-kind="cedar"] .quality-bar-label { display:flex; flex-direction:column; align-items:center; gap:10px; flex:1; text-align:center; margin-bottom:20px; }
.quality-page [data-kind="cedar"] .quality-bar-label > span { flex:none; width:100%; color:var(--quality-ink); font-weight:600; line-height:1.5; padding:8px 4px; background:#f1f4ed; border-radius:3px; }
.quality-page [data-kind="cedar"] .quality-chart li + li .quality-bar-label > span { background:#e4eee4; }
.quality-page [data-kind="cedar"] .quality-cedar-label-part { display:inline-block; }
.quality-page [data-kind="cedar"] .quality-bar-label > strong { font-size:2rem; line-height:1.3; margin-top:auto; }
.quality-page [data-kind="cedar"] .quality-bar-label > strong > span { display:block; font-size:1rem; font-weight:400; margin-top:4px; }
.quality-page [data-kind="cedar"] .quality-bar-track { display:flex; justify-content:center; align-items:flex-end; flex:none; height:var(--plot-height); background:transparent; border:0; }
.quality-page [data-kind="cedar"] .quality-bar-track > span { width:62%; max-width:124px; background:#79987d; }
.quality-page [data-kind="cedar"] .quality-chart li + li .quality-bar-track > span { background:#345e47; }
@media(max-width:1050px) {
 .quality-page [data-kind="cedar"] .quality-cedar-overview { grid-template-columns:1fr; grid-template-areas:'copy' 'image' 'result'; gap:28px; }
 .quality-page [data-kind="cedar"] .quality-cedar-origin { max-width:360px; }
 .quality-page [data-kind="cedar"] .quality-cedar-results { grid-template-columns:1fr; gap:28px; }
}
@media(max-width:700px) {
 .quality-page [data-kind="cedar"] .quality-result-statement { font-size:1.375rem; }
 .quality-page [data-kind="cedar"] .quality-result-statement .quality-value { font-size:2.25rem; }
 .quality-page [data-kind="cedar"] .quality-test-details > summary { padding-inline:16px; gap:16px; background:var(--quality-soft); }
 .quality-page [data-kind="cedar"] .quality-chart { padding:20px 16px 24px; }
 .quality-page [data-kind="cedar"] .quality-column-plot { --plot-height:216px; padding-left:40px; }
 .quality-page [data-kind="cedar"] .quality-column-plot::before { left:40px; }
 .quality-page [data-kind="cedar"] .quality-column-axis { width:32px; }
 .quality-page [data-kind="cedar"] .quality-chart ol { gap:12px; }
 .quality-page [data-kind="cedar"] .quality-bar-label > strong { font-size:1.625rem; }
 .quality-page [data-kind="cedar"] .quality-bar-label > span { padding-inline:0; }
 .quality-page [data-kind="cedar"] .quality-bar-track > span { width:70%; }
}

/* 04：原本記載の減少度と同時点の対照比較。03の表示には影響させない。 */
.quality-page [data-kind="dog"] .quality-test-intro { margin-bottom:28px; }
.quality-page [data-kind="dog"] .quality-test-intro h2 > span { display:inline-block; }
.quality-page [data-kind="dog"] .quality-dog-overview { display:grid; grid-template-columns:1fr 1.15fr; grid-template-areas:'image copy' 'image result'; gap:24px 40px; align-items:start; margin-bottom:32px; }
.quality-page [data-kind="dog"] .quality-dog-overview > * { min-width:0; }
.quality-page [data-kind="dog"] .quality-dog-overview-copy { grid-area:copy; align-self:end; }
.quality-page [data-kind="dog"] .quality-dog-overview-copy p { margin:0; }
.quality-page [data-kind="dog"] .quality-dog-origin { grid-area:image; width:100%; max-width:440px; justify-self:center; align-self:center; }
.quality-page [data-kind="dog"] .quality-dog-photo { display:block; width:100%; height:auto; object-fit:contain; border-radius:3px; }
.quality-page [data-kind="dog"] .quality-dog-origin figcaption { margin-top:12px; }
.quality-page [data-kind="dog"] .quality-dog-overview-result { grid-area:result; }
.quality-page [data-kind="dog"] .quality-result-statement { border:0; padding:0; margin:0; font-size:1.5rem; line-height:1.65; }
.quality-page [data-kind="dog"] .quality-dog-result-target { display:block; font-size:1.125rem; font-weight:400; }
.quality-page [data-kind="dog"] .quality-result-statement .quality-value { font-size:2.5rem; margin-left:6px; }
.quality-page [data-kind="dog"] .quality-dog-result-note { margin:16px 0 0; font-size:1.125rem; }
.quality-page [data-kind="dog"] .quality-test-details { margin:0; padding:0; border:0; }
.quality-page [data-kind="dog"] .quality-test-details > summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:64px; padding:16px 20px; border:1px solid var(--quality-rule); border-radius:3px; background:#fff; color:var(--quality-ink); list-style:none; text-decoration:none; }
.quality-page [data-kind="dog"] .quality-test-details > summary::-webkit-details-marker { display:none; }
.quality-page [data-kind="dog"] .quality-dog-summary-label > span { display:inline-block; }
.quality-page [data-kind="dog"] .quality-dog-toggle { width:20px; height:20px; position:relative; flex-shrink:0; }
.quality-page [data-kind="dog"] .quality-dog-toggle::before,.quality-page [data-kind="dog"] .quality-dog-toggle::after { content:''; position:absolute; background:currentColor; }
.quality-page [data-kind="dog"] .quality-dog-toggle::before { left:2px; right:2px; top:9px; height:2px; }
.quality-page [data-kind="dog"] .quality-dog-toggle::after { top:2px; bottom:2px; left:9px; width:2px; }
.quality-page [data-kind="dog"] .quality-test-details[open] .quality-dog-toggle::after { display:none; }
.quality-page [data-kind="dog"] .quality-test-details > .quality-details-content { max-width:none; padding:36px 0 0; }
.quality-page [data-kind="dog"] .quality-dog-results { display:grid; grid-template-columns:1.15fr 1fr; gap:40px; align-items:start; margin-top:28px; }
.quality-page [data-kind="dog"] .quality-dog-results > * { min-width:0; }
.quality-page [data-kind="dog"] .quality-conditions { margin:0 0 20px; }
.quality-page [data-kind="dog"] .quality-conditions > div { display:block; margin:16px 0 0; }
.quality-page [data-kind="dog"] .quality-conditions dd { margin-top:4px; }
.quality-page [data-kind="dog"] :is(.quality-dog-scope,.quality-dog-method) { margin-top:32px; padding-top:28px; border-top:1px solid var(--quality-rule); }
.quality-page [data-kind="dog"] .quality-chart { padding:24px; background:#fff; border:1px solid var(--quality-rule); border-top:3px solid #95aa84; }
.quality-page [data-kind="dog"] .quality-chart figcaption { font-size:1.25rem; }
.quality-page [data-kind="dog"] .quality-chart figcaption > span { font-size:1rem; }
.quality-page [data-kind="dog"] .quality-chart figcaption > .quality-chart-title { font-size:1.25rem; font-weight:700; color:var(--quality-ink); margin:0; }
.quality-page [data-kind="dog"] .quality-chart-title > span { display:inline-block; }
.quality-page [data-kind="dog"] .quality-column-plot { --plot-height:248px; position:relative; padding-left:44px; }
.quality-page [data-kind="dog"] .quality-column-plot::before { content:''; position:absolute; bottom:0; left:44px; right:0; height:var(--plot-height); border-top:1px solid var(--quality-rule); background:linear-gradient(to top,#d5ded4 1px,transparent 1px); background-size:100% 50%; pointer-events:none; }
.quality-page [data-kind="dog"] .quality-column-axis { position:absolute; left:0; bottom:0; height:var(--plot-height); width:36px; display:flex; flex-direction:column; justify-content:space-between; color:var(--quality-muted); font-size:1rem; line-height:1; text-align:right; white-space:nowrap; }
.quality-page [data-kind="dog"] .quality-column-axis > span:first-child { transform:translateY(-50%); }
.quality-page [data-kind="dog"] .quality-column-axis > span:last-child { transform:translateY(50%); }
.quality-page [data-kind="dog"] .quality-chart ol { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; position:relative; }
.quality-page [data-kind="dog"] .quality-chart li { display:flex; flex-direction:column; min-width:0; }
.quality-page [data-kind="dog"] .quality-bar-label { display:flex; flex-direction:column; align-items:center; gap:10px; flex:1; text-align:center; margin-bottom:20px; }
.quality-page [data-kind="dog"] .quality-bar-label > span { flex:none; width:100%; color:var(--quality-ink); font-weight:600; line-height:1.5; padding:8px 4px; background:#f1f4ed; border-radius:3px; }
.quality-page [data-kind="dog"] .quality-chart li + li .quality-bar-label > span { background:#e4eee4; }
.quality-page [data-kind="dog"] .quality-dog-label-part { display:inline-block; }
.quality-page [data-kind="dog"] .quality-chart li[data-field="result.measurements.sample"] .quality-bar-label > span > span { display:inline-block; }
.quality-page [data-kind="dog"] .quality-dog-analyte { white-space:nowrap; }
.quality-page [data-kind="dog"] .quality-bar-label > strong { font-size:2rem; line-height:1.3; margin-top:auto; }
.quality-page [data-kind="dog"] .quality-bar-label > strong > span { display:block; font-size:1rem; font-weight:400; margin-top:4px; }
.quality-page [data-kind="dog"] .quality-bar-track { display:flex; justify-content:center; align-items:flex-end; flex:none; height:var(--plot-height); background:transparent; border:0; }
.quality-page [data-kind="dog"] .quality-bar-track > span { width:62%; max-width:124px; background:#79987d; }
.quality-page [data-kind="dog"] .quality-chart li + li .quality-bar-track > span { background:#345e47; }
@media(max-width:1050px) {
 .quality-page [data-kind="dog"] .quality-dog-overview { grid-template-columns:1fr; grid-template-areas:'copy' 'image' 'result'; gap:28px; }
 .quality-page [data-kind="dog"] .quality-dog-origin { max-width:360px; }
 .quality-page [data-kind="dog"] .quality-dog-results { grid-template-columns:1fr; gap:28px; }
}
@media(max-width:700px) {
 .quality-page [data-kind="dog"] .quality-result-statement { font-size:1.375rem; }
 .quality-page [data-kind="dog"] .quality-result-statement .quality-value { font-size:2.25rem; }
 .quality-page [data-kind="dog"] .quality-test-details > summary { padding-inline:16px; gap:16px; background:var(--quality-soft); }
 .quality-page [data-kind="dog"] .quality-chart { padding:20px 16px 24px; }
 .quality-page [data-kind="dog"] .quality-column-plot { --plot-height:216px; padding-left:40px; }
 .quality-page [data-kind="dog"] .quality-column-plot::before { left:40px; }
 .quality-page [data-kind="dog"] .quality-column-axis { width:32px; }
 .quality-page [data-kind="dog"] .quality-chart ol { gap:12px; }
 .quality-page [data-kind="dog"] .quality-bar-label > strong { font-size:1.625rem; }
 .quality-page [data-kind="dog"] .quality-bar-label > span { padding-inline:0; }
 .quality-page [data-kind="dog"] .quality-bar-track > span { width:70%; }
}
.quality-page [data-kind="dog"] .quality-dog-result-conditions { margin:14px 0 0; }
.quality-page [data-kind="dog"] .quality-dog-control-label { display:block; font-weight:400; }
.quality-page [data-kind="dog"] .quality-dog-chart-group { min-width:0; }
.quality-page [data-kind="dog"] .quality-dog-chart-note { margin:16px 0 0; }
.quality-page [data-kind="dog"] .quality-dog-condition-list .quality-conditions { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.quality-page [data-kind="dog"] .quality-dog-condition-list .quality-conditions > div { min-width:0; margin:0; }
@media(max-width:700px) {
 .quality-page [data-kind="dog"] .quality-dog-condition-list .quality-conditions { grid-template-columns:1fr; }
}

/* 05：短い概要と採用画像、一段の詳細。既存の他セクションへは適用しない。 */
.quality-page [data-kind="antibacterial"] .quality-test-intro { margin-bottom:28px; }
.quality-page [data-kind="antibacterial"] .quality-test-intro h2 > span { display:inline-block; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-overview { display:grid; grid-template-columns:1fr 1.15fr; grid-template-areas:'image copy'; gap:20px 40px; align-items:center; margin-bottom:32px; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-overview > * { min-width:0; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-overview-copy { grid-area:copy; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-overview-copy p { margin:0; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-overview-copy p + p { margin-top:16px; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-overview-note { grid-area:note; margin:0; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-origin { grid-area:image; width:100%; max-width:440px; justify-self:center; align-self:center; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-photo { display:block; width:100%; height:auto; object-fit:contain; border-radius:3px; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-origin figcaption { margin-top:12px; }
.quality-page [data-kind="antibacterial"] .quality-test-details { margin:0; padding:0; border:0; }
.quality-page [data-kind="antibacterial"] .quality-test-details > summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:64px; padding:16px 20px; border:1px solid var(--quality-rule); border-radius:3px; background:#fff; color:var(--quality-ink); list-style:none; text-decoration:none; }
.quality-page [data-kind="antibacterial"] .quality-test-details > summary::-webkit-details-marker { display:none; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-summary-label > span { display:inline-block; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-toggle { width:20px; height:20px; position:relative; flex-shrink:0; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-toggle::before,.quality-page [data-kind="antibacterial"] .quality-antibacterial-toggle::after { content:''; position:absolute; background:currentColor; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-toggle::before { left:2px; right:2px; top:9px; height:2px; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-toggle::after { top:2px; bottom:2px; left:9px; width:2px; height:16px; }
.quality-page [data-kind="antibacterial"] .quality-test-details[open] .quality-antibacterial-toggle::after { display:none; }
.quality-page [data-kind="antibacterial"] .quality-test-details > .quality-details-content { max-width:none; padding:36px 0 0; }
.quality-page [data-kind="antibacterial"] .quality-details-content > div + div { margin-top:32px; padding-top:28px; border-top:1px solid var(--quality-rule); }
.quality-page [data-kind="antibacterial"] .quality-conditions { margin:24px 0; }
.quality-page [data-kind="antibacterial"] .quality-conditions > div { grid-template-columns:220px minmax(0,1fr); }
.quality-page [data-kind="antibacterial"] .quality-conditions :is(dt,dd) { margin:0; }
.quality-page [data-kind="antibacterial"] h4 { font-size:1.125rem; color:var(--quality-ink); line-height:1.75; margin:28px 0 12px; }
.quality-page [data-kind="antibacterial"] caption { position:absolute; width:1px; height:1px; padding:0; margin:-1px; clip-path:inset(50%); overflow:hidden; white-space:nowrap; }
.quality-page [data-kind="antibacterial"] .quality-antibacterial-scope a { display:inline-block; min-height:48px; padding-block:8px; font-weight:600; }
@media (max-width:1050px) {
 .quality-page [data-kind="antibacterial"] .quality-antibacterial-overview { grid-template-columns:1fr; grid-template-areas:'copy' 'image'; gap:28px; }
 .quality-page [data-kind="antibacterial"] .quality-antibacterial-origin { max-width:360px; }
}
@media (max-width:700px) {
 .quality-page [data-kind="antibacterial"] .quality-test-details > summary { padding-inline:16px; gap:16px; background:var(--quality-soft); }
 .quality-page [data-kind="antibacterial"] .quality-conditions > div { display:block; margin-top:20px; }
 .quality-page [data-kind="antibacterial"] .quality-conditions dd { margin-top:4px; }
}

/* 06：短い概要と採用画像、一段の詳細。既存の他セクションへは適用しない。 */
.quality-page [data-kind="deodorization"] .quality-test-intro { margin-bottom:28px; }
.quality-page [data-kind="deodorization"] .quality-test-intro h2 > span { display:inline-block; }
.quality-page [data-kind="deodorization"] .quality-deodorization-overview { display:grid; grid-template-columns:1fr 1.15fr; grid-template-areas:'image copy'; gap:20px 40px; align-items:center; margin-bottom:32px; }
.quality-page [data-kind="deodorization"] .quality-deodorization-overview > * { min-width:0; }
.quality-page [data-kind="deodorization"] .quality-deodorization-overview-copy { grid-area:copy; }
.quality-page [data-kind="deodorization"] .quality-deodorization-overview-copy p { margin:0; }
.quality-page [data-kind="deodorization"] .quality-deodorization-overview-note { grid-area:note; margin:0; }
.quality-page [data-kind="deodorization"] .quality-deodorization-origin { grid-area:image; width:100%; max-width:440px; justify-self:center; align-self:center; }
.quality-page [data-kind="deodorization"] .quality-deodorization-photo { display:block; width:100%; height:auto; object-fit:contain; border-radius:3px; }
.quality-page [data-kind="deodorization"] .quality-deodorization-origin figcaption { margin-top:12px; }
.quality-page [data-kind="deodorization"] .quality-test-details { margin:0; padding:0; border:0; }
.quality-page [data-kind="deodorization"] .quality-test-details > summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:64px; padding:16px 20px; border:1px solid var(--quality-rule); border-radius:3px; background:#fff; color:var(--quality-ink); list-style:none; text-decoration:none; }
.quality-page [data-kind="deodorization"] .quality-test-details > summary::-webkit-details-marker { display:none; }
.quality-page [data-kind="deodorization"] .quality-deodorization-summary-label > span { display:inline-block; }
.quality-page [data-kind="deodorization"] .quality-deodorization-toggle { width:20px; height:20px; position:relative; flex-shrink:0; }
.quality-page [data-kind="deodorization"] .quality-deodorization-toggle::before,.quality-page [data-kind="deodorization"] .quality-deodorization-toggle::after { content:''; position:absolute; background:currentColor; }
.quality-page [data-kind="deodorization"] .quality-deodorization-toggle::before { left:2px; right:2px; top:9px; height:2px; }
.quality-page [data-kind="deodorization"] .quality-deodorization-toggle::after { top:2px; bottom:2px; left:9px; width:2px; height:16px; }
.quality-page [data-kind="deodorization"] .quality-test-details[open] .quality-deodorization-toggle::after { display:none; }
.quality-page [data-kind="deodorization"] .quality-test-details > .quality-details-content { max-width:none; padding:36px 0 0; }
.quality-page [data-kind="deodorization"] .quality-details-content > div + div { margin-top:32px; padding-top:28px; border-top:1px solid var(--quality-rule); }
.quality-page [data-kind="deodorization"] .quality-conditions { margin:24px 0; }
.quality-page [data-kind="deodorization"] .quality-conditions > div { grid-template-columns:220px minmax(0,1fr); }
.quality-page [data-kind="deodorization"] .quality-conditions :is(dt,dd) { margin:0; }
.quality-page [data-kind="deodorization"] .quality-deodorization-scope a { display:inline-block; min-height:48px; padding-block:8px; font-weight:600; }
@media (max-width:1050px) {
 .quality-page [data-kind="deodorization"] .quality-deodorization-overview { grid-template-columns:1fr; grid-template-areas:'copy' 'image'; gap:28px; }
 .quality-page [data-kind="deodorization"] .quality-deodorization-origin { max-width:360px; }
}
@media (max-width:700px) {
 .quality-page [data-kind="deodorization"] .quality-test-details > summary { padding-inline:16px; gap:16px; background:var(--quality-soft); }
 .quality-page [data-kind="deodorization"] .quality-conditions > div { display:block; margin-top:20px; }
 .quality-page [data-kind="deodorization"] .quality-conditions dd { margin-top:4px; }
}
.quality-page [data-kind="deodorization"] table { table-layout:fixed; }
.quality-page [data-kind="deodorization"] table :is(th,td) { overflow-wrap:anywhere; }
.quality-page [data-kind="deodorization"] .quality-value { white-space:nowrap; }
.quality-page :is([data-kind="antibacterial"],[data-kind="deodorization"]) .quality-result-conclusion { margin:0; font-size:1.375rem; line-height:1.65; color:var(--quality-ink); font-weight:700; }
/* 抗菌の対象と結論を二段で読む。狭い幅では各段の自然な折り返しを許可。 */
.quality-page [data-kind="antibacterial"] .quality-result-target { display:block; font-size:1.125rem; font-weight:400; }
.quality-page [data-kind="antibacterial"] .quality-result-emphasis { display:block; margin-top:4px; font-size:1.5rem; line-height:1.65; font-weight:700; }
/* 捕集・圧力損失だけ：試料表記、二つの厚み、結果を一つの一覧へ。 */
.quality-page :is([data-kind="capture"],[data-kind="pressure"]) .quality-material-results { margin-top:32px; }
.quality-page :is([data-kind="capture"],[data-kind="pressure"]) .quality-material-results .quality-test-note { margin:20px 0 0; }
.quality-page [data-kind="pressure"] .quality-pressure-reading > .quality-conditions { margin:0 0 24px; }
.quality-page [data-kind="pressure"] .quality-pressure-reading .quality-conditions > div { display:block; margin:0 0 20px; }
.quality-page [data-kind="pressure"] .quality-pressure-reading .quality-conditions dt { margin:0; }
@media(max-width:1050px) {
 .quality-page :is([data-kind="capture"],[data-kind="pressure"]) .quality-material-results :is(table,caption) { display:block; }
 .quality-page :is([data-kind="capture"],[data-kind="pressure"]) .quality-material-results thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .quality-page :is([data-kind="capture"],[data-kind="pressure"]) .quality-material-results tbody { display:grid; gap:24px; }
 .quality-page :is([data-kind="capture"],[data-kind="pressure"]) .quality-material-results tr { display:grid; gap:16px; padding-bottom:24px; border-bottom:1px solid var(--quality-rule); }
 .quality-page :is([data-kind="capture"],[data-kind="pressure"]) .quality-material-results :is(th,td) { display:block; border:0; padding:0; }
 .quality-page :is([data-kind="capture"],[data-kind="pressure"]) .quality-material-results td::before { content:attr(data-label); display:block; color:var(--quality-muted); margin-bottom:4px; }
}
.quality-page [data-kind="deodorization"] .quality-deodorization-summary-results { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 24px; margin:24px 0; }
.quality-page [data-kind="deodorization"] .quality-deodorization-summary-results > div { min-width:0; padding:12px 0; border-block:1px solid var(--quality-rule); }
.quality-page [data-kind="deodorization"] .quality-deodorization-summary-results dt { font-weight:600; }
.quality-page [data-kind="deodorization"] .quality-deodorization-summary-results dd { margin:6px 0 0; }
.quality-page [data-kind="deodorization"] .quality-deodorization-summary-results .quality-value { font-size:2rem; line-height:1.35; }
@media (max-width:500px) {
 .quality-page [data-kind="deodorization"] .quality-deodorization-summary-results { grid-template-columns:1fr; gap:0; }
 .quality-page [data-kind="deodorization"] .quality-deodorization-summary-results > div { display:flex; align-items:center; justify-content:space-between; gap:12px; }
 .quality-page [data-kind="deodorization"] .quality-deodorization-summary-results > div + div { border-top:0; }
 .quality-page [data-kind="deodorization"] .quality-deodorization-summary-results dd { margin:0; }
}
@media (max-width:1050px) {
 .quality-page [data-kind="deodorization"] table,.quality-page [data-kind="deodorization"] caption { display:block; }
 .quality-page [data-kind="deodorization"] thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .quality-page [data-kind="deodorization"] tbody { display:grid; gap:20px; }
 .quality-page [data-kind="deodorization"] tr { display:grid; gap:16px; padding:20px; background:#fff; border:1px solid var(--quality-rule); }
 .quality-page [data-kind="deodorization"] th,.quality-page [data-kind="deodorization"] td { display:block; border:0; padding:0; }
 .quality-page [data-kind="deodorization"] td::before { content:attr(data-label); display:block; color:var(--quality-muted); margin-bottom:4px; }
}

/* 2026-09-20: quality chapters. Heading hierarchy changes do not shrink type. */
.quality-chapters-page .quality-page-intro { padding:40px 0 24px; max-width:58em; }
.quality-chapters-page .quality-page-intro p { margin-bottom:8px; }
.quality-chapters-page .quality-chapter-links { display:flex; flex-wrap:wrap; gap:12px 28px; margin:0; padding:0 0 32px; list-style:none; }
.quality-chapters-page .quality-chapter-links a { font-weight:600; }
.quality-chapters-page .quality-chapter { padding:72px 0; border-bottom:1px solid var(--quality-rule); }
.quality-chapters-page .quality-allerclean-intro { display:grid; grid-template-columns:1.2fr 1fr; align-items:center; gap:56px; }
.quality-chapters-page .quality-allerclean-intro > * { min-width:0; }
.quality-chapters-page .quality-definition { font-weight:600; }
.quality-chapters-page .quality-chapter-intro { max-width:52em; margin-bottom:40px; }
.quality-chapters-page :is(.quality-test-title,.quality-subsection-title) { font-size:1.875rem; line-height:1.5; margin:0 0 20px; text-wrap:pretty; }
.quality-chapters-page :is(.quality-test .quality-detail-title,.quality-card-title) { font-size:1.5rem; line-height:1.5; margin:0 0 16px; color:var(--quality-ink); font-weight:700; letter-spacing:.015em; }
.quality-chapters-page .quality-detail-subtitle { font-size:1.125rem; line-height:1.75; margin:28px 0 12px; color:var(--quality-ink); }
.quality-chapters-page .quality-test-title > span,.quality-chapters-page .quality-capture-measurement .quality-detail-title > span { display:inline-block; }
.quality-chapters-page .quality-subsection-title > span { display:block; }
.quality-chapters-page .quality-function-body .quality-card-title { padding-bottom:16px; border-bottom:2px solid #a6b69c; }
@media(max-width:850px) { .quality-chapters-page .quality-allerclean-intro { grid-template-columns:1fr; gap:24px; } .quality-chapters-page .quality-hero-photo { max-width:500px; margin:auto; } }
@media(max-width:700px) {
 .quality-chapters-page .quality-chapter { padding:48px 0; }
 .quality-chapters-page :is(.quality-test-title,.quality-subsection-title) { font-size:1.625rem; }
 .quality-chapters-page :is(.quality-test .quality-detail-title,.quality-card-title) { font-size:1.375rem; }
}

.quality-chapters-page .quality-practice-overview { display:grid; grid-template-columns:1fr 1.08fr; gap:48px; align-items:center; }
.quality-chapters-page .quality-practice :is(img,figure) { max-width:100%; }
.quality-chapters-page .quality-practice img { display:block; width:100%; height:auto; object-fit:contain; }
.quality-chapters-page .quality-practice-details { margin-top:32px; border-top:1px solid var(--quality-rule); border-bottom:1px solid var(--quality-rule); }
.quality-chapters-page .quality-practice-details summary { display:flex; align-items:center; gap:16px; justify-content:space-between; padding:20px 4px; cursor:pointer; color:var(--quality-ink); font-weight:600; list-style:none; }
.quality-chapters-page .quality-practice-details summary::-webkit-details-marker { display:none; }
.quality-chapters-page .quality-practice-toggle::before { content:'＋'; }
.quality-chapters-page .quality-practice-details[open] .quality-practice-toggle::before { content:'−'; }
.quality-chapters-page .quality-practice-detail-content { padding:24px 0 12px; }
.quality-chapters-page .quality-practice-detail-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:48px; align-items:start; }
.quality-chapters-page #japan-production .quality-practice-detail-grid figure { max-width:360px; justify-self:center; }
.quality-chapters-page .quality-practice-closing { margin-top:32px; max-width:50em; }
.quality-chapters-page .quality-after-purchase { padding:48px; margin:64px 0; background:var(--quality-soft); border-left:3px solid #8da992; }
.quality-chapters-page .quality-after-purchase p { max-width:48em; }
.quality-chapters-page .quality-after-purchase a { display:inline-block; padding:8px 0; font-weight:600; }
@media(max-width:850px) { .quality-chapters-page :is(.quality-practice-overview,.quality-practice-detail-grid) { grid-template-columns:1fr; gap:24px; } .quality-chapters-page .quality-practice figure { max-width:640px; width:100%; margin-inline:auto; } }
@media(max-width:700px) { .quality-chapters-page .quality-after-purchase { padding:28px 20px; margin:40px 0; } }

.quality-chapters-page .quality-practice h2 > span { display:inline-block; max-width:100%; }

.quality-chapters-page .quality-after-purchase :is(.quality-lead > span,.quality-eyebrow > span > span) { display:inline-block; }

/* Final polish: only the four quality pillars and their editorial roles. */
.quality-polish-page #quality-title { font-size:clamp(2.5rem,3.9vw,3.5rem); }
.quality-polish-page .quality-chapter { margin:88px 0 0; padding:0; border:0; }
.quality-polish-page .quality-chapter-header { border-left:4px solid var(--quality-ink); padding-left:16px; margin:0 0 28px; }
.quality-polish-page .quality-chapter-header .quality-chapter-label { font-size:.9375rem; line-height:1.75; margin:0 0 8px; color:var(--quality-muted); font-weight:500; }
.quality-polish-page .quality-chapter-header .quality-chapter-heading { font-size:2rem; line-height:1.45; font-weight:700; margin:0; }
.quality-polish-page .quality-chapter-header .quality-chapter-heading > span { display:block; max-width:100%; }
.quality-polish-page :is(.quality-test-title,.quality-subsection-title) { font-size:1.5rem; line-height:1.5; }
.quality-polish-page .quality-test .quality-detail-title,.quality-polish-page .quality-practice-detail-heading { font-size:1.25rem; line-height:1.5; font-weight:700; }
.quality-polish-page .quality-test .quality-detail-subtitle { font-size:1.25rem; line-height:1.5; }
.quality-polish-page .quality-chapter :is(.quality-test-label,.quality-section-heading .quality-eyebrow) { font-size:.9375rem; line-height:1.75; }
.quality-polish-page .quality-chapter figure:not(.quality-chart) > figcaption { font-size:.9375rem; line-height:1.75; }
.quality-polish-page .quality-allerclean-intro { align-items:start; }
.quality-polish-page .quality-allerclean-intro .quality-hero-photo { align-self:start; padding-top:0; }
.quality-polish-page .quality-sek { padding:48px 0; }
.quality-polish-page .quality-functions { padding:48px 0; }
.quality-polish-page .quality-chapter-intro { margin:0 0 48px; }
.quality-polish-page .quality-chapter-intro p:last-child { margin-bottom:0; }
.quality-polish-page .quality-tests { display:grid; gap:48px; }
.quality-polish-page .quality-tests > .quality-test { margin:0; padding:0; border:0; min-width:0; }
.quality-polish-page .quality-tests > .quality-test:is([data-kind="dog"],[data-kind="pressure"],[data-kind="deodorization"]) { padding:32px 40px; }
@media(max-width:700px) {
 .quality-polish-page #quality-title { font-size:1.875rem; }
 .quality-polish-page .quality-chapter { margin-top:56px; }
 .quality-polish-page .quality-chapter-header { margin-bottom:20px; }
 .quality-polish-page .quality-chapter-header .quality-chapter-heading { font-size:1.625rem; }
 .quality-polish-page .quality-chapter-header .quality-chapter-heading > span { display:inline-block; }
 .quality-polish-page :is(.quality-test-title,.quality-subsection-title) { font-size:1.3125rem; }
 .quality-polish-page .quality-test :is(.quality-detail-title,.quality-detail-subtitle),.quality-polish-page .quality-practice-detail-heading { font-size:1.125rem; }
 .quality-polish-page .quality-sek,.quality-polish-page .quality-functions { padding:36px 0; }
 .quality-polish-page .quality-tests { gap:36px; }
 .quality-polish-page .quality-tests > .quality-test:is([data-kind="dog"],[data-kind="pressure"],[data-kind="deodorization"]) { padding:28px 20px; }
 .quality-polish-page .quality-chapter-intro { margin-bottom:36px; }
}

/* Shared text/photo layout for the two production and fitting chapters. */
.quality-polish-page .quality-practice-overview { grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; gap:48px; }
.quality-polish-page .quality-practice-overview > * { min-width:0; }
.quality-polish-page .quality-practice-overview > div > :last-child { margin-bottom:0; }
.quality-polish-page .quality-practice-overview > figure { width:100%; max-width:780px; margin:0 auto; }
@media(max-width:850px) {
 .quality-polish-page .quality-practice-overview { grid-template-columns:minmax(0,1fr); gap:24px; }
}

/* Eight in-page disclosures. SEK and navigation links deliberately keep their styles. */
.quality-polish-page .quality-chapter :is(.quality-test-details,.quality-practice-details) { border:0; padding:0; }
.quality-polish-page .quality-chapter :is(.quality-test-details,.quality-practice-details) > summary {
 display:flex; align-items:center; justify-content:space-between; gap:16px;
 box-sizing:border-box; min-height:56px; padding:12px 18px;
 border:1px solid var(--quality-rule); border-radius:4px; background:#fff;
 color:var(--quality-ink); font-size:1.0625rem; line-height:1.75; font-weight:700;
 cursor:pointer; list-style:none; text-decoration:none;
}
.quality-polish-page .quality-chapter :is(.quality-test-details,.quality-practice-details) > summary::-webkit-details-marker { display:none; }
.quality-polish-page .quality-chapter :is(.quality-test-details,.quality-practice-details) > summary::marker { content:''; }
.quality-polish-page .quality-chapter :is(.quality-test-details,.quality-practice-details) > summary:focus-visible { outline:3px solid var(--quality-ink); outline-offset:4px; }
.quality-polish-page .quality-disclosure-label { min-width:0; overflow-wrap:anywhere; }
.quality-polish-page .quality-disclosure-label > span { display:inline; }
.quality-polish-page .quality-disclosure-icon { width:24px; height:24px; position:relative; flex:0 0 24px; }
.quality-polish-page .quality-disclosure-icon::before,.quality-polish-page .quality-disclosure-icon::after { content:''; position:absolute; background:currentColor; }
.quality-polish-page .quality-disclosure-icon::before { left:3px; right:3px; top:11px; height:2px; }
.quality-polish-page .quality-disclosure-icon::after { top:3px; bottom:3px; left:11px; width:2px; }
.quality-polish-page details[open] > summary .quality-disclosure-icon::after { display:none; }
/* Override the earlier per-test hover rules even on touch devices. */
.quality-polish-page .quality-chapter :is(.quality-test-details,.quality-practice-details) > summary:hover { background:#fff; }
@media(hover:hover) {
 .quality-polish-page .quality-chapter :is(.quality-test-details,.quality-practice-details) > summary:hover { background:#edf2e8; }
}

.quality-polish-page .quality-chapter-heading .quality-heading-phrase { display:inline-block; }
