/* DTG Buyer Guides — image-free by design (no illustrations, no background images).
   Loaded only by /guides/ pages, after the v12 style.css (whose tokens, header,
   footer, grade chips and language rules it reuses). Logical properties throughout, so RTL mirrors.
   Palette: navy information, bronze ornament on light grounds, gold on navy only, malachite (g0) for
   "Evidenced" only. No red. */
@font-face{font-family:PlexArabic;src:url('fonts/IBMPlexSansArabic-Regular-arabic.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:PlexSerif;src:url('fonts/IBMPlexSerif-Medium-latin.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:PlexSerif;src:url('fonts/IBMPlexSerif-SemiBold-latin.woff2') format('woff2');font-weight:600;font-display:swap}
:root{--ash:#cfc9bd;--measure:46rem}
body.guides-page{--arabic-font:PlexArabic,Tahoma,"Geeza Pro","Noto Sans Arabic","Segoe UI",Arial,sans-serif}
.guides-page main{display:block}
.guide,.guides-index{max-width:1440px;margin:0 auto;padding:36px 5% 88px}
@media(min-width:1700px){.guide,.guides-index{padding-inline:0}}

/* Footer language links are a group (not a second, identically named navigation landmark) */
footer div.language-switch{display:flex;flex-wrap:wrap;gap:0 24px}

/* Breadcrumb */
.breadcrumb ol{list-style:none;margin:0 0 44px;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:0 10px;font-size:.8125rem;color:var(--ink)}
.breadcrumb li{display:flex;align-items:center;gap:10px;min-width:0}
.breadcrumb li+li::before{content:"/";color:var(--slate)}
.breadcrumb a{display:inline-flex;align-items:center;min-height:32px;text-decoration:none}
.breadcrumb a:hover{text-decoration:underline}
.breadcrumb a[aria-current]{color:var(--ink);max-width:min(60ch,70vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;line-height:32px}

/* Title block */
.guide-head{max-width:64rem;padding-block-end:34px;border-block-end:1px solid var(--line);margin-block-end:46px}
.guide-head .eyebrow{color:var(--navy);margin-block-end:18px}
.guide-head h1{font-size:clamp(2.35rem,4.4vw,4.1rem);line-height:1.08;letter-spacing:-.03em;max-width:22ch}
.guide-meta{display:flex;flex-wrap:wrap;gap:4px 10px;margin-block-start:24px;font-size:.8125rem;color:var(--ink)}
.guide-meta .sep{color:var(--bronze)}

/* Body: reading column + sticky contents rail on wide screens */
.guide-body{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.guide-content{max-width:var(--measure);min-width:0}
.toc{background:var(--bone);padding:20px 22px 14px;margin-block-end:40px;max-width:var(--measure)}
.guide-body .toc h2,.guide-content .in-short h2{font-family:Plex,Arial,sans-serif;font-size:.6875rem;font-weight:500;letter-spacing:.11em;text-transform:uppercase;line-height:1.4;margin:0 0 10px;color:var(--navy)}
.toc ol{list-style:none;margin:0;padding:0;counter-reset:toc}
.toc li{counter-increment:toc;border-block-start:1px solid var(--line)}
.toc a{display:flex;gap:12px;padding:8px 0;min-height:40px;align-items:baseline;font-size:.875rem;line-height:1.45;text-decoration:none}
.toc a::before{content:counter(toc,decimal-leading-zero);font-size:.6875rem;color:var(--bronze);font-weight:600;flex:0 0 1.7em;direction:ltr;unicode-bidi:isolate}
.toc a:hover{text-decoration:underline}
@media(min-width:1100px){
 .guide-body{grid-template-columns:minmax(0,var(--measure)) minmax(200px,17rem);justify-content:space-between;column-gap:64px}
 .guide-content{grid-column:1;grid-row:1}
 .toc{grid-column:2;grid-row:1;position:sticky;top:150px;align-self:start;max-height:calc(100vh - 170px);overflow:auto;background:transparent;padding:0;margin:0}
}

/* Reading typography */
.guide-content>section>p:not(.eyebrow):not(.example-label),.guide-content li,.guide-content .callout p:not(.callout-label),.in-short p,.example p:not(.example-label),.guides-intro{font-family:PlexSerif,Georgia,serif;color:var(--ink)}
.guide-content>section>p:not(.eyebrow):not(.example-label),.guide-content>section>ul>li,.guide-content>section>ol>li{font-size:1.125rem;line-height:1.7}
.guide-content h2{font-size:clamp(1.7rem,2.5vw,2.2rem);letter-spacing:-.02em;margin:60px 0 18px}
.guide-content h3{font-size:1.35rem;margin:34px 0 10px}
.guide-content>section>ul,.guide-content>section>ol{margin:18px 0 0;padding:0;padding-inline-start:1.35em}
.guide-content>section>ul>li+li,.guide-content>section>ol>li+li{margin-block-start:10px}
.guide-content>section>*+p{margin-block-start:18px}
.guide-content ::marker{color:var(--bronze)}
.cite{font-family:Plex,Arial,sans-serif;font-size:.68em;line-height:0;color:var(--slate);margin-inline-start:1px;unicode-bidi:isolate}
.cite a{color:var(--navy);text-decoration:underline;text-underline-offset:2px;padding:0 1px;font-weight:600}
.inline-url{overflow-wrap:anywhere;word-break:break-word}
.guide-content a{text-underline-offset:4px}

/* Callout */
.callout{background:var(--bone);border-inline-start:3px solid var(--navy);padding:20px 24px;margin:30px 0 0}
.guide-content .callout-label,.guide-content .example-label{font-family:Plex,Arial,sans-serif;font-size:.6875rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--navy);margin:0 0 8px}
.callout p:not(.callout-label){font-size:1.0625rem;line-height:1.65}
.callout p+p{margin-top:0}

/* Evidence table — v12 grade chips, plus a border-style cue so status never relies on colour */
.evidence-wrap{margin:32px 0 0;max-width:100%}
.evidence{width:100%;border-collapse:collapse;font-size:.9375rem;line-height:1.55;table-layout:fixed}
.evidence caption{caption-side:top;text-align:start;font-size:.6875rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding-block-end:10px;color:var(--navy)}
.evidence th,.evidence td{text-align:start;vertical-align:top;padding:14px 0;border-block-start:1px solid var(--line);overflow-wrap:anywhere}
.evidence thead th{font-size:.6875rem;font-weight:500;color:var(--ink);padding-block:8px;border-block-start:2px solid var(--navy)}
.evidence th[scope="row"]{width:34%;padding-inline-end:16px;font-weight:400}
.evidence td{color:var(--ink)}
.evidence tbody tr:last-child>*{border-block-end:1px solid var(--line)}
.evidence .grade{display:inline-block;white-space:normal;line-height:1.35;background:var(--paper)}
.evidence .g1{border-style:dashed}
.evidence .g2{border-style:dotted;border-width:2px;padding:4px 8px}

/* Steps diagram: an ordered list drawn as a track (horizontal when space allows) */
.steps-diagram{margin:36px 0 0}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:22px 0}
.steps li{position:relative;padding:22px 18px 0 0;padding-inline:0 18px;border-block-start:2px solid var(--navy);min-width:0}
.steps li::before{content:"";position:absolute;top:-7px;inset-inline-start:0;width:12px;height:12px;border-radius:50%;background:var(--paper);border:2px solid var(--navy)}
.steps li:last-child::before{background:var(--navy)}
.step-n{display:block;font-size:.75rem;font-weight:600;color:var(--navy);letter-spacing:.06em;unicode-bidi:isolate;text-align:start}
.step-t{display:block;margin-block-start:6px;font-size:.9375rem;line-height:1.45;color:var(--navy);overflow-wrap:anywhere}
.steps-diagram figcaption{font-size:.8125rem;color:var(--slate);margin-block-start:16px}
@media(max-width:700px){
 .steps{grid-template-columns:1fr;gap:0}
 .steps li{border-block-start:0;border-inline-start:2px solid var(--navy);padding:0 0 22px;padding-inline-start:24px}
 .steps li:last-child{padding-block-end:4px}
 .steps li::before{top:2px;inset-inline-start:-7px}
}

/* Checklist — semantic list; boxes are purely visual (and print as tick boxes) */
.guide-content .checklist{background:var(--bone);padding:8px 32px 28px;margin-block-start:60px}
.checklist h2{margin-block-start:24px}
.checklist ul{list-style:none;margin:0;padding:0}
.checklist li{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-block-start:1px solid var(--ash);font-size:1.0625rem;line-height:1.55}
.checklist .box{flex:0 0 18px;width:18px;height:18px;border:1.5px solid var(--navy);background:var(--paper);margin-block-start:.25em}

/* Hypothetical example — visibly labelled, never mistaken for a case study */
.guide-content .example{border:1px solid var(--ash);border-inline-start:4px solid var(--bronze);padding:24px 30px 28px;margin-block-start:60px;background:var(--paper)}
.guide-content .example-label{display:inline-block;border:1px solid var(--bronze);padding:5px 10px;margin:0;color:var(--ink)}
.example h2{margin:16px 0 14px;font-size:clamp(1.45rem,2vw,1.8rem)}
.example p:not(.example-label){font-size:1.0625rem;line-height:1.65}

/* Service CTA */
.guide-content .guide-cta{background:var(--navy);color:var(--paper);padding:36px 40px 40px;margin-block-start:64px}
.guide-content .guide-cta .eyebrow{color:var(--gold);margin-block-end:12px;font-family:Plex,Arial,sans-serif;font-size:.6875rem}
.guide-cta h2{margin:0 0 14px;color:var(--paper)}
.guide-content section.guide-cta>p:not(.eyebrow){color:#d2d5dc;font-size:1rem;max-width:36rem}
.guide-cta .engage-note{font-size:.875rem;border-inline-start:2px solid var(--gold);padding-inline-start:14px;margin-block-start:16px}
.cta-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;margin-block-start:26px}
.guide-cta .button{background:var(--paper);color:var(--navy);border-color:var(--paper)}
.guide-cta .button:hover{background:var(--bone)}
.guide-cta .text-link{color:var(--paper);margin:0}
.guide-cta a:focus-visible{outline-color:var(--gold)}

.guide-notice{font-size:.8125rem;line-height:1.6;color:var(--ink);border-block-start:1px solid var(--line);padding-block-start:16px;margin-block-start:28px}

/* Sources */
.guide-content .sources ol{margin:0;padding:0;padding-inline-start:1.6em;font-size:.875rem;line-height:1.55;color:var(--ink)}
.sources li{font-family:Plex,Arial,sans-serif!important;font-size:.875rem!important;padding:4px 6px;margin-inline-start:-6px}
.sources li+li{margin-block-start:10px}
.sources li::marker{color:var(--navy);font-weight:600}
.sources li:target{background:var(--bone);outline:1px solid var(--ash)}
.src-link{color:var(--navy)}
.src-url{display:block;font-size:.75rem;color:var(--slate);overflow-wrap:anywhere;word-break:break-all;text-align:left}
.backref{display:inline-flex;min-width:24px;min-height:24px;align-items:center;justify-content:center;text-decoration:none;color:var(--navy)}
.back-link{margin-block-start:48px;font-size:.875rem}
.back-link a{display:inline-flex;gap:10px;align-items:center;min-height:44px}
:target{scroll-margin-block-start:150px}

/* Guides index */
.guides-intro{font-size:1.25rem;line-height:1.6;max-width:44rem;margin-block-start:22px}
.guide-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:56px}
.guide-cards>li{border-block-start:1px solid var(--line);min-width:0}
.guide-card{padding:26px 0 36px;position:relative}
.card-n{display:block;font-size:.75rem;font-weight:600;color:var(--navy);unicode-bidi:isolate;text-align:start}
.guide-card h2{font-size:clamp(1.5rem,2.2vw,1.95rem);margin:10px 0 12px;max-width:24ch}
.guide-card h2 a{text-decoration:none}
.guide-card h2 a:hover{text-decoration:underline}
.guide-card p:not(.card-meta){font-family:PlexSerif,Georgia,serif;color:var(--ink);max-width:36rem}
.card-meta{font-size:.75rem;color:var(--slate);margin-block-start:12px}

/* Arabic and Chinese: no serif italics or Latin letterspacing on localized text */
html:lang(ar) .guides-page .guide-content>section>p,html:lang(ar) .guides-page .guide-content li,html:lang(ar) .guides-page .in-short p,
html:lang(ar) .guides-page .example p,html:lang(ar) .guides-page .callout p,html:lang(ar) .guides-page .guides-intro,html:lang(ar) .guide-card p,
html:lang(zh) .guides-page .guide-content>section>p,html:lang(zh) .guides-page .guide-content li,html:lang(zh) .guides-page .in-short p,
html:lang(zh) .guides-page .example p,html:lang(zh) .guides-page .callout p,html:lang(zh) .guides-page .guides-intro,html:lang(zh) .guide-card p{font-family:inherit}
html:lang(ar) .guide-head h1{letter-spacing:normal;line-height:1.4}
html:lang(zh) .guide-head h1{letter-spacing:normal;line-height:1.3}
html:lang(ar) .toc h2,html:lang(ar) .in-short h2,html:lang(ar) .callout-label,html:lang(ar) .example-label,html:lang(ar) .evidence caption,html:lang(ar) .evidence thead th,
html:lang(zh) .toc h2,html:lang(zh) .in-short h2,html:lang(zh) .callout-label,html:lang(zh) .example-label,html:lang(zh) .evidence caption{letter-spacing:normal;text-transform:none;font-family:inherit;font-size:.8125rem}
html:lang(ar) .guides-page .sources li{font-family:var(--arabic-font)!important}
html[dir="rtl"] .src-url{text-align:right}
bdi[dir="ltr"]{unicode-bidi:isolate}

@media(max-width:850px){
 .guide-content .guide-cta{padding:30px 26px 32px}
}
@media(max-width:650px){
 .guide,.guides-index{padding:24px 5% 64px}
 .breadcrumb ol{margin-block-end:28px}
 .guide-head{padding-block-end:26px;margin-block-end:32px}
 .guide-head h1{font-size:clamp(2rem,8.6vw,2.6rem)}
 .guide-content>section>p:not(.eyebrow):not(.example-label),.guide-content>section>ul>li,.guide-content>section>ol>li{font-size:1.0625rem}
 .guide-content h2{margin-block-start:48px}
 .callout{padding:18px}
 .guide-content .checklist{padding:4px 18px 20px;margin-inline:-2%}
 .guide-content .example{padding:20px 18px 22px}
 .guide-content .guide-cta{padding:26px 20px 28px}
 .cta-actions .button{flex:1 1 100%}
 .evidence th[scope="row"]{width:40%;padding-inline-end:12px}
 .evidence{font-size:.875rem}
 .guide-cards{grid-template-columns:1fr}
 .breadcrumb a[aria-current]{max-width:52vw}
}

/* Print: the article only — no navigation, URLs shown for every source */
@media print{
 @page{margin:16mm 15mm}
 html,body,body.guides-page{background:#fff!important;color:#000}
 .skip,.review-bar,.menu-toggle,.site-header #nav,.language-switch,.toc,.breadcrumb,.back-link,.backref,footer nav,footer>a:not([href^="mailto:"]),footer>a[href*="subject="],footer>p{display:none!important}
 .site-header{position:static!important;display:block!important;padding:0 0 6mm!important;border-block-end:1px solid #999}
 .site-header .brand{width:85mm!important}
 .guide,.guides-index{padding:6mm 0 0;max-width:none}
 .guide-body{display:block}
 .guide-content{max-width:none}
 .guide-head{margin-block-end:8mm;padding-block-end:6mm}
 .guide-head h1{font-size:24pt;max-width:none}
 .guide-content>section>p,.guide-content li{font-size:10.5pt!important;line-height:1.5}
 .guide-content h2{font-size:15pt;margin-block-start:9mm;break-after:avoid}
 .guide-content h3{font-size:12pt;break-after:avoid}
 .callout,.checklist li,.evidence tr,.steps li,.example,.guide-cta,.sources li,figure,.in-short{break-inside:avoid}
 .guide-content .checklist,.callout,.toc{background:none!important;border:1px solid #999}
 .guide-content .guide-cta{background:none;color:#000;border:1px solid #000;padding:5mm}
 .guide-cta h2,.guide-cta>p:not(.eyebrow),.guide-cta .eyebrow,.guide-cta .text-link{color:#000!important}
 .guide-cta .button{background:none;color:#000;border:1px solid #000;padding:2mm 3mm;min-height:0}
 .guide-cta a[href]::after{content:" (" attr(href) ")";font-size:8pt;word-break:break-all}
 .src-url{color:#000;font-size:8.5pt}
 .cite a{color:#000}
 footer{background:none!important;color:#000;display:block;padding:6mm 0 0;border-block-start:1px solid #999}
 footer img{width:60mm}
 a{color:#000}
}
.guides-index .guide-head{border-block-end:0;margin-block-end:28px}
@media(max-width:650px){.breadcrumb li:last-child{display:none}}

/* Image-free title block: eyebrow, title and meta, with the "In short" summary as a typeset standfirst.
   Wide screens set the summary beside the title; the contents rail then aligns with the first section. */
.guide .guide-head{max-width:none}
.guide-head .in-short{margin-block-start:34px;background:var(--bone);border-block-start:3px solid var(--bronze);padding:22px 26px 26px;max-width:var(--measure)}
.guide-head .in-short h2{font-family:Plex,Arial,sans-serif;font-size:.6875rem;font-weight:500;letter-spacing:.11em;text-transform:uppercase;line-height:1.4;margin:0 0 10px;color:var(--navy)}
.guide-head .in-short p{font-family:PlexSerif,Georgia,serif;font-size:1.25rem;line-height:1.6;color:var(--ink)}
.guide-content>section:first-child>h2{margin-block-start:0}
@media(min-width:1100px){
 .guide .guide-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);column-gap:64px;grid-template-rows:auto auto 1fr;align-items:start;padding-block-end:44px;margin-block-end:52px}
 .guide .guide-head>:not(.in-short){grid-column:1}
 .guide .guide-head .in-short{grid-column:2;grid-row:1/span 3;margin:0;align-self:start}
 .guide .guide-head h1{max-width:none}
 .guide .guide-head h1{font-size:clamp(2.6rem,4vw,3.9rem)}
}
@media(max-width:650px){.guide-head .in-short{padding:18px 18px 20px;margin-block-start:26px}.guide-head .in-short p{font-size:1.125rem}}
html:lang(ar) .guide-head .in-short p,html:lang(zh) .guide-head .in-short p{font-family:inherit}
html:lang(ar) .guide-head .in-short h2,html:lang(zh) .guide-head .in-short h2{letter-spacing:normal;text-transform:none;font-family:inherit;font-size:.8125rem}
@media print{.guide .guide-head{display:block}.guide-head .in-short{background:none;border:1px solid #999;border-block-start:3px solid #000}}
/* Long French compounds (e.g. "d’approvisionnement") must never push the page wider than 320px. */
.guide-head h1,.guide-content h2,.guide-content h3,.guide-card h2,.toc a{overflow-wrap:break-word}
@media(max-width:650px){.guide-head h1,.guide-content h2,.guide-card h2{hyphens:auto}}
@media(max-width:380px){.guide-head h1{font-size:clamp(1.75rem,8.6vw,2rem)}.guide-content h2{font-size:1.55rem}}

/* v19: next reading step and legible Arabic guide labels; shared header untouched. */
.next-guide{margin-block-start:48px;padding:24px;border-block:1px solid var(--line);background:var(--bone)}
.next-guide p{margin:0 0 8px;font-size:.875rem;color:var(--ink)}
.next-guide a{display:inline-block;font-size:1.125rem;line-height:1.5;min-height:44px;padding-block:8px;color:var(--navy);overflow-wrap:anywhere}
html:lang(ar) .guide-meta,html:lang(ar) .breadcrumb ol,html:lang(ar) .card-meta,html:lang(ar) .guide-notice,html:lang(ar) .src-url{font-size:.875rem;line-height:1.8}
html:lang(ar) .guide-head .eyebrow,html:lang(ar) .guide-head .in-short h2,html:lang(ar) .guide-body .toc h2,html:lang(ar) .guide-content .callout-label,html:lang(ar) .guide-content .example-label,html:lang(ar) .guide-content .guide-cta .eyebrow,html:lang(ar) .evidence caption,html:lang(ar) .evidence thead th,html:lang(ar) .evidence .grade{font-size:.875rem;line-height:1.6;letter-spacing:normal}

/* The linked source title remains visible; raw URL is retained for print and desktop. */
@media screen and (max-width:650px){.sources .src-url{display:none}}
