/* Trust group (trust centre + legal documents). Page-specific only; every shared pattern comes from site.css. Prefix: .tr- */

/* ---- breadcrumb + hero variants ---- */
.tr-crumb{grid-column:1/-1;margin-bottom:clamp(28px,3.4vw,48px)}
.tr-crumb ol{display:flex;flex-wrap:wrap;gap:6px 0;font:500 12.5px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--on-3)}
.tr-crumb li+li::before{content:"/";margin:0 12px;color:var(--on-3)}
.tr-crumb a{color:var(--on-2);text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .45s var(--ease),color .25s}
.tr-crumb a:hover{color:var(--on);background-size:100% 1px}
.tr-crumb [aria-current]{color:var(--on)}
.tr-hero .eyebrow{grid-column:1/-1;margin-bottom:22px}
.hero.tr-hero h1{grid-column:1/8}
.hero.tr-hero .sub{grid-column:1/7;margin-top:clamp(28px,3vw,44px)}
.hero.tr-hero .stamp{grid-column:1/6}
.tr-hero .hero-main{padding-bottom:clamp(72px,8vw,120px)}

/* legal hero: text left, engraved plate right */
.tr-lh .hero-main{padding:clamp(64px,7vw,104px) 0 clamp(64px,7vw,104px)}
.tr-lh .eyebrow{grid-column:1/8;margin-bottom:22px}
.tr-lh h1{grid-column:1/8}
.tr-lh .sub{grid-column:1/8;margin-top:28px}
.tr-lh .tr-lh-fig{grid-column:9/13;grid-row:2/5;align-self:center}
.tr-lh .tr-lh-fig .plate-in{padding-top:clamp(34px,3vw,44px)}
.tr-meta{display:flex;flex-wrap:wrap;gap:10px 28px;margin-top:28px;padding-top:18px;border-top:1px solid var(--rule-d2);max-width:52ch}
.tr-meta span{font:500 12.5px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--on-2)}
.tr-meta b{font-weight:500;color:var(--on)}
.tr-lh .cta{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px}

/* ---- "On this page" ledger (trust centre) ---- */
.tr-toc{grid-column:1/-1;display:grid;grid-template-columns:200px minmax(0,1fr);gap:28px;align-items:start;border-top:1px solid var(--ink);padding-top:22px;margin-bottom:clamp(72px,8vw,128px)}
.tr-toc ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 clamp(16px,2vw,32px)}
.tr-toc a{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:baseline;min-height:44px;padding:10px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink);font-weight:500;font-size:15.5px;transition:color .3s}
.tr-toc a i{font:400 italic 17px/1 var(--display);color:var(--copper)}
.tr-toc a:hover{color:var(--copper)}

/* ---- section heads ---- */
.tr-head{grid-column:1/9;margin-bottom:clamp(48px,5vw,88px)}
.tr-head .mono{margin-bottom:22px}
.tr-head .lede{margin-top:28px;max-width:60ch}
.tr-n{font:400 italic 1em/1 var(--display);color:var(--copper);letter-spacing:0;text-transform:none;margin-right:10px}
.dark .tr-n{color:var(--copper-text)}

/* ---- spec table ---- */
.tr-spec-wrap{grid-column:1/-1;border-top:1px solid var(--ink)}
.tr-spec{width:100%;border-collapse:collapse}
.tr-spec caption{text-align:left}
.tr-spec th,.tr-spec td{text-align:left;vertical-align:top;padding:22px 24px 22px 0;border-bottom:1px solid var(--rule)}
.tr-spec thead th{font:500 12.5px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding-top:16px;padding-bottom:14px;border-bottom:1px solid var(--rule-2)}
.tr-spec tbody th{width:22%;font:400 clamp(19px,1.6vw,23px)/1.25 var(--display);letter-spacing:-.01em;color:var(--ink)}
.tr-spec td{font-size:15.5px;color:var(--ink-2)}
.tr-spec td:nth-child(3){width:18%}
.tr-spec td:last-child{width:22%;padding-right:0;font-size:14.5px;color:var(--ink-3)}
.tr-spec .chip{font-size:12.5px}
.tr-spec .chip.cu{background:rgba(142,74,32,.1);color:var(--copper)}

/* ---- controls index (numbered rows + sticky plate) ---- */
.tr-ctl-l{grid-column:1/5}
.tr-ctl-l .sticky{position:sticky;top:100px}
.tr-ctl-l .lede{margin-top:24px}
.tr-ctl-l .plate{margin-top:40px}
.tr-ctl-l .plate-in{padding-top:clamp(34px,3vw,44px)}
.tr-ctl-r{grid-column:6/13;border-top:1px solid var(--ink)}
.tr-ctl{display:grid;grid-template-columns:56px minmax(0,1fr) minmax(0,.62fr);gap:20px clamp(20px,2.4vw,40px);align-items:start;padding:34px 0;border-bottom:1px solid var(--rule)}
.tr-ctl .ix{font:400 italic 22px/1 var(--display);color:var(--copper);padding-top:8px}
.tr-ctl h3{font:400 clamp(24px,2.4vw,34px)/1.12 var(--display);letter-spacing:-.016em}
.tr-ctl p{margin-top:12px;font-size:15.5px;color:var(--ink-2);max-width:52ch}
.tr-ctl dl{margin:4px 0 0;display:grid;gap:12px;border-left:1px solid var(--rule-2);padding-left:18px}
.tr-ctl dt{font:500 12.5px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.tr-ctl dd{margin:2px 0 0;font-size:15px;font-weight:500;color:var(--ink)}

/* ---- gate section (dark) ---- */
.tr-gate .gov{margin-top:0}
.tr-gate .ops{margin-top:clamp(80px,9vw,150px)}

/* ---- release checks: steps + practices ledger ---- */
.tr-steps{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,3vw,48px);counter-reset:st}
.tr-step{border-top:1px solid var(--ink);padding-top:22px}
.tr-step .num{display:block;font-size:clamp(48px,4.6vw,72px);font-style:italic;color:var(--copper)}
.tr-step h3{font:400 clamp(21px,1.9vw,26px)/1.2 var(--display);margin:16px 0 10px;letter-spacing:-.01em}
.tr-step p{font-size:15.5px;color:var(--ink-2);max-width:34ch}
.tr-step:nth-child(2){margin-top:clamp(0px,3vw,48px)}
.tr-step:nth-child(3){margin-top:clamp(0px,6vw,96px)}
.tr-step:nth-child(4){margin-top:clamp(0px,9vw,144px)}
.tr-rel{grid-column:1/-1;margin-top:clamp(72px,8vw,128px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:clamp(32px,4vw,72px);align-items:start}
.tr-rel .ph-fig{aspect-ratio:4/5}
.tr-prac h3{margin-bottom:8px}
.tr-prac ol{border-top:1px solid var(--ink);margin-top:24px}
.tr-prac li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;padding:18px 0;border-bottom:1px solid var(--rule);font-size:16px;color:var(--ink-2)}
.tr-prac li span{font:500 12.5px/1.6 var(--mono);letter-spacing:.06em;color:var(--copper)}

/* ---- response times ---- */
.tr-times{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:clamp(16px,2vw,32px)}
.tr-times .led{border-top-color:var(--on-3)}
.tr-times .led p{color:var(--on-2);font-weight:500}
.tr-times .led .src{color:var(--on-3)}
.tr-times .led .num sup{color:var(--copper-text)}
.tr-disc{grid-column:1/-1;margin-top:clamp(72px,8vw,120px);display:grid;grid-template-columns:200px minmax(0,1fr);gap:28px;border-top:1px solid var(--rule-d2);padding-top:30px}
.tr-disc .d3{max-width:34ch}
.tr-disc p.body{margin-top:18px}

/* ---- documents you can request ---- */
.tr-docs{grid-column:1/-1;border-top:1px solid var(--ink)}
.tr-doc-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.5fr) 190px 200px;gap:20px clamp(20px,2.4vw,40px);align-items:center;padding:26px 0;border-bottom:1px solid var(--rule)}
.tr-doc-row h3{font:400 clamp(21px,1.9vw,27px)/1.18 var(--display);letter-spacing:-.012em}
.tr-doc-row p{font-size:15px;color:var(--ink-2)}
.tr-doc-row .tl{justify-self:start}
.tr-doc-row .na{font-size:14px;color:var(--ink-3)}
.tr-doc-row.ph-row h3{color:var(--ink-2)}

/* ---- contact + legal links ---- */
.tr-contact{grid-column:1/7}
.tr-contact .d3{margin:18px 0 20px}
.tr-contact .addr{margin-top:28px;border-top:1px solid var(--ink);padding-top:18px;display:grid;gap:6px;font-size:15.5px;color:var(--ink-2)}
.tr-contact .addr b{font-weight:600;color:var(--ink)}
.tr-contact .cta{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px}
.tr-legal-links{grid-column:8/13;border-top:1px solid var(--ink)}
.tr-legal-links .mono{padding:18px 0 4px}
.tr-legal-links .ir{min-height:44px}

/* ---- legal document template ---- */
.tr-lg{padding:clamp(72px,8vw,128px) 0 clamp(96px,10vw,160px)}
.tr-aside{grid-column:1/4}
.tr-aside .sticky{position:sticky;top:100px}
.tr-aside h2{font:500 12.5px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding-bottom:14px;border-bottom:1px solid var(--ink)}
.tr-aside ol a{display:grid;grid-template-columns:30px minmax(0,1fr);gap:6px;align-items:baseline;min-height:44px;padding:11px 0;border-bottom:1px solid var(--rule);font-size:15px;font-weight:500;color:var(--ink-2);text-decoration:none;transition:color .3s}
.tr-aside ol a i{font:400 italic 16px/1 var(--display);color:var(--copper)}
.tr-aside ol a:hover{color:var(--copper)}
.tr-aside .tr-aside-note{margin-top:24px;font-size:14px;color:var(--ink-3);max-width:28ch}
.tr-aside .tr-aside-note a{color:var(--ink-2)}
.tr-article{grid-column:5/12;max-width:70ch}
.tr-preamble{border-left:1px solid var(--copper);padding:4px 0 4px 22px;margin-bottom:clamp(48px,5vw,72px);display:grid;gap:14px;font-size:17px;color:var(--ink-2)}
.tr-s{padding-top:clamp(40px,4vw,56px);margin-top:clamp(40px,4vw,56px);border-top:1px solid var(--rule-2);scroll-margin-top:96px}
.tr-s:first-of-type{border-top:1px solid var(--ink);margin-top:0}
.tr-s h2{display:grid;grid-template-columns:clamp(48px,5vw,68px) minmax(0,1fr);align-items:baseline;font:700 clamp(24px,2.4vw,32px)/1.18 var(--display);letter-spacing:-.014em;margin-bottom:22px}
.tr-s h2 span{font-weight:400;font-style:italic;color:var(--copper)}
.tr-s > *:not(h2){margin-left:clamp(48px,5vw,68px)}
.tr-s p{font-size:17px;line-height:1.7;color:var(--ink-2)}
.tr-s p+p,.tr-s p+ul,.tr-s ul+p,.tr-s .tr-dl+p,.tr-s p+.tr-dl,.tr-s p+.tr-tbl-wrap,.tr-s p+.tr-addr,.tr-s .tr-addr+p,.tr-s .tr-rights+p,.tr-s p+.tr-rights,.tr-s p+.tr-note{margin-top:16px}
.tr-s strong{font-weight:600;color:var(--ink)}
.tr-s a{color:var(--copper);text-underline-offset:3px}
.tr-s ul.tr-list li{position:relative;padding:10px 0 10px 26px;border-bottom:1px solid var(--rule);font-size:17px;line-height:1.6;color:var(--ink-2)}
.tr-s ul.tr-list li:first-child{border-top:1px solid var(--rule)}
.tr-s ul.tr-list li::before{content:"";position:absolute;left:2px;top:1.32em;width:12px;height:1px;background:var(--copper)}
.tr-dl{margin:0;border-top:1px solid var(--rule)}
.tr-dl > div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,2fr);gap:8px 24px;padding:16px 0;border-bottom:1px solid var(--rule)}
.tr-dl dt{font:500 12.5px/1.6 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.tr-dl dd{margin:0;font-size:16px;line-height:1.6;color:var(--ink-2)}
.tr-rights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;border-top:1px solid var(--rule)}
.tr-rights > div{padding:16px 0;border-bottom:1px solid var(--rule)}
.tr-rights dt{font:500 12.5px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--copper)}
.tr-rights dd{margin:6px 0 0;font-size:16px;color:var(--ink-2)}
.tr-tbl-wrap{border-top:1px solid var(--ink);overflow-x:auto}
.tr-tbl{width:100%;border-collapse:collapse;font-size:15.5px}
.tr-tbl th,.tr-tbl td{text-align:left;padding:14px 18px 14px 0;border-bottom:1px solid var(--rule);vertical-align:top}
.tr-tbl thead th{font:500 12.5px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.tr-tbl tbody th{font-weight:600;color:var(--ink)}
.tr-tbl td{color:var(--ink-2)}
.tr-tbl td:last-child{font-family:var(--mono);font-size:14px;white-space:nowrap}
.tr-addr{background:var(--paper);border-radius:var(--r);padding:22px 24px;display:grid;gap:4px;box-shadow:0 0 0 1px var(--rule)}
.tr-note{background:var(--paper);border-radius:var(--r);padding:22px 24px;box-shadow:0 0 0 1px var(--rule);border-left:2px solid var(--copper)}
.tr-note b{display:block;font-weight:600;color:var(--ink);margin-bottom:6px}
.tr-endnote{margin-top:clamp(56px,6vw,88px);border-top:1px solid var(--ink);padding-top:28px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}
.tr-endnote .d3{font-size:clamp(24px,2.4vw,32px)}
.tr-endnote p{margin-top:10px;color:var(--ink-2);font-size:16px}
.tr-related{grid-column:1/-1;margin-top:clamp(72px,8vw,120px);border-top:1px solid var(--ink);display:grid;grid-template-columns:200px repeat(3,minmax(0,1fr));gap:0 clamp(16px,2vw,32px);padding-top:6px}
.tr-related .mono{padding-top:24px}
.tr-related .ir{border-bottom:0}

/* closing band, without the form */
.tr-close .close-l{grid-column:1/8}
.tr-close .cta{display:flex;flex-wrap:wrap;gap:16px;margin-top:8px}

/* ---- responsive ---- */
@media (max-width:1080px){
  .tr-doc-row{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) 170px;}
  .tr-doc-row .act{grid-column:2/4}
  .tr-toc ol{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .hero.tr-hero h1,.hero.tr-hero .sub,.hero.tr-hero .stamp,.tr-lh h1,.tr-lh .sub,.tr-lh .eyebrow{grid-column:1/-1}
  .tr-lh .tr-lh-fig{grid-column:1/-1;grid-row:auto;margin-top:48px;max-width:520px}
  .tr-crumb{margin-top:0}
  .tr-toc{grid-template-columns:1fr;gap:12px}
  .tr-head{grid-column:1/-1}
  .tr-spec thead{display:none}
  .tr-spec,.tr-spec tbody,.tr-spec tr,.tr-spec th,.tr-spec td{display:block;width:auto!important}
  .tr-spec tr{padding:22px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px}
  .tr-spec th,.tr-spec td{border:0;padding:0}
  .tr-spec tbody th{grid-column:1}
  .tr-spec td:nth-child(3){grid-column:2;grid-row:1;align-self:start}
  .tr-spec td:nth-child(2),.tr-spec td:last-child{grid-column:1/-1}
  .tr-ctl-l,.tr-ctl-r{grid-column:1/-1}
  .tr-ctl-l .sticky{position:static}
  .tr-ctl-l .plate{max-width:520px}
  .tr-ctl-r{margin-top:48px}
  .tr-ctl{grid-template-columns:44px minmax(0,1fr)}
  .tr-ctl dl{grid-column:2}
  .tr-steps{grid-template-columns:1fr 1fr;row-gap:40px}
  .tr-step:nth-child(n){margin-top:0}
  .tr-rel{grid-template-columns:1fr}
  .tr-rel .ph-fig{aspect-ratio:16/10}
  .tr-times{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}
  .tr-times .led:nth-child(2),.tr-times .led:nth-child(4){margin-top:0}
  .tr-disc{grid-template-columns:1fr;gap:16px}
  .tr-doc-row{grid-template-columns:minmax(0,1fr) auto;gap:10px 20px;align-items:start}
  .tr-doc-row p{grid-column:1/-1}
  .tr-doc-row .st{grid-column:2;grid-row:1}
  .tr-doc-row .act{grid-column:1/-1}
  .tr-contact,.tr-legal-links{grid-column:1/-1}
  .tr-legal-links{margin-top:56px}
  .tr-aside,.tr-article{grid-column:1/-1}
  .tr-aside .sticky{position:static}
  .tr-aside{margin-bottom:56px}
  .tr-aside ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
  .tr-article{max-width:none}
  .tr-related{grid-template-columns:1fr}
  .tr-close .close-l{grid-column:1/-1}
}
@media (max-width:560px){
  .tr-toc ol,.tr-aside ol{grid-template-columns:1fr}
  .tr-steps{grid-template-columns:1fr}
  .tr-times{grid-template-columns:1fr}
  .tr-ctl{grid-template-columns:1fr;gap:12px}
  .tr-ctl dl{grid-column:1}
  .tr-ctl .ix{padding-top:0}
  .tr-s > *:not(h2){margin-left:0}
  .tr-s h2{grid-template-columns:44px minmax(0,1fr)}
  .tr-dl > div{grid-template-columns:1fr;gap:4px}
  .tr-rights{grid-template-columns:1fr}
  .tr-endnote{grid-template-columns:1fr}
  .tr-lh .cta .btn,.tr-contact .cta .btn,.tr-close .cta .btn,.tr-endnote .btn{width:100%;justify-content:space-between}
  .tr-tbl td:last-child{white-space:normal}
}

/* ---- print: legal documents and the trust centre print as plain documents ---- */
@media print{
  @page{margin:18mm 16mm}
  body{background:#fff;color:#000;font-size:11pt;line-height:1.5}
  body::after,.top,footer,.skip,.hero-ph,.field,.tr-lh-fig,.tr-aside,.tr-close,.tr-related,.tr-toc,.tr-endnote .btn,.cta,.ph-fig,.dev,.plate,.gate-fig,.ops{display:none!important}
  .hero,.dark,.light,.sec,.build,.why,.tr-lg{background:#fff!important;color:#000!important;padding:0!important}
  .hero-main{padding:0 0 12pt!important}
  .wrap{width:auto;margin:0}
  .g12{display:block}
  .tr-crumb ol,.tr-meta span,.mono,.dark .mono{color:#333!important}
  .d1,.d2,.d3,.dark .lede,.lede,.body,.dark .body{color:#000!important}
  .d2{font-size:24pt}
  .d1 em,.d2 em,.d3 em,.dark .d2 em{color:#000!important}
  .tr-meta{border-top:1px solid #999}
  .tr-article{max-width:none}
  .tr-s{break-inside:auto;padding-top:12pt;margin-top:12pt;border-top:1px solid #999}
  .tr-s h2{break-after:avoid;font-size:14pt;color:#000}
  .tr-s h2 span,.tr-aside ol a i{color:#000}
  .tr-s > *:not(h2){margin-left:0}
  .tr-s p,.tr-s li,.tr-dl dd,.tr-rights dd,.tr-tbl td{color:#000!important;font-size:11pt}
  .tr-dl > div,.tr-rights > div,.tr-tbl tr,.tr-spec tr,.tr-addr,.tr-note{break-inside:avoid}
  .tr-addr,.tr-note{box-shadow:none;border:1px solid #999;background:#fff}
  .tr-s a[href^="mailto:"]::after,.tr-s a[href^="http"]::after{content:" (" attr(href) ")";font-size:9pt;color:#333}
  .js [data-reveal]{opacity:1!important;transform:none!important}
  .chip{border:1px solid #999;background:#fff!important;color:#000!important}
}
.tr-preamble a{color:var(--copper);text-underline-offset:3px}
.tr-doc-row .chip{font-size:12.5px}
