@font-face{
  font-family:"DM Sans";
  src:url("fonts/dm-sans-variable.ttf") format("truetype");
  font-style:normal;
  font-weight:100 1000;
  font-display:swap;
}

:root{
  --ink:#101C2C;
  --ink-deep:#0A1320;
  --blue:#176C70;
  --teal:#176C70;
  --paper:#F7F6F2;
  --white:#FFFFFF;
  --text:#18202A;
  --muted:#66717D;
  --line:#D9DDE1;
  --line-dark:#B9C0C8;
  --max:1540px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--text);font-family:"DM Sans",Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
button,input{font:inherit}
button{cursor:pointer}
img{max-width:100%}
.shell{width:min(100%,var(--max));margin:0 auto;padding-inline:clamp(20px,5vw,76px)}
.skip-link{position:fixed;left:14px;top:14px;z-index:2000;padding:10px 14px;background:var(--ink);color:#fff;transform:translateY(-150%)}
.skip-link:focus{transform:none}

/* Header - deliberately close to Definr's restrained editorial header language. */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);font-weight:700}
.brand-mark{position:relative;width:42px;height:42px;display:inline-block;background:var(--ink);flex:0 0 auto}
.brand-mark:before{content:"";position:absolute;inset:8px 10px 11px;border:2px solid #fff;border-top-width:5px;clip-path:polygon(0 0,100% 0,100% 54%,50% 100%,0 54%)}
.brand-mark span{display:none}
.brand-word{font-size:1.04rem;letter-spacing:-.025em}
.brand-logo{display:block;width:auto;height:auto;max-width:100%}
.brand-logo-header{width:400px}
.brand-logo-footer{width:292px}

.desktop-nav{display:flex;align-items:center;gap:25px;margin-left:auto}
.desktop-nav a{font-size:.9rem;font-weight:600;text-decoration:none;color:var(--text)}
.desktop-nav a:hover{color:var(--blue)}
.header-actions{display:flex;align-items:center;gap:9px}
.header-search,.menu-button{min-height:42px;padding:0 16px;border:1px solid var(--ink);background:var(--white);color:var(--ink);font-weight:700}
.header-search:hover{background:var(--ink);color:#fff}
.menu-button{display:none;background:var(--ink);color:#fff}
.mobile-menu{border-top:1px solid var(--line);background:#fff;padding:12px 20px 20px}
.mobile-menu a{display:block;padding:13px 0;border-bottom:1px solid var(--line);font-weight:600;text-decoration:none}

/* Hero - an editorial front page rather than a conventional split-panel hero. */
.hero{background:var(--white);border-bottom:1px solid var(--line)}
.hero-inner{padding-top:clamp(74px,8vw,122px);padding-bottom:clamp(58px,7vw,96px)}
.eyebrow{
  margin:0 0 17px;
  font-weight:700;
  text-transform:uppercase;
  color:var(--ink);
}
.eyebrow-light{color:#fff}
.hero-title-block{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.58fr);gap:clamp(48px,8vw,130px);align-items:end;padding-bottom:clamp(44px,5vw,68px)}
.hero h1{margin:0;max-width:1050px;color:var(--ink);font-size:clamp(4rem,7.3vw,8rem);font-weight:700;line-height:.88;letter-spacing:-.074em;text-wrap:balance}
.hero-deck{padding-top:18px;border-top:1px solid var(--ink)}
.hero-deck p{margin:0;color:var(--muted);font-size:clamp(.98rem,1.15vw,1.12rem);line-height:1.72}
.hero-deck p+p{margin-top:18px;color:var(--text)}
.hero-deck strong{color:var(--ink);font-weight:700}
.hero-entry-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.72fr) minmax(260px,.72fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.hero-entry{min-width:0;padding:28px 30px 30px 0}
.hero-entry+.hero-entry{padding-left:30px;border-left:1px solid var(--line-dark)}
.entry-kicker{margin:0 0 28px;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.hero-entry h2{margin:0 0 24px;color:var(--ink);font-size:clamp(1.55rem,2.15vw,2.45rem);line-height:1;letter-spacing:-.045em}
.hero-entry-route>p:not(.entry-kicker){margin:0;color:var(--muted);font-size:.92rem;line-height:1.66}
.hero-search{position:relative;margin:0}
.search-field-wrap{display:grid;grid-template-columns:1fr auto;border:1px solid var(--ink);background:var(--white)}
.search-field-wrap input{height:62px;min-width:0;border:0;background:transparent;padding:0 18px;color:var(--text);font-size:1rem;outline:0}
.search-field-wrap input::placeholder{color:#7A838C}
.search-field-wrap button{min-width:116px;border:0;border-left:1px solid var(--ink);background:var(--ink);color:#fff;font-weight:700}
.search-field-wrap:focus-within{outline:3px solid rgba(36,87,214,.16);outline-offset:2px}
.search-help{margin:10px 0 0;color:var(--muted);font-size:.79rem;line-height:1.55}
.search-help a{text-underline-offset:3px}
.search-help a:hover{color:var(--blue)}
.search-results-panel{position:absolute;left:0;right:0;top:100%;z-index:40;margin-top:10px;background:#fff;border:1px solid var(--ink);box-shadow:0 18px 45px rgba(16,28,44,.12);max-height:390px;overflow:auto}
.search-result{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;padding:15px 17px;border-bottom:1px solid var(--line);text-decoration:none}
.search-result:last-child{border-bottom:0}
.search-result:hover{background:var(--paper)}
.search-result strong{display:block;font-size:.92rem}
.search-result small{display:block;margin-top:3px;color:var(--muted);font-size:.75rem}
.search-result em{font-style:normal;color:var(--muted);font-size:.72rem}
.search-empty{padding:19px;color:var(--muted);font-size:.88rem;line-height:1.55}
.hero-link-list{border-top:1px solid var(--line-dark)}
.hero-link-list a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--line);font-size:.88rem;font-weight:700;text-decoration:none}
.hero-link-list a:hover{color:var(--blue)}
.hero-link-list i{font-style:normal;font-weight:700}
.hero-all-link,.route-link{display:inline-block;margin-top:22px;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.hero-all-link:hover,.route-link:hover{color:var(--blue)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.section{padding-block:clamp(82px,9vw,132px)}
.section-heading{max-width:970px;margin-bottom:clamp(42px,5vw,70px)}
.section-heading h2,.template-intro h2,.knowledge-title h2,.resources-layout h2,.regulator-callout h2{margin:0;color:var(--ink);font-size:clamp(3rem,5.7vw,6.3rem);line-height:.93;letter-spacing:-.065em}
.section-heading>p:last-child,.split-heading>p,.template-intro>p:not(.eyebrow),.knowledge-title>p:not(.eyebrow),.regulator-callout p:not(.eyebrow){color:var(--muted);font-size:1rem;line-height:1.7}
.split-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.55fr);gap:clamp(45px,8vw,125px);align-items:end;max-width:none}
.text-link{justify-self:end;align-self:end;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}
.text-link:hover{color:var(--blue)}

/* Twelve hubs: a flat editorial matrix, not floating cards. */
.areas-section{background:var(--paper)}
.area-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}
.area-card{position:relative;min-height:360px;padding:25px 24px 24px;background:transparent;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);display:flex;flex-direction:column;transition:background .18s ease}
.area-card:hover{background:var(--white)}
.area-card-featured{grid-column:span 2}
.area-card-dark{background:var(--ink);color:#fff}
.area-card-dark:hover{background:#14243A}
.area-card-teal{background:#E9F3F1}
.area-card-compact{min-height:280px}
.area-card-head{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.area-card-dark .area-card-head{color:#B8C6D5}
.area-card h3{margin:clamp(58px,7vw,94px) 0 13px;color:var(--ink);font-size:clamp(1.75rem,2.3vw,2.7rem);line-height:.98;letter-spacing:-.045em}
.area-card-featured h3{font-size:clamp(2.2rem,3.4vw,4rem)}
.area-card-dark h3{color:#fff}
.area-card p{margin:0 42px 0 0;color:var(--muted);font-size:.88rem;line-height:1.58}
.area-card-dark p{color:#C7D2DD}
.area-links{display:flex;flex-wrap:wrap;gap:7px 13px;margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}
.area-card-dark .area-links{border-color:rgba(255,255,255,.2)}
.area-links a{font-size:.75rem;font-weight:700;text-underline-offset:3px}
.area-links a:hover{color:var(--blue)}
.area-card-dark .area-links a:hover{color:#fff}
.card-arrow{position:absolute;right:22px;bottom:20px;text-decoration:none;font-size:1.25rem;font-weight:700}

/* Problem list uses Definr-like definition rows. */
.problem-section{background:var(--white);border-top:1px solid var(--line)}
.problem-list{border-top:2px solid var(--ink)}
.problem-list a{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(150px,.45fr) 30px;gap:30px;align-items:baseline;padding:25px 0;border-bottom:1px solid var(--line-dark);text-decoration:none}
.problem-list span{font-family:"DM Sans",Arial,Helvetica,sans-serif;font-size:clamp(1.45rem,2.35vw,2.65rem);line-height:1.15;color:var(--ink)}
.problem-list b{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.07em}
.problem-list i{font-style:normal;font-size:1.2rem}
.problem-list a:hover span{color:var(--blue)}

.featured-section{background:var(--paper)}
.editorial-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}
.feature-story{min-height:330px;padding:26px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);display:flex;flex-direction:column;background:transparent}
.feature-story-large{grid-row:span 2;min-height:660px;background:#EEECE6}
.feature-story-ink{background:var(--ink);color:#fff}
.editorial-label{font-size:.69rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}
.feature-story-ink .editorial-label{color:#B6C4D2}
.feature-story h3{margin:auto 0 14px;color:var(--ink);font-size:clamp(1.7rem,2.6vw,3.15rem);line-height:1.03;letter-spacing:-.047em}
.feature-story-large h3{font-size:clamp(2.8rem,4.4vw,5.2rem)}
.feature-story-ink h3{color:#fff}
.feature-story p{margin:0;color:var(--muted);line-height:1.65}
.feature-story-ink p{color:#C8D2DC}
.feature-story>a{margin-top:23px;font-weight:700;text-decoration:none}
.feature-story>a:hover{text-decoration:underline;text-underline-offset:4px}

.tools-section{background:var(--ink);color:#fff;padding-block:clamp(82px,9vw,132px)}
.tools-heading h2{color:#fff}
.tools-heading>p:last-child{color:#C3CFDA;max-width:780px}
.tools-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.28);border-left:1px solid rgba(255,255,255,.28)}
.tool-card{min-height:245px;padding:24px;display:grid;grid-template-columns:1fr 24px;grid-template-rows:auto 1fr;gap:20px;color:#fff;text-decoration:none;border-right:1px solid rgba(255,255,255,.28);border-bottom:1px solid rgba(255,255,255,.28)}
.tool-card:hover{background:rgba(255,255,255,.06)}
.tool-card-primary{background:var(--blue)}
.tool-card-primary:hover{background:#2D61DD}
.tool-icon{font-size:.72rem;font-weight:700;color:#B9C9D8}
.tool-card-primary .tool-icon{color:#DCE6FF}
.tool-card div{grid-column:1;align-self:end}
.tool-card strong{display:block;font-size:1.25rem;letter-spacing:-.02em}
.tool-card p{margin:8px 0 0;color:#B9C6D2;font-size:.86rem;line-height:1.55}
.tool-card-primary p{color:#E4EBFF}
.tool-card i{grid-column:2;grid-row:1 / span 2;align-self:end;font-style:normal;font-size:1.1rem}

.templates-section{background:var(--white)}
.template-layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:clamp(70px,9vw,145px)}
.template-intro{position:sticky;top:120px;align-self:start}
.template-intro h2{font-size:clamp(3rem,4.8vw,5.6rem)}
.button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;padding:0 21px;border:1px solid currentColor;text-decoration:none;font-weight:700}
.button-ink{background:var(--ink);color:#fff;border-color:var(--ink)}
.button-blue{background:var(--blue);color:#fff;border-color:var(--blue)}
.button-white{background:#fff;color:var(--ink);border-color:#fff}
.template-list{border-top:2px solid var(--ink)}
.template-list a{display:grid;grid-template-columns:1fr 30px;gap:20px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line-dark);text-decoration:none}
.template-list b{display:block;font-size:1.08rem}
.template-list small{display:block;margin-top:5px;color:var(--muted);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em}
.template-list i{font-style:normal;font-size:1.2rem}
.template-list a:hover b{color:var(--blue)}

.process-section{background:var(--blue);color:#fff;padding-block:clamp(82px,9vw,135px)}
.process-heading h2{color:#fff;max-width:1040px}
.text-link-light{color:#fff}
.process-steps{list-style:none;padding:0;margin:55px 0 0;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid rgba(255,255,255,.38)}
.process-steps li{min-height:265px;padding:24px 22px 10px 0;border-right:1px solid rgba(255,255,255,.28)}
.process-steps li+li{padding-left:22px}
.process-steps li:last-child{border-right:0}
.process-steps span{font-size:.7rem;font-weight:700;color:#CAD7F8}
.process-steps strong{display:block;margin-top:58px;font-size:1.17rem}
.process-steps p{color:#E0E7F8;font-size:.86rem;line-height:1.6}

.regulators-section{background:var(--paper)}
.regulator-callout{display:grid;grid-template-columns:1fr auto;gap:55px;align-items:end;padding-bottom:52px;border-bottom:1px solid var(--line-dark)}
.regulator-callout h2{max-width:1050px}
.regulator-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:0;border-left:1px solid var(--line-dark)}
.regulator-grid a{min-height:165px;padding:22px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);text-decoration:none;background:transparent}
.regulator-grid strong{display:block;font-size:1.05rem}
.regulator-grid span{display:block;margin-top:30px;color:var(--muted);font-size:.8rem;line-height:1.45}
.regulator-grid a:hover{background:#fff}

.knowledge-section{background:#fff}
.knowledge-layout{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:clamp(70px,9vw,140px)}
.knowledge-title h2{font-size:clamp(3rem,4.8vw,5.5rem)}
.knowledge-list{border-top:2px solid var(--ink)}
.knowledge-list a{display:grid;grid-template-columns:1fr 30px;gap:20px;align-items:center;padding:23px 0;border-bottom:1px solid var(--line-dark);text-decoration:none;font-size:1.04rem;font-weight:600}
.knowledge-list i{font-style:normal}
.knowledge-list a:hover{color:var(--blue)}

.resources-band{background:#ECEBE7;padding-block:clamp(75px,8vw,116px);border-top:1px solid var(--line)}
.resources-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px}
.resource-links{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #BEC4CA;border-left:1px solid #BEC4CA}
.resource-links a{min-height:100px;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-right:1px solid #BEC4CA;border-bottom:1px solid #BEC4CA;text-decoration:none;font-weight:700}
.resource-links a:hover{background:#fff}
.resource-links i{font-style:normal}

.final-cta{background:var(--ink);color:#fff;padding-block:clamp(78px,8vw,120px)}
.final-cta-inner{display:grid;grid-template-columns:1fr auto;gap:55px;align-items:end}
.final-cta h2{margin:0;font-size:clamp(3.4rem,6.4vw,7.2rem);line-height:.88;letter-spacing:-.072em}

.site-footer{background:var(--ink-deep);color:#EEF3F7;border-top:1px solid rgba(255,255,255,.08)}
.footer-lead{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:clamp(55px,8vw,130px);align-items:end;padding-top:clamp(70px,8vw,118px);padding-bottom:clamp(58px,7vw,94px)}
.footer-kicker{margin:0 0 20px;color:#8FA3B8;font-size:.72rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.footer-lead h2{max-width:980px;margin:0;color:#fff;font-size:clamp(2.7rem,5.6vw,6.4rem);line-height:.91;letter-spacing:-.064em;font-weight:700}
.footer-start{padding-top:22px;border-top:1px solid rgba(255,255,255,.36)}
.footer-start>strong{display:block;color:#fff;font-size:1.05rem}
.footer-start>p{max-width:470px;margin:12px 0 24px;color:#AAB7C4;font-size:.94rem;line-height:1.65}
.footer-start-actions{display:flex;flex-wrap:wrap;gap:10px}
.footer-start-actions button,.footer-start-actions a{min-height:44px;padding:0 15px;border:1px solid rgba(255,255,255,.55);background:transparent;color:#fff;display:inline-flex;align-items:center;text-decoration:none;font-size:.82rem;font-weight:700}
.footer-start-actions button:first-child{background:#fff;color:var(--ink-deep);border-color:#fff}
.footer-start-actions button:hover,.footer-start-actions a:hover{background:#fff;color:var(--ink-deep)}
.footer-rule{height:1px;background:rgba(255,255,255,.13)}
.footer-directory{display:grid;grid-template-columns:minmax(240px,1.05fr) repeat(4,minmax(135px,.7fr));gap:clamp(30px,4.5vw,72px);padding-top:clamp(52px,6vw,78px);padding-bottom:clamp(52px,6vw,78px)}
.brand-footer{display:inline-flex;color:#fff;margin-bottom:20px}
.brand-footer .brand-word{font-size:1.2rem}
.footer-brand-block>p{max-width:350px;margin:0;color:#AAB7C4;font-size:.88rem;line-height:1.7}
.footer-brand-links{margin-top:22px;padding-top:17px;border-top:1px solid rgba(255,255,255,.13);max-width:350px}
.footer-brand-links a{display:block;margin:8px 0;color:#DCE5ED;font-size:.8rem;text-decoration:none}
.footer-brand-links a:hover{text-decoration:underline;text-underline-offset:4px;color:#fff}
.footer-link-column h3{margin:0 0 20px;color:#879BAF;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.footer-link-column a{display:block;width:fit-content;margin:0 0 11px;color:#E2E9EF;text-decoration:none;font-size:.82rem;line-height:1.35}
.footer-link-column a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.footer-trust{display:grid;grid-template-columns:minmax(300px,.92fr) minmax(0,1.08fr);gap:clamp(45px,8vw,120px);align-items:start;padding-top:34px;padding-bottom:34px;border-top:1px solid rgba(255,255,255,.13)}
.footer-trust-copy strong{display:block;margin-bottom:8px;color:#fff;font-size:.86rem}
.footer-trust-copy p{max-width:650px;margin:0;color:#8393A3;font-size:.75rem;line-height:1.65}
.footer-policy-links{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:8px 18px}
.footer-policy-links a,.footer-policy-links .footer-link-button{margin:0;padding:0;border:0;background:transparent;color:#AAB7C4;text-decoration:none;font:inherit;font-size:.74rem;line-height:1.4;cursor:pointer}
.footer-policy-links a:hover,.footer-policy-links .footer-link-button:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.footer-bottom-wrap{border-top:1px solid rgba(255,255,255,.13)}
.footer-bottom{min-height:66px;display:flex;justify-content:space-between;align-items:center;gap:25px;color:#68798A;font-size:.72rem}
.footer-bottom>div{display:flex;align-items:center;gap:22px}
.footer-bottom a{color:#9AA9B7;text-decoration:none}.footer-bottom a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}

.search-overlay{position:fixed;inset:0;z-index:1000}
.search-overlay-backdrop{position:absolute;inset:0;background:rgba(5,11,18,.72);backdrop-filter:blur(7px)}
.search-dialog{position:relative;width:min(900px,calc(100% - 32px));margin:8vh auto 0;background:var(--paper);border:1px solid var(--ink);padding:28px;box-shadow:0 35px 100px rgba(0,0,0,.35)}
.search-dialog-head{display:flex;justify-content:space-between;gap:25px;align-items:flex-start}
.search-dialog h2{margin:8px 0 20px;color:var(--ink);font-size:clamp(2rem,4vw,4rem);line-height:.95;letter-spacing:-.055em}
.search-dialog-head button{border:1px solid var(--ink);background:#fff;width:42px;height:42px;font-size:1.5rem}
.search-dialog>input{width:100%;height:58px;border:1px solid var(--ink);background:#fff;padding:0 16px;outline:0}
.search-dialog>input:focus{outline:3px solid rgba(36,87,214,.15);outline-offset:2px}
.overlay-results{margin-top:14px;max-height:52vh;overflow:auto}
.overlay-group-title{padding:12px 10px 6px;color:var(--muted);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em}

@media(max-width:1180px){
  .desktop-nav{display:none}.menu-button{display:inline-flex;align-items:center}
  .area-grid{grid-template-columns:repeat(3,1fr)}.area-card-featured{grid-column:span 2}
  .tools-grid{grid-template-columns:1fr 1fr}.process-steps{grid-template-columns:repeat(3,1fr)}.process-steps li:nth-child(3){border-right:0}.process-steps li:nth-child(n+4){border-top:1px solid rgba(255,255,255,.28)}
  .regulator-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:820px){
  .header-search{display:none}.hero-inner{padding-top:68px}.hero h1{font-size:clamp(4rem,14vw,6.6rem)}
  .hero-title-block{grid-template-columns:1fr;gap:34px}.hero-deck{max-width:760px}
  .hero-entry-grid{grid-template-columns:1fr 1fr}.hero-entry-search{grid-column:1 / -1;padding-right:0;padding-bottom:32px}.hero-entry-browse{border-left:0!important;border-top:1px solid var(--line-dark);padding-left:0!important}.hero-entry-route{border-top:1px solid var(--line-dark)}
  .split-heading,.template-layout,.knowledge-layout,.resources-layout,.regulator-callout,.final-cta-inner,.footer-main{grid-template-columns:1fr;gap:38px}
  .text-link{justify-self:start}
  .area-grid{grid-template-columns:1fr 1fr}.area-card-featured{grid-column:span 2}
  .editorial-grid{grid-template-columns:1fr}.feature-story-large{grid-row:auto;min-height:500px}
  .template-intro{position:static}.process-steps{grid-template-columns:1fr 1fr}.process-steps li:nth-child(3){border-right:1px solid rgba(255,255,255,.28)}.process-steps li:nth-child(even){border-right:0}.process-steps li:nth-child(n+3){border-top:1px solid rgba(255,255,255,.28)}
  .regulator-grid{grid-template-columns:1fr 1fr}.footer-columns{grid-template-columns:1fr 1fr}.search-dialog{margin-top:4vh}
}
@media(max-width:560px){
  .shell{padding-inline:18px}.header-inner{min-height:66px}.brand-mark{width:36px;height:36px}.brand-word{font-size:1rem}
  .hero-inner{padding-top:54px;padding-bottom:58px}.hero h1{font-size:clamp(3.55rem,16vw,5rem);line-height:.87}.hero-title-block{padding-bottom:38px}.hero-deck{padding-top:16px}.hero-deck p{font-size:.98rem}
  .hero-entry-grid{grid-template-columns:1fr}.hero-entry{padding:25px 0!important}.hero-entry+.hero-entry{border-left:0;border-top:1px solid var(--line-dark)}.entry-kicker{margin-bottom:20px}.hero-entry h2{margin-bottom:19px;font-size:clamp(1.65rem,8vw,2.25rem)}
  .search-field-wrap{grid-template-columns:1fr}.search-field-wrap input{height:58px}.search-field-wrap button{height:50px;border-left:0;border-top:1px solid var(--ink)}
  .section{padding-block:76px}.section-heading h2,.template-intro h2,.knowledge-title h2,.resources-layout h2,.regulator-callout h2{font-size:clamp(2.85rem,13vw,4.3rem)}
  .area-grid{grid-template-columns:1fr}.area-card-featured{grid-column:auto}.area-card{min-height:300px}.area-card-featured h3{font-size:clamp(2rem,11vw,3.4rem)}
  .problem-list a{grid-template-columns:1fr 28px;gap:10px 14px}.problem-list span{grid-column:1}.problem-list b{grid-column:1;grid-row:2}.problem-list i{grid-column:2;grid-row:1 / span 2;align-self:center}
  .feature-story,.feature-story-large{min-height:360px}.feature-story-large h3{font-size:clamp(2.5rem,12vw,4rem)}
  .tools-grid{grid-template-columns:1fr}.process-steps{grid-template-columns:1fr}.process-steps li,.process-steps li:nth-child(3){border-right:0;border-top:1px solid rgba(255,255,255,.28);padding:24px 0}.process-steps li:first-child{border-top:0}.process-steps strong{margin-top:34px}
  .regulator-grid,.resource-links,.footer-columns{grid-template-columns:1fr}.footer-bottom{align-items:flex-start;flex-direction:column;justify-content:center;gap:10px}.final-cta h2{font-size:clamp(3rem,14vw,4.9rem)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.area-card{transition:none}}


/* =========================================================
   PLATFORM PAGES - inherits the v3 homepage design language
   ========================================================= */
.hub-hero,.article-hero{background:var(--paper);border-bottom:1px solid var(--line-dark)}
.hub-hero-grid,.article-hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:clamp(60px,8vw,140px);padding-top:clamp(85px,10vw,145px);padding-bottom:clamp(58px,7vw,105px);align-items:end}
.hub-hero h1,.article-hero h1{margin:18px 0 0;font-size:clamp(4.4rem,9.2vw,10rem);line-height:.82;letter-spacing:-.075em;color:var(--ink);max-width:1200px}.hub-hero-grid>div:last-child>p,.article-intro>p{font-size:clamp(1.06rem,1.45vw,1.35rem);line-height:1.55;color:var(--charcoal)}
.inline-search{display:grid;grid-template-columns:1fr auto;margin-top:30px;border:1px solid var(--ink);background:#fff}.inline-search input{height:54px;padding:0 15px;border:0;background:transparent;font:inherit;min-width:0}.inline-search button{border:0;border-left:1px solid var(--ink);background:var(--ink);color:#fff;padding:0 20px;font:inherit;font-weight:700}
.hub-topic-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}.hub-topic-grid>a{display:grid;grid-template-columns:44px 1fr 26px;gap:18px;min-height:170px;padding:25px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);text-decoration:none}.hub-topic-grid>a>span{font-size:.72rem;color:var(--muted);font-weight:700}.hub-topic-grid h3{margin:0 0 10px;font-size:1.28rem;letter-spacing:-.03em}.hub-topic-grid p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.55}.hub-topic-grid i{font-style:normal}.hub-topic-grid>a:hover{background:#fff}.hub-topic-grid>a:hover h3{color:var(--blue)}
.hub-cross{background:var(--ink);color:#fff;padding-block:clamp(72px,8vw,115px)}.hub-cross-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,8vw,140px)}.hub-cross h2{font-size:clamp(3rem,5.5vw,6rem);line-height:.9;letter-spacing:-.06em;color:#fff}.hub-cross p{color:#CDD6DF;line-height:1.7}.hub-cross .text-link{color:#fff;display:block;margin-top:16px}
.article-main{background:var(--paper)}.article-hero h1{font-size:clamp(3.8rem,7.6vw,8rem)}.article-meta{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:28px;padding-top:17px;border-top:1px solid var(--line-dark);font-size:.76rem;color:var(--muted);font-weight:600}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:clamp(70px,8vw,135px);padding-top:clamp(65px,8vw,110px);padding-bottom:clamp(90px,10vw,145px)}.article-content{max-width:880px}.article-content>section{padding:0 0 52px;margin:0 0 52px;border-bottom:1px solid var(--line-dark)}.article-content>section:last-child{border-bottom:0}.article-content h2{margin:8px 0 20px;font-size:clamp(2.2rem,4vw,4.1rem);line-height:.95;letter-spacing:-.055em}.article-content p,.article-content li{font-size:1.02rem;line-height:1.72}.section-label{margin:0 0 12px!important;color:var(--blue)!important;font-size:.69rem!important;font-weight:700!important;letter-spacing:.11em;text-transform:uppercase}.context-note{margin:0 0 52px;padding:24px 0;border-top:3px solid var(--teal);border-bottom:1px solid var(--line-dark)}.context-note strong{display:block;font-size:1.15rem}.context-note p{margin:8px 0 0}.check-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-dark)}.check-list li{padding:18px 0 18px 32px;border-bottom:1px solid var(--line-dark);position:relative}.check-list li:before{content:'•';position:absolute;left:0;color:var(--blue);font-weight:700}.number-list{list-style:none;counter-reset:item;padding:0;border-top:1px solid var(--line-dark)}.number-list li{counter-increment:item;display:grid;grid-template-columns:46px 1fr;gap:14px;padding:19px 0;border-bottom:1px solid var(--line-dark)}.number-list li:before{content:counter(item,decimal-leading-zero);font-size:.73rem;color:var(--muted);font-weight:700}.evidence-grid{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid var(--line-dark);border-top:1px solid var(--line-dark)}.evidence-grid div{padding:19px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);font-weight:600}.article-side{align-self:start;position:sticky;top:100px}.side-block{padding:0 0 28px;margin-bottom:30px;border-bottom:1px solid var(--line-dark)}.side-block>a{display:flex;justify-content:space-between;gap:14px;padding:10px 0;color:var(--ink);text-decoration:none;font-size:.88rem;font-weight:600}.side-block>a:hover{color:var(--blue)}.side-block p{color:var(--muted);font-size:.84rem;line-height:1.6}.side-help{border-top:3px solid var(--blue);padding-top:20px}.source-box ul{list-style:none;padding:0;margin:22px 0 0;border-top:1px solid var(--line-dark)}.source-box li{margin:0}.source-box li a{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid var(--line-dark);text-decoration:none;font-weight:600}.source-box li a:hover{color:var(--blue)}.source-note{font-size:.84rem!important;color:var(--muted);margin-top:18px}
.template-workbench textarea{width:100%;min-height:540px;padding:20px;border:1px solid var(--ink);background:#fff;color:var(--charcoal);font:500 .93rem/1.62 'DM Sans',Arial,sans-serif;resize:vertical}.copy-status{margin-left:14px;font-size:.82rem;color:var(--muted)}
.tool-workbench{background:#fff;padding:32px!important;border:1px solid var(--line-dark)!important}.tool-form{display:grid;gap:18px}.tool-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tool-field label{display:block;margin-bottom:7px;font-size:.78rem;font-weight:700}.tool-field input,.tool-field select,.tool-field textarea{width:100%;min-height:48px;border:1px solid var(--line-dark);background:#fff;padding:10px 12px;font:inherit}.tool-output{margin-top:25px;padding-top:22px;border-top:2px solid var(--ink)}.tool-output strong.result-big{display:block;font-size:clamp(2rem,5vw,4rem);letter-spacing:-.05em}.tool-output ul{padding-left:18px}.timeline-table{width:100%;border-collapse:collapse;margin-top:20px}.timeline-table th,.timeline-table td{padding:12px;border:1px solid var(--line-dark);text-align:left;vertical-align:top;font-size:.86rem}.audit-row{display:grid;grid-template-columns:1fr 160px 40px;gap:10px;margin:10px 0}.audit-row input,.audit-row select{border:1px solid var(--line-dark);padding:10px}.audit-row button{border:1px solid var(--line-dark);background:#fff}.finder-result{padding:18px 0;border-bottom:1px solid var(--line-dark)}
.search-page{min-height:70vh}.search-page-hero{padding-block:clamp(70px,9vw,130px);border-bottom:1px solid var(--line-dark)}.search-page-hero h1{font-size:clamp(4rem,9vw,9rem);line-height:.83;letter-spacing:-.075em}.search-large{display:grid;grid-template-columns:1fr auto;border:1px solid var(--ink);margin-top:40px;max-width:1000px}.search-large input{height:64px;border:0;padding:0 18px;font:inherit;font-size:1.05rem}.search-large button{border:0;border-left:1px solid var(--ink);background:var(--ink);color:#fff;padding:0 28px;font:inherit;font-weight:700}.search-page-results{padding-block:55px 100px}.search-result-group{margin-bottom:45px}.search-result-group>h2{padding-bottom:14px;border-bottom:2px solid var(--ink);font-size:1.2rem}.search-page-result{display:grid;grid-template-columns:1fr 120px 30px;gap:20px;padding:20px 0;border-bottom:1px solid var(--line-dark);text-decoration:none}.search-page-result h3{margin:0 0 5px;font-size:1.15rem}.search-page-result p{margin:0;color:var(--muted);font-size:.86rem}.search-page-result>span{font-size:.72rem;color:var(--muted);text-align:right}.search-page-result i{font-style:normal}
.docs-hero{background:var(--ink);color:#fff;padding-block:clamp(80px,9vw,135px)}.docs-hero h1{font-size:clamp(4rem,8.5vw,9rem);line-height:.84;letter-spacing:-.075em;color:#fff}.docs-hero p{max-width:760px;color:#CDD6DF;font-size:1.12rem;line-height:1.7}.docs-grid{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid var(--line-dark);border-top:1px solid var(--line-dark)}.docs-grid a{min-height:200px;padding:26px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);text-decoration:none}.docs-grid span{font-size:.7rem;color:var(--muted);font-weight:700}.docs-grid h2{font-size:1.45rem;margin:30px 0 8px}.docs-grid p{color:var(--muted);font-size:.86rem;line-height:1.55}.docs-grid a:hover{background:#fff}.legal-page{max-width:900px;padding-top:80px;padding-bottom:120px}.legal-page h1{font-size:clamp(3.6rem,7vw,7rem);letter-spacing:-.07em;line-height:.86}.legal-page h2{margin-top:55px;font-size:2rem;letter-spacing:-.04em}.legal-page p,.legal-page li{line-height:1.75}.legal-page table{width:100%;border-collapse:collapse}.legal-page td,.legal-page th{border:1px solid var(--line-dark);padding:12px;text-align:left}
.cookie-banner{position:fixed;z-index:1100;left:0;right:0;bottom:0;background:var(--ink);color:#fff;border-top:1px solid rgba(255,255,255,.25)}.cookie-banner-inner{display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center;padding-top:22px;padding-bottom:22px}.cookie-banner p{margin:5px 0 0;color:#CDD6DF;font-size:.85rem;line-height:1.5}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-actions button{min-height:42px;padding:0 14px;border:1px solid #fff;background:transparent;color:#fff;font:inherit;font-weight:700}.cookie-actions button[data-cookie-accept]{background:#fff;color:var(--ink)}.cookie-modal{position:fixed;inset:0;z-index:1200}.cookie-modal-backdrop{position:absolute;inset:0;background:rgba(6,13,22,.7)}.cookie-preferences{position:relative;width:min(680px,calc(100% - 32px));margin:8vh auto;background:var(--paper);border:1px solid var(--ink);padding:28px}.cookie-pref-head{display:flex;justify-content:space-between;gap:20px}.cookie-pref-head h2{font-size:2.4rem;margin:8px 0 20px}.cookie-pref-head button{width:40px;height:40px;border:1px solid var(--ink);background:#fff;font-size:1.4rem}.cookie-row{display:grid;grid-template-columns:1fr auto;gap:20px;padding:18px 0;border-top:1px solid var(--line-dark);align-items:center}.cookie-row p{margin:5px 0 0;color:var(--muted);font-size:.84rem}.cookie-row input{width:22px;height:22px}
.search-page-link{display:inline-block;margin-top:18px;color:var(--ink);font-weight:700;text-decoration:none}
@media(max-width:900px){.hub-hero-grid,.article-hero-grid,.article-layout,.hub-cross-grid{grid-template-columns:1fr}.article-side{position:static}.hub-topic-grid{grid-template-columns:1fr}.cookie-banner-inner{grid-template-columns:1fr}.docs-grid{grid-template-columns:1fr}.tool-row{grid-template-columns:1fr}.search-page-result{grid-template-columns:1fr 24px}.search-page-result>span{display:none}}
@media(max-width:560px){.hub-hero h1,.article-hero h1{font-size:clamp(3.4rem,15vw,5rem)}.hub-hero-grid,.article-hero-grid{padding-top:58px}.hub-topic-grid>a{grid-template-columns:32px 1fr 22px;padding:20px;min-height:145px}.evidence-grid{grid-template-columns:1fr}.tool-workbench{padding:20px!important}.audit-row{grid-template-columns:1fr}.audit-row button{min-height:40px}.search-large{grid-template-columns:1fr}.search-large button{height:50px;border-left:0;border-top:1px solid var(--ink)}.cookie-actions{display:grid;grid-template-columns:1fr;width:100%}.cookie-actions button{width:100%}}

/* Rich help-article components */
.help-answer { border-top: 3px solid var(--ink); padding-top: 30px; }
.help-answer > p:first-of-type:not(.section-label) { font-size: clamp(1.18rem, 1.7vw, 1.45rem); line-height: 1.55; color: var(--ink); }
.key-points { margin-top: 30px; padding: 24px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.key-points h3 { margin: 0 0 14px; font-size: .95rem; }
.meaning-box, .worked-example, .next-route { padding: clamp(24px,3vw,38px); border: 1px solid var(--line); background: #fff; }
.meaning-box { border-left: 5px solid #176C70; }
.worked-example { background: #EEF7F5; border-left: 5px solid #19746A; }
.next-route { background: #F1F3F6; border-top: 4px solid var(--ink); }
.warning-list { list-style: none; padding: 0; margin: 18px 0 0; }
.warning-list li { position: relative; padding: 12px 0 12px 28px; border-top: 1px solid var(--line); }
.warning-list li::before { content: "!"; position: absolute; left: 0; top: 12px; font-weight: 700; color: #8B3D2E; }
.article-table-wrap { width: 100%; overflow-x: auto; margin: 22px 0; border-top: 1px solid var(--ink); }
.article-table { width: 100%; border-collapse: collapse; }
.article-table th, .article-table td { text-align: left; vertical-align: top; padding: 14px 12px; border-bottom: 1px solid var(--line); }
.article-table th { width: 30%; font-weight: 700; color: var(--ink); }
.article-content h3 { margin: 28px 0 10px; font-size: 1.15rem; }
@media (max-width: 700px){ .meaning-box,.worked-example,.next-route{padding:22px 18px}.article-table th{width:38%} }




/* ===== RELEASE CANDIDATE: editorial flow, navigation and hubs ===== */
.meaning-box,.worked-example,.next-route,.article-flow-note{padding:0!important;background:transparent!important;border:0!important;border-left:0!important;border-top:0!important}
.article-flow-note{margin:0 0 52px;padding:0 0 52px!important;border-bottom:1px solid var(--line-dark)!important}
.resolution-path{padding:0!important;background:transparent!important}
.resolution-intro{max-width:720px;color:var(--muted)}
.resolution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark);margin-top:28px}
.resolution-grid>div{padding:22px 24px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);min-height:170px}
.resolution-grid strong{display:block;font-size:1.05rem;margin-bottom:8px}.resolution-grid p{font-size:.92rem;line-height:1.6;color:var(--muted);margin:0 0 12px}.resolution-grid a{font-weight:700;text-decoration:none;color:var(--blue)}
.route-grid,.hub-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}
.route-link{position:relative;display:grid;grid-template-columns:1fr auto;gap:6px 20px;min-height:138px;padding:24px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);text-decoration:none;color:var(--ink)}.route-link strong{font-size:1.12rem}.route-link span{grid-column:1;line-height:1.55;color:var(--muted);font-size:.9rem}.route-link i{grid-column:2;grid-row:1/3;font-style:normal;align-self:start;font-size:1.1rem;color:var(--blue)}.route-link:hover strong{color:var(--blue)}
.specialist-hubs{background:#fff;border-top:1px solid var(--line-dark)}.hub-link-grid--home{grid-template-columns:repeat(3,minmax(0,1fr))}
.ombudsman-directory{border-top:1px solid var(--line-dark)}.ombudsman-card{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.5fr);gap:16px 42px;padding:28px 0;border-bottom:1px solid var(--line-dark)}.ombudsman-card-head{grid-row:1/5}.ombudsman-card h3{font-size:1.35rem;margin:0 0 12px}.ombudsman-card p{font-size:.92rem;line-height:1.58;margin:0}.ombudsman-card a{font-weight:700;text-decoration:none}.official-link{font-size:.82rem;color:var(--blue)}
/* desktop mega navigation */
.site-header{position:sticky;top:0;z-index:200;background:rgba(255,255,255,.985);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}
.header-inner{min-height:74px}.brand-mark{display:none!important}.brand-word{font-size:1.26rem;letter-spacing:-.04em;font-weight:700}.brand-logo-header{width:400px}
.desktop-nav{display:flex;align-items:stretch;gap:0;height:74px}.nav-group{position:static;display:flex;align-items:stretch}.nav-group>button{appearance:none;border:0;background:none;padding:0 16px;font:inherit;font-size:.88rem;font-weight:650;color:var(--ink);cursor:pointer}.nav-group>button span{font-size:.8rem;margin-left:4px}.nav-group.is-open>button{color:var(--blue)}
.nav-mega{display:none;position:absolute;left:0;right:0;top:74px;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line-dark);padding:34px max(20px,calc((100vw - 1540px)/2 + 28px));grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;box-shadow:0 18px 36px rgba(16,28,44,.08)}.nav-group.is-open .nav-mega{display:grid}.nav-mega--narrow{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}.nav-mega strong{display:block;margin-bottom:13px;color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.1em}.nav-mega a{display:block;padding:8px 0;color:var(--ink);text-decoration:none;font-weight:600}.nav-mega a:hover{color:var(--blue)}
.menu-button{display:none}.menu-icon{width:20px;display:inline-grid;gap:4px}.menu-icon i{display:block;height:1px;background:currentColor;width:20px}
.mobile-menu{padding:0;background:#fff;border-top:1px solid var(--line-dark);max-height:calc(100vh - 74px);overflow:auto}.mobile-menu-inner{padding-top:18px;padding-bottom:36px}.mobile-menu-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line-dark)}.mobile-menu-head button{border:0;background:none;color:var(--blue);font-weight:700}.mobile-menu details{border-bottom:1px solid var(--line-dark)}.mobile-menu summary{cursor:pointer;list-style:none;padding:18px 0;font-weight:700;font-size:1rem}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu details>div{display:grid;grid-template-columns:1fr 1fr;padding:0 0 18px;gap:0 26px}.mobile-menu a{padding:10px 0;border:0;font-size:.9rem}.mobile-menu-meta{display:flex;gap:22px;padding-top:22px}.mobile-menu-meta a{font-size:.82rem;color:var(--muted)}
/* toolkit */
.tool-workbench{border-top:4px solid var(--ink)!important;padding-top:30px!important}.tool-app{display:grid;gap:24px}.tool-toolbar{display:flex;flex-wrap:wrap;gap:10px;padding:14px 0;border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.tool-toolbar button{border:1px solid var(--line-dark);background:#fff;padding:10px 13px;font:inherit;font-weight:700;cursor:pointer}.tool-toolbar button:hover{background:var(--ink);color:#fff}.tool-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}.tool-summary-grid>div{padding:18px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.tool-summary-grid strong{display:block;font-size:1.5rem}.tool-summary-grid span{font-size:.78rem;color:var(--muted)}
.evidence-editor,.timeline-editor,.audit-editor{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:880px}.data-table th,.data-table td{border-bottom:1px solid var(--line-dark);padding:10px 8px;vertical-align:top;text-align:left}.data-table th{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.data-table input,.data-table select,.data-table textarea{width:100%;border:1px solid var(--line);background:#fff;padding:9px;font:inherit}.data-table textarea{min-height:72px;resize:vertical}.data-table button{border:0;background:none;font-weight:800;cursor:pointer}.tool-add-row{border:1px solid var(--ink);background:#fff;padding:11px 15px;font:inherit;font-weight:700;cursor:pointer}.tool-report{padding-top:22px;border-top:1px solid var(--line-dark)}.tool-report h3{font-size:1.5rem;margin-bottom:12px}.tool-report pre{white-space:pre-wrap;font-family:inherit;background:#fff;border:1px solid var(--line-dark);padding:18px;line-height:1.55}
@media(max-width:1100px){.desktop-nav{display:none}.menu-button{display:inline-flex!important;align-items:center;gap:9px}.hub-link-grid--home{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.resolution-grid,.route-grid,.hub-link-grid,.hub-link-grid--home{grid-template-columns:1fr}.resolution-grid>div{min-height:0;padding:18px 0;border-left:0;border-right:0}.resolution-grid{border-left:0}.route-link{padding:20px 0;border-left:0;border-right:0;min-height:0}.route-grid,.hub-link-grid{border-left:0}.ombudsman-card{grid-template-columns:1fr;gap:12px}.ombudsman-card-head{grid-row:auto}.mobile-menu details>div{grid-template-columns:1fr}.tool-summary-grid{grid-template-columns:1fr}.article-content>section{padding-bottom:42px;margin-bottom:42px}}

@media(max-width:1180px){
  .footer-directory{grid-template-columns:1.25fr repeat(2,1fr)}
  .footer-brand-block{grid-row:span 2}
  .footer-policy-links{justify-content:flex-start}
}
@media(max-width:820px){
  .footer-lead{grid-template-columns:1fr;gap:40px}
  .footer-lead h2{font-size:clamp(2.75rem,10vw,5rem)}
  .footer-directory{grid-template-columns:1fr 1fr;gap:42px 34px}
  .footer-brand-block{grid-column:1 / -1;grid-row:auto;padding-bottom:10px}
  .footer-brand-block>p,.footer-brand-links{max-width:620px}
  .footer-trust{grid-template-columns:1fr;gap:22px}
}
@media(max-width:560px){
  .footer-lead{padding-top:60px;padding-bottom:54px}
  .footer-lead h2{font-size:clamp(2.55rem,12vw,4rem);line-height:.94}
  .footer-start{padding-top:18px}
  .footer-start-actions{display:grid;grid-template-columns:1fr}
  .footer-start-actions button,.footer-start-actions a{justify-content:center;width:100%;min-height:46px}
  .footer-directory{grid-template-columns:1fr;gap:34px;padding-top:48px;padding-bottom:48px}
  .footer-brand-block{grid-column:auto;border-bottom:1px solid rgba(255,255,255,.13);padding-bottom:34px}
  .footer-link-column{padding-bottom:26px;border-bottom:1px solid rgba(255,255,255,.10)}
  .footer-link-column:last-child{border-bottom:0;padding-bottom:0}
  .footer-link-column h3{margin-bottom:16px}
  .footer-link-column a{font-size:.88rem;margin-bottom:12px}
  .footer-policy-links{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}
  .footer-bottom{align-items:flex-start;flex-direction:column;justify-content:center;min-height:92px;gap:8px}
  .footer-bottom>div{flex-wrap:wrap;gap:8px 18px}
}
@media print{.site-header,.site-footer,.article-side,.tool-toolbar,.cookie-banner,.cookie-modal,.search-overlay{display:none!important}.article-layout{display:block}.article-content{max-width:none}.tool-workbench{border:0!important}.data-table{min-width:0;font-size:10pt}a{color:#000!important;text-decoration:none!important}}

/* ===== FINAL PRODUCT OVERHAUL ===== */
.article-content>section{max-width:980px}
.article-flow-note,.meaning-box,.worked-example,.next-route{padding:0!important;margin-left:0!important;margin-right:0!important}
.contextual-route-panel,.contextual-related{padding-top:8px!important}
.contextual-related .route-grid{margin-top:22px}
.section-why{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);padding:clamp(70px,8vw,130px) 0;background:#fff}
.section-why h2{font-size:clamp(2.2rem,4.5vw,5.2rem);line-height:.98;margin:0;max-width:11ch}
.section-why p{font-size:1.06rem;line-height:1.75;max-width:700px}.section-why .text-link{display:inline-block;margin-top:14px;font-weight:700}
.tool-workbench{margin-top:30px}.tool-toolbar{position:sticky;bottom:0;z-index:3;background:#fff;border-top:2px solid var(--ink);padding:14px 0;box-shadow:0 -12px 22px rgba(16,28,44,.06)}
@media(max-width:760px){.article-content>section{max-width:none}.section-why{padding:64px 0}.section-why h2{font-size:2.7rem}.tool-toolbar{position:static;box-shadow:none}}

/* ============================================================
   CONSUMERWISE TOOLKIT V2
   Purpose-built responsive tool surfaces. No rounded UI.
   ============================================================ */
.tools-hub-main,.tool-page{background:var(--paper)}
.tools-hub-hero{border-bottom:1px solid var(--line-dark);background:var(--paper)}
.tools-hub-hero-grid{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,2.3fr);gap:clamp(50px,8vw,130px);padding-top:clamp(76px,9vw,132px);padding-bottom:clamp(72px,8vw,116px)}
.tools-hub-kicker{display:flex;flex-direction:column;justify-content:space-between;min-height:220px}
.tools-hub-kicker span{font-size:.8rem;color:var(--muted);font-weight:600}
.tools-hub-title h1{max-width:1050px;margin:0;font-size:clamp(4rem,8vw,8.8rem);line-height:.88;letter-spacing:-.065em}
.tools-hub-title h1 em{font-family:"DM Sans",Arial,Helvetica,sans-serif;font-weight:600;color:var(--blue)}
.tools-hub-title>p{max-width:780px;margin:32px 0 0;font-size:clamp(1.12rem,1.8vw,1.52rem);line-height:1.55;color:var(--muted)}
.tools-hub-intro{border-bottom:1px solid var(--line-dark);background:#fff}
.tools-hub-intro-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(50px,8vw,120px);padding-top:66px;padding-bottom:66px}
.tools-hub-intro h2{margin:8px 0 0;font-size:clamp(2.4rem,4.6vw,4.9rem);line-height:.96;letter-spacing:-.055em}
.tools-hub-intro-grid>div:last-child>p{margin:0 0 24px;font-size:1.03rem;line-height:1.72;color:var(--muted)}
.tools-directory{padding-top:90px;padding-bottom:100px}
.tools-group{display:grid;grid-template-columns:minmax(245px,.8fr) minmax(0,2.2fr);gap:clamp(42px,7vw,108px);padding:0 0 86px;margin:0 0 86px;border-bottom:1px solid var(--line-dark)}
.tools-group:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}
.tools-group>header{align-self:start;position:sticky;top:104px}
.tools-group>header h2{margin:8px 0 16px;font-size:clamp(2.1rem,3.6vw,4rem);line-height:.98;letter-spacing:-.05em}
.tools-group>header>p:last-child{max-width:380px;margin:0;color:var(--muted);font-size:.94rem;line-height:1.65}
.tools-list{border-top:1px solid var(--ink)}
.tools-list-item{display:grid;grid-template-columns:54px minmax(0,1fr) 28px;gap:22px;align-items:start;padding:28px 4px 30px;border-bottom:1px solid var(--line-dark);text-decoration:none;color:var(--ink);transition:padding .18s ease,background .18s ease}
.tools-list-item:hover{padding-left:16px;padding-right:16px;background:#fff}
.tools-list-item.featured{border-top:4px solid var(--blue);margin-top:-1px}
.tools-number{padding-top:4px;font-size:.71rem;font-weight:700;color:var(--muted)}
.tools-list-item h3{margin:0 0 9px;font-size:clamp(1.35rem,2vw,1.8rem);letter-spacing:-.035em}
.tools-list-item p{max-width:720px;margin:0 0 12px;color:var(--muted);font-size:.91rem;line-height:1.58}
.tools-list-item small{display:block;font-size:.72rem;color:var(--blue);font-weight:700;letter-spacing:.025em}
.tools-list-item i{font-style:normal;font-size:1.2rem;padding-top:3px}
.tools-hub-method{background:var(--ink);color:#fff}
.tools-hub-method-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:clamp(55px,9vw,135px);padding-top:90px;padding-bottom:100px}
.tools-hub-method .eyebrow{color:#9BB7FF}
.tools-hub-method h2{margin:8px 0 0;font-size:clamp(2.7rem,5vw,5.7rem);line-height:.94;letter-spacing:-.055em}
.tools-hub-method ol{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.3)}
.tools-hub-method li{display:grid;grid-template-columns:46px 1fr;gap:18px;padding:23px 0;border-bottom:1px solid rgba(255,255,255,.3)}
.tools-hub-method li>span{font-size:.72rem;color:#A9B6C7;font-weight:700}
.tools-hub-method strong{display:block;font-size:1.05rem}
.tools-hub-method li p{margin:6px 0 0;color:#BCC7D2;font-size:.88rem;line-height:1.58}

.tool-page-hero{border-bottom:1px solid var(--line-dark);background:var(--paper)}
.tool-page-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:clamp(48px,8vw,130px);padding-top:clamp(72px,8vw,120px);padding-bottom:clamp(62px,7vw,100px);align-items:end}
.tool-back{display:inline-block;margin:18px 0 30px;color:var(--muted);font-size:.82rem;font-weight:600;text-decoration:none}
.tool-back:hover{color:var(--blue)}
.tool-page-hero h1{max-width:960px;margin:0;font-size:clamp(3.5rem,7vw,7.7rem);line-height:.88;letter-spacing:-.063em}
.tool-page-lead>p{margin:0;font-size:clamp(1.08rem,1.5vw,1.32rem);line-height:1.62;color:var(--muted)}
.tool-page-meta{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:28px;padding-top:18px;border-top:1px solid var(--line-dark)}
.tool-page-meta span{font-size:.72rem;font-weight:700;color:var(--ink)}
.tool-stage{background:#fff;border-bottom:1px solid var(--line-dark)}
.tool-stage-grid{display:grid;grid-template-columns:minmax(220px,.62fr) minmax(0,1.75fr);gap:clamp(44px,7vw,105px);padding-top:75px;padding-bottom:92px;align-items:start}
.tool-instructions{position:sticky;top:104px}
.tool-instructions h2{margin:8px 0 18px;font-size:clamp(2rem,3.1vw,3.4rem);line-height:.98;letter-spacing:-.045em}
.tool-instructions h3{margin:0 0 10px;font-size:1.12rem}
.tool-instructions>p:not(.eyebrow){margin:0;color:var(--muted);font-size:.92rem;line-height:1.68}
.tool-instruction-rule{height:0;border-top:1px solid var(--line-dark);background:transparent;margin:28px 0}
.tool-instructions .text-link{display:inline-block;margin-top:24px}
.tool-workbench-v2{min-width:0;margin:0!important;padding:0!important;border:0!important;border-top:4px solid var(--ink)!important;background:transparent!important}
.tool-app-v2{min-width:0;padding-top:28px}
.tool-app-head{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:32px;margin-bottom:34px;padding-bottom:30px;border-bottom:1px solid var(--line-dark)}
.tool-app-head .eyebrow{grid-column:1/-1;margin-bottom:-10px!important}
.tool-app-head h2{margin:0!important;font-size:clamp(2rem,3.4vw,3.7rem)!important;line-height:.98!important;letter-spacing:-.05em!important}
.tool-app-head>p:last-child{margin:0;color:var(--muted);font-size:.94rem;line-height:1.65}
.tool-form-v2{display:grid;gap:26px}
.tool-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 24px}
.tool-form-narrow{max-width:620px}
.tool-field{min-width:0}
.tool-field label{display:block;margin-bottom:8px;font-size:.76rem;font-weight:700;color:var(--ink)}
.tool-field input,.tool-field select,.tool-field textarea{box-sizing:border-box;width:100%;max-width:100%;border:1px solid #AEB6BF;background:#fff;color:var(--ink);padding:13px 14px;font:inherit;font-size:16px;line-height:1.4;border-radius:0;outline:0;appearance:auto}
.tool-field input,.tool-field select{min-height:50px}
.tool-field textarea{min-height:108px;resize:vertical}
.tool-field input:focus,.tool-field select:focus,.tool-field textarea:focus{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}
.tool-field input:focus::placeholder,.tool-field textarea:focus::placeholder{color:transparent}
.tool-field input::placeholder,.tool-field textarea::placeholder{color:#8D96A0;opacity:1}
.tool-field small{display:block;margin-top:7px;color:var(--muted);font-size:.73rem;line-height:1.45}
.tool-primary-action{padding-top:4px}
.tool-primary-action .button{min-height:50px;padding:13px 20px;border-radius:0}
.tool-output{margin-top:0;padding:28px 0 0;border-top:2px solid var(--ink)}
.tool-output.is-empty{border-top:1px solid var(--line-dark);color:var(--muted)}
.tool-output .eyebrow{margin-bottom:11px!important}
.tool-output .result-big{display:block;margin:0 0 16px;font-size:clamp(2.7rem,5.5vw,5rem);line-height:.92;letter-spacing:-.055em}
.tool-output>p{max-width:760px;margin:0;color:var(--muted);font-size:.92rem;line-height:1.65}
.tool-error{color:#8B1E1E!important;font-weight:700}
.tool-result-actions{margin-top:18px}
.tool-secondary-button,.tool-add-row,.tool-suggestions button{border:1px solid var(--ink);background:#fff;color:var(--ink);padding:10px 14px;border-radius:0;font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}
.tool-secondary-button:hover,.tool-add-row:hover,.tool-suggestions button:hover{background:var(--ink);color:#fff}
.tool-toolbar-v2{display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center;margin-top:34px;padding:22px 0;border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);background:transparent}
.tool-toolbar-copy strong,.tool-toolbar-copy span{display:block}
.tool-toolbar-copy strong{font-size:.88rem}.tool-toolbar-copy span{margin-top:3px;color:var(--muted);font-size:.72rem}
.tool-toolbar-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.tool-toolbar-actions button{border:1px solid var(--line-dark);background:#fff;padding:9px 11px;border-radius:0;font:inherit;font-size:.74rem;font-weight:700;cursor:pointer}
.tool-toolbar-actions button:hover{border-color:var(--ink);background:var(--ink);color:#fff}
.tool-repeater{display:grid;gap:20px}
.tool-record{border-top:2px solid var(--ink);border-bottom:1px solid var(--line-dark);padding:20px 0 25px;background:#fff}
.tool-record-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}
.tool-record-head>div{display:flex;gap:10px;align-items:baseline}.tool-record-head span{font-size:.69rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}.tool-record-head strong{font-size:.78rem;color:var(--blue)}
.tool-record-remove{border:0;background:transparent;color:var(--muted);padding:6px 0;font:inherit;font-size:.74rem;font-weight:700;cursor:pointer}.tool-record-remove:hover{color:#8B1E1E}
.tool-record-grid{display:grid;grid-template-columns:1fr;gap:17px 20px;margin-bottom:17px}.tool-record-grid:last-child{margin-bottom:0}.tool-record-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-record-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tool-repeater-controls{display:flex;justify-content:flex-start;margin:22px 0 0}
.tool-report{margin-top:28px;padding-top:24px;border-top:1px solid var(--line-dark)}
.tool-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink);border-left:0!important}
.tool-summary-grid>div{padding:18px 18px 18px 0;border-right:0!important;border-bottom:1px solid var(--line-dark)!important}
.tool-summary-grid strong{display:block;font-size:clamp(1.8rem,3.3vw,2.7rem);letter-spacing:-.04em}.tool-summary-grid span{display:block;margin-top:5px;font-size:.73rem;color:var(--muted)}
.tool-gap-list{margin-top:28px;border-top:1px solid var(--line-dark)}.tool-gap-list h3{margin:22px 0 12px}.tool-gap-list p{display:grid;grid-template-columns:1fr auto;gap:20px;margin:0;padding:11px 0;border-bottom:1px solid var(--line-dark)}.tool-gap-list p span{color:var(--muted);font-size:.8rem}
.tool-suggestions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 26px;padding-bottom:20px;border-bottom:1px solid var(--line-dark)}.tool-suggestions>span{margin-right:4px;font-size:.73rem;color:var(--muted);font-weight:700}.tool-suggestions button{padding:7px 10px;border-color:var(--line-dark);font-size:.7rem}
.tool-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}
.tool-checks label{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;padding:18px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);cursor:pointer}.tool-checks input{margin-top:3px;accent-color:var(--blue)}.tool-checks strong,.tool-checks small{display:block}.tool-checks strong{font-size:.86rem}.tool-checks small{margin-top:4px;color:var(--muted);font-size:.72rem;line-height:1.45}
.route-result-list{border-top:1px solid var(--ink);margin-top:18px}.route-result-list>a{display:grid;grid-template-columns:42px 1fr 22px;gap:16px;padding:18px 0;border-bottom:1px solid var(--line-dark);text-decoration:none}.route-result-list>a>span{font-size:.69rem;color:var(--muted);font-weight:700}.route-result-list strong{display:block}.route-result-list p{margin:5px 0 0;color:var(--muted);font-size:.79rem;line-height:1.5}.route-result-list i{font-style:normal}.tool-related-routes{margin-top:26px}.tool-related-routes h4{margin:0 0 9px}.tool-related-routes a{display:block;padding:8px 0;font-size:.84rem;font-weight:700;text-decoration:none}.tool-action-list{margin:18px 0 24px;padding:0;list-style:none;border-top:1px solid var(--line-dark)}.tool-action-list li{position:relative;padding:13px 0 13px 28px;border-bottom:1px solid var(--line-dark);font-size:.88rem;line-height:1.55}.tool-action-list li:before{content:'•';position:absolute;left:0;color:var(--blue);font-weight:700}.tool-warning{margin-top:22px;padding:18px 0;border-top:3px solid #B45309;border-bottom:1px solid var(--line-dark)}.tool-warning p{margin:7px 0 0!important}
.tool-after{background:var(--paper)}.tool-after-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(48px,8vw,120px);padding-top:72px;padding-bottom:86px}.tool-after h2{margin:8px 0 0;font-size:clamp(2.2rem,4.2vw,4.6rem);line-height:.96;letter-spacing:-.05em}.tool-after-grid>div:last-child>p{margin:0 0 24px;color:var(--muted);font-size:.94rem;line-height:1.68}

@media(max-width:980px){
  .tools-hub-hero-grid,.tools-hub-intro-grid,.tools-group,.tools-hub-method-grid,.tool-page-hero-grid,.tool-stage-grid,.tool-after-grid{grid-template-columns:1fr}
  .tools-hub-kicker{min-height:0;display:block}.tools-hub-kicker span{display:block;margin-top:8px}
  .tools-group>header,.tool-instructions{position:static}.tools-group{gap:34px}.tool-stage-grid{gap:42px}
  .tool-instructions{display:grid;grid-template-columns:1fr 1fr;gap:20px 34px;border-bottom:1px solid var(--line-dark);padding-bottom:34px}.tool-instructions>.eyebrow,.tool-instructions h2{grid-column:1/-1}.tool-instruction-rule{display:none}.tool-instructions .text-link{align-self:end;margin-top:0}
}
@media(max-width:720px){
  .tools-hub-hero-grid{padding-top:58px;padding-bottom:58px}.tools-hub-title h1{font-size:clamp(3.4rem,15vw,5.6rem)}.tools-hub-title>p{margin-top:24px;font-size:1rem}
  .tools-hub-intro-grid{padding-top:50px;padding-bottom:50px}.tools-directory{padding-top:58px;padding-bottom:66px}.tools-group{margin-bottom:58px;padding-bottom:58px}.tools-group>header h2{font-size:2.6rem}
  .tools-list-item{grid-template-columns:34px minmax(0,1fr) 20px;gap:12px;padding:21px 0 23px}.tools-list-item:hover{padding-left:0;padding-right:0;background:transparent}.tools-list-item h3{font-size:1.28rem}.tools-list-item p{font-size:.84rem}.tools-list-item small{font-size:.68rem}
  .tools-hub-method-grid{padding-top:64px;padding-bottom:70px}.tools-hub-method h2{font-size:3rem}
  .tool-page-hero-grid{padding-top:54px;padding-bottom:52px;gap:32px}.tool-page-hero h1{font-size:clamp(3.1rem,14vw,5rem)}.tool-back{margin:12px 0 24px}.tool-page-lead>p{font-size:1rem}.tool-page-meta{gap:7px 14px;margin-top:20px}
  .tool-stage-grid{padding-top:50px;padding-bottom:62px}.tool-instructions{display:block;padding-bottom:30px}.tool-instructions h2{font-size:2.5rem}.tool-instructions .text-link{margin-top:20px}
  .tool-app-head{grid-template-columns:1fr;gap:14px;margin-bottom:26px}.tool-app-head .eyebrow{grid-column:1}.tool-app-head h2{font-size:2.45rem!important}.tool-app-head>p:last-child{font-size:.87rem}
  .tool-form-grid,.tool-record-grid-2,.tool-record-grid-3,.tool-checks{grid-template-columns:1fr}.tool-checks{border-left:0}.tool-checks label{border-left:1px solid var(--line-dark)}
  .tool-field input,.tool-field select,.tool-field textarea{font-size:16px;padding:12px}.tool-field textarea{min-height:94px}
  .tool-toolbar-v2{grid-template-columns:1fr;gap:14px}.tool-toolbar-actions{justify-content:flex-start;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.tool-toolbar-actions button{min-height:42px}
  .tool-summary-grid{grid-template-columns:1fr}.tool-summary-grid>div{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:13px 0}.tool-summary-grid strong{font-size:1.7rem}.tool-summary-grid span{text-align:right}
  .tool-suggestions{align-items:stretch}.tool-suggestions>span{width:100%}.tool-suggestions button{flex:1 1 calc(50% - 8px);text-align:left}
  .tool-record{padding:18px 0 22px}.tool-record-grid{gap:14px}.tool-gap-list p{grid-template-columns:1fr}.tool-gap-list p span{margin-top:-8px}
  .route-result-list>a{grid-template-columns:30px 1fr 18px;gap:10px}.route-result-list p{font-size:.75rem}
  .tool-after-grid{padding-top:54px;padding-bottom:62px}.tool-after h2{font-size:2.8rem}
}
@media(max-width:420px){
  .tools-list-item{grid-template-columns:26px minmax(0,1fr) 16px}.tools-number{font-size:.65rem}.tool-toolbar-actions{grid-template-columns:1fr}.tool-suggestions button{flex-basis:100%}.tool-page-meta{display:grid;grid-template-columns:1fr}.tool-primary-action .button{width:100%}.tool-secondary-button,.tool-add-row{width:100%}.tool-repeater-controls{width:100%}
}
@media print{
  .tool-page-hero,.tool-instructions,.tool-after,.tool-toolbar-v2,.tool-repeater-controls,.tool-suggestions,.tool-record-remove,.site-header,.site-footer,.search-overlay,.cookie-banner,.cookie-modal{display:none!important}
  .tool-stage,.tool-stage-grid,.tool-workbench-v2{display:block!important;padding:0!important;border:0!important;background:#fff!important}.tool-record{break-inside:avoid}.tool-field input,.tool-field select,.tool-field textarea{border:0!important;padding:0!important}.tool-page{background:#fff}
}


/* ===== SEPTEMBER 2026 EDITORIAL NAVIGATION AND ARTICLE REWORK ===== */
:root{--accent:#176C70}
.quick-nav{background:var(--ink-deep);color:#fff;border-bottom:1px solid rgba(255,255,255,.16)}
.quick-nav-inner{min-height:34px;display:flex;align-items:center;gap:0;overflow:hidden}
.quick-nav-inner>span{padding-right:18px;margin-right:4px;color:#9DAAB7;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap}
.quick-nav a{display:flex;align-items:center;min-height:34px;padding:0 14px;border-left:1px solid rgba(255,255,255,.15);color:#E5EAF0;text-decoration:none;font-size:.80rem;font-weight:400;white-space:nowrap}
.quick-nav a:hover{background:rgba(255,255,255,.08);color:#fff}
.header-inner{min-height:72px}
.desktop-nav{gap:6px}.nav-group>button{padding:0 13px}
.desktop-nav a:hover,.header-search:hover,.side-block>a:hover,.source-box li a:hover,.text-link:hover,.hero-all-link:hover,.route-link:hover,.hub-topic-grid>a:hover h3,.template-list a:hover b,.problem-list a:hover span{color:var(--teal)}
.breadcrumb-bar{background:#fff;border-bottom:1px solid var(--line)}
.breadcrumbs{min-height:42px;display:flex;align-items:center;gap:9px;overflow:auto;white-space:nowrap;font-size:.74rem;color:var(--muted)}
.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.breadcrumbs [aria-current="page"]{color:var(--ink);font-weight:600}.breadcrumb-sep{color:#A7AFB8}
.mobile-quick{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark);margin-top:18px}.mobile-quick a{border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);padding:13px;font-size:.82rem}
.article-hero-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:clamp(45px,6vw,95px);padding-top:clamp(62px,7vw,100px);padding-bottom:clamp(46px,5vw,72px)}
.article-hero h1{font-size:clamp(2.75rem,5.1vw,5.6rem);line-height:.94;letter-spacing:-.055em;max-width:1000px}
.hub-hero h1{font-size:clamp(3.25rem,6.4vw,7rem);line-height:.9;letter-spacing:-.06em}
.article-layout{grid-template-columns:minmax(220px,285px) minmax(0,1fr);gap:clamp(42px,5vw,82px);padding-top:clamp(48px,6vw,78px)}
.article-content{grid-column:2;max-width:930px}.article-side{grid-column:1;grid-row:1;top:126px;max-height:calc(100vh - 150px);overflow:auto;padding-right:12px}
.article-content h2{font-size:clamp(1.75rem,2.65vw,2.8rem);line-height:1.06;letter-spacing:-.038em;margin-bottom:18px}
.article-content h3{font-size:clamp(1.15rem,1.7vw,1.45rem);line-height:1.2;letter-spacing:-.025em}
.article-content p,.article-content li{font-size:1rem;line-height:1.75}
.section-heading h2,.template-intro h2,.knowledge-title h2,.resources-layout h2,.regulator-callout h2{font-size:clamp(2.4rem,4.4vw,4.9rem);line-height:.98}
.section-label{color:var(--muted)!important}
.side-help{border-top:2px solid var(--teal)}
.side-block{padding-bottom:22px;margin-bottom:24px}.side-block>a{display:block;padding:8px 0;font-size:.82rem;line-height:1.35}.side-toc>a{font-weight:500;color:var(--muted);border-left:2px solid var(--line);padding-left:11px}.side-toc>a:hover{border-left-color:var(--teal);color:var(--ink)}
.article-flow-note,.meaning-box,.worked-example,.next-route{padding:0!important;border-left:0!important;background:transparent!important}
.resolution-grid>div,.route-link{padding:19px 20px}.resolution-grid,.route-grid{border-color:var(--line-dark)}
.info-table{width:100%;border-collapse:collapse;background:#fff}.info-table th,.info-table td{padding:16px 14px;border:1px solid var(--line-dark);text-align:left;vertical-align:top;font-size:.9rem;line-height:1.55}.info-table th{background:#EFF0EC;color:var(--ink);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.table-wrap{overflow:auto;margin:24px 0}.info-table{min-width:760px}
.complaint-path-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}.complaint-path-grid>a{display:block;min-height:180px;padding:22px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);text-decoration:none}.complaint-path-grid strong{display:block;font-size:1.16rem;margin-bottom:10px}.complaint-path-grid span{display:block;color:var(--muted);font-size:.88rem;line-height:1.55}.complaint-path-grid>a:hover{background:#fff}
.lifecycle{counter-reset:life;list-style:none;padding:0;margin:28px 0;border-top:1px solid var(--ink)}.lifecycle li{counter-increment:life;display:grid;grid-template-columns:54px minmax(0,1fr);gap:20px;padding:21px 0;border-bottom:1px solid var(--line-dark)}.lifecycle li:before{content:counter(life,decimal-leading-zero);font-size:.74rem;font-weight:700;color:var(--muted)}.lifecycle strong{display:block;margin-bottom:4px}.lifecycle p{margin:0;color:var(--muted);font-size:.92rem;line-height:1.6}
input:focus::placeholder,textarea:focus::placeholder{color:transparent!important}
.problem-list span{font-family:"DM Sans",Arial,Helvetica,sans-serif;font-weight:600}
.tools-hub-title h1 em{font-family:"DM Sans",Arial,Helvetica,sans-serif;font-style:normal;color:var(--teal)}
.tools-list-item.featured{border-top-color:var(--teal)}.tools-list-item small,.tool-back,.mobile-menu-head button{color:var(--teal)}
.tool-card-primary,.process-section{background:var(--teal)}.tool-card-primary:hover{background:#125D61}
.search-field-wrap:focus-within{outline:3px solid rgba(23,108,112,.14)}
@media(max-width:1100px){.quick-nav-inner{overflow-x:auto;scrollbar-width:none}.quick-nav-inner::-webkit-scrollbar{display:none}.article-layout{grid-template-columns:1fr}.article-content,.article-side{grid-column:1}.article-side{grid-row:auto;position:static;max-height:none;overflow:visible;padding-right:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;border-top:1px solid var(--line-dark);padding-top:28px}.side-toc{grid-column:1/-1}.complaint-path-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.quick-nav{display:none}.article-hero h1{font-size:clamp(2.55rem,11.5vw,4.1rem)}.hub-hero h1{font-size:clamp(3rem,13vw,4.7rem)}.article-hero-grid{padding-top:50px;gap:30px}.article-side{grid-template-columns:1fr}.complaint-path-grid{grid-template-columns:1fr}.info-table th,.info-table td{padding:13px 11px}.article-content h2{font-size:clamp(1.65rem,7.6vw,2.25rem)}.section-heading h2,.template-intro h2,.knowledge-title h2,.resources-layout h2,.regulator-callout h2{font-size:clamp(2.35rem,10vw,3.6rem)}}

/* ===== FINAL TYPOGRAPHY AND ARTICLE NAV TUNING ===== */
.article-hero h1{font-size:clamp(2.35rem,4.2vw,4.65rem);line-height:.98;letter-spacing:-.045em}
.hub-hero h1{font-size:clamp(2.9rem,5.4vw,5.7rem);line-height:.94;letter-spacing:-.05em}
.article-content h2{font-size:clamp(1.55rem,2.05vw,2.25rem);line-height:1.12;letter-spacing:-.025em;margin-bottom:16px}
.article-content h3{font-size:clamp(1.08rem,1.4vw,1.3rem);line-height:1.28;letter-spacing:-.015em}
.article-side .section-label{font-size:.66rem!important;letter-spacing:.095em}
@media(max-width:760px){
  .article-hero h1{font-size:clamp(2.2rem,9.8vw,3.35rem)}
  .hub-hero h1{font-size:clamp(2.7rem,11vw,4rem)}
  .article-content h2{font-size:clamp(1.45rem,6.3vw,1.9rem)}
}

/* ===== ROUTE, ARTICLE HEADER AND EXAMPLE REWORK ===== */
.nav-mega{top:100%}
.article-hero-grid{grid-template-columns:minmax(0,1fr);gap:24px;align-items:start;max-width:1180px}
.article-hero-grid>div:first-child{max-width:1080px}
.article-intro{max-width:880px}
.article-intro>p{font-size:clamp(1.02rem,1.2vw,1.2rem);line-height:1.68;margin:0;color:var(--charcoal)}
.article-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 0;margin-top:22px;padding-top:14px}
.article-meta span{display:block;white-space:normal}
.article-meta span+span{margin-left:18px;padding-left:18px;border-left:1px solid var(--line-dark)}
.article-example{display:grid;grid-template-columns:120px minmax(0,1fr);gap:26px;border-top:2px solid var(--ink);border-bottom:1px solid var(--line-dark);padding:26px 0!important;margin-bottom:52px;background:transparent!important}
.article-example h2{margin:2px 0 0!important;font-size:.72rem!important;line-height:1.25!important;letter-spacing:.09em!important;text-transform:uppercase;color:var(--muted)}
.article-example>p,.article-example>div,.article-example>ul{grid-column:2;margin-top:0}
.answer-audit-example{display:grid;gap:0;border-top:1px solid var(--line-dark)}
.answer-audit-example>div{display:grid;grid-template-columns:minmax(155px,.33fr) minmax(0,1fr);gap:24px;padding:18px 0;border-bottom:1px solid var(--line-dark)}
.answer-audit-example dt{font-size:.76rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.answer-audit-example dd{margin:0;font-size:.98rem;line-height:1.7}
.contextual-route-panel{padding-top:4px}
.contextual-route-panel .resolution-intro{max-width:800px}
.contextual-route-panel .resolution-grid>div{min-height:0;padding:20px}
.contextual-route-panel .resolution-grid p{font-size:.9rem;line-height:1.62}
.contextual-route-panel .resolution-grid a{display:inline-block;margin-top:8px;font-size:.82rem;font-weight:700;text-underline-offset:3px}
@media(max-width:760px){
  .article-hero-grid{grid-template-columns:1fr;gap:18px;padding-top:42px;padding-bottom:38px}
  .article-intro{max-width:none}
  .article-meta{display:grid;grid-template-columns:1fr;gap:6px;margin-top:18px;padding-top:12px}
  .article-meta span+span{margin-left:0;padding-left:0;border-left:0}
  .article-example{grid-template-columns:1fr;gap:12px;padding:22px 0!important;margin-bottom:42px}
  .article-example>p,.article-example>div,.article-example>ul{grid-column:1}
  .answer-audit-example>div{grid-template-columns:1fr;gap:7px;padding:16px 0}
}


/* ===== CONSUMER-FRIENDLY ARTICLE COMPONENTS ===== */
.site-header{overflow:visible}
.nav-mega{top:100%;z-index:260;max-height:calc(100vh - 106px);overflow:auto}
.answer-patterns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark);margin:24px 0 8px}
.answer-patterns>div{padding:22px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);background:#fff}
.answer-patterns strong{display:block;margin-bottom:8px;font-size:.92rem;color:var(--ink)}
.answer-patterns p{margin:0!important;color:var(--muted);font-size:.9rem!important;line-height:1.6!important}
.mobile-toc{display:none;margin:0 0 32px;border-top:2px solid var(--ink);border-bottom:1px solid var(--line-dark);background:#fff}
.mobile-toc summary{list-style:none;padding:16px 0;font-size:.78rem;font-weight:700;cursor:pointer}
.mobile-toc summary::-webkit-details-marker{display:none}
.mobile-toc summary:after{content:'+';float:right;font-size:1.15rem;font-weight:500}
.mobile-toc[open] summary:after{content:'×'}
.mobile-toc nav{padding:0 0 14px}
.mobile-toc a{display:block;padding:8px 0;color:var(--muted);font-size:.84rem;line-height:1.35;text-decoration:none;border-top:1px solid var(--line)}
.mobile-toc a:first-child{border-top:0}.mobile-toc a:hover{color:var(--ink)}
.article-meta{column-gap:0}
.article-meta span{line-height:1.4}
@media(max-width:1100px){
  .mobile-toc{display:block}
  .article-side .side-toc{display:none}
}
@media(max-width:700px){
  .answer-patterns{grid-template-columns:1fr;border-left:0}
  .answer-patterns>div{border-left:1px solid var(--line-dark);padding:18px}
  .article-hero{background:#fff}
  .article-hero-grid{padding-top:34px;padding-bottom:32px}
  .article-intro>p{font-size:1rem;line-height:1.62}
  .article-meta{margin-top:16px;padding-top:12px}
}


/* ===== RELATIONSHIP-AWARE / ICO-STYLE NAVIGATION: 9 SEPTEMBER 2026 ===== */
.ico-nav .header-inner{min-height:78px}
.ico-nav .brand-word{font-size:1.34rem;letter-spacing:-.045em}
.ico-nav .desktop-nav{height:78px;margin-left:auto}
.ico-nav .nav-group>button{position:relative;padding:0 14px;font-size:.99rem;font-weight:700;letter-spacing:-.01em}
.ico-nav .nav-group>button:after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:3px;background:var(--teal);transform:scaleX(0);transform-origin:left;transition:transform .16s ease}
.ico-nav .nav-group.is-open>button:after,.ico-nav .nav-group>button:hover:after{transform:scaleX(1)}
.ico-nav .nav-mega{top:100%;padding-top:0;padding-bottom:0;gap:0;background:#fff;box-shadow:0 22px 42px rgba(10,19,32,.13);border-top:1px solid var(--line-dark)}
.ico-nav .nav-mega>div{padding:34px clamp(22px,2.2vw,38px) 38px;border-right:1px solid var(--line)}
.ico-nav .nav-mega>div:last-child{border-right:0}
.ico-nav .nav-mega>div>strong{margin-bottom:16px;color:var(--ink);font-size:.90rem;letter-spacing:.08em}
.ico-nav .nav-mega a{padding:8px 0;font-size:.89rem;line-height:1.35;font-weight:600}
.ico-nav .nav-mega a:hover{text-decoration:underline;text-underline-offset:3px}
.ico-nav .nav-mega--four{grid-template-columns:repeat(4,minmax(0,1fr))}
.ico-nav .nav-mega--relationship{grid-template-columns:minmax(260px,.9fr) repeat(3,minmax(0,1fr));background:#fff}
.ico-nav .nav-mega--relationship .nav-mega-intro{background:var(--ink);color:#fff;border-right:0}
.ico-nav .nav-mega--relationship .nav-mega-intro strong{display:block;margin:10px 0 14px;color:#fff;font-size:clamp(1.45rem,1.8vw,2.05rem);line-height:1.05;letter-spacing:-.04em;text-transform:none}
.ico-nav .nav-mega--relationship .nav-mega-intro p{margin:0 0 22px;color:#C9D1D8;font-size:.88rem;line-height:1.6}
.ico-nav .nav-overline{display:block;color:#8ED0CF;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.11em}
.ico-nav .nav-mega-cta{display:inline-block!important;color:#fff!important;border-bottom:1px solid #fff;padding:2px 0 3px!important}
.ico-nav .nav-mega--narrow{grid-template-columns:repeat(2,minmax(0,1fr))}
.ico-nav .header-search{border-color:var(--teal);color:var(--ink);min-height:44px;padding:0 17px}
.ico-nav .header-search:hover{background:var(--teal);border-color:var(--teal);color:#fff}
@media(max-width:1250px){.ico-nav .desktop-nav{display:none}.ico-nav .menu-button{display:inline-flex!important;align-items:center;gap:9px}}
@media(max-width:760px){.ico-nav .header-inner{min-height:68px}.ico-nav .brand-word{font-size:1.15rem}}
/* ===== END RELATIONSHIP-AWARE NAVIGATION ===== */


/* ===== 9 SEPTEMBER 2026 GLOBAL ARTICLE FIXES: PROMISED WORKING BRANCH ===== */
.article-hero h1,.hub-hero h1,.legal-page h1,.docs-hero h1,.docs-centre-hero h1,.docs-document-hero h1{ text-align:left!important; }
.article-hero-grid,.article-hero-grid>div,.article-intro{ text-align:left!important; }
.article-side{ position:static!important; top:auto!important; max-height:none!important; overflow:visible!important; padding-right:0!important; }
.article-side .side-toc{ max-height:none!important; overflow:visible!important; }
.template-intro{ position:static!important; top:auto!important; }
/* On-this-page follows the document and never becomes an independently scrolling pane. */
@media(min-width:1101px){.article-layout{align-items:start}.article-side{align-self:start}}
/* ===== END GLOBAL ARTICLE FIXES ===== */


/* ===== 9 SEPTEMBER 2026 LAYOUT, MOBILE & COMPLAINT GUIDE REFINEMENT ===== */
/* Headings were text-aligned before, but their containing shell was still centred.
   Hero shells now use the full canvas while retaining the normal editorial page gutter. */
.article-hero>.shell,.hub-hero>.shell,.docs-centre-hero>.shell,
.docs-document-hero.shell,.docs-hero>.shell{
  width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;
  padding-left:clamp(22px,4.1vw,64px)!important;padding-right:clamp(22px,4.1vw,64px)!important;
}
.article-hero-grid,.hub-hero-grid{max-width:none!important}
.article-hero-grid>div:first-child,.hub-hero-grid>div:first-child{justify-self:start;width:100%}
.article-hero h1,.hub-hero h1,.docs-hero h1,.docs-centre-hero h1,.docs-document-hero h1{margin-left:0!important;margin-right:0!important}
.legal-page.shell{width:100%!important;max-width:none!important;margin:0!important;padding-left:clamp(22px,4.1vw,64px)!important;padding-right:clamp(22px,4.1vw,64px)!important}
.legal-page.shell>*{max-width:900px}

/* Guides/articles no longer end each content section with a long trailing rule. */
.article-content>section{border-bottom:0!important;padding-bottom:0!important;margin-bottom:clamp(50px,6vw,76px)!important}
.article-content>section:last-child{margin-bottom:0!important}

/* Wider complaint methodology page. */
.complaint-master-guide .article-layout{grid-template-columns:minmax(0,1080px) minmax(250px,300px);gap:clamp(48px,5vw,90px)}
.complaint-master-guide .article-content{max-width:1080px}
.complaint-master-guide .article-content>section{margin-bottom:clamp(58px,7vw,90px)!important}
.complaint-master-guide .article-content h2{max-width:980px}
.complaint-lead-panel{padding:28px 0;border-top:4px solid var(--teal);border-bottom:1px solid var(--line-dark)}
.complaint-lead-panel p{max-width:900px;font-size:1.08rem!important}
.complaint-principles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark);margin-top:28px}
.complaint-principles>div{padding:20px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);background:#fff}
.complaint-principles span{display:block;margin-bottom:30px;color:var(--muted);font-size:.7rem;font-weight:700}
.complaint-principles strong{display:block;font-size:1rem;line-height:1.25}
.issue-framework{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark);margin:26px 0}
.issue-framework>div{padding:22px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);background:#fff}
.issue-framework strong{display:block;margin-bottom:7px}.issue-framework p{margin:0!important;color:var(--muted);font-size:.92rem!important}
.generic-complaint-example{margin:28px 0;padding:26px 28px;background:#fff;border-left:5px solid var(--teal)}
.generic-complaint-example .example-label{margin:0 0 10px!important;color:var(--teal);font-size:.7rem!important;font-weight:700!important;text-transform:uppercase;letter-spacing:.08em}
.generic-complaint-example p:last-child{margin-bottom:0}
.complaint-contrast{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark);margin:24px 0}
.complaint-contrast>div{padding:24px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}
.complaint-contrast>div:first-child{background:#F2F1ED}.complaint-contrast>div:last-child{background:#fff}
.complaint-contrast strong{display:block;margin-bottom:10px}.complaint-contrast p{margin:0!important;font-size:.94rem!important}
.complaint-blueprint{counter-reset:blueprint;list-style:none;margin:26px 0 0;padding:0;border-top:2px solid var(--ink)}
.complaint-blueprint li{counter-increment:blueprint;display:grid;grid-template-columns:55px minmax(0,1fr);gap:18px;padding:20px 0;border-bottom:1px solid var(--line-dark)}
.complaint-blueprint li:before{content:counter(blueprint,decimal-leading-zero);font-size:.72rem;font-weight:700;color:var(--muted)}
.complaint-blueprint strong{display:block;margin-bottom:4px}
.complaint-blueprint p{margin:0!important;color:var(--muted);font-size:.94rem!important}
.complaint-question-list{border-top:1px solid var(--line-dark);margin-top:24px}
.complaint-question-list p{margin:0!important;padding:15px 0 15px 30px;border-bottom:1px solid var(--line-dark);position:relative}
.complaint-question-list p:before{content:'?';position:absolute;left:0;color:var(--teal);font-weight:700}
.complaint-final-check{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--ink);margin-top:24px}
.complaint-final-check>div{padding:20px 20px 20px 0;border-bottom:1px solid var(--line-dark)}
.complaint-final-check>div:nth-child(odd){padding-right:28px}.complaint-final-check>div:nth-child(even){padding-left:28px;border-left:1px solid var(--line-dark)}
.complaint-final-check strong{display:block;margin-bottom:6px}.complaint-final-check p{margin:0!important;color:var(--muted);font-size:.91rem!important}

/* Responsive tables: JavaScript adds data-label from each header, then rows become cards.
   This avoids horizontal viewport/table scrolling on phones. */
.responsive-table-ready{width:100%;max-width:100%}

@media(max-width:900px){
  .complaint-master-guide .article-layout{grid-template-columns:1fr!important}
  .complaint-master-guide .article-content{max-width:none}
  .complaint-principles{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  html,body{max-width:100%;overflow-x:clip}
  main,header,section,article,aside,footer,nav,.shell{max-width:100%;min-width:0}
  .shell{width:100%;padding-left:18px!important;padding-right:18px!important}
  .article-hero>.shell,.hub-hero>.shell,.docs-centre-hero>.shell,.docs-document-hero.shell,.docs-hero>.shell,.legal-page.shell{padding-left:18px!important;padding-right:18px!important}
  .hub-hero-grid,.article-hero-grid,.article-layout,.hub-cross-grid,.hub-topic-grid,.docs-grid,.docs-card-grid,.docs-contact-grid,.docs-end-grid,.docs-section,.docs-on-this-page,.docs-on-this-page>div,.resolution-grid,.route-grid,.hub-link-grid,.evidence-grid,.tools-grid,.tool-row,.tool-form-grid,.tool-stage-grid,.tool-page-hero-grid,.tool-app-head,.tool-summary-grid,.tool-after-grid,.tool-instructions,.footer-directory,.footer-trust,.footer-lead,.resources-layout,.resource-links,.regulator-grid,.regulator-callout,.knowledge-layout,.template-layout,.process-steps,.complaint-path-grid,.issue-framework,.complaint-contrast,.complaint-final-check{grid-template-columns:1fr!important}
  .complaint-principles{grid-template-columns:1fr!important;border-left:0}
  .complaint-principles>div{border-left:1px solid var(--line-dark)}
  .complaint-final-check>div,.complaint-final-check>div:nth-child(odd),.complaint-final-check>div:nth-child(even){padding:18px 0!important;border-left:0!important}
  .generic-complaint-example{padding:22px 18px}
  .number-list li,.lifecycle li,.complaint-blueprint li{grid-template-columns:38px minmax(0,1fr);gap:12px}
  .inline-search,.search-large,.search-field-wrap{grid-template-columns:1fr!important}
  .inline-search button,.search-large button,.search-field-wrap button{width:100%;min-height:48px;border-left:0!important;border-top:1px solid var(--ink)!important}
  .search-result,.search-page-result{grid-template-columns:minmax(0,1fr) 22px!important}
  .search-result em,.search-page-result>span{display:none!important}
  .tool-toolbar-v2,.tool-toolbar-actions{grid-template-columns:1fr!important;display:grid!important}
  .audit-row{grid-template-columns:1fr!important}
  .route-result-list>a,.tools-list-item,.tool-record-grid{grid-template-columns:minmax(0,1fr)!important}
  pre,code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
  iframe,video,canvas,svg{max-width:100%!important}
  input,select,textarea,button{max-width:100%}

  .table-wrap,.article-table-wrap{overflow:visible!important;width:100%;max-width:100%;margin:24px 0}
  table.responsive-table-ready,table.responsive-table-ready tbody,table.responsive-table-ready tr,table.responsive-table-ready td{display:block;width:100%!important;max-width:100%!important;min-width:0!important}
  table.responsive-table-ready{min-width:0!important;border-collapse:separate;border-spacing:0;background:transparent}
  table.responsive-table-ready thead{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
  table.responsive-table-ready tr{margin:0 0 18px;border-top:2px solid var(--ink);background:#fff}
  table.responsive-table-ready td{display:grid!important;grid-template-columns:minmax(105px,38%) minmax(0,62%);gap:14px;padding:13px 12px!important;border:0!important;border-bottom:1px solid var(--line)!important;text-align:left!important;overflow-wrap:anywhere;word-break:normal}
  table.responsive-table-ready td:before{content:attr(data-label);font-size:.67rem;line-height:1.35;font-weight:700;text-transform:uppercase;letter-spacing:.045em;color:var(--muted)}
  table.responsive-table-ready td:last-child{border-bottom:0!important}
  table.responsive-table-ready td:only-child{grid-template-columns:1fr}
  table.responsive-table-ready td:only-child:before{display:none}
}
@media(max-width:420px){
  table.responsive-table-ready td{grid-template-columns:1fr;gap:5px}
}
/* ===== END 9 SEPTEMBER 2026 REFINEMENT ===== */

@media(max-width:760px){
  h1,h2,h3,h4,p,li,a,td,th,strong,span{overflow-wrap:anywhere}
  .info-table,.timeline-table,.legal-page table{min-width:0!important;width:100%!important;max-width:100%!important}
}

/* ===== 9 SEPTEMBER 2026 PAGE-MARGIN ALIGNMENT CORRECTION =====
   Keep hero content inside the same editorial shell as the page body/header.
   The heading remains left-aligned inside that shell; search/intro content remains
   on the right side of the same bounded grid rather than drifting to viewport edges. */
.article-hero>.shell,
.hub-hero>.shell,
.docs-centre-hero>.shell,
.docs-document-hero.shell,
.docs-hero>.shell,
.legal-page.shell{
  width:min(100%,var(--max))!important;
  max-width:var(--max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:clamp(20px,5vw,76px)!important;
  padding-right:clamp(20px,5vw,76px)!important;
}

/* Do not re-centre the article heading in a narrower 1180px sub-container. */
.article-hero-grid,
.hub-hero-grid{
  max-width:var(--max)!important;
}
.article-hero-grid>div:first-child,
.hub-hero-grid>div:first-child{
  justify-self:start;
}

/* Legal copy stays readable but begins at the same page-margin line. */
.legal-page.shell>*{
  max-width:900px;
}

@media(max-width:760px){
  .article-hero>.shell,
  .hub-hero>.shell,
  .docs-centre-hero>.shell,
  .docs-document-hero.shell,
  .docs-hero>.shell,
  .legal-page.shell{
    width:100%!important;
    max-width:100%!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }
}
/* ===== END PAGE-MARGIN ALIGNMENT CORRECTION ===== */


/* ===== 9 SEPTEMBER 2026 COSMETIC / INFORMATION-DESIGN REFINEMENT ===== */
/* Article pages now use a quiet editorial metadata rail. The page heading and
   actual content remain the primary hierarchy; small section labels no longer
   sit above every heading as if they were the page title. */
.article-layout{
  grid-template-columns:minmax(0,1000px) minmax(270px,310px)!important;
  gap:clamp(48px,5vw,76px)!important;
}
.article-content{max-width:1000px!important;width:100%}
.article-content>.article-section{
  display:grid;
  grid-template-columns:106px minmax(0,1fr);
  column-gap:30px;
  align-items:start;
}
.article-content>.article-section>*{grid-column:2;min-width:0}
.article-content>.article-section>.section-label{
  grid-column:1;
  grid-row:1;
  align-self:start;
  margin:7px 0 0!important;
  padding-top:10px;
  border-top:3px solid var(--teal);
  color:var(--teal)!important;
  font-size:.64rem!important;
  line-height:1.35!important;
  font-weight:700!important;
  letter-spacing:.075em!important;
  text-transform:uppercase;
}
.article-content>.article-section>h2{grid-row:1;margin-top:0!important}
.article-content>.article-section:not(.section-labelled)>h2{grid-row:auto}
.article-content>.article-section>p,
.article-content>.article-section>ul,
.article-content>.article-section>ol{max-width:820px}
.article-content>.article-section>.route-grid,
.article-content>.article-section>.evidence-grid,
.article-content>.article-section>.issue-framework,
.article-content>.article-section>.complaint-principles,
.article-content>.article-section>.complaint-contrast,
.article-content>.article-section>.complaint-final-check,
.article-content>.article-section>.answer-patterns,
.article-content>.article-section>.key-points,
.article-content>.article-section>.source-box,
.article-content>.article-section>table,
.article-content>.article-section>.table-wrap{max-width:none}

/* The lead answer feels like the start of the article, not another disconnected block. */
.help-answer>h2{font-size:clamp(2.25rem,3.6vw,3.75rem)!important;max-width:900px}
.article-hero .eyebrow,.hub-hero .eyebrow{color:var(--teal)}

/* Sidebars are grouped into clear panels rather than a loose stack of labels,
   sentences and links. */
.article-side{
  display:grid!important;
  gap:18px!important;
  align-content:start;
}
.side-block{
  margin:0!important;
  padding:22px 22px 18px!important;
  background:#fff;
  border:1px solid var(--line)!important;
  border-top:4px solid var(--teal)!important;
}
.side-block-title{
  margin:0 0 13px;
  color:var(--ink);
  font-size:.72rem;
  line-height:1.3;
  font-weight:700;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.side-block>p{
  margin:0 0 15px!important;
  color:var(--muted);
  font-size:.84rem!important;
  line-height:1.58!important;
}
.side-block>a{
  position:relative;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 18px;
  align-items:center;
  gap:10px!important;
  margin:0!important;
  padding:12px 0!important;
  border-top:1px solid var(--line);
  color:var(--ink)!important;
  font-size:.87rem!important;
  line-height:1.35;
  font-weight:650!important;
}
.side-block>a:first-of-type{border-top:0}
.side-block>a:after{content:'→';justify-self:end;color:var(--teal);font-size:.95rem;line-height:1}
.side-block>a span{display:none}
.side-block>a:hover{color:var(--teal)!important}
.side-help{
  background:#ECF4F3!important;
  border-color:#C8DEDC!important;
  border-top-color:var(--teal)!important;
}
.side-help .side-block-title{color:var(--teal)}
.side-help>a{border-top-color:#D5E5E3}

/* Examples are a deliberate branded content type. */
.article-example,
.worked-example,
.generic-complaint-example{
  display:block!important;
  margin:clamp(28px,4vw,42px) 0!important;
  padding:clamp(26px,3.5vw,38px)!important;
  background:#176C70!important;
  color:#fff!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.article-example h2,
.article-example h3,
.worked-example h2,
.worked-example h3,
.generic-complaint-example .example-label,
.generic-complaint-example h2,
.generic-complaint-example h3{
  margin:0 0 14px!important;
  color:#CDE9E7!important;
  font-size:.7rem!important;
  line-height:1.35!important;
  font-weight:700!important;
  letter-spacing:.085em!important;
  text-transform:uppercase!important;
}
.article-example p,.article-example li,.article-example strong,.article-example a,
.worked-example p,.worked-example li,.worked-example strong,.worked-example a,
.generic-complaint-example p,.generic-complaint-example li,.generic-complaint-example strong,.generic-complaint-example a{
  color:#fff!important;
}
.article-example p:last-child,.worked-example p:last-child,.generic-complaint-example p:last-child{margin-bottom:0!important}
.article-example a,.worked-example a,.generic-complaint-example a{text-decoration-color:rgba(255,255,255,.65);text-underline-offset:3px}

/* Reuse teal in useful structural moments rather than as decoration everywhere. */
.key-points{
  margin-top:26px;
  padding:24px 26px;
  background:#ECF4F3;
  border-left:5px solid var(--teal);
}
.key-points h3{color:var(--teal)}
.source-box{padding-top:24px;border-top:4px solid var(--teal)}
.source-box>.section-label{border-top:0!important;padding-top:0!important}

@media(max-width:1100px){
  .article-layout{grid-template-columns:minmax(0,1fr) 280px!important;gap:44px!important}
  .article-content>.article-section{grid-template-columns:90px minmax(0,1fr);column-gap:24px}
}
@media(max-width:900px){
  .article-layout{grid-template-columns:1fr!important}
  .article-side{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px}
}
@media(max-width:700px){
  .article-content>.article-section{
    display:block!important;
  }
  .article-content>.article-section>.section-label{
    display:inline-block;
    width:auto;
    margin:0 0 10px!important;
    padding:0 0 6px;
    border-top:0;
    border-bottom:3px solid var(--teal);
    font-size:.62rem!important;
  }
  .article-content>.article-section>p,
  .article-content>.article-section>ul,
  .article-content>.article-section>ol{max-width:none}
  .article-side{grid-template-columns:1fr!important;gap:14px!important}
  .side-block{padding:20px 18px 16px!important}
  .article-example,.worked-example,.generic-complaint-example{padding:24px 20px!important;margin:28px 0!important}
  .key-points{padding:22px 18px}
}
/* ===== END COSMETIC / INFORMATION-DESIGN REFINEMENT ===== */

/* ===== 9 SEPTEMBER 2026 R4.1 ARTICLE WIDTH CORRECTION =====
   R4 accidentally reversed the intended proportions because article-side is
   explicitly placed in grid column 1 and article-content in column 2.
   Keep the left navigation compact and give the editorial content the space. */
@media(min-width:1101px){
  .article-layout{
    grid-template-columns:minmax(210px,245px) minmax(0,1fr)!important;
    gap:clamp(42px,4.2vw,66px)!important;
    align-items:start;
  }
  .article-side{
    grid-column:1!important;
    grid-row:1!important;
    width:100%;
    max-width:245px;
    justify-self:start;
  }
  .article-content{
    grid-column:2!important;
    grid-row:1!important;
    width:100%;
    max-width:1040px!important;
    justify-self:start;
  }
  .article-content>.article-section>p,
  .article-content>.article-section>ul,
  .article-content>.article-section>ol{
    max-width:880px;
  }
  .side-block{
    padding:18px 18px 15px!important;
  }
}
/* ===== END R4.1 ARTICLE WIDTH CORRECTION ===== */

/* ===== R5 PAGE-SYSTEM REFINEMENT ===== */
:root{--muted:#46515E}

/* Restore a straightforward article flow: no metadata rail and no content indent. */
.article-content>.article-section{
  display:block!important;
}
.article-content>.article-section>*{
  grid-column:auto!important;
  grid-row:auto!important;
}
.article-content>.article-section>.section-label,
.contextual-route-panel>.section-label,
.source-box>.section-label{
  display:flex!important;
  align-items:center;
  gap:10px;
  width:max-content;
  max-width:100%;
  margin:0 0 10px!important;
  padding:0!important;
  border:0!important;
  color:var(--teal)!important;
  font-size:.90rem!important;
  line-height:1.3!important;
  font-weight:700!important;
  letter-spacing:.065em!important;
  text-transform:uppercase;
}
.article-content>.article-section>.section-label:before,
.contextual-route-panel>.section-label:before,
.source-box>.section-label:before{
  content:"";
  width:20px;
  height:3px;
  flex:0 0 20px;
  background:var(--teal);
}
.article-content>.article-section>h2,
.contextual-route-panel>h2,
.source-box>h2{margin-top:0!important}

/* Sources are part of the same article rhythm, not a separate visual system. */
.source-box{
  padding-top:0!important;
  border-top:0!important;
}

/* Slightly wider sidebar, but keep the article clearly dominant. */
@media(min-width:1101px){
  .article-layout{
    grid-template-columns:minmax(255px,275px) minmax(0,1fr)!important;
    gap:clamp(44px,4vw,62px)!important;
  }
  .article-side{max-width:275px!important}
  .article-content{max-width:1060px!important}
}

/* Sidebar: remove the grey vertical rail entirely. */
.side-toc>a{
  border-left:0!important;
  padding-left:0!important;
  color:var(--ink)!important;
}
.side-toc>a:hover{border-left:0!important;color:var(--teal)!important}
.side-toc .side-block-title{margin-bottom:8px}

/* In-page navigation should land below the sticky site header. */
.article-content>section>h2[id],
.docs-section[id],
[id].anchor-target{scroll-margin-top:122px}

/* Example panel spacing is defined once in the R5.3 block below. */
.article-example>*:last-child,
.worked-example>*:last-child,
.generic-complaint-example>*:last-child{margin-bottom:0!important}
.article-example>p:last-child,
.article-example>ul:last-child,
.article-example>ol:last-child,
.article-example>dl:last-child,
.article-example>div:last-child,
.worked-example>p:last-child,
.worked-example>ul:last-child,
.worked-example>ol:last-child,
.worked-example>dl:last-child,
.worked-example>div:last-child,
.generic-complaint-example>p:last-child,
.generic-complaint-example>ul:last-child,
.generic-complaint-example>ol:last-child,
.generic-complaint-example>dl:last-child,
.generic-complaint-example>div:last-child{margin-bottom:0!important}

/* Homepage hub cards are navigable surfaces; inner links remain quick links. */
.area-card[data-card-href]{cursor:pointer}
.area-card[data-card-href]:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.area-card[data-card-href]:hover h3{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.area-card[data-card-href] .area-links a{position:relative;z-index:2}

@media(max-width:700px){
  .article-content>.article-section>.section-label,
  .contextual-route-panel>.section-label,
  .source-box>.section-label{margin-bottom:8px!important}
}
/* ===== END R5 PAGE-SYSTEM REFINEMENT ===== */



/* ===== R5.3 AUTHORITATIVE EXAMPLE CARD SPACING =====
   This is the sole final spacing rule for teal example panels.
   The bottom inset is deliberately deeper so the final line cannot sit close
   to the panel edge. The stylesheet filename is versioned to defeat cache. */
.article-example,
.worked-example,
.generic-complaint-example{
  box-sizing:border-box!important;
  padding-top:34px!important;
  padding-right:34px!important;
  padding-bottom:58px!important;
  padding-left:34px!important;
}
.article-example > :last-child,
.worked-example > :last-child,
.generic-complaint-example > :last-child{
  margin-bottom:0!important;
}
@media(max-width:700px){
  .article-example,
  .worked-example,
  .generic-complaint-example{
    padding-top:24px!important;
    padding-right:20px!important;
    padding-bottom:42px!important;
    padding-left:20px!important;
  }
}
/* ===== END R5.3 AUTHORITATIVE EXAMPLE CARD SPACING ===== */


/* ===== R5.4 ARTICLE LEAD + EXAMPLE COMPONENT REDESIGN ===== */
/* Opening summaries are prose, not section headings. */
.help-answer{
  border-top:0!important;
  padding-top:0!important;
}
.help-answer>.article-lead{
  margin:0 0 28px!important;
  max-width:900px;
  color:var(--ink)!important;
  font-size:clamp(1.28rem,1.7vw,1.58rem)!important;
  line-height:1.48!important;
  letter-spacing:-.018em;
  font-weight:500;
}
.help-answer>.article-lead + p{margin-top:0}

/* New example component. Header and body are separate boxes so body spacing
   cannot be collapsed or visually consumed by heading/paragraph margins. */
.example-card{
  display:block;
  margin:clamp(30px,4vw,46px) 0;
  background:#176C70;
  color:#fff;
  border:1px solid #11585C;
  border-radius:8px;
  overflow:hidden;
  box-shadow:0 10px 28px rgba(16,28,44,.08);
}
.example-card__label{
  display:flex;
  align-items:center;
  min-height:48px;
  padding:14px 30px 13px;
  border-bottom:1px solid rgba(255,255,255,.22);
  color:#D8F0EE;
  font-size:.72rem;
  line-height:1.25;
  font-weight:750;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.example-card__body{
  display:flow-root;
  padding:26px 30px 36px;
  color:#fff;
}
.example-card__body>*{color:#fff!important}
.example-card__body>p,
.example-card__body>ul,
.example-card__body>ol,
.example-card__body>dl,
.example-card__body>div{
  margin-top:0;
}
.example-card__body>*:last-child{margin-bottom:0!important}
.example-card__body a{
  color:#fff!important;
  text-decoration-color:rgba(255,255,255,.72);
  text-underline-offset:3px;
}
.example-card--generic .example-card__body p+p{margin-top:16px}

@media(max-width:700px){
  .help-answer>.article-lead{
    font-size:clamp(1.16rem,5.4vw,1.38rem)!important;
    line-height:1.5!important;
    margin-bottom:22px!important;
  }
  .example-card{border-radius:6px;margin:26px 0}
  .example-card__label{min-height:44px;padding:12px 20px 11px}
  .example-card__body{padding:22px 20px 30px}
}
/* ===== END R5.4 ===== */

.article-opening-note{margin:0 0 18px!important;max-width:880px;color:var(--ink)!important;font-size:1.02rem!important;line-height:1.72!important}
/* R5.4 example-card finishing pass */
.example-card__label{background:#125B5F}
.example-card__body{padding-bottom:40px}
@media(max-width:700px){.example-card__body{padding-bottom:32px}}

/* ===== R5.5 EXAMPLE GEOMETRY + DESKTOP RHYTHM ===== */
/* Example cards stay inside the article/content boundary and use square corners. */
.example-card{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  border-radius:0!important;
  margin-left:0!important;
  margin-right:0!important;
  box-shadow:none;
}
.example-card__label,
.example-card__body{
  box-sizing:border-box;
  width:100%;
}

/* Desktop only: tighten the vertical rhythm substantially without touching mobile. */
@media(min-width:761px){
  .article-content>section{
    margin-bottom:34px!important;
  }
  .complaint-master-guide .article-content>section{
    margin-bottom:40px!important;
  }
  .example-card{
    margin-top:24px;
    margin-bottom:34px;
  }
}

/* Mobile remains as designed in R5.4, except square corners are intentional everywhere. */
@media(max-width:760px){
  .example-card{border-radius:0!important}
}
/* ===== END R5.5 ===== */

/* ===== R5.6 EXAMPLE WIDTH + MOBILE TOC SPACING ===== */
/* Example cards use the same visual content measure as .key-points/article sections. */
.example-card{
  width:100%!important;
  max-width:980px!important;
  margin-left:0!important;
  margin-right:0!important;
  border-radius:0!important;
  box-sizing:border-box!important;
}

/* Mobile in-page navigation: keep label and disclosure icon inside a comfortable inset. */
@media(max-width:1100px){
  .mobile-toc{
    box-sizing:border-box;
    width:100%;
    max-width:100%;
  }
  .mobile-toc summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:16px 18px!important;
    box-sizing:border-box;
  }
  .mobile-toc summary:after{
    float:none!important;
    flex:0 0 auto;
    margin:0!important;
    line-height:1;
  }
  .mobile-toc nav{
    padding:0 18px 14px!important;
    box-sizing:border-box;
  }
  .mobile-toc a{
    padding:9px 0!important;
  }
}
/* ===== END R5.6 ===== */

/* ===== R6 HOMEPAGE DESIGN OVERHAUL ===== */
.home-page{background:#fff}
.home-page .home-hero{background:#fff;border-bottom:1px solid var(--line-dark)}
.home-page .home-hero-shell{padding-top:clamp(66px,7vw,102px);padding-bottom:clamp(58px,6vw,88px)}
.home-page .home-hero-grid{display:grid;grid-template-columns:minmax(0,1.36fr) minmax(390px,.64fr);gap:clamp(64px,8vw,126px);align-items:stretch}
.home-page .home-hero-copy{display:flex;flex-direction:column;min-width:0;padding-top:7px}
.home-page .home-hero-kicker{margin:0 0 24px;color:var(--teal);font-weight:700;text-transform:uppercase}
.home-page .home-hero h1{max-width:970px;margin:0;color:var(--ink);font-size:clamp(3.65rem,5.75vw,6.6rem);font-weight:700;line-height:.91;letter-spacing:-.062em;text-wrap:balance}
.home-page .home-hero-lead{max-width:820px;margin:34px 0 0;color:var(--ink);font-size:clamp(1.18rem,1.55vw,1.42rem);line-height:1.55;letter-spacing:-.018em}
.home-page .home-hero-lead strong{font-weight:700}
.home-page .home-hero-context{max-width:770px;margin:20px 0 0;color:var(--muted);font-size:.98rem;line-height:1.72}
.home-page .home-hero-method{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:auto;padding-top:42px}
.home-page .home-hero-method span{min-height:58px;padding:15px 18px 0 0;border-top:1px solid var(--line-dark);color:var(--ink);font-size:.78rem;font-weight:700;line-height:1.35}
.home-page .home-hero-method span+span{padding-left:18px;border-left:1px solid var(--line)}
.home-page .home-hero-method b{display:block;margin-bottom:5px;color:var(--teal);font-size:.65rem;letter-spacing:.08em}

.home-page .home-start-panel{align-self:stretch;display:flex;flex-direction:column;padding:34px;background:var(--teal);color:#fff}
.home-page .home-start-kicker{margin:0 0 15px;color:#CFE4E5;font-size:.7rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.home-page .home-start-panel h2{max-width:430px;margin:0;color:#fff;font-size:clamp(2rem,2.7vw,3.1rem);line-height:1;letter-spacing:-.045em}
.home-page .home-start-copy{max-width:440px;margin:17px 0 28px;color:#E5F0F0;font-size:.92rem;line-height:1.6}
.home-page .home-search{position:relative}
.home-page .home-search-field{display:grid;grid-template-columns:minmax(0,1fr) auto;background:#fff;border:1px solid #fff}
.home-page .home-search-field input{width:100%;min-width:0;height:60px;padding:0 16px;border:0;background:#fff;color:var(--ink);font:inherit;font-size:.93rem;outline:0}
.home-page .home-search-field input::placeholder{color:#626E77}
.home-page .home-search-field button{min-width:105px;border:0;border-left:1px solid var(--ink);background:var(--ink);color:#fff;font:inherit;font-weight:700}
.home-page .home-search-field:focus-within{outline:3px solid rgba(255,255,255,.42);outline-offset:3px}
.home-page .home-search-help{margin:11px 0 0;color:#DCEBEC;font-size:.76rem;line-height:1.55}
.home-page .home-search-help a{color:#fff;font-weight:700;text-underline-offset:3px}
.home-page .home-search-help a:hover{text-decoration-thickness:2px}
.home-page .home-start-actions{margin-top:auto;padding-top:34px}
.home-page .home-start-actions>a{display:grid;grid-template-columns:minmax(0,1fr) 24px;gap:18px;align-items:center;padding:18px 0;border-top:1px solid rgba(255,255,255,.42);color:#fff;text-decoration:none}
.home-page .home-start-actions small{display:block;margin-bottom:4px;color:#CFE4E5;font-size:.67rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.home-page .home-start-actions strong{display:block;color:#fff;font-size:.98rem;line-height:1.25}
.home-page .home-start-actions i{position:relative;width:22px;height:22px}
.home-page .home-start-actions i:before{content:'';position:absolute;left:2px;right:2px;top:10px;height:1px;background:#fff}
.home-page .home-start-actions i:after{content:'';position:absolute;right:2px;top:6px;width:8px;height:8px;border-top:1px solid #fff;border-right:1px solid #fff;transform:rotate(45deg)}
.home-page .home-start-actions>a:hover strong{text-decoration:underline;text-underline-offset:4px}

/* Homepage section rhythm and hierarchy. */
.home-page .section{padding-block:clamp(68px,7vw,102px)}
.home-page .tools-section,.home-page .process-section{padding-block:clamp(70px,7vw,106px)}
.home-page .section-heading{margin-bottom:clamp(34px,4vw,54px)}
.home-page .section-heading h2,
.home-page .template-intro h2,
.home-page .knowledge-title h2,
.home-page .resources-layout h2,
.home-page .regulator-callout h2{font-size:clamp(2.55rem,3.9vw,4.35rem);line-height:.98;letter-spacing:-.052em}
.home-page .split-heading{grid-template-columns:minmax(0,1.08fr) minmax(300px,.52fr);gap:clamp(46px,7vw,110px)}
.home-page .eyebrow{color:var(--teal)}
.home-page .process-section .eyebrow,.home-page .tools-section .eyebrow{color:#D8E8E9}

/* Subject hubs: less empty space, stronger card rhythm and larger click targets. */
.home-page .areas-section{background:#F3F3EF}
.home-page .area-grid{grid-template-columns:repeat(3,minmax(0,1fr));border-color:#BFC6C8}
.home-page .area-card{min-height:315px;padding:24px 25px 25px;border-color:#BFC6C8}
.home-page .area-card-compact{min-height:260px}
.home-page .area-card h3{margin:clamp(36px,4vw,58px) 0 13px;font-size:clamp(1.65rem,2vw,2.35rem)}
.home-page .area-card-featured h3{font-size:clamp(2rem,3vw,3.45rem)}
.home-page .area-card p{font-size:.87rem;line-height:1.62}
.home-page .area-card:hover{background:#fff;box-shadow:inset 0 4px 0 var(--teal)}
.home-page .area-card-dark:hover{background:#14243A;box-shadow:inset 0 4px 0 #fff}
.home-page .area-card-teal{background:#E4F0EF}
.home-page .area-links{margin-top:auto;padding-top:16px}

/* Relationship route becomes an editorial split rather than another full-width heading stack. */
.home-page .problem-section{border-top:0}
.home-page .problem-section>.shell{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:clamp(62px,8vw,126px);align-items:start}
.home-page .problem-section .section-heading{position:sticky;top:112px;margin:0}
.home-page .problem-section .section-heading h2{font-size:clamp(2.7rem,4vw,4.55rem)}
.home-page .problem-list{border-top:2px solid var(--teal)}
.home-page .problem-list a{grid-template-columns:minmax(0,1.5fr) minmax(135px,.42fr) 24px;padding:20px 0}
.home-page .problem-list span{font-size:clamp(1.28rem,1.8vw,2rem)}
.home-page .problem-list i{position:relative;width:20px;height:20px}
.home-page .problem-list i:after{content:'';position:absolute;right:3px;top:6px;width:7px;height:7px;border-top:1px solid var(--teal);border-right:1px solid var(--teal);transform:rotate(45deg)}

/* Refine the remaining homepage blocks without changing their content. */
.home-page .feature-story{min-height:300px}
.home-page .feature-story-large{min-height:600px}
.home-page .feature-story h3{font-size:clamp(1.55rem,2.2vw,2.7rem)}
.home-page .feature-story-large h3{font-size:clamp(2.35rem,3.5vw,4rem)}
.home-page .tool-card{min-height:215px}
.home-page .process-steps{margin-top:44px}
.home-page .process-steps li{min-height:225px}
.home-page .process-steps strong{margin-top:42px}
.home-page .regulator-grid a{min-height:145px}
.home-page .knowledge-layout{gap:clamp(58px,7vw,112px)}
.home-page .resource-links a{min-height:88px}
.home-page .specialist-hubs{border-top:1px solid var(--line-dark);background:#fff}
.home-page .hub-link-grid--home .route-link{min-height:180px}
.home-page .final-cta{padding-block:clamp(68px,7vw,98px)}
.home-page .final-cta h2{font-size:clamp(3rem,5vw,5.8rem)}

@media(max-width:1180px){
  .home-page .home-hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(350px,.8fr);gap:52px}
  .home-page .area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-page .area-card-featured{grid-column:span 2}
  .home-page .problem-section>.shell{grid-template-columns:minmax(260px,.62fr) minmax(0,1.38fr);gap:55px}
}
@media(max-width:900px){
  .home-page .home-hero-grid{grid-template-columns:1fr;gap:42px}
  .home-page .home-hero-copy{padding-top:0}
  .home-page .home-hero-method{margin-top:36px;padding-top:0}
  .home-page .home-start-panel{padding:30px}
  .home-page .problem-section>.shell{grid-template-columns:1fr;gap:38px}
  .home-page .problem-section .section-heading{position:static}
}
@media(max-width:620px){
  .home-page .home-hero-shell{padding-top:48px;padding-bottom:50px}
  .home-page .home-hero-kicker{margin-bottom:18px;font-size:.67rem;line-height:1.5}
  .home-page .home-hero h1{font-size:clamp(3rem,13vw,4.35rem);line-height:.93;letter-spacing:-.052em}
  .home-page .home-hero-lead{margin-top:25px;font-size:1.08rem}
  .home-page .home-hero-context{font-size:.94rem}
  .home-page .home-hero-method{grid-template-columns:1fr;margin-top:30px}
  .home-page .home-hero-method span{min-height:0;padding:12px 0;border-left:0!important;border-top:1px solid var(--line-dark)}
  .home-page .home-start-panel{padding:24px 20px}
  .home-page .home-start-panel h2{font-size:clamp(2rem,10vw,2.75rem)}
  .home-page .home-search-field{grid-template-columns:1fr}
  .home-page .home-search-field input{height:56px}
  .home-page .home-search-field button{height:48px;border-left:0;border-top:1px solid var(--ink)}
  .home-page .section{padding-block:66px}
  .home-page .area-grid{grid-template-columns:1fr}
  .home-page .area-card-featured{grid-column:auto}
  .home-page .area-card{min-height:270px}
  .home-page .area-card h3{margin-top:34px}
  .home-page .split-heading{grid-template-columns:1fr;gap:22px}
  .home-page .problem-list a{grid-template-columns:minmax(0,1fr) 24px;gap:6px 14px;padding:18px 0}
  .home-page .problem-list span{grid-column:1;font-size:1.2rem}
  .home-page .problem-list b{grid-column:1;grid-row:2;font-size:.7rem}
  .home-page .problem-list i{grid-column:2;grid-row:1 / span 2;align-self:center}
}

/* ===== R6.1 MOBILE HERO METHOD ALIGNMENT ===== */
@media(max-width:620px){
  .home-page .home-hero-method span,
  .home-page .home-hero-method span+span{
    padding:12px 0!important;
    margin:0!important;
    border-left:0!important;
  }
}
/* ===== END R6.1 ===== */


/* ===== R6.2 GLOBAL HUB DESIGN SYSTEM =====
   Applies to CollectionPage-style landing pages only. The goal is a more
   compact, deliberate hub rhythm without touching the article-page baseline. */

body.hub-page{background:var(--paper)}
body.hub-page .eyebrow{color:var(--teal)}

/* --- Classic hub pages --- */
body.hub-page--classic .hub-hero{background:#fff}
body.hub-page--classic .hub-hero-grid{
  grid-template-columns:minmax(0,1.18fr) minmax(300px,.7fr);
  gap:clamp(42px,5vw,78px);
  padding-top:clamp(50px,5.5vw,74px);
  padding-bottom:clamp(42px,4.8vw,64px);
  align-items:center;
}
body.hub-page--classic .hub-hero h1{
  margin-top:12px;
  font-size:clamp(3.15rem,5vw,5.55rem);
  line-height:.94;
  letter-spacing:-.052em;
}
body.hub-page--classic .hub-hero-grid>div:last-child>p{
  max-width:620px;
  margin-top:0;
  font-size:1.04rem;
  line-height:1.62;
  color:var(--charcoal);
}
body.hub-page--classic .inline-search{margin-top:22px}

body.hub-page--classic .section{
  padding-block:clamp(44px,4.7vw,64px);
}
body.hub-page--classic .section-heading{
  max-width:940px;
  margin-bottom:clamp(24px,2.8vw,36px);
}
body.hub-page--classic .section-heading h2{
  font-size:clamp(2.2rem,3.6vw,3.9rem);
  line-height:1;
  letter-spacing:-.048em;
}
body.hub-page--classic .split-heading{
  grid-template-columns:minmax(0,1.08fr) minmax(280px,.58fr);
  gap:clamp(34px,4vw,62px);
  align-items:start;
}
body.hub-page--classic .split-heading>p{
  margin-top:2px;
  font-size:.96rem;
  line-height:1.62;
}

/* The directory itself becomes denser and more obviously navigational. */
body.hub-page--classic .hub-index{
  background:#F5F8F7;
  border-bottom:1px solid var(--line-dark);
}
body.hub-page--classic .hub-topic-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  border:1px solid var(--line-dark);
  background:transparent;
}
body.hub-page--classic .hub-topic-grid>a{
  grid-template-columns:32px minmax(0,1fr) 22px;
  gap:14px;
  min-height:128px;
  padding:20px 22px;
  border:0;
  background:#fff;
  transition:background .15s ease,color .15s ease;
}
body.hub-page--classic .hub-topic-grid>a>span{
  color:var(--teal);
  font-size:.67rem;
  letter-spacing:.04em;
}
body.hub-page--classic .hub-topic-grid h3{
  margin:0 0 7px;
  font-size:1.16rem;
  line-height:1.12;
  letter-spacing:-.025em;
}
body.hub-page--classic .hub-topic-grid p{
  font-size:.84rem;
  line-height:1.48;
  color:var(--muted);
}
body.hub-page--classic .hub-topic-grid i{
  position:relative;
  width:20px;
  height:20px;
  align-self:start;
}
body.hub-page--classic .hub-topic-grid i:before{
  content:'→';
  position:absolute;
  inset:0;
  color:var(--teal);
  font-size:1rem;
  line-height:20px;
}
body.hub-page--classic .hub-topic-grid>a:hover{background:#F0F7F6}
body.hub-page--classic .hub-topic-grid>a:hover h3{color:var(--teal)}

/* Secondary route grids should feel compact, not like another huge page. */
body.hub-page--classic .route-link{
  min-height:112px;
  padding:18px 20px;
}
body.hub-page--classic .route-link strong{font-size:1.02rem}
body.hub-page--classic .route-link span{font-size:.85rem;line-height:1.48}

body.hub-page--classic .hub-cross{
  padding-block:clamp(46px,4.8vw,66px);
}
body.hub-page--classic .hub-cross-grid{
  gap:clamp(42px,5vw,72px);
  align-items:start;
}
body.hub-page--classic .hub-cross h2{
  margin-top:10px;
  font-size:clamp(2.45rem,4vw,4.25rem);
  line-height:.96;
  letter-spacing:-.05em;
}
body.hub-page--classic .hub-cross p{line-height:1.58}

/* --- Collection hubs that currently use the article template --- */
body.hub-page--article .article-hero{
  background:#fff;
}
body.hub-page--article .article-hero-grid{
  gap:clamp(38px,4.5vw,66px);
  padding-top:clamp(48px,5vw,68px);
  padding-bottom:clamp(38px,4vw,56px);
  align-items:center;
}
body.hub-page--article .article-hero h1{
  font-size:clamp(3.05rem,4.8vw,5.25rem);
  line-height:.95;
  letter-spacing:-.052em;
}
body.hub-page--article .article-intro>p{
  font-size:1.03rem;
  line-height:1.6;
}
body.hub-page--article .article-layout{
  padding-top:clamp(36px,4vw,52px)!important;
  padding-bottom:clamp(54px,5vw,72px)!important;
}
body.hub-page--article .article-content>section{
  margin-bottom:28px!important;
}
body.hub-page--article .article-content h2{
  font-size:clamp(1.8rem,2.65vw,2.9rem);
  line-height:1.05;
  letter-spacing:-.04em;
}
body.hub-page--article .article-content p,
body.hub-page--article .article-content li{
  line-height:1.62;
}
body.hub-page--article .route-link{
  min-height:104px;
  padding:17px 18px;
}
body.hub-page--article .route-link strong{font-size:1rem}
body.hub-page--article .route-link span{font-size:.84rem;line-height:1.46}
body.hub-page--article .source-box{margin-top:6px}

/* --- Tools hub: retain its identity, but bring its scale into the same family. --- */
body.hub-page--tools .tools-hub-hero-grid{
  padding-top:clamp(54px,5.5vw,76px);
  padding-bottom:clamp(48px,5vw,68px);
  gap:clamp(38px,5vw,72px);
}
body.hub-page--tools .tools-hub-kicker{min-height:150px}
body.hub-page--tools .tools-hub-title h1{
  font-size:clamp(3.4rem,5.7vw,6.3rem);
  line-height:.92;
}
body.hub-page--tools .tools-hub-title>p{margin-top:24px;font-size:1.08rem}
body.hub-page--tools .tools-hub-intro-grid{padding-top:48px;padding-bottom:48px;gap:54px}
body.hub-page--tools .tools-directory{padding-top:58px;padding-bottom:68px}
body.hub-page--tools .tools-group{margin-bottom:52px;padding-bottom:52px;gap:56px}
body.hub-page--tools .tools-hub-method-grid{padding-top:58px;padding-bottom:64px;gap:58px}

/* --- Documentation hub: reduce billboard scale and card height. --- */
body.hub-page--docs .docs-centre-hero{
  padding:clamp(54px,5.5vw,76px) 0 clamp(44px,4.7vw,64px);
}
body.hub-page--docs .docs-centre-hero h1{
  margin-top:12px;
  margin-bottom:22px;
  font-size:clamp(3.4rem,5.7vw,6.2rem);
  line-height:.92;
}
body.hub-page--docs .docs-centre-list{padding-bottom:72px}
body.hub-page--docs .docs-card-grid>a{
  min-height:210px;
  padding:28px 30px;
}
body.hub-page--docs .docs-card-grid h2{margin-top:22px}
body.hub-page--docs .docs-card-grid strong{padding-top:20px}
body.hub-page--docs .docs-centre-contact h2{
  font-size:clamp(2.7rem,4.5vw,4.8rem);
}

/* Large screens: use three columns for long hub directories to reduce page length. */
@media(min-width:1280px){
  body.hub-page--classic .hub-topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(min-width:761px) and (max-width:1279px){
  body.hub-page--classic .hub-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:900px){
  body.hub-page--classic .hub-hero-grid,
  body.hub-page--article .article-hero-grid{grid-template-columns:1fr;gap:28px}
  body.hub-page--classic .hub-topic-grid{grid-template-columns:1fr}
  body.hub-page--classic .split-heading{grid-template-columns:1fr;gap:18px}
  body.hub-page--tools .tools-hub-kicker{min-height:0}
}

@media(max-width:760px){
  body.hub-page--classic .hub-hero-grid,
  body.hub-page--article .article-hero-grid{
    padding-top:42px;
    padding-bottom:38px;
  }
  body.hub-page--classic .hub-hero h1,
  body.hub-page--article .article-hero h1{
    font-size:clamp(2.75rem,12vw,4rem);
  }
  body.hub-page--classic .section{padding-block:44px}
  body.hub-page--classic .section-heading{margin-bottom:24px}
  body.hub-page--classic .section-heading h2{font-size:clamp(2rem,9vw,2.9rem)}
  body.hub-page--classic .hub-topic-grid{border-left:0;border-right:0}
  body.hub-page--classic .hub-topic-grid>a{
    min-height:0;
    padding:18px 0;
    grid-template-columns:28px minmax(0,1fr) 20px;
    background:transparent;
  }
  body.hub-page--classic .hub-cross{padding-block:46px}
  body.hub-page--classic .hub-cross h2{font-size:clamp(2.3rem,10vw,3.2rem)}
  body.hub-page--article .article-layout{
    padding-top:34px!important;
    padding-bottom:54px!important;
  }
  body.hub-page--article .article-content>section{margin-bottom:32px!important}
  body.hub-page--tools .tools-hub-hero-grid{padding-top:46px;padding-bottom:44px}
  body.hub-page--tools .tools-hub-intro-grid{padding-top:42px;padding-bottom:42px}
  body.hub-page--tools .tools-directory{padding-top:48px;padding-bottom:54px}
  body.hub-page--tools .tools-group{margin-bottom:44px;padding-bottom:44px}
  body.hub-page--docs .docs-centre-hero{padding:46px 0 40px}
  body.hub-page--docs .docs-card-grid>a{min-height:0;padding:22px 18px}
}
/* ===== END R6.2 GLOBAL HUB DESIGN SYSTEM ===== */

/* ConsumerWise News */
.news-directory{background:#f5f8f7;border-top:1px solid var(--line-dark)}
.news-category-nav{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 28px;padding:0}
.news-category-nav a{display:inline-flex;align-items:center;min-height:38px;padding:8px 12px;border:1px solid var(--line-dark);border-radius:999px;background:#fff;color:var(--ink);font-size:.78rem;font-weight:650;text-decoration:none}
.news-category-nav a:hover,.news-category-nav a.is-active{background:var(--ink);border-color:var(--ink);color:#fff}
.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:transparent;border:1px solid var(--line-dark)}
.news-card{display:flex;flex-direction:column;min-height:320px;padding:28px;background:#fff}
.news-card--lead{grid-column:span 2;background:#eef6f4}
.news-card-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:22px;color:var(--muted);font-size:.7rem;font-weight:650;text-transform:uppercase;letter-spacing:.055em}
.news-card-meta span{color:var(--teal)}
.news-card h3{margin:0 0 12px;font-size:clamp(1.35rem,2vw,2rem);line-height:1.06;letter-spacing:-.035em}
.news-card--lead h3{font-size:clamp(1.8rem,3vw,3.2rem)}
.news-card h3 a{text-decoration:none;color:inherit}
.news-card h3 a:hover{color:var(--teal)}
.news-card p{margin:0 0 24px;color:var(--muted);font-size:.9rem;line-height:1.58}
.news-card .text-link{margin-top:auto;font-size:.8rem;font-weight:700}
.news-article-hero .article-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:.78rem}
.news-article-layout{align-items:start}
.news-article .article-content blockquote{margin:30px 0;padding:22px 24px;border-left:4px solid var(--teal);background:#f4f8f7}
.news-article .article-content blockquote p{margin:0;font-size:1.08rem}
.news-article .article-content blockquote cite{display:block;margin-top:10px;color:var(--muted);font-size:.78rem;font-style:normal}
.news-article .article-side .side-block{display:grid;gap:8px;padding:18px 0;border-bottom:1px solid var(--line-dark)}
.news-article .article-side .side-block>span{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.news-article .article-side .side-block a{font-size:.84rem;font-weight:650;text-decoration:none}
.news-article .article-side .side-block a:hover{color:var(--teal)}
@media(max-width:900px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-card--lead{grid-column:span 2}}
@media(max-width:620px){.news-grid{grid-template-columns:1fr}.news-card--lead{grid-column:auto}.news-card{min-height:0;padding:22px}.news-category-nav{gap:6px}.news-category-nav a{font-size:.72rem}}

/* ===== R6.4 NEWS STORY EXPERIENCE ===== */
.news-story-head{background:#fff;border-bottom:1px solid var(--line-dark)}
.news-story-head-inner{max-width:1120px;padding-top:clamp(48px,6vw,82px);padding-bottom:clamp(42px,5vw,68px)}
.news-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:34px;color:var(--muted);font-size:.76rem;font-weight:650}.news-breadcrumb a{text-decoration:none}.news-breadcrumb a:hover{color:var(--teal);text-decoration:underline;text-underline-offset:3px}.news-breadcrumb span{color:#9aa3a8}
.news-story-head .eyebrow{margin-bottom:14px}.news-story-head h1{max-width:1040px;margin:0;font-size:clamp(2.55rem,5vw,4.85rem);line-height:.96;letter-spacing:-.052em;text-wrap:balance}
.news-standfirst{max-width:900px;margin:28px 0 0;font-size:clamp(1.12rem,1.55vw,1.34rem);line-height:1.58;color:var(--charcoal)}
.news-byline{display:flex;align-items:center;flex-wrap:wrap;gap:8px 0;margin-top:30px;padding-top:18px;border-top:1px solid var(--line-dark);color:var(--muted);font-size:.78rem}.news-byline>*{display:block}.news-byline>*+*{margin-left:16px;padding-left:16px;border-left:1px solid var(--line-dark)}.news-byline strong{color:var(--ink)}
.news-story-layout{display:grid;grid-template-columns:minmax(0,780px) minmax(220px,280px);justify-content:center;gap:clamp(48px,7vw,92px);align-items:start;padding-top:clamp(48px,6vw,76px);padding-bottom:clamp(62px,8vw,104px)}
.news-story-body{max-width:none!important;grid-column:auto!important}.news-story-body>.article-section{max-width:none!important;margin:0 0 22px!important;padding:0!important;border:0!important}.news-story-body>.article-section>h2{margin-top:52px;margin-bottom:14px}.news-story-body>.article-section>h3{margin-top:34px;margin-bottom:12px}.news-story-body>.article-section:first-child>h2,.news-story-body>.article-section:first-child>h3{margin-top:0}.news-story-body>.article-section p{margin-top:0;margin-bottom:0}.news-story-body>.article-section--divider{margin:42px 0!important}
.news-story-body .article-bullets{margin:16px 0 8px;padding-left:1.25rem}.news-story-body .article-bullets li{margin:8px 0}
.news-story-body blockquote{margin:36px 0!important;padding:26px 0 26px 28px!important;border-left:3px solid var(--teal)!important;background:transparent!important}.news-story-body blockquote p{font-size:clamp(1.18rem,1.8vw,1.45rem)!important;line-height:1.45!important;letter-spacing:-.018em}.news-story-body blockquote cite{margin-top:13px!important}
.news-story-rail{position:sticky;top:112px;align-self:start}.news-rail-block{padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid var(--line-dark)}.news-rail-block:last-child{border-bottom:0}.component-label{margin:0 0 12px!important;color:var(--muted)!important;font-size:.68rem!important;font-weight:750!important;line-height:1.3!important;letter-spacing:.085em!important;text-transform:uppercase}
.news-rail-toc nav{display:grid}.news-rail-toc a{padding:8px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.82rem;line-height:1.35;text-decoration:none}.news-rail-toc a:first-child{border-top:0}.news-rail-toc a:hover{color:var(--ink)}
.news-utility{display:block;width:100%;min-height:0;margin:0;padding:9px 0;border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-size:.8rem;font-weight:650;text-align:left;cursor:pointer}.news-utility:first-of-type{border-top:0}.news-utility:hover{color:var(--teal)}
.news-rail-topics{display:flex;flex-wrap:wrap;gap:6px}.news-rail-topics a,.news-story-tags a{display:inline-flex;padding:6px 9px;border:1px solid var(--line-dark);border-radius:999px;background:#fff;font-size:.72rem;font-weight:650;text-decoration:none}.news-rail-topics a:hover,.news-story-tags a:hover{background:var(--ink);border-color:var(--ink);color:#fff}.news-rail-more{display:grid;gap:8px}.news-rail-more a{font-size:.8rem;font-weight:700;text-decoration:none}.news-rail-more a:hover{color:var(--teal)}
.news-story-footer{margin-top:54px;padding-top:26px;border-top:2px solid var(--ink)}.news-story-tags{display:flex;flex-wrap:wrap;gap:7px}
.news-fact-box{margin:30px 0;padding:22px 24px;border-top:3px solid var(--teal);background:#f1f6f5}.news-fact-box dl{margin:0}.news-fact-box dl>div{display:grid;grid-template-columns:minmax(120px,.34fr) minmax(0,1fr);gap:20px;padding:12px 0;border-top:1px solid #cfdeda}.news-fact-box dl>div:first-child{border-top:0}.news-fact-box dt{font-size:.76rem;font-weight:700;color:var(--muted)}.news-fact-box dd{margin:0;font-size:.9rem;line-height:1.5}
.news-figure{margin:34px 0}.news-figure img{display:block;width:100%;height:auto;border-radius:2px}.news-figure figcaption{margin-top:9px;color:var(--muted);font-size:.75rem;line-height:1.45}
.news-timeline-wrap{margin:34px 0}.news-timeline{list-style:none;padding:0;margin:18px 0 0;border-top:1px solid var(--ink)}.news-timeline li{display:grid;grid-template-columns:150px minmax(0,1fr);gap:22px;padding:17px 0;border-bottom:1px solid var(--line-dark)}.news-timeline span{font-size:.75rem;font-weight:750;color:var(--teal)}.news-timeline p{margin:0!important;font-size:.9rem!important;line-height:1.55!important}
.legal-reference{margin:30px 0;padding:22px 24px;border-left:4px solid var(--ink);background:#f3f3ef}.legal-reference h3{margin:0 0 9px!important}.legal-reference p:not(.component-label){margin:0 0 12px!important}.legal-reference a{font-size:.8rem;font-weight:700}
.article-divider{height:0;margin:0;border:0;border-top:1px solid var(--line-dark);background:transparent}
.news-related{padding:clamp(54px,7vw,86px) 0;background:#f5f8f7;border-top:1px solid var(--line-dark)}.news-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--line-dark);background:transparent}.news-related-grid article{display:flex;flex-direction:column;min-height:265px;padding:24px;background:#fff}.news-related-grid time{margin-bottom:20px;color:var(--muted);font-size:.69rem;font-weight:700;text-transform:uppercase;letter-spacing:.055em}.news-related-grid h3{margin:0 0 10px;font-size:1.3rem;line-height:1.08;letter-spacing:-.028em}.news-related-grid h3 a{text-decoration:none}.news-related-grid h3 a:hover{color:var(--teal)}.news-related-grid p{margin:0 0 20px;color:var(--muted);font-size:.84rem;line-height:1.55}.news-related-grid .text-link{margin-top:auto;font-size:.78rem;font-weight:700}
@media(max-width:980px){.news-story-layout{grid-template-columns:minmax(0,760px);justify-content:start}.news-story-rail{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;border-top:1px solid var(--line-dark);padding-top:28px}.news-rail-toc{grid-column:1/-1}.news-related-grid{grid-template-columns:1fr 1fr}.news-related-grid article:last-child{grid-column:1/-1}}
@media(max-width:680px){.news-story-head-inner{padding-top:34px;padding-bottom:34px}.news-breadcrumb{margin-bottom:24px}.news-story-head h1{font-size:clamp(2.25rem,10.5vw,3.45rem)}.news-standfirst{margin-top:20px;font-size:1.05rem}.news-byline{display:grid;grid-template-columns:1fr;gap:6px;margin-top:22px}.news-byline>*+*{margin-left:0;padding-left:0;border-left:0}.news-story-layout{padding-top:36px;padding-bottom:58px}.news-story-body>.article-section{margin-bottom:18px!important}.news-story-body>.article-section>h2{margin-top:40px}.news-story-rail{grid-template-columns:1fr}.news-rail-toc{grid-column:auto}.news-fact-box{padding:19px 17px}.news-fact-box dl>div,.news-timeline li{grid-template-columns:1fr;gap:5px}.news-related-grid{grid-template-columns:1fr}.news-related-grid article:last-child{grid-column:auto}.news-related-grid article{min-height:0}}
@media print{.news-story-rail,.news-related,.news-breadcrumb,.news-page .site-header,.news-page .site-footer{display:none!important}.news-story-layout{display:block}.news-story-head-inner,.news-story-layout{max-width:none!important;padding-left:0!important;padding-right:0!important}.news-story-head h1{font-size:34pt}.news-story-body{font-size:11pt}}

/* ===== R6.5 NEWS FRONT PAGE + ARTICLE STRUCTURE =====
   News keeps the ConsumerWise editorial system: bounded full-width headlines,
   a left article sidebar, square category controls and a flatter newsroom index. */

/* News hub masthead */
.news-hub-hero{
  background:#fff;
  border-bottom:1px solid var(--line-dark);
}
.news-hub-hero-inner{
  padding-top:clamp(50px,5.6vw,78px);
  padding-bottom:clamp(42px,4.8vw,66px);
}
.news-hub-title-row{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.58fr);
  gap:clamp(42px,6vw,96px);
  align-items:end;
}
.news-hub-title-row h1{
  margin:0;
  max-width:980px;
  color:var(--ink);
  font-size:clamp(3rem,5.15vw,5.45rem);
  line-height:.94;
  letter-spacing:-.058em;
  text-wrap:balance;
}
.news-hub-title-row>p{
  margin:0;
  padding-top:17px;
  border-top:1px solid var(--ink);
  color:var(--muted);
  font-size:1rem;
  line-height:1.65;
}

/* Category controls: deliberately square and always visible. */
.news-category-strip{
  padding:28px 0 30px;
  background:var(--paper);
  border-bottom:1px solid var(--line-dark);
}
.news-category-strip-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:28px;
  margin-bottom:14px;
}
.news-category-strip-head strong{
  color:var(--ink);
  font-size:.76rem;
  font-weight:750;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.news-category-strip-head span{
  color:var(--muted);
  font-size:.79rem;
}
.news-category-nav{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:0!important;
  margin:0!important;
  padding:0!important;
  border-top:1px solid var(--line-dark);
  border-left:1px solid var(--line-dark);
}
.news-category-nav a{
  display:inline-flex!important;
  align-items:center;
  min-height:40px!important;
  margin:0!important;
  padding:9px 14px!important;
  border:0!important;
  border-right:1px solid var(--line-dark)!important;
  border-bottom:1px solid var(--line-dark)!important;
  border-radius:0!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:.76rem!important;
  font-weight:650!important;
  line-height:1.2;
  text-decoration:none!important;
}
.news-category-nav a:hover{
  background:#edf5f4!important;
  color:var(--teal)!important;
}
.news-category-nav a.is-active{
  background:var(--ink)!important;
  color:#fff!important;
  border-color:var(--ink)!important;
}

/* Front-page lead + latest stack. */
.news-frontpage{
  padding:clamp(48px,5.5vw,76px) 0 clamp(60px,6.5vw,92px);
  background:#fff;
}
.news-frontpage-heading,
.news-section-bar{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(280px,.55fr);
  gap:clamp(40px,5vw,78px);
  align-items:end;
  margin-bottom:30px;
}
.news-frontpage-heading h2,
.news-section-bar h2{
  margin:0;
  color:var(--ink);
  font-size:clamp(2.25rem,3.8vw,4rem);
  line-height:.98;
  letter-spacing:-.05em;
}
.news-frontpage-heading>p,
.news-section-bar>p{
  margin:0;
  color:var(--muted);
  font-size:.93rem;
  line-height:1.62;
}
.news-frontpage-grid{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(330px,.68fr);
  border-top:2px solid var(--ink);
  border-bottom:1px solid var(--line-dark);
}
.news-lead-story{
  display:flex;
  flex-direction:column;
  min-height:430px;
  padding:30px clamp(28px,4vw,54px) 32px 0;
  border-right:1px solid var(--line-dark);
}
.news-story-meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 13px;
  color:var(--muted);
  font-size:.69rem;
  font-weight:700;
  letter-spacing:.055em;
  line-height:1.3;
  text-transform:uppercase;
}
.news-story-meta time{white-space:nowrap}
.news-kicker-link{
  color:var(--teal)!important;
  font-weight:750!important;
  text-decoration:none!important;
}
a.news-kicker-link:hover{text-decoration:underline!important;text-underline-offset:3px}
.news-lead-story h2{
  margin:clamp(54px,7vw,96px) 0 18px;
  max-width:930px;
  font-size:clamp(2.3rem,4.15vw,4.7rem);
  line-height:.96;
  letter-spacing:-.055em;
}
.news-lead-story h2 a,
.news-latest-item h3 a,
.news-archive-copy h3 a{
  color:inherit;
  text-decoration:none;
}
.news-lead-story h2 a:hover,
.news-latest-item h3 a:hover,
.news-archive-copy h3 a:hover{color:var(--teal)}
.news-lead-story>p{
  max-width:810px;
  margin:0 0 28px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.68;
}
.news-read-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  width:100%;
  margin-top:auto;
  padding-top:17px;
  border-top:1px solid var(--line-dark);
  color:var(--ink);
  font-size:.82rem;
  font-weight:750;
  text-decoration:none;
}
.news-read-link:hover{color:var(--teal)}
.news-read-link span{font-size:1.05rem}
.news-latest-stack{padding-left:clamp(24px,3vw,40px)}
.news-latest-stack-head{padding:19px 0 5px}
.news-latest-item{
  position:relative;
  padding:22px 42px 23px 0;
  border-top:1px solid var(--line-dark);
}
.news-latest-item h3{
  margin:12px 0 0;
  color:var(--ink);
  font-size:clamp(1.15rem,1.55vw,1.48rem);
  line-height:1.12;
  letter-spacing:-.025em;
}
.news-item-arrow{
  position:absolute;
  right:0;
  bottom:22px;
  color:var(--teal);
  font-size:1.05rem;
  font-weight:700;
  text-decoration:none;
}
.news-empty-copy{color:var(--muted);font-size:.86rem;line-height:1.6}

/* Archive / category list: editorial rows rather than generic cards. */
.news-more-section{
  padding:clamp(54px,6vw,84px) 0 clamp(72px,8vw,108px);
  background:#f5f8f7;
  border-top:1px solid var(--line-dark);
}
.news-archive-list{
  border-top:2px solid var(--ink);
}
.news-archive-row{
  display:grid;
  grid-template-columns:minmax(150px,.35fr) minmax(0,1.5fr) 28px;
  gap:clamp(28px,4vw,62px);
  align-items:start;
  padding:26px 0 28px;
  border-bottom:1px solid var(--line-dark);
}
.news-archive-meta{
  display:grid;
  gap:8px;
  padding-top:4px;
  color:var(--muted);
  font-size:.69rem;
  font-weight:700;
  letter-spacing:.055em;
  line-height:1.35;
  text-transform:uppercase;
}
.news-archive-meta a,
.news-archive-meta span{
  color:var(--teal);
  font-weight:750;
  text-decoration:none;
}
.news-archive-meta a:hover{text-decoration:underline;text-underline-offset:3px}
.news-archive-copy h3{
  margin:0 0 9px;
  color:var(--ink);
  font-size:clamp(1.35rem,2.1vw,2.15rem);
  line-height:1.06;
  letter-spacing:-.035em;
}
.news-archive-copy p{
  max-width:820px;
  margin:0;
  color:var(--muted);
  font-size:.88rem;
  line-height:1.58;
}
.news-archive-arrow{
  justify-self:end;
  padding-top:4px;
  color:var(--teal);
  font-size:1.15rem;
  font-weight:700;
  text-decoration:none;
}
.news-archive-arrow:hover{color:var(--ink)}

/* Category archive masthead. */
.news-category-hero{
  padding:clamp(46px,5vw,70px) 0 clamp(38px,4.5vw,58px);
  background:#fff;
  border-bottom:1px solid var(--line-dark);
}
.news-category-hero .news-breadcrumb{margin-bottom:26px}
.news-category-title-row{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(300px,.62fr);
  gap:clamp(38px,5vw,76px);
  align-items:end;
}
.news-category-title-row h1{
  margin:0;
  color:var(--ink);
  font-size:clamp(2.9rem,5vw,5.15rem);
  line-height:.94;
  letter-spacing:-.055em;
}
.news-category-title-row>p{
  margin:0;
  color:var(--muted);
  font-size:1rem;
  line-height:1.65;
}
.news-category-strip--archive{padding-top:22px;padding-bottom:22px}
.news-category-results{border-top:0}

/* Article masthead: full normal site bounds, not a centred/narrow sub-container. */
.news-story-head{
  background:#fff;
  border-bottom:1px solid var(--line-dark);
}
.news-story-head-inner{
  width:min(100%,var(--max))!important;
  max-width:var(--max)!important;
  margin:0 auto!important;
  padding-top:clamp(42px,4.8vw,66px)!important;
  padding-bottom:clamp(38px,4.4vw,58px)!important;
}
.news-breadcrumb{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:25px;
  color:var(--muted);
  font-size:.75rem;
  font-weight:650;
}
.news-breadcrumb a{text-decoration:none}
.news-breadcrumb a:hover{color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.news-breadcrumb span{color:#7c8790}
.news-story-head .eyebrow{margin-bottom:12px}
.news-story-head h1{
  width:100%;
  max-width:none!important;
  margin:0!important;
  color:var(--ink);
  font-size:clamp(2.65rem,4.45vw,4.7rem)!important;
  line-height:.98!important;
  letter-spacing:-.047em!important;
  text-align:left!important;
  text-wrap:balance;
}
.news-standfirst{
  max-width:1080px!important;
  margin:24px 0 0!important;
  color:var(--text)!important;
  font-size:clamp(1.08rem,1.35vw,1.25rem)!important;
  line-height:1.62!important;
}
.news-byline{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 0;
  max-width:none;
  margin-top:25px;
  padding-top:16px;
  border-top:1px solid var(--line-dark);
  color:var(--muted);
  font-size:.76rem;
}
.news-byline>*{display:block}
.news-byline>*+*{margin-left:15px;padding-left:15px;border-left:1px solid var(--line-dark)}
.news-byline strong{color:var(--ink)}

/* Restore the established ConsumerWise left sidebar structure. */
.news-story-layout{
  display:grid!important;
  grid-template-columns:minmax(255px,275px) minmax(0,1fr)!important;
  gap:clamp(44px,4.2vw,66px)!important;
  justify-content:start!important;
  align-items:start!important;
  padding-top:clamp(44px,5vw,66px)!important;
  padding-bottom:clamp(66px,7vw,98px)!important;
}
.news-story-sidebar{
  grid-column:1!important;
  grid-row:1!important;
  position:sticky!important;
  top:98px!important;
  width:100%;
  max-width:275px!important;
  max-height:none!important;
  overflow:visible!important;
  padding-right:8px!important;
  align-self:start!important;
}
.news-story-body{
  grid-column:2!important;
  grid-row:1!important;
  width:100%!important;
  max-width:980px!important;
  justify-self:start!important;
}
.news-story-body>.article-section{
  display:block!important;
  max-width:none!important;
  margin:0 0 22px!important;
  padding:0!important;
  border:0!important;
}
.news-story-body>.article-section>h2{
  margin-top:48px!important;
  margin-bottom:14px!important;
  font-size:clamp(1.75rem,2.7vw,2.8rem)!important;
  line-height:1.05!important;
  letter-spacing:-.04em!important;
}
.news-story-body>.article-section>h3{
  margin-top:31px!important;
  margin-bottom:11px!important;
  font-size:clamp(1.25rem,1.7vw,1.65rem)!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
}
.news-story-body>.article-section:first-child>h2,
.news-story-body>.article-section:first-child>h3{margin-top:0!important}
.news-story-body>.article-section p{
  max-width:880px;
  margin-top:0!important;
  margin-bottom:0!important;
  font-size:1rem!important;
  line-height:1.72!important;
}
.news-story-body>.article-section--divider{margin:38px 0!important}

/* Existing sidebar panels, with buttons made to behave like sidebar links. */
.news-story-sidebar .side-block{display:block!important}
.news-story-sidebar .side-block>a{display:grid!important}
.news-story-tools .news-utility{
  position:relative;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 18px;
  align-items:center;
  width:100%;
  min-height:0;
  margin:0!important;
  padding:12px 0!important;
  border:0!important;
  border-top:1px solid var(--line)!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--ink)!important;
  font:inherit;
  font-size:.87rem!important;
  line-height:1.35;
  font-weight:650!important;
  text-align:left;
  cursor:pointer;
}
.news-story-tools .news-utility:first-of-type{border-top:0!important}
.news-story-tools .news-utility:after{
  content:'→';
  justify-self:end;
  color:var(--teal);
  font-size:.95rem;
  line-height:1;
}
.news-story-tools .news-utility:hover{color:var(--teal)!important}
.news-sidebar-toc>a{
  border-left:0!important;
  padding-left:0!important;
}

/* News taxonomy is square throughout: no pills on article or hub. */
.news-story-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.news-story-tags a,
.news-rail-topics a{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 10px!important;
  border:1px solid var(--line-dark)!important;
  border-radius:0!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:.72rem!important;
  font-weight:650!important;
  line-height:1.25;
  text-decoration:none!important;
}
.news-story-tags a:hover,
.news-rail-topics a:hover{
  background:var(--ink)!important;
  border-color:var(--ink)!important;
  color:#fff!important;
}
.news-story-footer{
  margin-top:52px;
  padding-top:24px;
  border-top:2px solid var(--ink);
}

/* Related reporting uses the same square, line-led editorial language. */
.news-related{
  padding:clamp(50px,5.5vw,78px) 0 clamp(60px,6.5vw,90px);
  background:#f5f8f7;
  border-top:1px solid var(--line-dark);
}
.news-related-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0!important;
  border-top:2px solid var(--ink)!important;
  border-left:0!important;
  border-right:0!important;
  border-bottom:0!important;
  background:transparent!important;
}
.news-related-grid article{
  min-height:260px;
  padding:24px 24px 24px 0!important;
  background:transparent!important;
  border-right:1px solid var(--line-dark);
  border-bottom:1px solid var(--line-dark);
}
.news-related-grid article+article{padding-left:24px!important}
.news-related-grid article:last-child{border-right:0}

@media(max-width:1100px){
  .news-hub-title-row,
  .news-frontpage-heading,
  .news-section-bar,
  .news-category-title-row{grid-template-columns:1fr;gap:20px}
  .news-hub-title-row>p{max-width:780px}
  .news-frontpage-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)}
  .news-story-layout{grid-template-columns:minmax(225px,250px) minmax(0,1fr)!important;gap:38px!important}
  .news-story-sidebar{max-width:250px!important}
}
@media(max-width:900px){
  .news-frontpage-grid{grid-template-columns:1fr}
  .news-lead-story{min-height:0;padding-right:0;border-right:0}
  .news-lead-story h2{margin-top:52px}
  .news-latest-stack{padding:0;border-top:1px solid var(--line-dark)}
  .news-latest-stack-head{padding-top:20px}
  .news-story-layout{grid-template-columns:1fr!important}
  .news-story-sidebar{
    grid-column:1!important;
    grid-row:2!important;
    position:static!important;
    max-width:none!important;
    max-height:none!important;
    overflow:visible!important;
    padding-right:0!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px!important;
    margin-top:22px;
  }
  .news-story-body{grid-column:1!important;grid-row:1!important;max-width:900px!important}
  .news-sidebar-toc{grid-column:1/-1}
  .news-related-grid{grid-template-columns:1fr 1fr}
  .news-related-grid article:nth-child(2){border-right:0}
  .news-related-grid article:last-child{grid-column:1/-1;padding-left:0!important;border-right:0}
}
@media(max-width:680px){
  .news-hub-hero-inner{padding-top:40px;padding-bottom:38px}
  .news-hub-title-row h1{font-size:clamp(2.7rem,12vw,4rem)}
  .news-category-strip{padding:22px 0 24px}
  .news-category-strip-head{display:block;margin-bottom:13px}
  .news-category-strip-head span{display:block;margin-top:5px}
  .news-category-nav a{font-size:.72rem!important;padding:9px 11px!important}
  .news-frontpage{padding-top:40px;padding-bottom:54px}
  .news-frontpage-heading h2,.news-section-bar h2{font-size:clamp(2rem,9.5vw,2.85rem)}
  .news-lead-story{padding-top:24px;padding-bottom:25px}
  .news-lead-story h2{margin-top:38px;font-size:clamp(2rem,9vw,3rem)}
  .news-archive-row{grid-template-columns:1fr 24px;gap:14px 20px;padding:22px 0}
  .news-archive-meta{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 13px}
  .news-archive-copy{grid-column:1}
  .news-archive-arrow{grid-column:2;grid-row:2}
  .news-category-hero{padding-top:38px;padding-bottom:34px}
  .news-category-title-row h1{font-size:clamp(2.6rem,12vw,3.85rem)}
  .news-story-head-inner{padding-top:34px!important;padding-bottom:34px!important}
  .news-breadcrumb{margin-bottom:21px}
  .news-story-head h1{font-size:clamp(2.2rem,10.5vw,3.35rem)!important}
  .news-standfirst{margin-top:19px!important;font-size:1.04rem!important}
  .news-byline{display:grid;grid-template-columns:1fr;gap:6px;margin-top:21px}
  .news-byline>*+*{margin-left:0;padding-left:0;border-left:0}
  .news-story-layout{padding-top:34px!important;padding-bottom:54px!important}
  .news-story-sidebar{grid-template-columns:1fr!important;margin-top:12px}
  .news-sidebar-toc{grid-column:auto}
  .news-story-body>.article-section>h2{margin-top:38px!important}
  .news-related-grid{grid-template-columns:1fr}
  .news-related-grid article,
  .news-related-grid article+article,
  .news-related-grid article:last-child{grid-column:auto;padding:22px 0!important;border-right:0}
}
@media print{
  .news-story-sidebar,.news-related,.news-breadcrumb,.news-page .site-header,.news-page .site-footer{display:none!important}
  .news-story-layout{display:block!important}
  .news-story-head-inner,.news-story-layout{max-width:none!important;padding-left:0!important;padding-right:0!important}
  .news-story-head h1{font-size:34pt!important}
  .news-story-body{max-width:none!important;font-size:11pt}
}
/* ===== END R6.5 NEWS FRONT PAGE + ARTICLE STRUCTURE ===== */


/* R6.6: denser News article vertical rhythm.
   Structured blocks remain semantically distinct, but no longer make every
   paragraph feel like a separate long-form guide section. */
.news-story-body>.article-section{margin:0!important}
.news-story-body>.article-section--paragraph{margin:0 0 10px!important}
.news-story-body>.article-section--paragraph p{line-height:1.66!important}
.news-story-body>.article-section--heading{margin:34px 0 10px!important}
.news-story-body>.article-section--subheading{margin:22px 0 8px!important}
.news-story-body>.article-section--heading>h2,
.news-story-body>.article-section--subheading>h3{margin:0!important}
.news-story-body>.article-section--heading:first-child,
.news-story-body>.article-section--subheading:first-child{margin-top:0!important}
.news-story-body>.article-section--bullet-list,
.news-story-body>.article-section--steps{margin:12px 0 18px!important}
.news-story-body>.article-section--key-points,
.news-story-body>.article-section--fact-box,
.news-story-body>.article-section--example,
.news-story-body>.article-section--note,
.news-story-body>.article-section--warning,
.news-story-body>.article-section--quote,
.news-story-body>.article-section--image,
.news-story-body>.article-section--timeline,
.news-story-body>.article-section--table,
.news-story-body>.article-section--legal-reference,
.news-story-body>.article-section--sources{margin:20px 0!important}
.news-story-body>.article-section--paragraph + .article-section--heading{margin-top:30px!important}
.news-story-body>.article-section--paragraph + .article-section--subheading{margin-top:19px!important}
.news-story-body>.article-section--heading + .article-section--paragraph,
.news-story-body>.article-section--subheading + .article-section--paragraph{margin-top:0!important}
.news-story-body>.article-section--divider{margin:28px 0!important}
@media(max-width:680px){
 .news-story-body>.article-section--paragraph{margin-bottom:9px!important}
 .news-story-body>.article-section--heading{margin-top:28px!important;margin-bottom:9px!important}
 .news-story-body>.article-section--subheading{margin-top:19px!important;margin-bottom:7px!important}
 .news-story-body>.article-section--key-points,
 .news-story-body>.article-section--fact-box,
 .news-story-body>.article-section--example,
 .news-story-body>.article-section--note,
 .news-story-body>.article-section--warning,
 .news-story-body>.article-section--quote,
 .news-story-body>.article-section--image,
 .news-story-body>.article-section--timeline,
 .news-story-body>.article-section--table,
 .news-story-body>.article-section--legal-reference,
 .news-story-body>.article-section--sources{margin:17px 0!important}
}
/* Compatibility for pre-R6.6 News body HTML that does not yet carry typed block classes. */
.news-story-body>.article-section:not([class*="article-section--"]){margin:0 0 12px!important}
.news-story-body>.article-section:not([class*="article-section--"])>h2{margin-top:34px!important;margin-bottom:10px!important}
.news-story-body>.article-section:not([class*="article-section--"])>h3{margin-top:22px!important;margin-bottom:8px!important}


/* ===== R6.7 NEWS ARTICLE NAVIGATION + PRINT ===== */
/* One News navigation system only: the desktop sidebar and its mobile form both say “In this article”. */
.news-mobile-toc{display:none}
.news-story-body [id]{scroll-margin-top:118px}
.news-sidebar-toc>a.is-subsection{padding-left:14px!important;color:var(--muted)!important;font-size:.79rem!important;font-weight:550!important}
.news-sidebar-toc>a.is-subsection:hover{color:var(--teal)!important}
.news-print-brand,.news-print-source{display:none}

@media(max-width:900px){
  .news-story-layout{grid-template-columns:1fr!important}
  .news-mobile-toc{
    display:block;
    grid-column:1!important;
    grid-row:1!important;
    margin:0 0 24px;
    border-top:2px solid var(--ink);
    border-bottom:1px solid var(--line-dark);
    background:#fff;
  }
  .news-mobile-toc summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    list-style:none;
    padding:16px 18px;
    color:var(--ink);
    font-size:.8rem;
    font-weight:750;
    cursor:pointer;
  }
  .news-mobile-toc summary::-webkit-details-marker{display:none}
  .news-mobile-toc summary:after{content:'+';float:none;flex:0 0 auto;margin:0;font-size:1.1rem;font-weight:500;line-height:1}
  .news-mobile-toc[open] summary:after{content:'×'}
  .news-mobile-toc nav{padding:0 18px 14px;box-sizing:border-box}
  .news-mobile-toc a{display:block;padding:8px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.83rem;line-height:1.35;text-decoration:none}
  .news-mobile-toc a:first-child{border-top:0}
  .news-mobile-toc a.is-subsection{padding-left:14px;font-size:.78rem}
  .news-mobile-toc a:hover{color:var(--ink)}
  .news-story-body{grid-column:1!important;grid-row:2!important;max-width:900px!important}
  .news-story-sidebar{grid-column:1!important;grid-row:3!important}
  .news-story-sidebar .news-sidebar-toc{display:none!important}
}

/* A clean, document-like printout rather than a print of the website chrome. */
@media print{
  @page{size:auto;margin:17mm 17mm 19mm}
  html,body{background:#fff!important}
  body.news-article{font-family:Arial,Helvetica,sans-serif!important;color:#111!important;font-size:10.5pt!important;line-height:1.5!important}
  .news-article #cs-global-header,
  .news-article #cs-global-footer,
  .news-article .skip-link,
  .news-article .cookie-banner,
  .news-article .cookie-modal,
  .news-article .search-overlay,
  .news-story-sidebar,
  .news-mobile-toc,
  .news-related,
  .news-story-footer{display:none!important}
  .news-story-head{border:0!important;background:#fff!important}
  .news-story-head-inner,
  .news-story-layout{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .news-story-head-inner{padding-top:0!important;padding-bottom:9mm!important;border-bottom:1px solid #aaa!important}
  .news-print-brand{display:flex!important;justify-content:space-between;align-items:baseline;margin:0 0 10mm;padding:0 0 3mm;border-bottom:2px solid #111;color:#111!important}
  .news-print-brand strong{font-size:12pt;letter-spacing:-.02em}
  .news-print-brand span{font-size:8pt;text-transform:uppercase;letter-spacing:.08em}
  .news-story-head .eyebrow{margin:0 0 3mm!important;color:#444!important;font-size:8pt!important;letter-spacing:.08em!important;text-transform:uppercase!important}
  .news-story-head h1{margin:0!important;font-size:27pt!important;line-height:1.06!important;letter-spacing:-.025em!important;color:#000!important;text-wrap:auto!important}
  .news-standfirst{max-width:none!important;margin:5mm 0 0!important;font-size:12pt!important;line-height:1.45!important;color:#222!important}
  .news-byline{display:flex!important;gap:0!important;margin:5mm 0 0!important;padding:3mm 0 0!important;border-top:1px solid #ccc!important;color:#444!important;font-size:8.5pt!important}
  .news-byline>*+*{margin-left:4mm!important;padding-left:4mm!important;border-left:1px solid #bbb!important}
  .news-story-layout{display:block!important;padding-top:9mm!important;padding-bottom:0!important}
  .news-story-body{display:block!important;width:100%!important;max-width:none!important;font-size:10.5pt!important;line-height:1.55!important}
  .news-story-body>.article-section{break-inside:auto!important;page-break-inside:auto!important}
  .news-story-body>.article-section--paragraph{margin:0 0 3.2mm!important}
  .news-story-body>.article-section--paragraph p{max-width:none!important;font-size:10.5pt!important;line-height:1.55!important;color:#111!important}
  .news-story-body>.article-section--heading{margin:8mm 0 3mm!important;break-after:avoid-page!important;page-break-after:avoid!important}
  .news-story-body>.article-section--subheading{margin:5.5mm 0 2.5mm!important;break-after:avoid-page!important;page-break-after:avoid!important}
  .news-story-body>.article-section--heading h2{font-size:17pt!important;line-height:1.15!important;letter-spacing:-.02em!important;color:#000!important}
  .news-story-body>.article-section--subheading h3{font-size:13pt!important;line-height:1.2!important;color:#000!important}
  .news-story-body>.article-section--key-points,
  .news-story-body>.article-section--fact-box,
  .news-story-body>.article-section--example,
  .news-story-body>.article-section--note,
  .news-story-body>.article-section--warning,
  .news-story-body>.article-section--quote,
  .news-story-body>.article-section--image,
  .news-story-body>.article-section--timeline,
  .news-story-body>.article-section--table,
  .news-story-body>.article-section--legal-reference,
  .news-story-body>.article-section--sources{margin:5mm 0!important;break-inside:avoid-page!important;page-break-inside:avoid!important}
  .news-story-body .key-points,
  .news-story-body .news-fact-box,
  .news-story-body .example-box,
  .news-story-body .note-box,
  .news-story-body .warning-box,
  .news-story-body .legal-reference,
  .news-story-body .source-box{background:#fff!important;color:#111!important;border:1px solid #aaa!important;box-shadow:none!important}
  .news-story-body blockquote{margin:5mm 0!important;padding:3mm 0 3mm 5mm!important;border-left:2px solid #555!important;background:#fff!important}
  .news-story-body blockquote p{font-size:11.5pt!important;line-height:1.45!important}
  .news-story-body a{color:#111!important;text-decoration:underline!important;text-underline-offset:2px}
  .news-story-body img{max-width:100%!important;height:auto!important;break-inside:avoid-page!important}
  .news-story-body figure,.news-story-body table,.news-story-body tr{break-inside:avoid-page!important;page-break-inside:avoid!important}
  .news-story-body table{font-size:8.5pt!important}
  .news-story-body .article-divider{border-color:#999!important}
  .news-print-source{display:flex!important;justify-content:space-between;gap:10mm;margin-top:12mm;padding-top:4mm;border-top:1px solid #999;color:#555!important;font-size:7.5pt!important;line-height:1.35}
  .news-print-source span{overflow-wrap:anywhere;text-align:right}
}
/* ===== END R6.7 NEWS ARTICLE NAVIGATION + PRINT ===== */


/* R6.7 consistency patch: mobile hub cards remain white like their desktop equivalents. */
@media(max-width:760px){
  body.hub-page--classic .hub-topic-grid>a{background:#fff!important}
}

/* R6.7 targeted correction: News sidebar belongs to normal page flow.
   It stays in the left column on desktop but scrolls with the document,
   rather than sticking independently to the viewport. */
.news-story-sidebar{
  position:static!important;
  top:auto!important;
}

/* R6.7 targeted correction: retain the white mobile hub cards while
   restoring the internal inset used by their number, copy and arrow. */
@media(max-width:760px){
  body.hub-page--classic .hub-topic-grid>a{
    background:#fff!important;
    padding:18px!important;
  }
}

/* Targeted correction: card/grid separators must be real borders, not a
   line-dark background showing through a 1px grid gap. */
body.hub-page--classic .hub-topic-grid{
  gap:0!important;
  background:transparent!important;
  border:0!important;
  border-top:1px solid var(--line-dark)!important;
  border-left:1px solid var(--line-dark)!important;
}
body.hub-page--classic .hub-topic-grid>a{
  border:0!important;
  border-right:1px solid var(--line-dark)!important;
  border-bottom:1px solid var(--line-dark)!important;
}
.news-grid{
  gap:0!important;
  background:transparent!important;
  border:0!important;
  border-top:1px solid var(--line-dark)!important;
  border-left:1px solid var(--line-dark)!important;
}
.news-grid>.news-card{
  border-right:1px solid var(--line-dark)!important;
  border-bottom:1px solid var(--line-dark)!important;
}
.news-related-grid{
  gap:0!important;
  background:transparent!important;
  border:0!important;
  border-top:1px solid var(--line-dark)!important;
  border-left:1px solid var(--line-dark)!important;
}
.news-related-grid>article{
  border-right:1px solid var(--line-dark)!important;
  border-bottom:1px solid var(--line-dark)!important;
}


/* CS FRONTEND AUDIT RELEASE START */
/* Shared-header section jumps should remain visible below sticky navigation. */
html{scroll-padding-top:118px}
.article-content h2[id],.article-content h3[id],section[id]{scroll-margin-top:118px}

/* Global search panel */
/* Global search panel - Definr-style interaction */
body.cs-search-open{overflow:hidden}
.header-search{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.header-search svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.cs-search-popover{position:fixed;inset:0;z-index:1600}
.cs-search-popover[hidden]{display:none!important}
.cs-search-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(8,16,24,.58);backdrop-filter:blur(5px);cursor:default}
.cs-search-panel{position:relative;width:min(1040px,calc(100% - 34px));max-height:min(82vh,760px);margin:clamp(28px,6vh,72px) auto 0;overflow:hidden;display:flex;flex-direction:column;background:#fff;border:1px solid var(--ink);box-shadow:0 28px 90px rgba(0,0,0,.28)}
.cs-search-topbar{display:grid;grid-template-columns:minmax(0,1fr) 58px;border-bottom:1px solid var(--ink)}
.cs-search-input-wrap{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;min-width:0}
.cs-search-input-wrap>svg{width:21px;height:21px;margin:auto;fill:none;stroke:var(--ink);stroke-width:1.7;stroke-linecap:round}
.cs-search-input-wrap input{width:100%;height:68px;padding:0 20px 0 0;border:0;background:#fff;color:var(--ink);font:inherit;font-size:1.03rem;outline:0}
.cs-search-input-wrap input::placeholder{color:#718090}
.cs-search-close{border:0;border-left:1px solid var(--ink);background:#fff;color:var(--ink);font:inherit;font-size:1.85rem;line-height:1;cursor:pointer}
.cs-search-close:hover,.cs-search-close:focus-visible{background:var(--ink);color:#fff;outline:0}
.cs-search-meta{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:22px 26px 18px;border-bottom:1px solid var(--line)}
.cs-search-kicker{display:block;margin-bottom:5px;color:var(--teal);font-size:.68rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.cs-search-meta h2{margin:0;color:var(--ink);font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.1;letter-spacing:-.035em}
.cs-search-shortcut{flex:0 0 auto;padding:6px 9px;border:1px solid var(--line-dark);color:var(--muted);font-size:.68rem;font-weight:600}
.cs-search-results{min-height:150px;overflow:auto;padding:8px 26px 18px;overscroll-behavior:contain}
.cs-search-group{margin-top:18px}
.cs-search-group h3{margin:0;padding:0 0 9px;border-bottom:1px solid var(--ink);color:var(--muted);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.cs-search-result{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,190px) 20px;gap:18px;align-items:center;padding:13px 4px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}
.cs-search-result:hover,.cs-search-result:focus-visible{background:var(--paper);outline:0}
.cs-search-result-copy{min-width:0}
.cs-search-result strong{display:block;font-size:.9rem;line-height:1.3}
.cs-search-result small{display:block;margin-top:3px;overflow:hidden;color:var(--muted);font-size:.74rem;line-height:1.42;text-overflow:ellipsis;white-space:nowrap}
.cs-search-result-meta{color:var(--muted);font-size:.68rem;line-height:1.35;text-align:right}
.cs-search-result i{font-style:normal;text-align:right}
.cs-search-message,.cs-search-intro{padding:30px 4px;color:var(--muted);font-size:.88rem;line-height:1.65}
.cs-search-intro strong{display:block;margin-bottom:5px;color:var(--ink);font-size:.98rem}
.cs-search-intro p{margin:0}.cs-search-intro b{color:var(--ink);font-weight:600}
.cs-search-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 26px;border-top:1px solid var(--ink);background:var(--paper);color:var(--muted);font-size:.72rem}
.cs-search-footer a{color:var(--ink);font-weight:700;text-decoration:none}.cs-search-footer a:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:820px){
  .header-search{display:inline-flex!important;width:42px;min-width:42px;padding:0!important}
  .header-search-label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
  .cs-search-panel{width:100%;height:100dvh;max-height:none;margin:0;border:0;box-shadow:none}
  .cs-search-topbar{grid-template-columns:minmax(0,1fr) 54px}
  .cs-search-input-wrap{grid-template-columns:46px minmax(0,1fr)}
  .cs-search-input-wrap input{height:62px;font-size:16px}
  .cs-search-meta{padding:18px 18px 15px}.cs-search-shortcut{display:none}
  .cs-search-results{padding:4px 18px 18px}
  .cs-search-result{grid-template-columns:minmax(0,1fr) 18px;gap:12px;padding:14px 2px}
  .cs-search-result-meta{display:none}.cs-search-result small{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .cs-search-footer{padding:13px 18px}
}

/* Homepage V3 - cleaner, broader, and mobile-first. */
.home-page .home-hero-v3{background:#fff;border-bottom:1px solid var(--line-dark)}
.home-page .home-hero-v3-inner{padding-top:clamp(58px,7vw,96px);padding-bottom:clamp(46px,6vw,78px)}
.home-page .home-hero-v3-copy{max-width:1180px}
.home-page .home-hero-v3 h1{max-width:1050px;margin:0;color:var(--ink);font-size:clamp(4rem,7.1vw,7.35rem);font-weight:700;line-height:.88;letter-spacing:-.068em;text-wrap:balance}
.home-page .home-hero-v3 .home-hero-lead{max-width:900px;margin:28px 0 0;color:var(--muted);font-size:clamp(1.08rem,1.5vw,1.32rem);line-height:1.65}
.home-search-v3{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;width:min(100%,1040px);margin-top:38px;border:1px solid var(--ink);background:#fff}
.home-search-v3-icon{width:18px;height:18px;margin-left:18px;border:2px solid var(--ink);border-radius:50%;position:relative}
.home-search-v3-icon:after{content:"";position:absolute;width:7px;height:2px;background:var(--ink);right:-5px;bottom:-2px;transform:rotate(45deg);transform-origin:center}
.home-search-v3 input{height:64px;min-width:0;border:0;background:transparent;padding:0 18px;color:var(--ink);font:inherit;font-size:1rem;outline:0}
.home-search-v3 button{align-self:stretch;min-width:120px;border:0;border-left:1px solid var(--ink);background:var(--ink);color:#fff;font-weight:700}
.home-search-v3:focus-within{outline:3px solid rgba(23,108,112,.16);outline-offset:2px}
.home-search-v3-help{max-width:1030px;margin:11px 0 0;color:var(--muted);font-size:.78rem;line-height:1.55}.home-search-v3-help a{text-underline-offset:3px}
.home-primary-routes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:44px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.home-primary-routes a{display:grid;grid-template-columns:1fr 18px;gap:14px;align-items:end;min-height:122px;padding:21px 22px 21px 0;text-decoration:none}
.home-primary-routes a+a{padding-left:22px;border-left:1px solid var(--line-dark)}
.home-primary-routes small{grid-column:1/-1;color:var(--muted);font-size:.9rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.home-primary-routes strong{font-size:.94rem;line-height:1.35}.home-primary-routes i{font-style:normal}.home-primary-routes i:after{content:"→"}.home-primary-routes a:hover strong{color:var(--teal)}
.home-sectors{background:var(--paper)}
.home-sectors-heading{margin-bottom:48px}.home-sectors-heading h2{max-width:900px}
.home-sector-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--line-dark)}
.home-sector-group{min-width:0;padding:25px 28px 28px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}
.home-sector-group>h3{margin:0 0 22px;color:var(--muted);font-size:.72rem;letter-spacing:.09em;text-transform:uppercase}
.home-sector-list{border-top:1px solid var(--ink)}
.home-sector-list>a{display:grid;grid-template-columns:minmax(150px,.72fr) minmax(0,1fr) 18px;gap:20px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line);text-decoration:none}
.home-sector-list strong{color:var(--ink);font-size:.96rem}.home-sector-list span{color:var(--muted);font-size:.78rem;line-height:1.45}.home-sector-list i{font-style:normal;text-align:right}.home-sector-list i:after{content:"→"}.home-sector-list a:hover strong{color:var(--teal)}
.home-relationship{background:#fff;border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}
.home-relationship-grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:clamp(48px,8vw,120px);align-items:start}
.home-relationship-intro h2{margin:0;color:var(--ink);font-size:clamp(2.7rem,4.5vw,5rem);line-height:.94;letter-spacing:-.055em}.home-relationship-intro>p:last-child{color:var(--muted);line-height:1.65}
.home-relationship-list{border-top:2px solid var(--ink)}
.home-relationship-list>a{display:grid;grid-template-columns:minmax(0,1fr) 120px 18px;gap:20px;align-items:center;padding:19px 0;border-bottom:1px solid var(--line-dark);text-decoration:none}.home-relationship-list strong{font-size:1rem}.home-relationship-list span{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.home-relationship-list i{font-style:normal}.home-relationship-list i:after{content:"→"}.home-relationship-list a:hover strong{color:var(--teal)}

@media(max-width:1000px){
  .home-primary-routes{grid-template-columns:repeat(2,1fr)}.home-primary-routes a:nth-child(3){border-left:0;border-top:1px solid var(--line-dark);padding-left:0}.home-primary-routes a:nth-child(4){border-top:1px solid var(--line-dark)}
  .home-sector-groups{grid-template-columns:1fr}.home-relationship-grid{grid-template-columns:1fr;gap:40px}
}
@media(max-width:760px){
  html{scroll-padding-top:74px}.article-content h2[id],.article-content h3[id],section[id]{scroll-margin-top:74px}
  .home-page .home-hero-v3-inner{padding-top:42px;padding-bottom:40px}
  .home-page .home-hero-v3 h1{font-size:clamp(3rem,13vw,4.55rem);line-height:.91;letter-spacing:-.055em}
  .home-page .home-hero-v3 .home-hero-lead{margin-top:22px;font-size:1rem}
  .home-search-v3{grid-template-columns:38px minmax(0,1fr);margin-top:28px}.home-search-v3 input{height:58px;padding-right:12px;font-size:16px}.home-search-v3 button{grid-column:1/-1;min-height:48px;border-left:0;border-top:1px solid var(--ink)}
  .home-search-v3-help{font-size:.74rem}
  .home-primary-routes{grid-template-columns:1fr;margin-top:30px}.home-primary-routes a,.home-primary-routes a+a,.home-primary-routes a:nth-child(3),.home-primary-routes a:nth-child(4){min-height:0;padding:16px 0;border-left:0;border-top:0;border-bottom:1px solid var(--line)}.home-primary-routes a:last-child{border-bottom:0}
  .home-sectors{padding-top:64px;padding-bottom:70px}.home-sectors-heading{display:block;margin-bottom:34px}.home-sectors-heading>p{margin-top:18px}.home-sector-group{padding:22px 18px}.home-sector-list>a{grid-template-columns:1fr 18px;gap:10px;padding:16px 0}.home-sector-list span{grid-column:1;font-size:.78rem}.home-sector-list i{grid-column:2;grid-row:1/3;align-self:center}
  .home-relationship{padding-top:64px;padding-bottom:70px}.home-relationship-intro h2{font-size:clamp(2.6rem,11vw,3.8rem)}.home-relationship-list>a{grid-template-columns:1fr 18px;gap:10px}.home-relationship-list span{grid-column:1}.home-relationship-list i{grid-column:2;grid-row:1/3;align-self:center}
}
/* CS FRONTEND AUDIT RELEASE END */



/* 2026-09-12 homepage/search refinement: old card-led home + polished full search. */
.home-page .areas-section .section-heading{margin-bottom:30px}
.home-page .areas-section .area-card{min-height:300px}
.home-page .areas-section .area-card-featured{min-height:325px}
.home-page .areas-section .area-links{margin-top:auto}

.search-page-v2{background:var(--paper)}
.search-page-v2 .search-page-hero{padding-block:clamp(52px,7vw,92px);background:#fff;border-bottom:1px solid var(--line-dark)}
.search-v2-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(38px,6vw,90px);align-items:end}
.search-v2-intro h1{max-width:760px;margin:0;font-size:clamp(3.1rem,6vw,6.4rem);line-height:.91;letter-spacing:-.062em;text-wrap:balance}
.search-v2-intro>p:not(.eyebrow){max-width:720px;margin:24px 0 0;color:var(--muted);font-size:1.05rem;line-height:1.68}
.search-v2-examples{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;align-items:center}
.search-v2-examples span{margin-right:3px;color:var(--muted);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.search-v2-examples a{padding:7px 10px;border:1px solid var(--line-dark);background:var(--paper);color:var(--ink);font-size:.78rem;font-weight:600;text-decoration:none}
.search-v2-examples a:hover{background:var(--ink);color:#fff}
.search-v2-panel{padding:26px;border:1px solid var(--line-dark);background:var(--paper)}
.search-large-v2{margin:0;max-width:none;background:#fff}
.search-large-v2 input{min-width:0}
.search-v2-note{margin:13px 0 0;color:var(--muted);font-size:.78rem;line-height:1.5}
.search-page-v2 .search-page-results{padding-block:42px 100px}
.search-v2-results-shell{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(34px,5vw,72px);align-items:start}
.search-v2-results-heading{position:sticky;top:96px;padding-top:5px}
.search-v2-results-heading h2{margin:0;font-size:clamp(1.7rem,2.3vw,2.45rem);line-height:1.02;letter-spacing:-.035em}
.search-v2-results-heading>p:last-child{margin:16px 0 0;color:var(--muted);font-size:.83rem;line-height:1.62}
.search-v2-results{min-width:0}
.search-page-v2 .search-result-group{margin:0 0 30px;background:#fff;border:1px solid var(--line-dark)}
.search-page-v2 .search-result-group>h2{margin:0;padding:13px 18px;border:0;border-bottom:1px solid var(--line-dark);background:var(--ink);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.search-page-v2 .search-page-result{grid-template-columns:minmax(0,1fr) 150px 24px;gap:22px;padding:19px 18px;border-bottom:1px solid var(--line);transition:background .15s ease}
.search-page-v2 .search-page-result:last-child{border-bottom:0}
.search-page-v2 .search-page-result:hover{background:var(--paper)}
.search-page-v2 .search-page-result h3{font-size:1.04rem;line-height:1.28}
.search-page-v2 .search-page-result p{max-width:760px;line-height:1.5}
.search-page-v2 .search-page-result>span{align-self:start;padding-top:3px;font-size:.68rem;line-height:1.4}
.search-page-v2 .search-v2-results>p{margin:0;padding:24px;border:1px solid var(--line-dark);background:#fff;color:var(--muted)}
@media(max-width:900px){
 .search-v2-hero-grid,.search-v2-results-shell{grid-template-columns:1fr}
 .search-v2-panel{padding:20px}
 .search-v2-results-heading{position:static}
 .search-page-v2 .search-page-result{grid-template-columns:minmax(0,1fr) 24px}
 .search-page-v2 .search-page-result>span{display:none}
}
@media(max-width:560px){
 .search-page-v2 .search-page-hero{padding-block:38px 42px}
 .search-v2-intro h1{font-size:clamp(2.6rem,13vw,3.8rem);line-height:.94}
 .search-v2-intro>p:not(.eyebrow){font-size:.95rem}
 .search-v2-panel{padding:16px}
 .search-v2-examples{gap:6px}
 .search-v2-examples a{font-size:.72rem}
 .search-page-v2 .search-page-results{padding-block:30px 72px}
 .search-page-v2 .search-result-group{margin-bottom:20px}
 .search-page-v2 .search-page-result{padding:16px 15px}
}


/* ============================================================
   Search signature page - editorial search product
   ============================================================ */
.search-signature{background:var(--paper);min-height:70vh}
.search-signature-stage{position:relative;overflow:hidden;background:var(--ink);color:#fff;border-bottom:1px solid rgba(255,255,255,.14)}
.search-signature-stage:before{content:"";position:absolute;right:-12vw;top:-24vw;width:58vw;height:58vw;border:1px solid rgba(255,255,255,.08);border-radius:50%;pointer-events:none}
.search-signature-stage:after{content:"";position:absolute;right:8vw;top:-6vw;width:31vw;height:31vw;border:1px solid rgba(255,255,255,.055);border-radius:50%;pointer-events:none}
.search-signature-shell{position:relative;z-index:1;padding-top:clamp(62px,7vw,108px);padding-bottom:clamp(42px,5vw,70px)}
.search-signature-copy{max-width:1120px}
.search-signature-copy h1{margin:0;max-width:1050px;color:#fff;font-size:clamp(3.5rem,7vw,7.6rem);font-weight:700;line-height:.87;letter-spacing:-.07em;text-wrap:balance}
.search-signature-deck{max-width:780px;margin:30px 0 0;color:rgba(255,255,255,.74);font-size:clamp(1rem,1.3vw,1.18rem);line-height:1.7}
.search-signature-form{margin:clamp(40px,5vw,64px) 0 0;max-width:1260px}
.search-signature-input-wrap{display:grid;grid-template-columns:68px minmax(0,1fr) auto;align-items:center;background:#fff;border:1px solid #fff;box-shadow:0 22px 70px rgba(0,0,0,.22)}
.search-signature-icon{position:relative;width:68px;height:68px;display:block}
.search-signature-icon:before{content:"";position:absolute;width:19px;height:19px;border:2px solid var(--ink);border-radius:50%;left:22px;top:19px}
.search-signature-icon:after{content:"";position:absolute;width:11px;height:2px;background:var(--ink);transform:rotate(45deg);left:40px;top:41px;transform-origin:left center}
.search-signature-input-wrap input{width:100%;height:78px;min-width:0;border:0;background:#fff;color:var(--ink);padding:0 22px 0 0;font-size:clamp(1.05rem,1.55vw,1.35rem);font-weight:500;outline:0}
.search-signature-input-wrap input::placeholder{color:#7B8490;font-weight:400}
.search-signature-input-wrap button{height:78px;min-width:146px;padding:0 28px;border:0;border-left:1px solid var(--line-dark);background:var(--teal);color:#fff;font-weight:700;letter-spacing:-.01em}
.search-signature-input-wrap:focus-within{outline:4px solid rgba(255,255,255,.22);outline-offset:4px}
.search-signature-prompts{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:17px}
.search-signature-prompts>span{margin-right:4px;color:rgba(255,255,255,.53);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.search-signature-prompts a{padding:7px 10px;border:1px solid rgba(255,255,255,.24);color:rgba(255,255,255,.82);font-size:.78rem;font-weight:600;text-decoration:none;transition:.16s ease}
.search-signature-prompts a:hover{border-color:#fff;background:#fff;color:var(--ink)}

.search-signature-results{background:var(--paper);padding:clamp(44px,5vw,72px) 0 110px}
.search-signature-results-shell{display:grid;grid-template-columns:minmax(210px,270px) minmax(0,1fr);gap:clamp(38px,6vw,88px);align-items:start}
.search-signature-context{position:sticky;top:100px;padding-top:6px}
.search-signature-context h2{margin:0;color:var(--ink);font-size:clamp(1.75rem,2.4vw,2.65rem);line-height:1;letter-spacing:-.045em}
.search-signature-context>p:not(.eyebrow){margin:18px 0 0;color:var(--muted);font-size:.86rem;line-height:1.68}
.search-signature-key{display:grid;gap:9px;margin-top:28px;padding-top:22px;border-top:1px solid var(--line-dark)}
.search-signature-key span{display:flex;gap:9px;align-items:center;color:#56616C;font-size:.76rem;font-weight:600}
.search-signature-key i{width:7px;height:7px;background:var(--teal);display:inline-block;flex:0 0 auto}
.search-signature-results-main{min-width:0}

.search-signature-empty,.search-no-results{padding:clamp(30px,4vw,52px);background:#fff;border:1px solid var(--line-dark)}
.search-empty-kicker{margin:0 0 14px;color:var(--teal);font-size:.72rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.search-signature-empty h2,.search-no-results h2{max-width:680px;margin:0;color:var(--ink);font-size:clamp(2rem,3.2vw,3.7rem);line-height:.95;letter-spacing:-.05em}
.search-signature-empty>p:not(.search-empty-kicker),.search-no-results>p:not(.search-empty-kicker){max-width:720px;margin:20px 0 0;color:var(--muted);font-size:.95rem;line-height:1.72}
.search-empty-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:36px;border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}
.search-empty-grid>div{padding:21px 22px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);background:var(--paper)}
.search-empty-grid strong{display:block;color:var(--ink);font-size:.88rem}
.search-empty-grid span{display:block;margin-top:7px;color:var(--muted);font-size:.78rem;line-height:1.5}

.search-best{margin-bottom:34px;background:var(--white);border:1px solid var(--ink);box-shadow:0 18px 46px rgba(16,28,44,.075)}
.search-best-label{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:11px 17px;background:var(--ink);color:#fff}
.search-best-label span{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.search-best-label strong{font-size:.71rem;font-weight:600;color:rgba(255,255,255,.72)}
.search-best-result{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:24px;padding:clamp(25px,3.2vw,40px);text-decoration:none;background:#fff}
.search-best-result:hover{background:#FCFCFA}
.search-result-kicker{margin:0 0 12px;color:var(--teal);font-size:.68rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.search-best-result h3{max-width:900px;margin:0;color:var(--ink);font-size:clamp(1.8rem,3vw,3.25rem);line-height:.98;letter-spacing:-.048em}
.search-best-result p:not(.search-result-kicker){max-width:900px;margin:16px 0 0;color:#4F5A65;font-size:.96rem;line-height:1.68}
.search-best-meta{display:inline-block;margin-top:19px;color:var(--muted);font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em}
.search-best-result>i,.search-page-result>i{position:relative;display:block;width:34px;height:34px;align-self:center;border:1px solid var(--line-dark)}
.search-best-result>i:after,.search-page-result>i:after{content:"";position:absolute;width:8px;height:8px;border-top:2px solid var(--ink);border-right:2px solid var(--ink);transform:rotate(45deg);left:10px;top:11px}
.search-best-result:hover>i,.search-page-result:hover>i{background:var(--ink);border-color:var(--ink)}
.search-best-result:hover>i:after,.search-page-result:hover>i:after{border-color:#fff}

.search-result-group-signature{margin:0 0 28px;background:#fff;border:1px solid var(--line-dark)}
.search-group-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 17px;border-bottom:1px solid var(--line-dark);background:#F0F1EE}
.search-group-head h2{margin:0;color:var(--ink);font-size:.75rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.search-group-head span{color:var(--muted);font-size:.7rem;font-weight:600}
.search-result-group-signature .search-page-result{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,170px) 34px;gap:24px;align-items:center;padding:21px 17px;text-decoration:none;border-bottom:1px solid var(--line);background:#fff;transition:background .14s ease}
.search-result-group-signature .search-page-result:last-child{border-bottom:0}
.search-result-group-signature .search-page-result:hover{background:#FBFBF8}
.search-result-copy h3{margin:0;color:var(--ink);font-size:1.05rem;line-height:1.25;letter-spacing:-.02em}
.search-result-copy>p:not(.search-result-kicker){margin:7px 0 0;color:var(--muted);font-size:.82rem;line-height:1.55}
.search-result-group-signature .search-page-result>span{color:var(--muted);font-size:.69rem;font-weight:700;line-height:1.35;text-transform:uppercase;letter-spacing:.055em}

@media(max-width:980px){
 .search-signature-results-shell{grid-template-columns:1fr;gap:28px}
 .search-signature-context{position:static;display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.75fr);gap:30px;align-items:start;padding-bottom:25px;border-bottom:1px solid var(--line-dark)}
 .search-signature-context .eyebrow,.search-signature-context h2{grid-column:1}
 .search-signature-context>p:not(.eyebrow){grid-column:1;margin-top:10px}
 .search-signature-key{grid-column:2;grid-row:1/4;margin:0;padding:0 0 0 22px;border-top:0;border-left:1px solid var(--line-dark)}
}
@media(max-width:700px){
 .search-signature-shell{padding-top:46px;padding-bottom:34px}
 .search-signature-copy h1{font-size:clamp(3rem,14vw,5rem);line-height:.9}
 .search-signature-deck{margin-top:22px;font-size:.96rem}
 .search-signature-form{margin-top:32px}
 .search-signature-input-wrap{grid-template-columns:52px minmax(0,1fr)}
 .search-signature-icon{width:52px;height:64px}
 .search-signature-icon:before{left:16px;top:18px}
 .search-signature-icon:after{left:34px;top:40px}
 .search-signature-input-wrap input{height:64px;padding-right:14px;font-size:.95rem}
 .search-signature-input-wrap button{grid-column:1/3;width:100%;height:48px;min-width:0;border-left:0;border-top:1px solid var(--line-dark)}
 .search-signature-prompts{gap:6px}
 .search-signature-prompts>span{width:100%;margin:0 0 2px}
 .search-signature-context{display:block}
 .search-signature-key{display:none}
 .search-empty-grid{grid-template-columns:1fr}
 .search-best-label{align-items:flex-start;flex-direction:column;gap:4px}
 .search-best-result{grid-template-columns:minmax(0,1fr) 34px;padding:24px 18px}
 .search-best-result h3{font-size:clamp(1.55rem,8vw,2.35rem)}
 .search-result-group-signature .search-page-result{grid-template-columns:minmax(0,1fr) 30px;gap:16px;padding:18px 15px}
 .search-result-group-signature .search-page-result>span{display:none}
 .search-best-result>i,.search-page-result>i{width:30px;height:30px}
 .search-best-result>i:after,.search-page-result>i:after{left:8px;top:9px}
}

/* ===== R5 NAVIGATION, FOOTER & GUIDES DIRECTORY: 13 SEPTEMBER 2026 ===== */
.ico-nav .nav-view-all{margin-top:10px;padding-top:14px!important;border-top:1px solid var(--line);color:var(--teal)!important;font-weight:700!important}
.ico-nav .nav-mega--four>div{min-width:0}
.ico-nav .nav-mega--four a{max-width:29ch}
.footer-directory--expanded{grid-template-columns:minmax(230px,1.1fr) repeat(5,minmax(125px,.72fr));gap:clamp(24px,3.2vw,52px)}
.footer-directory--expanded .footer-link-column a{font-size:.8rem}
.footer-directory--expanded .footer-brand-block>p{max-width:320px}

.guides-directory-page{background:var(--paper)}
.guides-v2-hero{background:#fff;border-bottom:1px solid var(--line-dark)}
.guides-v2-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(310px,.65fr);gap:clamp(48px,7vw,110px);align-items:end;padding-top:clamp(62px,7vw,98px);padding-bottom:clamp(54px,6vw,82px)}
.guides-v2-hero .eyebrow,.guides-v2-start .eyebrow,.guides-v2-areas .eyebrow,.guides-v2-directory .eyebrow,.guides-v2-more .eyebrow{color:var(--teal)}
.guides-v2-hero h1{max-width:10ch;margin:12px 0 26px;font-size:clamp(3.8rem,6.8vw,7.7rem);line-height:.88;letter-spacing:-.066em}
.guides-v2-lede{max-width:760px;margin:0;font-size:1.12rem;line-height:1.67;color:var(--charcoal)}
.guides-v2-search-card{padding-top:22px;border-top:2px solid var(--ink)}
.guides-v2-search-card>strong{display:block;font-size:1.08rem}
.guides-v2-search-card>p{margin:10px 0 22px;color:var(--muted);line-height:1.62;font-size:.94rem}
.guides-v2-search-card button{width:100%;min-height:50px;border:1px solid var(--ink);background:var(--ink);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.guides-v2-search-card button:hover{background:var(--teal);border-color:var(--teal)}
.guides-v2-search-card>a{display:inline-block;margin-top:15px;color:var(--ink);font-size:.84rem;font-weight:700;text-decoration:none;border-bottom:1px solid var(--ink)}

.guides-v2-stats{background:var(--ink-deep);color:#fff}
.guides-v2-stats>.shell{display:grid;grid-template-columns:repeat(4,1fr)}
.guides-v2-stats>.shell>div{min-height:118px;padding:25px 28px;border-left:1px solid rgba(255,255,255,.15);display:flex;flex-direction:column;justify-content:center}
.guides-v2-stats>.shell>div:last-child{border-right:1px solid rgba(255,255,255,.15)}
.guides-v2-stats strong{font-size:2rem;line-height:1;letter-spacing:-.04em}
.guides-v2-stats span{margin-top:8px;color:#AAB7C4;font-size:.76rem;text-transform:uppercase;letter-spacing:.07em}

.guides-v2-start,.guides-v2-areas,.guides-v2-directory,.guides-v2-more{padding:clamp(64px,7vw,100px) 0}
.guides-v2-start{background:#fff;border-bottom:1px solid var(--line-dark)}
.guides-v2-start .section-heading,.guides-v2-areas .section-heading{margin-bottom:34px}
.guides-scenario-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}
.guides-scenario-grid>a{position:relative;min-height:205px;padding:24px 22px 25px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);color:var(--ink);text-decoration:none;display:grid;grid-template-columns:26px minmax(0,1fr) 22px;gap:12px}
.guides-scenario-grid>a>span{color:var(--teal);font-size:.68rem;font-weight:700}
.guides-scenario-grid h3{margin:0 0 9px;font-size:1.16rem;line-height:1.13;letter-spacing:-.025em}
.guides-scenario-grid p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.5}
.guides-scenario-grid i{font-style:normal;color:var(--teal)}
.guides-scenario-grid>a:hover{background:#F0F7F6}.guides-scenario-grid>a:hover h3{color:var(--teal)}

.guides-v2-areas{background:#F5F8F7;border-bottom:1px solid var(--line-dark)}
.guides-area-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line-dark);background:#fff}
.guides-area-group{padding:28px 26px;border-right:1px solid var(--line-dark)}
.guides-area-group:last-child{border-right:0}
.guides-area-group>h3{margin:0 0 18px;font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}
.guides-area-group>div{display:grid}
.guides-area-group a{display:grid;grid-template-columns:1fr auto;gap:16px;padding:12px 0;border-top:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:.9rem;font-weight:650}
.guides-area-group a b{color:var(--teal);font-size:.72rem;font-weight:700}
.guides-area-group a:hover span{color:var(--teal)}

.guides-v2-directory{background:#fff}
.guides-directory-intro{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.7fr);gap:clamp(48px,7vw,110px);align-items:end;padding-bottom:34px;border-bottom:1px solid var(--line-dark)}
.guides-directory-intro h2{max-width:11ch;margin:10px 0 18px;font-size:clamp(2.8rem,4.8vw,5.3rem);line-height:.94;letter-spacing:-.055em}
.guides-directory-intro>div:first-child>p:last-child{max-width:720px;color:var(--muted);line-height:1.65}
.guides-filter>label{display:block;margin-bottom:9px;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.guides-filter>div{display:grid;grid-template-columns:1fr auto}
.guides-filter input{min-height:50px;border:1px solid var(--line-dark);padding:0 14px;font:inherit;background:#fff}
.guides-filter button{border:1px solid var(--ink);background:var(--ink);color:#fff;padding:0 16px;font:inherit;font-weight:700;cursor:pointer}
.guides-filter>p{margin:9px 0 0;color:var(--muted);font-size:.78rem}
.guides-directory-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(48px,6vw,88px);align-items:start;padding-top:42px}
.guides-directory-nav{position:sticky;top:118px;border-top:2px solid var(--ink)}
.guides-directory-nav>strong{display:block;padding:16px 0 11px;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}
.guides-directory-nav a{display:grid;grid-template-columns:1fr auto;gap:12px;padding:9px 0;border-top:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:.8rem;line-height:1.3}
.guides-directory-nav a b{color:var(--teal);font-size:.72rem}.guides-directory-nav a:hover span{color:var(--teal)}
.guides-directory-group{scroll-margin-top:125px;padding:0 0 62px;margin:0 0 62px;border-bottom:1px solid var(--line-dark)}
.guides-directory-group:last-of-type{border-bottom:0;margin-bottom:0}
.guides-directory-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:35px;margin-bottom:24px}
.guides-directory-head h2{margin:6px 0 9px;font-size:clamp(2rem,3vw,3.25rem);line-height:1;letter-spacing:-.045em}
.guides-directory-head>div:first-child>p:last-child{max-width:730px;margin:0;color:var(--muted);font-size:.9rem;line-height:1.55}
.guides-directory-head>div:last-child{text-align:right;min-width:115px}
.guides-directory-head>div:last-child>strong{display:block;font-size:1.65rem;line-height:1}.guides-directory-head>div:last-child>span{display:block;margin-top:4px;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}
.guides-directory-head>div:last-child>a{display:inline-block;margin-top:14px;color:var(--teal);font-size:.76rem;font-weight:700;text-decoration:none}
.guides-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}
.guides-guide-card{min-height:126px;padding:18px 20px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);color:var(--ink);text-decoration:none;display:grid;grid-template-columns:minmax(0,1fr) 20px;gap:7px 18px}
.guides-guide-card strong{font-size:1rem;line-height:1.22;letter-spacing:-.018em}.guides-guide-card span{grid-column:1;color:var(--muted);font-size:.8rem;line-height:1.46}.guides-guide-card i{grid-column:2;grid-row:1/3;font-style:normal;color:var(--teal)}
.guides-guide-card:hover{background:#F0F7F6}.guides-guide-card:hover strong{color:var(--teal)}
.guides-guide-card[hidden],.guides-directory-group[hidden]{display:none!important}
.guides-no-results{padding:48px 0;border-top:1px solid var(--line-dark)}.guides-no-results strong{font-size:1.3rem}.guides-no-results p{color:var(--muted)}.guides-no-results button{border:1px solid var(--ink);background:var(--ink);color:#fff;padding:12px 16px;font:inherit;font-weight:700}

.guides-v2-more{background:var(--ink);color:#fff}
.guides-v2-more>.shell{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr);gap:clamp(55px,8vw,120px)}
.guides-v2-more h2{margin:10px 0 0;max-width:8ch;color:#fff;font-size:clamp(2.7rem,4.8vw,5.2rem);line-height:.94;letter-spacing:-.055em}
.guides-more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.25);border-left:1px solid rgba(255,255,255,.25)}
.guides-more-grid a{min-height:160px;padding:22px;border-right:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25);color:#fff;text-decoration:none;display:grid;grid-template-columns:1fr auto;gap:8px 16px}
.guides-more-grid strong{font-size:1.08rem}.guides-more-grid span{grid-column:1;color:#B9C5CE;font-size:.84rem;line-height:1.5}.guides-more-grid i{grid-column:2;grid-row:1/3;color:#8ED0CF;font-style:normal}.guides-more-grid a:hover{background:rgba(255,255,255,.06)}

@media(max-width:1280px){.footer-directory--expanded{grid-template-columns:minmax(220px,1.1fr) repeat(3,minmax(130px,.75fr))}.footer-directory--expanded .footer-brand-block{grid-row:span 2}.guides-scenario-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guides-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guides-area-group:nth-child(2){border-right:0}.guides-area-group:nth-child(-n+2){border-bottom:1px solid var(--line-dark)}}
@media(max-width:900px){.guides-v2-hero-grid,.guides-directory-intro,.guides-v2-more>.shell{grid-template-columns:1fr}.guides-v2-search-card{max-width:620px}.guides-v2-stats>.shell{grid-template-columns:repeat(2,1fr)}.guides-directory-layout{grid-template-columns:1fr}.guides-directory-nav{position:static;display:grid;grid-template-columns:repeat(2,1fr);gap:0 24px}.guides-directory-nav>strong{grid-column:1/-1}.guides-guide-grid{grid-template-columns:1fr}.guides-more-grid{max-width:800px}}
@media(max-width:620px){.guides-v2-hero-grid{padding-top:48px;padding-bottom:48px}.guides-v2-hero h1{font-size:clamp(3.1rem,15vw,5rem)}.guides-v2-stats>.shell{grid-template-columns:1fr 1fr}.guides-v2-stats>.shell>div{min-height:98px;padding:20px 16px}.guides-scenario-grid,.guides-area-grid,.guides-more-grid{grid-template-columns:1fr}.guides-scenario-grid>a{min-height:0}.guides-area-group{border-right:0!important;border-bottom:1px solid var(--line-dark)!important}.guides-area-group:last-child{border-bottom:0!important}.guides-directory-nav{grid-template-columns:1fr}.guides-directory-head{grid-template-columns:1fr}.guides-directory-head>div:last-child{text-align:left;display:flex;gap:8px 12px;align-items:baseline;flex-wrap:wrap}.guides-directory-head>div:last-child>a{width:100%;margin-top:4px}.guides-guide-card{min-height:0;padding:17px 0;border-left:0;border-right:0}.guides-guide-grid{border-left:0}.guides-more-grid{border-left:0}.guides-more-grid a{min-height:0;border-left:0;border-right:0}.footer-directory--expanded{grid-template-columns:1fr}}
/* ===== END R5 NAVIGATION, FOOTER & GUIDES DIRECTORY ===== */
/* R6 guided deadline tools */
.tool-guidance-callout{padding:18px 20px;border-left:4px solid var(--blue);background:#F2F6F5}
.tool-guidance-callout strong{display:block;font-size:1rem}.tool-guidance-callout p{margin:6px 0 0;color:var(--muted);font-size:.84rem;line-height:1.58}
.tool-decision-panel{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);background:#fff}
.tool-decision-panel+ .tool-decision-panel{margin-top:-27px;border-top:0}
.tool-decision-panel summary{position:relative;padding:17px 34px 17px 0;cursor:pointer;font-weight:700;font-size:.9rem;list-style:none}
.tool-decision-panel summary::-webkit-details-marker{display:none}.tool-decision-panel summary:after{content:'+';position:absolute;right:2px;top:13px;font-size:1.35rem;font-weight:400}.tool-decision-panel[open] summary:after{content:'−'}
.tool-decision-panel[open]{padding-bottom:22px}.tool-decision-panel .tool-form-grid{padding-top:4px}
.tool-result-status{display:inline-block;margin-bottom:16px;padding:7px 10px;border:1px solid var(--line-dark);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.tool-result-status.ok{border-color:#31735A;color:#255B47;background:#F0F7F3}.tool-result-status.warning{border-color:#B7791F;color:#744B0C;background:#FFF8E8}.tool-result-status.danger{border-color:#A94442;color:#7C2524;background:#FFF1F1}
.deadline-breakdown{margin-top:26px;border-top:1px solid var(--ink)}.deadline-step{display:grid;grid-template-columns:minmax(180px,.72fr) minmax(0,1.28fr);gap:20px;padding:13px 0;border-bottom:1px solid var(--line-dark);align-items:baseline}.deadline-step span{color:var(--muted);font-size:.76rem}.deadline-step strong{font-size:.86rem}
.tool-explanation{margin-top:24px;padding-top:18px;border-top:1px solid var(--line-dark)}.tool-explanation h4{margin:0 0 8px;font-size:.92rem}.tool-explanation p{margin:0 0 9px!important;color:var(--muted);font-size:.82rem!important;line-height:1.58!important}
.tool-warning ul{margin:10px 0 0;padding-left:20px}.tool-warning li{margin:7px 0;color:var(--text);font-size:.82rem;line-height:1.55}
.tool-result-actions{display:flex;flex-wrap:wrap;gap:9px}
.tool-guidance-article{padding:72px 0;border-bottom:1px solid var(--line-dark);background:#fff}.tool-guidance-grid{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:clamp(44px,7vw,110px)}.tool-guidance-grid h2{margin:8px 0 0;font-size:clamp(2rem,3.5vw,4rem);line-height:.98;letter-spacing:-.045em}.tool-guidance-copy{max-width:880px}.tool-guidance-copy h3{margin:28px 0 9px;font-size:1.25rem}.tool-guidance-copy h3:first-child{margin-top:0}.tool-guidance-copy p,.tool-guidance-copy li{color:var(--muted);font-size:.94rem;line-height:1.7}.tool-guidance-copy ul,.tool-guidance-copy ol{padding-left:22px}.tool-guidance-copy a{font-weight:700;color:var(--blue)}.tool-guide-example{margin:24px 0;padding:20px;border-left:4px solid var(--ink);background:var(--paper)}.tool-guide-example strong{display:block;margin-bottom:6px}.tool-guide-example p{margin:0;color:var(--text)}
@media(max-width:800px){.deadline-step,.tool-guidance-grid{grid-template-columns:1fr}.deadline-step{gap:4px}.tool-decision-panel+ .tool-decision-panel{margin-top:-27px}.tool-result-actions{display:grid}.tool-guidance-article{padding:52px 0}}

/* R7 database-native page builder output */
.builder-block--comparison .builder-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}
.builder-block--comparison .builder-comparison>div{padding:22px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}
.builder-block--comparison .builder-comparison h3{margin-top:0}.builder-layout--wide>.table-wrap,.builder-layout--wide>.route-grid,.builder-layout--wide>.builder-comparison{max-width:none!important}.builder-layout--split>div:not(.key-points):not(.source-box){max-width:none}.cs-builder-listing{padding-top:clamp(70px,8vw,110px);padding-bottom:clamp(70px,8vw,110px);border-top:1px solid var(--line-dark);background:var(--paper)}.cs-builder-listing .route-grid{margin-top:30px}.builder-block--copy-template .template-workbench textarea{margin-top:18px}.builder-block--copy-template .template-workbench .button{margin-top:12px}
@media(max-width:760px){.builder-block--comparison .builder-comparison{grid-template-columns:1fr;border-left:0}.builder-block--comparison .builder-comparison>div{padding:18px 0;border-left:0;border-right:0}}

/* ConsumerWise wordmark integration */
@media(max-width:1180px){.brand-logo-header{width:220px}}
@media(max-width:760px){.brand-logo-header{width:205px}.brand-logo-footer{width:260px}}
@media(max-width:390px){.brand-logo-header{width:188px}.brand-logo-footer{width:238px}}

/* ===== 14 SEPTEMBER 2026 MOBILE NAV REFINEMENT V2 =====
   Compact mobile navigation. Keeps the user's typography baseline untouched. */
@media(max-width:1250px){
  .ico-nav .header-inner{
    min-height:68px;
    gap:14px;
  }

  .ico-nav .header-actions{
    margin-left:auto;
    gap:0;
  }

  .ico-nav .menu-button{
    display:inline-flex!important;
    align-items:center;
    justify-content:flex-end;
    gap:9px;
    min-height:42px;
    padding:0 0 0 13px;
    border:0;
    border-left:1px solid var(--line);
    background:transparent;
    color:var(--ink);
    font-size:.82rem;
    font-weight:700;
  }

  .ico-nav .menu-button:hover,
  .ico-nav .menu-button:focus-visible{
    background:transparent;
    color:var(--teal);
  }

  .ico-nav .menu-button:focus-visible{
    outline:2px solid var(--teal);
    outline-offset:3px;
  }

  .ico-nav .menu-icon{
    width:21px;
    gap:4px;
  }

  .ico-nav .menu-icon i{
    width:21px;
    height:1.5px;
    background:currentColor;
    transform-origin:center;
    transition:transform .16s ease,opacity .16s ease;
  }

  .ico-nav .menu-button[aria-expanded="true"] .menu-icon i:nth-child(1){
    transform:translateY(5.5px) rotate(45deg);
  }

  .ico-nav .menu-button[aria-expanded="true"] .menu-icon i:nth-child(2){
    opacity:0;
  }

  .ico-nav .menu-button[aria-expanded="true"] .menu-icon i:nth-child(3){
    transform:translateY(-5.5px) rotate(-45deg);
  }

  .mobile-menu{
    padding:0;
    border-top:1px solid var(--line-dark);
    background:#fff;
    max-height:calc(100dvh - 68px);
    overflow-y:auto;
    overscroll-behavior:contain;
  }

  .mobile-menu-inner{
    padding-top:0;
    padding-bottom:20px;
  }

  .mobile-menu-head{
    min-height:48px;
    padding:0;
    border-bottom:1px solid var(--line-dark);
  }

  .mobile-menu-head strong{
    color:var(--ink);
    font-size:.74rem;
    font-weight:700;
    letter-spacing:.065em;
    text-transform:uppercase;
  }

  .mobile-menu-head button{
    min-height:36px;
    padding:0;
    border:0;
    background:transparent;
    color:var(--teal);
    font-size:.8rem;
    font-weight:700;
  }

  .mobile-quick{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1px;
    margin:12px 0 14px;
    border:0;
    background:var(--line-dark);
  }

  .mobile-quick a{
    display:flex;
    align-items:center;
    min-height:44px;
    padding:9px 10px;
    border:0!important;
    background:#F7F8F6;
    color:var(--ink);
    font-size:.77rem;
    line-height:1.22;
    font-weight:700;
    text-decoration:none;
  }

  .mobile-quick a:hover,
  .mobile-quick a:focus-visible{
    background:#ECF4F3;
    color:var(--teal);
  }

  .mobile-menu details{
    margin:0;
    border:0;
    border-top:1px solid var(--line-dark);
    background:#fff;
  }

  .mobile-menu details:last-of-type{
    border-bottom:1px solid var(--line-dark);
  }

  .mobile-menu summary{
    position:relative;
    padding:14px 34px 14px 0;
    color:var(--ink);
    font-size:.93rem;
    line-height:1.28;
    font-weight:700;
    list-style:none;
  }

  .mobile-menu summary::-webkit-details-marker{display:none}

  .mobile-menu summary:after{
    content:'+';
    position:absolute;
    right:1px;
    top:50%;
    transform:translateY(-52%);
    color:var(--teal);
    font-size:1.08rem;
    line-height:1;
    font-weight:500;
  }

  .mobile-menu details[open] summary{
    color:var(--teal);
  }

  .mobile-menu details[open] summary:after{
    content:'−';
  }

  .mobile-menu details>div{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 24px;
    padding:0 0 10px;
  }

  .mobile-menu details>div>a{
    position:relative;
    display:block;
    padding:8px 20px 8px 0;
    border:0;
    border-top:1px solid var(--line)!important;
    color:var(--ink);
    font-size:.84rem;
    line-height:1.32;
    font-weight:600;
    text-decoration:none;
  }

  .mobile-menu details>div>a:after{
    content:'→';
    position:absolute;
    right:1px;
    top:8px;
    color:#93A0A6;
    font-size:.8rem;
  }

  .mobile-menu details>div>a:hover,
  .mobile-menu details>div>a:focus-visible{
    color:var(--teal);
  }

  .mobile-menu details>div>a:hover:after,
  .mobile-menu details>div>a:focus-visible:after{
    color:var(--teal);
  }

  .mobile-menu-meta{
    display:flex;
    flex-wrap:wrap;
    gap:0;
    padding-top:12px;
  }

  .mobile-menu-meta a{
    margin-right:14px;
    padding:6px 14px 6px 0;
    border:0;
    border-right:1px solid var(--line);
    color:var(--muted);
    font-size:.76rem;
    line-height:1.3;
    font-weight:600;
  }

  .mobile-menu-meta a:last-child{
    margin-right:0;
    padding-right:0;
    border-right:0;
  }
}

@media(max-width:760px){
  .mobile-menu-inner.shell{
    padding-left:18px!important;
    padding-right:18px!important;
  }
}

@media(max-width:700px){
  .mobile-quick{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .mobile-menu details>div{
    grid-template-columns:1fr;
    gap:0;
  }
}

@media(max-width:420px){
  .ico-nav .menu-button{
    padding-left:11px;
  }

  .ico-nav .menu-button [data-menu-label]{
    display:none;
  }

  .mobile-menu-meta{
    display:grid;
    grid-template-columns:1fr;
  }

  .mobile-menu-meta a{
    margin:0;
    padding:7px 0;
    border-right:0;
    border-top:1px solid var(--line);
  }
}
/* ===== END MOBILE NAV REFINEMENT V2 ===== */

/* ===== 14 SEPTEMBER 2026 HEADING RHYTHM TUNE =====
   Loosens DM Sans display typography without changing body-copy sizing.
   Tracking remains slightly negative, but markedly less compressed than before. */
h1{
  letter-spacing:-.032em!important;
  line-height:1.02!important;
}

h2{
  letter-spacing:-.022em!important;
  line-height:1.08!important;
}

h3{
  letter-spacing:-.012em!important;
  line-height:1.15!important;
}

h4,h5,h6{
  letter-spacing:-.006em!important;
  line-height:1.2!important;
}

@media(max-width:700px){
  h1{line-height:1.04!important}
  h2{line-height:1.1!important}
}
/* ===== END HEADING RHYTHM TUNE ===== */


/* ===== 14 SEPTEMBER 2026 MATOMO CONSENT UI ===== */
.cookie-banner a{color:#fff;text-underline-offset:3px}
.cookie-banner a:hover{text-decoration-thickness:2px}
.cookie-actions button[data-cookie-essential],
.cookie-actions button[data-cookie-accept]{background:#fff!important;color:var(--ink)!important;border-color:#fff!important;min-width:142px}
.cookie-actions button[data-cookie-manage]{min-width:142px}
.cookie-pref-actions{display:flex;align-items:center;gap:18px;margin-top:22px}
.cookie-pref-actions a{color:var(--ink);font-size:.82rem;font-weight:700;text-underline-offset:3px}
.cookie-modal-backdrop{padding:0}
@media(max-width:620px){
  .cookie-banner-inner{gap:20px}
  .cookie-actions{display:grid!important;grid-template-columns:1fr;width:100%}
  .cookie-actions button{width:100%;min-width:0!important}
  .cookie-preferences{width:calc(100% - 24px);margin:12px auto;padding:22px 18px;max-height:calc(100dvh - 24px);overflow:auto}
  .cookie-pref-head h2{font-size:2rem}
  .cookie-pref-actions{align-items:stretch;flex-direction:column;gap:12px}
  .cookie-pref-actions .button{width:100%}
}
/* ===== END MATOMO CONSENT UI ===== */


/* ===== 14 SEPTEMBER 2026 POLICY FOOTER / CONSENT FINISHING ===== */
/* Footer policy links remain a single wrapping utility row on phones. */
@media(max-width:560px){
  .footer-policy-links{display:flex!important;flex-wrap:wrap!important;grid-template-columns:none!important;gap:9px 16px!important;align-items:center!important}
  .footer-policy-links a,.footer-policy-links .footer-link-button{display:inline!important;width:auto!important;font-size:.76rem!important}
}
body.cookie-modal-open{overflow:hidden}
.cookie-modal[hidden]{display:none!important}
/* ===== END POLICY FOOTER / CONSENT FINISHING ===== */


/* ===== 14 SEPTEMBER 2026 DOCUMENTATION ARTICLE ALIGNMENT V4 =====
   Documentation is intentionally not a separate visual product. Policy,
   governance and technical-reference pages use the same hero, editorial
   measure, heading scale, sidebar panels, mobile TOC and route grids as the
   site's ordinary guides and articles. Only policy-specific content types are
   defined here. */
.docs-article-page .docs-article-hero{background:var(--paper)}
.docs-article-page .docs-article-content{max-width:1060px!important}
.docs-article-page .docs-policy-section{scroll-margin-top:122px}
.docs-article-page .docs-policy-section>p,
.docs-article-page .docs-policy-section>ul,
.docs-article-page .docs-policy-section>ol{max-width:880px}
.docs-article-page .docs-policy-section>h2{
  max-width:900px;
  margin:0 0 16px!important;
  font-size:clamp(1.55rem,2.05vw,2.25rem)!important;
  letter-spacing:-.022em!important;
}
.docs-article-page .docs-policy-section code{padding:.1em .3em;background:#EEF0EC;font-size:.92em}
.docs-article-page .docs-section-links a[aria-current="page"]{color:var(--teal)!important;font-weight:750!important}
.docs-article-page .docs-section-links a[aria-current="page"]:after{content:'•';font-size:.8rem}

/* Flat policy callouts: same restrained information-design language as guides. */
.docs-article-callout{
  margin:24px 0;
  padding:20px 0;
  border:0!important;
  border-top:3px solid var(--teal)!important;
  border-bottom:1px solid var(--line-dark)!important;
  background:transparent!important;
}
.docs-article-callout.docs-policy-callout--warn{border-top-color:#A65024!important}
.docs-article-callout strong{display:block;margin-bottom:7px}
.docs-article-callout p:last-child{margin-bottom:0!important}
.docs-inline-button{padding:0;border:0;background:transparent;color:var(--teal);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* Policy tables reuse normal article table behaviour. */
.docs-table{width:100%;border-collapse:collapse;background:#fff}
.docs-table-wrap{width:100%;max-width:100%}

/* Official/reference links remain editorial rows rather than bespoke cards. */
.docs-article-source-list{margin:24px 0;border-top:1px solid var(--line-dark)}
.docs-article-source-list>a{display:grid;grid-template-columns:minmax(170px,.38fr) minmax(0,1fr) 20px;gap:18px;padding:17px 0;border-bottom:1px solid var(--line-dark);text-decoration:none}
.docs-article-source-list strong{font-size:.9rem}
.docs-article-source-list span{color:var(--muted);font-size:.84rem;line-height:1.5}
.docs-article-source-list i{font-style:normal;color:var(--teal)}
.docs-article-page .docs-related{margin-top:0!important;padding-top:0!important;border-top:0!important}

/* Documentation directory uses the ordinary collection/hub design system. */
.docs-hub-page .docs-hub-hero-v4 .hub-hero-grid>div:last-child>p{max-width:620px;margin:0;color:var(--muted);font-size:1.04rem;line-height:1.65}
.docs-hub-page .docs-hub-hero-v4 .hub-hero-grid>div:last-child>p+p{margin-top:16px}
.docs-hub-page .docs-hub-note{font-size:.9rem!important}
.docs-hub-page .docs-hub-section--alt{background:#fff}
.docs-hub-page .docs-hub-topic-grid>a>span{color:var(--teal)}
.docs-hub-page .docs-hub-cross .text-link{display:inline-block;margin:14px 20px 0 0;color:#fff}

@media(max-width:900px){
  .docs-article-page .docs-article-layout{grid-template-columns:1fr!important}
  .docs-article-page .docs-article-side{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px}
}
@media(max-width:760px){
  .docs-article-page .docs-policy-section>h2{font-size:clamp(1.45rem,6.3vw,1.9rem)!important}
}
@media(max-width:700px){
  .docs-article-page .docs-article-side{grid-template-columns:1fr!important}
  .docs-article-source-list>a{grid-template-columns:1fr 18px;gap:5px 10px}
  .docs-article-source-list span{grid-column:1}
  .docs-article-source-list i{grid-column:2;grid-row:1/3}
  .docs-hub-page .docs-hub-cross .text-link{display:block;margin-right:0}
}
/* ===== END DOCUMENTATION ARTICLE ALIGNMENT V4 ===== */

/* ===== CLEAN EXTERNAL SVG WORDMARK: 14 SEPTEMBER 2026 =====
   Uses the flattened, transform-free web SVG derived from the Illustrator master. */
.brand-logo{display:block;height:auto;max-width:100%}
/* ===== END CLEAN EXTERNAL SVG WORDMARK ===== */

/* ===== CONSUMERWISE CONTACT + CONTRIBUTE PAGES: R2 TYPOGRAPHY / ALIGNMENT =====
   Built on the user-supplied R6.9 stylesheet. One editorial heading axis throughout:
   eyebrow, heading and supporting copy are left aligned; cards/grids may vary below. */
.utility-page{background:var(--paper);text-align:left}
.utility-page .utility-main{background:var(--paper)}
.utility-page .utility-main h1,
.utility-page .utility-main h2,
.utility-page .utility-main h3,
.utility-page .utility-main h4,
.utility-page .utility-main p,
.utility-page .utility-main li,
.utility-page .utility-main a,
.utility-page .utility-main span,
.utility-page .utility-main strong{text-align:left}

/* Hero keeps the editorial split, but the title itself follows the normal left-hand axis. */
.utility-page .utility-hero{background:#fff;border-bottom:1px solid var(--line-dark)}
.utility-page .utility-hero-inner{
  display:grid;
  grid-template-columns:minmax(0,1.28fr) minmax(320px,.72fr);
  gap:clamp(48px,6vw,96px);
  align-items:end;
  padding-top:clamp(54px,5.8vw,78px);
  padding-bottom:clamp(46px,5vw,66px);
}
.utility-page .utility-hero .eyebrow{
  margin:0 0 16px;
  color:var(--teal);
}
.utility-page .utility-hero h1{
  max-width:900px;
  margin:0;
  color:var(--ink);
  font-size:clamp(3.15rem,5.15vw,5.45rem);
  font-weight:700;
  line-height:.96;
  letter-spacing:-.046em;
  text-wrap:balance;
}
.utility-page .utility-hero-deck{
  max-width:600px;
  padding-top:18px;
  border-top:1px solid var(--ink);
}
.utility-page .utility-hero-deck>p{
  margin:0;
  color:var(--muted);
  font-size:1rem;
  line-height:1.68;
}
.utility-page .utility-hero-deck>p+p{margin-top:14px}

/* All section introductions now use the same left-aligned stack. */
.utility-page .utility-section{
  padding:clamp(54px,5.5vw,78px) 0;
  border-bottom:1px solid var(--line-dark);
}
.utility-page .utility-section--white{background:#fff}
.utility-page .utility-section--ink{background:var(--ink);color:#fff;border-bottom:0}
.utility-page .utility-section--teal{background:var(--teal);color:#fff;border-bottom:0}
.utility-page .utility-section-head{
  display:block;
  max-width:900px;
  margin:0 0 clamp(28px,3.5vw,42px);
}
.utility-page .utility-section-head .eyebrow{
  margin:0 0 12px;
  color:var(--teal);
}
.utility-page .utility-section--ink .utility-section-head .eyebrow,
.utility-page .utility-section--teal .utility-section-head .eyebrow{color:#CDE9E7}
.utility-page .utility-section-head h2{
  max-width:860px;
  margin:0;
  color:var(--ink);
  font-size:clamp(2.05rem,3.05vw,3.35rem);
  font-weight:700;
  line-height:1.05;
  letter-spacing:-.032em;
  text-wrap:balance;
}
.utility-page .utility-section--ink h2,
.utility-page .utility-section--teal h2{color:#fff}
.utility-page .utility-section-copy{max-width:820px}
.utility-page .utility-section-copy>p{margin:0 0 17px;color:var(--muted);font-size:1rem;line-height:1.72}
.utility-page .utility-section--ink .utility-section-copy>p{color:#C8D2DC}
.utility-page .utility-section--teal .utility-section-copy>p{color:#E2EEEE}
.utility-page .utility-section-copy>p:last-child{margin-bottom:0}

/* Contact routing: keep the strong three-route element, but use restrained heading scale. */
.contact-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}
.contact-route{display:flex;flex-direction:column;min-height:340px;padding:25px 25px 27px;background:#fff;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}
.contact-route--primary{background:#EAF3F2}
.contact-route--privacy{background:var(--ink);color:#fff}
.contact-route-number{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:auto;padding-bottom:48px;color:var(--muted);font-size:.69rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.contact-route--privacy .contact-route-number{color:#A9B8C6}
.contact-route-status{font-size:.68rem;letter-spacing:.045em}
.contact-route h2{margin:0 0 12px;color:var(--ink);font-size:clamp(1.4rem,1.75vw,1.85rem);font-weight:700;line-height:1.1;letter-spacing:-.025em}
.contact-route--privacy h2{color:#fff}
.contact-route p{margin:0 0 18px;color:var(--muted);font-size:.9rem;line-height:1.62}
.contact-route--privacy p{color:#C7D2DD}
.contact-route-email{display:inline-block;width:fit-content;max-width:100%;margin-top:auto;color:var(--ink);font-size:clamp(.96rem,1.1vw,1.06rem);font-weight:750;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px;overflow-wrap:anywhere}
.contact-route--privacy .contact-route-email{color:#fff}
.contact-route-email:hover{color:var(--teal)}
.contact-route--privacy .contact-route-email:hover{color:#9ED0CE}
.contact-route-link{display:inline-flex;align-items:center;gap:9px;width:fit-content;margin-top:14px;color:var(--teal);font-size:.82rem;font-weight:700;text-decoration:none}
.contact-route--privacy .contact-route-link{color:#B9DDDB}
.contact-route-link:after{content:'→'}
.contact-route-pending{margin-top:auto;padding-top:17px;border-top:1px solid var(--line);color:var(--muted);font-size:.8rem;line-height:1.5}
.contact-purpose-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line-dark)}
.contact-purpose{display:grid;grid-template-columns:48px minmax(0,1fr);gap:18px;padding:22px 26px 23px 0;border-bottom:1px solid var(--line-dark)}
.contact-purpose:nth-child(even){padding-left:26px;border-left:1px solid var(--line-dark)}
.contact-purpose>span{color:var(--teal);font-size:.72rem;font-weight:750}
.contact-purpose h3{margin:0 0 7px;color:var(--ink);font-size:1.08rem;line-height:1.2;letter-spacing:-.015em}
.contact-purpose p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.58}
.contact-help-list{border-top:1px solid rgba(255,255,255,.28)}
.contact-help-list a{display:grid;grid-template-columns:minmax(0,1fr) 24px;gap:20px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.22);color:#fff;text-decoration:none}
.contact-help-list strong{font-size:1rem}.contact-help-list span{display:block;margin-top:4px;color:#BBC7D1;font-size:.83rem;line-height:1.5}.contact-help-list i{font-style:normal;color:#9ED0CE}
.contact-help-list a:hover strong{text-decoration:underline;text-underline-offset:4px}

/* Contribute components retain their structure but use the same typography rhythm. */
.contribute-hero-note{display:grid;gap:0;margin-top:27px;border-top:1px solid var(--line-dark)}
.contribute-hero-note span{display:grid;grid-template-columns:36px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);color:var(--ink);font-size:.81rem;font-weight:650}
.contribute-hero-note b{color:var(--teal);font-size:.68rem;letter-spacing:.04em}
.contribute-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}
.contribute-type{min-height:245px;padding:22px 23px 24px;background:#fff;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}
.contribute-type>span{display:block;margin-bottom:54px;color:var(--teal);font-size:.68rem;font-weight:750;letter-spacing:.06em}
.contribute-type h3{margin:0 0 9px;color:var(--ink);font-size:1.15rem;line-height:1.2;letter-spacing:-.018em}
.contribute-type p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.58}
.contribute-checklist{counter-reset:contribute;list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.contribute-checklist li{counter-increment:contribute;display:grid;grid-template-columns:50px minmax(0,1fr);gap:18px;padding:19px 0;border-bottom:1px solid var(--line-dark)}
.contribute-checklist li:before{content:counter(contribute,decimal-leading-zero);color:var(--teal);font-size:.72rem;font-weight:750}
.contribute-checklist strong{display:block;margin-bottom:5px;color:var(--ink);font-size:.98rem}
.contribute-checklist p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.58}

.contribute-email-panel{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.72fr);gap:clamp(46px,6vw,90px);align-items:end}
.contribute-email-panel .eyebrow{margin:0 0 12px;color:#CDE9E7}
.contribute-email-panel h2{max-width:760px;margin:0 0 18px;color:#fff;font-size:clamp(2.2rem,3.45vw,3.75rem);font-weight:700;line-height:1.02;letter-spacing:-.035em}
.contribute-email-panel p{max-width:700px;margin:0;color:#E2EEEE;font-size:.96rem;line-height:1.66}
.contribute-email-action{padding-top:18px;border-top:1px solid rgba(255,255,255,.52)}
.contribute-email-action>span{display:block;margin-bottom:10px;color:#CDE9E7;font-size:.69rem;font-weight:750;letter-spacing:.085em;text-transform:uppercase}
.contribute-email-address{display:block;color:#fff;font-size:clamp(1.15rem,1.75vw,1.65rem);font-weight:750;line-height:1.2;letter-spacing:-.02em;text-decoration:none;overflow-wrap:anywhere}
.contribute-email-address:hover{text-decoration:underline;text-underline-offset:5px}
.contribute-email-action small{display:block;margin-top:13px;color:#D8E8E8;font-size:.78rem;line-height:1.5}

.contribute-process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line-dark)}
.contribute-process>div{min-height:205px;padding:21px 23px 21px 0;border-bottom:1px solid var(--line-dark)}
.contribute-process>div+div{padding-left:23px;border-left:1px solid var(--line-dark)}
.contribute-process span{display:block;margin-bottom:46px;color:var(--teal);font-size:.7rem;font-weight:750}
.contribute-process strong{display:block;margin-bottom:8px;color:var(--ink);font-size:1rem}
.contribute-process p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.56}

.contribute-privacy-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:clamp(48px,7vw,96px);align-items:start}
.contribute-privacy-grid>.utility-section-copy{max-width:820px}
.contribute-privacy-grid .eyebrow{margin:0 0 12px;color:var(--teal)}
.contribute-privacy-grid h2{max-width:760px;margin:0 0 18px;color:var(--ink);font-size:clamp(2.05rem,3.05vw,3.35rem);font-weight:700;line-height:1.05;letter-spacing:-.032em;text-wrap:balance}
.contribute-do-not{border-top:1px solid var(--line-dark)}
.contribute-do-not>div{padding:14px 0;border-bottom:1px solid var(--line-dark)}
.contribute-do-not strong{display:block;margin-bottom:3px;color:var(--ink);font-size:.9rem}
.contribute-do-not span{display:block;color:var(--muted);font-size:.82rem;line-height:1.5}
.utility-inline-links{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:24px}
.utility-inline-links a{color:var(--teal);font-size:.84rem;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.utility-inline-links a:hover{color:var(--ink)}
.utility-section--ink .utility-inline-links a{color:#B9DDDB}
.utility-section--ink .utility-inline-links a:hover{color:#fff}

@media(max-width:980px){
  .utility-page .utility-hero-inner,.contribute-email-panel,.contribute-privacy-grid{grid-template-columns:1fr}
  .utility-page .utility-hero-inner{gap:30px}
  .utility-page .utility-hero-deck{max-width:760px}
  .contact-route-grid,.contribute-grid{grid-template-columns:1fr 1fr}
  .contact-route-grid .contact-route:last-child,.contribute-grid .contribute-type:last-child:nth-child(odd){grid-column:1/-1}
  .contribute-process{grid-template-columns:1fr 1fr}
  .contribute-process>div:nth-child(3){border-left:0}
}
@media(max-width:680px){
  .utility-page .utility-hero-inner{padding-top:40px;padding-bottom:38px}
  .utility-page .utility-hero h1{font-size:clamp(2.8rem,12.5vw,3.85rem);line-height:.98}
  .utility-page .utility-section{padding:46px 0}
  .utility-page .utility-section-head{margin-bottom:26px}
  .utility-page .utility-section-head h2,.contribute-privacy-grid h2{font-size:clamp(1.85rem,8.4vw,2.55rem);line-height:1.08}
  .contact-route-grid,.contribute-grid,.contribute-process{grid-template-columns:1fr;border-left:0}
  .contact-route-grid .contact-route:last-child,.contribute-grid .contribute-type:last-child:nth-child(odd){grid-column:auto}
  .contact-route,.contribute-type{min-height:0;padding:21px 18px;border-left:1px solid var(--line-dark)}
  .contact-route-number,.contribute-type>span{margin-bottom:30px;padding-bottom:0}
  .contact-purpose-grid{grid-template-columns:1fr}
  .contact-purpose,.contact-purpose:nth-child(even){grid-template-columns:38px minmax(0,1fr);padding:19px 0;border-left:0}
  .contribute-process>div,.contribute-process>div+div{min-height:0;padding:19px 0;border-left:0}
  .contribute-process span{margin-bottom:22px}
  .contribute-email-panel h2{font-size:clamp(2.05rem,9.5vw,2.85rem)}
  .contribute-checklist li{grid-template-columns:36px minmax(0,1fr);gap:11px}
}
/* ===== END CONTACT + CONTRIBUTE R2 ===== */

/* ===== 14 SEPTEMBER 2026 COMPACT ARTICLE HERO + PRIMARY ROUTE PANELS =====
   Layered after the user-supplied R6.9 baseline and Contact/Contribute R2.
   Article/document heroes lose unnecessary vertical depth. Homepage start routes
   become four deliberate brand panels without changing their HTML or wording. */

/* Compact article-style mastheads used by guides, reference pages and docs. */
.article-hero .article-hero-grid,
body.hub-page--article .article-hero-grid{
  padding-top:clamp(36px,3.8vw,52px)!important;
  padding-bottom:clamp(30px,3.25vw,44px)!important;
  gap:16px!important;
}
.article-hero .article-intro{max-width:900px}
.article-hero .article-intro>p{line-height:1.58}
.article-hero .article-meta{
  margin-top:15px!important;
  padding-top:10px!important;
}

/* Homepage primary routes: a compact four-step branded decision strip. */
.home-primary-routes{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  margin-top:40px;
  border:1px solid var(--line-dark)!important;
  background:var(--line-dark);
}
.home-primary-routes a,
.home-primary-routes a+a{
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:minmax(0,1fr) 38px;
  grid-template-rows:auto 1fr auto;
  gap:12px 16px;
  align-items:start;
  min-height:168px;
  padding:23px 22px 21px!important;
  overflow:hidden;
  border:0!important;
  color:var(--ink);
  text-decoration:none;
  transition:filter .16s ease,box-shadow .16s ease;
}
.home-primary-routes a:nth-child(1){background:#E8F2F1;box-shadow:inset 0 4px 0 var(--teal)}
.home-primary-routes a:nth-child(2){background:#F2F1ED;box-shadow:inset 0 4px 0 var(--ink)}
.home-primary-routes a:nth-child(3){background:var(--ink);color:#fff;box-shadow:inset 0 4px 0 var(--teal)}
.home-primary-routes a:nth-child(4){background:var(--teal);color:#fff;box-shadow:inset 0 4px 0 var(--ink-deep)}

.home-primary-routes a:before{
  position:absolute;
  top:17px;
  right:18px;
  z-index:-1;
  color:currentColor;
  font-size:3rem;
  line-height:.9;
  font-weight:750;
  letter-spacing:-.07em;
  opacity:.08;
}
.home-primary-routes a:nth-child(1):before{content:'01'}
.home-primary-routes a:nth-child(2):before{content:'02'}
.home-primary-routes a:nth-child(3):before{content:'03'}
.home-primary-routes a:nth-child(4):before{content:'04'}

.home-primary-routes small{
  grid-column:1;
  grid-row:1;
  max-width:80%;
  color:var(--teal);
  font-size:.7rem;
  line-height:1.35;
  font-weight:750;
  letter-spacing:.085em;
  text-transform:uppercase;
}
.home-primary-routes a:nth-child(2) small{color:#59636D}
.home-primary-routes a:nth-child(3) small{color:#A9D3D1}
.home-primary-routes a:nth-child(4) small{color:#D7ECEB}

.home-primary-routes strong{
  grid-column:1;
  grid-row:3;
  align-self:end;
  max-width:235px;
  color:inherit;
  font-size:1.08rem;
  line-height:1.22;
  letter-spacing:-.018em;
  font-weight:700;
}
.home-primary-routes i{
  grid-column:2;
  grid-row:3;
  align-self:end;
  justify-self:end;
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border:1px solid currentColor;
  font-style:normal;
  opacity:.72;
  transition:transform .16s ease,opacity .16s ease;
}
.home-primary-routes i:after{content:'→';font-size:1rem;line-height:1}
.home-primary-routes a:hover{
  filter:brightness(.985);
}
.home-primary-routes a:hover strong{color:inherit!important;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.home-primary-routes a:hover i{transform:translateX(3px);opacity:1}
.home-primary-routes a:focus-visible{outline:3px solid var(--teal);outline-offset:3px;z-index:2}
.home-primary-routes a:nth-child(3):focus-visible,
.home-primary-routes a:nth-child(4):focus-visible{outline-color:#fff}

@media(max-width:1000px){
  .home-primary-routes{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-primary-routes a,
  .home-primary-routes a+a,
  .home-primary-routes a:nth-child(3),
  .home-primary-routes a:nth-child(4){
    min-height:154px;
    padding:22px!important;
    border:0!important;
  }
}

@media(max-width:760px){
  .article-hero .article-hero-grid,
  body.hub-page--article .article-hero-grid{
    padding-top:28px!important;
    padding-bottom:26px!important;
    gap:13px!important;
  }
  .article-hero .article-meta{margin-top:12px!important;padding-top:9px!important}

  .home-primary-routes{grid-template-columns:1fr;margin-top:30px}
  .home-primary-routes a,
  .home-primary-routes a+a,
  .home-primary-routes a:nth-child(3),
  .home-primary-routes a:nth-child(4){
    grid-template-columns:minmax(0,1fr) 36px;
    grid-template-rows:auto 1fr auto;
    min-height:132px!important;
    padding:19px 18px 18px!important;
    border:0!important;
  }
  .home-primary-routes a:before{top:15px;right:15px;font-size:2.65rem}
  .home-primary-routes strong{max-width:280px;font-size:1.03rem}
  .home-primary-routes i{width:34px;height:34px}
}
/* ===== END COMPACT ARTICLE HERO + PRIMARY ROUTE PANELS ===== */



/* ===== HOMEPAGE START-ROUTE CONSOLIDATION: 14 SEPTEMBER 2026 =====
   One definitive four-route entry system. Replaces the duplicate hero strip
   and two-card guidance section while keeping ConsumerWise's square,
   editorial visual language. */
.home-start-chooser{
  background:#fff;
  border-bottom:1px solid var(--line-dark);
}
.home-start-chooser .home-start-heading{
  margin-bottom:clamp(30px,3.5vw,46px);
}
.home-start-chooser .home-start-heading h2{
  max-width:780px;
  font-size:clamp(2.5rem,4vw,4.35rem);
  line-height:.98;
  letter-spacing:-.05em;
}
.home-start-chooser .home-start-heading>p{
  max-width:560px;
  margin-top:2px;
  color:var(--muted);
  font-size:.98rem;
  line-height:1.68;
}
.home-start-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:1px solid var(--ink);
  border-left:1px solid var(--line-dark);
}
.home-start-route{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:268px;
  padding:26px 28px 27px;
  border-right:1px solid var(--line-dark);
  border-bottom:1px solid var(--line-dark);
  color:var(--ink);
  text-decoration:none;
  overflow:hidden;
}
.home-start-route--rights{background:#fff;box-shadow:inset 0 4px 0 var(--teal)}
.home-start-route--reply{background:#E8F2F1;box-shadow:inset 0 4px 0 #79AAA8}
.home-start-route--complaint{background:var(--ink);color:#fff;box-shadow:inset 0 4px 0 var(--teal);border-color:#405060}
.home-start-route--external{background:var(--teal);color:#fff;box-shadow:inset 0 4px 0 var(--ink-deep);border-color:#3F8588}
.home-start-route-head{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:14px;
  align-items:baseline;
  margin-bottom:clamp(38px,4vw,58px);
}
.home-start-route-head span{
  color:var(--teal);
  font-size:.7rem;
  line-height:1;
  font-weight:800;
  letter-spacing:.06em;
}
.home-start-route-head small{
  color:var(--muted);
  font-size:.71rem;
  line-height:1.35;
  font-weight:750;
  letter-spacing:.085em;
  text-transform:uppercase;
}
.home-start-route--complaint .home-start-route-head span,
.home-start-route--external .home-start-route-head span{color:#A9D3D1}
.home-start-route--complaint .home-start-route-head small{color:#BCC7D2}
.home-start-route--external .home-start-route-head small{color:#D7ECEB}
.home-start-route h3{
  max-width:520px;
  margin:0 0 12px;
  color:inherit;
  font-size:clamp(1.55rem,2.2vw,2.45rem);
  line-height:1.02;
  letter-spacing:-.04em;
}
.home-start-route p{
  max-width:590px;
  margin:0 0 28px;
  color:var(--muted);
  font-size:.91rem;
  line-height:1.62;
}
.home-start-route--complaint p{color:#C7D2DD}
.home-start-route--external p{color:#E2F0EF}
.home-start-route strong{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  width:100%;
  margin-top:auto;
  padding-top:17px;
  border-top:1px solid var(--line-dark);
  color:inherit;
  font-size:.81rem;
  line-height:1.35;
  font-weight:750;
}
.home-start-route--complaint strong{border-top-color:rgba(255,255,255,.24)}
.home-start-route--external strong{border-top-color:rgba(255,255,255,.34)}
.home-start-route strong i{
  flex:0 0 auto;
  font-style:normal;
  transition:transform .16s ease;
}
.home-start-route:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.home-start-route:hover strong i{transform:translateX(4px)}
.home-start-route:focus-visible{outline:3px solid var(--teal);outline-offset:-5px;z-index:2}
.home-start-route--complaint:focus-visible,
.home-start-route--external:focus-visible{outline-color:#fff}

@media(max-width:900px){
  .home-start-chooser .home-start-heading{grid-template-columns:1fr;gap:18px}
  .home-start-chooser .home-start-heading>p{max-width:720px}
}
@media(max-width:700px){
  .home-start-chooser{padding-top:58px!important;padding-bottom:62px!important}
  .home-start-chooser .home-start-heading{margin-bottom:28px}
  .home-start-chooser .home-start-heading h2{font-size:clamp(2.25rem,10vw,3.25rem)}
  .home-start-grid{grid-template-columns:1fr;border-left:0}
  .home-start-route{
    min-height:0;
    padding:22px 18px 23px;
    border-left:1px solid var(--line-dark);
  }
  .home-start-route--complaint,
  .home-start-route--external{border-left-color:rgba(255,255,255,.22)}
  .home-start-route-head{margin-bottom:30px}
  .home-start-route h3{font-size:clamp(1.55rem,7.5vw,2.1rem)}
  .home-start-route p{margin-bottom:24px;font-size:.88rem}
}
/* ===== END HOMEPAGE START-ROUTE CONSOLIDATION ===== */

/* ===== HOMEPAGE EDITORIAL ROUTE INDEX: 15 SEPTEMBER 2026 ===== */
.home-route-index{
  background:#F3F3EF;
  border-bottom:1px solid var(--line-dark);
}
.home-route-index-layout{
  display:grid;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
  gap:clamp(58px,8vw,126px);
  align-items:start;
}
.home-route-index-intro{
  position:sticky;
  top:112px;
}
.home-route-index-intro .eyebrow{margin:0 0 15px}
.home-route-index-intro h2{
  max-width:520px;
  margin:0;
  font-size:clamp(2.75rem,4.25vw,4.85rem);
  line-height:.95;
  letter-spacing:-.057em;
  text-wrap:balance;
}
.home-route-index-intro>p:not(.eyebrow){
  max-width:470px;
  margin:24px 0 0;
  color:var(--muted);
  font-size:.98rem;
  line-height:1.7;
}
.home-route-index-note{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:12px;
  max-width:470px;
  margin-top:32px;
  padding-top:18px;
  border-top:1px solid var(--line-dark);
  font-size:.78rem;
  line-height:1.55;
}
.home-route-index-note strong{color:var(--ink)}
.home-route-index-note span{color:var(--muted)}
.home-route-index-list{
  border-top:2px solid var(--ink);
}
.home-route-index-list>a{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 38px;
  gap:clamp(16px,2.2vw,30px);
  align-items:center;
  min-height:146px;
  padding:24px 4px;
  border-bottom:1px solid var(--line-dark);
  color:var(--ink);
  text-decoration:none;
  transition:padding .16s ease,background .16s ease;
}
.home-route-index-list>a:hover{
  padding-right:18px;
  padding-left:18px;
  background:#fff;
}
.home-route-index-list>a:focus-visible{
  outline:3px solid var(--teal);
  outline-offset:4px;
}
.home-route-index-number{
  align-self:start;
  padding-top:7px;
  color:var(--teal);
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.08em;
}
.home-route-index-list small{
  display:block;
  margin:0 0 7px;
  color:var(--muted);
  font-size:.68rem;
  font-weight:750;
  line-height:1.35;
  letter-spacing:.085em;
  text-transform:uppercase;
}
.home-route-index-list h3{
  margin:0;
  font-size:clamp(1.45rem,2vw,2.1rem);
  line-height:1.02;
  letter-spacing:-.038em;
}
.home-route-index-list p{
  max-width:650px;
  margin:9px 0 0;
  color:var(--muted);
  font-size:.88rem;
  line-height:1.58;
}
.home-route-index-list i{
  display:grid;
  width:36px;
  height:36px;
  border:1px solid var(--line-dark);
  place-items:center;
  font-size:1rem;
  font-style:normal;
  transition:background .16s ease,color .16s ease,transform .16s ease;
}
.home-route-index-list>a:hover i{
  background:var(--ink);
  color:#fff;
  transform:translateX(3px);
}
@media(max-width:900px){
  .home-route-index-layout{grid-template-columns:1fr;gap:42px}
  .home-route-index-intro{position:static}
  .home-route-index-intro h2{max-width:720px}
  .home-route-index-intro>p:not(.eyebrow){max-width:680px}
  .home-route-index-note{max-width:680px}
}
@media(max-width:700px){
  .home-route-index{padding-top:58px!important;padding-bottom:62px!important}
  .home-route-index-layout{gap:34px}
  .home-route-index-intro h2{font-size:clamp(2.45rem,11vw,3.35rem)}
  .home-route-index-intro>p:not(.eyebrow){margin-top:19px;font-size:.92rem}
  .home-route-index-note{grid-template-columns:1fr;gap:4px;margin-top:24px;padding-top:15px}
  .home-route-index-list>a{
    grid-template-columns:28px minmax(0,1fr) 30px;
    gap:12px;
    min-height:0;
    padding:20px 0 21px;
  }
  .home-route-index-list>a:hover{padding-right:0;padding-left:0;background:transparent}
  .home-route-index-number{padding-top:5px;font-size:.64rem}
  .home-route-index-list small{margin-bottom:6px;font-size:.62rem}
  .home-route-index-list h3{font-size:1.35rem}
  .home-route-index-list p{margin-top:7px;font-size:.82rem;line-height:1.52}
  .home-route-index-list i{width:30px;height:30px;font-size:.86rem}
}
/* ===== END HOMEPAGE EDITORIAL ROUTE INDEX ===== */

/* ConsumerWise homepage hero R4: search-stage inspired, homepage-specific */
.home-page .home-hero-v4{position:relative;overflow:hidden;background:var(--ink);color:#fff;border-bottom:1px solid rgba(255,255,255,.14)}
.home-page .home-hero-v4:before{content:"";position:absolute;right:-16vw;top:-25vw;width:61vw;height:61vw;border:1px solid rgba(255,255,255,.075);border-radius:50%;pointer-events:none}
.home-page .home-hero-v4:after{content:"";position:absolute;right:7vw;top:-7vw;width:33vw;height:33vw;border:1px solid rgba(255,255,255,.05);border-radius:50%;pointer-events:none}
.home-page .home-hero-v4-shell{position:relative;z-index:1;padding-top:clamp(58px,6.2vw,92px);padding-bottom:clamp(42px,4.8vw,68px)}
.home-page .home-hero-v4-grid{display:grid;grid-template-columns:minmax(0,1.48fr) minmax(310px,.52fr);gap:clamp(56px,7vw,110px);align-items:end}
.home-page .home-hero-v4-copy{min-width:0}
.home-page .home-hero-v4 .home-hero-kicker{margin:0 0 22px;color:#BFDADB;font-weight:700;letter-spacing:.105em;text-transform:uppercase}
.home-page .home-hero-v4 h1{max-width:1040px;margin:0;color:#fff;font-size:clamp(3.75rem,6.5vw,6.8rem);font-weight:700;line-height:.89;letter-spacing:-.066em;text-wrap:balance}
.home-page .home-hero-v4 .home-hero-lead{max-width:850px;margin:27px 0 0;color:rgba(255,255,255,.76);font-size:clamp(1.06rem,1.42vw,1.28rem);line-height:1.62;letter-spacing:-.012em}
.home-page .home-hero-v4-cta{align-self:end;padding:0 0 4px 30px;border-left:1px solid rgba(255,255,255,.28)}
.home-page .home-hero-v4-cta-kicker{margin:0 0 12px;color:#AFCFD1;font-size:.69rem;font-weight:700;letter-spacing:.105em;text-transform:uppercase}
.home-page .home-hero-v4-cta h2{max-width:390px;margin:0;color:#fff;font-size:clamp(1.65rem,2.25vw,2.55rem);line-height:1.02;letter-spacing:-.04em}
.home-page .home-hero-v4-cta>p:not(.home-hero-v4-cta-kicker){max-width:370px;margin:16px 0 23px;color:rgba(255,255,255,.68);font-size:.9rem;line-height:1.6}
.home-page .home-hero-v4-cta-primary{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:15px 0;border-top:1px solid rgba(255,255,255,.38);border-bottom:1px solid rgba(255,255,255,.38);color:#fff;font-weight:700;text-decoration:none}
.home-page .home-hero-v4-cta-primary span{font-size:1.15rem}
.home-page .home-hero-v4-cta-primary:hover{text-decoration:underline;text-underline-offset:4px}
.home-page .home-hero-v4-cta-secondary{display:inline-block;margin-top:15px;color:#C9DDDE;font-size:.82rem;font-weight:700;text-underline-offset:4px}
.home-page .home-search-v4{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;width:100%;margin-top:clamp(38px,4.8vw,58px);border:1px solid rgba(255,255,255,.58);background:#fff}
.home-page .home-search-v4-icon{position:relative;width:18px;height:18px;margin-left:18px;border:2px solid var(--ink);border-radius:50%}
.home-page .home-search-v4-icon:after{content:"";position:absolute;width:7px;height:2px;right:-5px;bottom:-2px;background:var(--ink);transform:rotate(45deg);transform-origin:center}
.home-page .home-search-v4 input{height:68px;min-width:0;padding:0 18px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:1rem;outline:0}
.home-page .home-search-v4 input::placeholder{color:#626E77}
.home-page .home-search-v4 button{align-self:stretch;min-width:126px;border:0;border-left:1px solid var(--ink);background:var(--teal);color:#fff;font:inherit;font-weight:700}
.home-page .home-search-v4 button:hover{background:#125A5E}
.home-page .home-search-v4:focus-within{outline:3px solid rgba(255,255,255,.25);outline-offset:3px}
.home-page .home-search-v4-prompts{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:15px}
.home-page .home-search-v4-prompts>span{margin-right:3px;color:rgba(255,255,255,.48);font-size:.69rem;font-weight:700;letter-spacing:.095em;text-transform:uppercase}
.home-page .home-search-v4-prompts a{padding:6px 9px;border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.78);font-size:.75rem;font-weight:600;text-decoration:none}
.home-page .home-search-v4-prompts a:hover{border-color:#fff;background:#fff;color:var(--ink)}
@media(max-width:980px){
  .home-page .home-hero-v4-grid{grid-template-columns:1fr;gap:36px}
  .home-page .home-hero-v4-cta{max-width:760px;padding:26px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.25)}
  .home-page .home-hero-v4-cta h2{max-width:620px}
  .home-page .home-hero-v4-cta>p:not(.home-hero-v4-cta-kicker){max-width:620px}
  .home-page .home-hero-v4-cta-primary{max-width:520px}
}
@media(max-width:640px){
  .home-page .home-hero-v4-shell{padding-top:43px;padding-bottom:36px}
  .home-page .home-hero-v4 .home-hero-kicker{margin-bottom:17px;font-size:.65rem;line-height:1.45}
  .home-page .home-hero-v4 h1{font-size:clamp(3rem,13vw,4.45rem);line-height:.91;letter-spacing:-.055em}
  .home-page .home-hero-v4 .home-hero-lead{margin-top:21px;font-size:1rem}
  .home-page .home-hero-v4-grid{gap:31px}
  .home-page .home-hero-v4-cta{padding-top:22px}
  .home-page .home-hero-v4-cta h2{font-size:1.8rem}
  .home-page .home-hero-v4-cta>p:not(.home-hero-v4-cta-kicker){margin:13px 0 18px}
  .home-page .home-search-v4{grid-template-columns:39px minmax(0,1fr);margin-top:31px}
  .home-page .home-search-v4 input{height:58px;padding:0 12px;font-size:16px}
  .home-page .home-search-v4 button{grid-column:1/-1;min-height:48px;border-left:0;border-top:1px solid var(--ink)}
  .home-page .home-search-v4-prompts{gap:6px;margin-top:13px}
  .home-page .home-search-v4-prompts>span{width:100%;margin:0 0 2px}
}

/* ===== 15 SEPTEMBER 2026 OG-INSPIRED EDITORIAL HERO + SITUATION MENU POLISH R2 =====
   ConsumerWise mastheads use the same visual language as the global OG card:
   dark ink field, restrained teal/aqua arcs and soft overlapping circles.
   CSS only: no decorative image assets and no change to hero content/routing. */

/* Your situation mega-menu: keep the two primary actions deliberately stacked. */
.ico-nav .nav-mega--relationship .nav-mega-intro .nav-mega-cta{
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  width:100%;
  margin:0!important;
  padding:11px 0!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.22)!important;
  color:#fff!important;
  text-decoration:none!important;
}
.ico-nav .nav-mega--relationship .nav-mega-intro .nav-mega-cta:first-of-type{
  margin-top:7px!important;
  border-top:1px solid rgba(255,255,255,.22)!important;
}
.ico-nav .nav-mega--relationship .nav-mega-intro .nav-mega-cta:after{
  content:"→";
  margin-left:18px;
  opacity:.7;
  transition:transform .16s ease,opacity .16s ease;
}
.ico-nav .nav-mega--relationship .nav-mega-intro .nav-mega-cta:hover:after{
  transform:translateX(3px);
  opacity:1;
}

/* Shared OG-card masthead treatment. Homepage/search signature heroes are separate
   components and therefore remain untouched. */
.article-hero,
.hub-hero,
.tool-page-hero,
.utility-page .utility-hero,
.docs-article-hero,
.docs-document-hero,
.docs-centre-hero{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:var(--ink)!important;
  color:#fff;
  border-bottom-color:rgba(255,255,255,.14)!important;
}

/* Oversized overlapping geometry deliberately sits outside the right/bottom edge,
   echoing the OG artwork rather than reading as an icon or diagram. */
.article-hero:before,
.hub-hero:before,
.tool-page-hero:before,
.utility-page .utility-hero:before,
.docs-article-hero:before,
.docs-document-hero:before,
.docs-centre-hero:before{
  content:"";
  position:absolute;
  z-index:0;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle 420px at calc(100% + 108px) calc(100% + 172px),
      transparent 0 278px,
      rgba(69,207,208,.72) 280px 283px,
      transparent 285px),
    radial-gradient(circle 470px at calc(100% + 88px) calc(100% + 142px),
      rgba(190,218,219,.13) 0 330px,
      transparent 332px),
    radial-gradient(circle 610px at calc(100% + 238px) calc(100% + 218px),
      rgba(92,157,160,.22) 0 434px,
      transparent 436px);
}
.article-hero:after,
.hub-hero:after,
.tool-page-hero:after,
.utility-page .utility-hero:after,
.docs-article-hero:after,
.docs-document-hero:after,
.docs-centre-hero:after{
  content:"";
  position:absolute;
  z-index:0;
  right:-280px;
  bottom:-425px;
  width:610px;
  height:610px;
  border:2px solid rgba(255,255,255,.16);
  border-radius:50%;
  pointer-events:none;
}

/* Keep all real masthead content above the decorative geometry. */
.article-hero>.shell,
.hub-hero>.shell,
.tool-page-hero>.shell,
.utility-page .utility-hero>.shell,
.docs-article-hero>.shell,
.docs-document-hero>.shell,
.docs-centre-hero>.shell{
  position:relative;
  z-index:1;
}

/* Dark-field typography. */
.article-hero h1,
.hub-hero h1,
.tool-page-hero h1,
.utility-page .utility-hero h1,
.docs-article-hero h1,
.docs-document-hero h1,
.docs-centre-hero h1{
  color:#fff!important;
}
.article-hero .eyebrow,
.hub-hero .eyebrow,
.tool-page-hero .eyebrow,
.utility-page .utility-hero .eyebrow,
.docs-article-hero .eyebrow,
.docs-document-hero .eyebrow,
.docs-centre-hero .eyebrow{
  color:#A9D3D1!important;
}
.article-hero .article-intro>p,
.hub-hero .hub-hero-grid>div:last-child>p,
body.hub-page--classic .hub-hero-grid>div:last-child>p,
.docs-hub-page .docs-hub-hero-v4 .hub-hero-grid>div:last-child>p,
.tool-page-hero .tool-page-lead>p,
.utility-page .utility-hero-deck>p,
.docs-article-hero p,
.docs-document-hero p,
.docs-centre-hero p{
  color:rgba(255,255,255,.74)!important;
}
.article-hero .article-meta,
.tool-page-hero .tool-page-meta,
.utility-page .utility-hero-deck{
  border-color:rgba(255,255,255,.24)!important;
}
.article-hero .article-meta span,
.tool-page-hero .tool-page-meta span,
.tool-page-hero .tool-back,
.docs-article-hero a,
.docs-document-hero a,
.docs-centre-hero a{
  color:rgba(255,255,255,.72)!important;
}
.article-hero .article-meta span+span{
  border-left-color:rgba(255,255,255,.22)!important;
}
.tool-page-hero .tool-back:hover,
.docs-article-hero a:hover,
.docs-document-hero a:hover,
.docs-centre-hero a:hover{
  color:#fff!important;
}

/* At tablet widths keep the circles visible but push more of them beyond the edge. */
@media(max-width:980px){
  .article-hero:before,
  .hub-hero:before,
  .tool-page-hero:before,
  .utility-page .utility-hero:before,
  .docs-article-hero:before,
  .docs-document-hero:before,
  .docs-centre-hero:before{
    opacity:.82;
    transform:translateX(105px);
  }
  .article-hero:after,
  .hub-hero:after,
  .tool-page-hero:after,
  .utility-page .utility-hero:after,
  .docs-article-hero:after,
  .docs-document-hero:after,
  .docs-centre-hero:after{
    right:-365px;
  }
}

/* Mobile keeps a single quiet corner arc rather than removing all visual identity. */
@media(max-width:700px){
  .article-hero:before,
  .hub-hero:before,
  .tool-page-hero:before,
  .utility-page .utility-hero:before,
  .docs-article-hero:before,
  .docs-document-hero:before,
  .docs-centre-hero:before{
    opacity:.62;
    transform:translateX(210px) translateY(90px) scale(.78);
    transform-origin:right bottom;
  }
  .article-hero:after,
  .hub-hero:after,
  .tool-page-hero:after,
  .utility-page .utility-hero:after,
  .docs-article-hero:after,
  .docs-document-hero:after,
  .docs-centre-hero:after{display:none}
}
/* ===== END OG-INSPIRED EDITORIAL HERO + SITUATION MENU POLISH R2 ===== */

/* ===== CONSUMERWISE CONTENT WIDTH ALIGNMENT: 2026-09-15 =====
   Keep the established article structure, but remove narrower prose caps so
   headings, paragraphs, lists, examples and tables share one editorial measure. */
.article-content>.article-section>p,
.article-content>.article-section>ul,
.article-content>.article-section>ol,
.article-content>.article-section>blockquote{
  width:100%;
  max-width:none!important;
}
.article-content .help-answer>h2,
.article-content .resolution-intro{max-width:none!important}

/* News article prose should align with the widest content blocks in the body. */
.news-story-body>.article-section>p,
.news-story-body>.article-section>ul,
.news-story-body>.article-section>ol,
.news-story-body>.article-section>blockquote{
  width:100%;
  max-width:none!important;
}

/* Policy/docs pages use the same full editorial measure as their tables/callouts. */
.docs-article-page .docs-policy-section>h2,
.docs-article-page .docs-policy-section>h3,
.docs-article-page .docs-policy-section>p,
.docs-article-page .docs-policy-section>ul,
.docs-article-page .docs-policy-section>ol,
.docs-article-page .docs-policy-section>blockquote,
.docs-article-page .docs-policy-section>.table-wrap{
  width:100%;
  max-width:none!important;
}
