/* Focused design refinements: primary routes, optional tools, journeys and resources.
   Loaded only on the selected service and utility pages. Existing behaviour stays in its own scripts. */

/* Focused November design pass. Decorations are scoped to the selected pages. */
html:root body[data-design-refined] {
  --design-accent:var(--experience-accent,#7c3aed);
  --design-link:var(--experience-link,#6d28d9);
  --design-ink:var(--experience-ink,var(--ink));
  --design-muted:var(--experience-muted,var(--muted));
  --design-paper:var(--experience-paper,var(--surface));
  --design-wash:var(--experience-soft,var(--soft));
  --design-edge:rgba(var(--neon-rgb,124,58,237),.22);
  --design-shadow:rgba(17,35,64,.055);
}
html:root[data-theme="dark"] body[data-design-refined] {
  --design-shadow:rgba(0,0,0,.16);
}
html:root body[data-design-refined] .jc-design-symbol {
  display:inline-grid;place-items:center;flex:0 0 auto;box-sizing:border-box;
  width:46px;height:46px;margin:0;border:1px solid var(--design-edge);
  border-radius:13px;background:var(--design-wash);color:var(--design-accent);
}
html:root body[data-design-refined] .jc-design-symbol svg {
  display:block;width:27px;height:27px;max-width:none;
}

/* The six primary services use recognisable line icons and a consistent action. */
html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link {
  display:grid;grid-template-columns:46px minmax(0,1fr) 28px;align-items:center;
  gap:14px;min-width:0;min-height:124px;padding:22px 20px;border-radius:16px;
  background:var(--design-paper);border-color:var(--design-edge);color:var(--design-ink);
  box-shadow:0 7px 22px var(--design-shadow);transform:none;
  transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease;
}
html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link > .jc-design-symbol {
  display:grid;align-self:center;margin:0;color:var(--design-accent);
}
html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link > div {min-width:0;}
html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link h2 {
  color:var(--design-ink);line-height:1.4;
}
html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link p {
  color:var(--design-muted);line-height:1.65;margin-bottom:0;
}
html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link > b {
  display:grid;place-items:center;box-sizing:border-box;align-self:center;
  width:28px;height:28px;margin:0;border-radius:50%;font-size:1rem;
  color:var(--design-link);background:var(--design-wash);
}
html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link:is(:hover,:focus-visible,[data-preview="true"]) {
  background:var(--design-wash);border-color:var(--design-accent);
  box-shadow:inset 3px 0 var(--design-accent),0 10px 26px var(--design-shadow);
  transform:none;
}
html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link:is(:hover,:focus-visible,[data-preview="true"]) > .jc-design-symbol {
  background:var(--design-paper);border-color:var(--design-accent);
}
html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link:focus-visible {
  outline:3px solid var(--design-accent);outline-offset:4px;
}

/* Keep the merged private-client route and fast bridging in the six-card grid. */
html:root body.home-depth[data-design-refined] .home-specialist-routes[data-refined-routes] .wealth-links > a {
  grid-template-columns:42px minmax(0,1fr) 16px;gap:12px;
  background:var(--design-paper);box-shadow:0 5px 16px var(--design-shadow);
  transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease;
  transform:none;
}
html:root body.home-depth[data-design-refined] .home-specialist-routes[data-refined-routes] .wealth-links .pt-route-symbol {
  box-sizing:border-box;display:block;width:42px;height:42px;margin:0;padding:7px;
  border:1px solid var(--design-edge);border-radius:12px;
  background:var(--design-wash);color:var(--design-accent);
}
html:root body.home-depth[data-design-refined] .home-specialist-routes[data-refined-routes] .wealth-links > a:is(:hover,:focus-visible) {
  border-color:var(--design-accent);background:var(--design-wash);
  box-shadow:0 8px 22px var(--design-shadow);transform:none;
}
html:root body.home-depth[data-design-refined] .home-specialist-routes[data-refined-routes] .wealth-links > a:is(:hover,:focus-visible) .pt-route-symbol {
  border-color:var(--design-accent);background:var(--design-paper);
}

/* Existing service cards gain a quiet divider and a clearly framed arrow. */
html:root body.page-clarity[data-design-refined] .clarity-route-action {
  padding-top:15px;border-top:1px solid var(--design-edge);
}
html:root body.page-clarity[data-design-refined] .clarity-route-action > span[aria-hidden="true"] {
  display:inline-grid;place-items:center;flex:0 0 28px;width:28px;height:28px;
  border:1px solid var(--design-edge);border-radius:50%;background:var(--design-wash);
  font-size:1rem;text-decoration:none;
}
html:root body.page-clarity[data-design-refined] a.clarity-route-card:focus-visible {
  outline:3px solid var(--design-accent);outline-offset:4px;
}

/* A shared title treatment makes the optional planning tools easy to recognise. */
html:root body[data-design-refined] :is(.bridge-exit-heading,.development-brief-intro).jc-tool-heading {
  display:grid;grid-template-columns:46px minmax(0,1fr);gap:18px;align-items:start;
  max-width:none;padding:24px clamp(18px,2.6vw,28px);margin-bottom:24px;
  border:1px solid var(--design-edge);border-inline-start:3px solid var(--design-accent);
  border-radius:0 16px 16px 0;background:var(--design-wash);
}
html:root body[data-design-refined] .jc-tool-heading-copy {min-width:0;}
html:root body[data-design-refined] .jc-tool-heading-copy h2 {max-width:30ch;}
html:root body[data-design-refined] .jc-tool-heading-copy p {max-width:78ch;}
html:root body[data-design-refined] .jc-tool-heading .jc-design-symbol {
  background:var(--design-paper);margin-top:3px;
}
html:root body[data-design-refined] :is(.renewal-planner,.development-brief-shell,.scheme-guide-finder) > summary.jc-tool-summary {
  display:grid;grid-template-columns:46px minmax(0,1fr) 22px;align-items:center;gap:16px;
  position:relative;list-style:none;color:var(--design-ink);background:var(--design-paper);
  transition:background-color .18s ease;
}
html:root body[data-design-refined] :is(.renewal-planner,.development-brief-shell,.scheme-guide-finder) > summary.jc-tool-summary::-webkit-details-marker {display:none;}
html:root body[data-design-refined] .jc-tool-summary > .jc-tool-summary-copy {min-width:0;}
html:root body[data-design-refined] .jc-tool-summary > .jc-design-symbol {
  display:grid;margin:0;color:var(--design-accent);
}
html:root body[data-design-refined] :is(.renewal-planner,.development-brief-shell,.scheme-guide-finder) > summary.jc-tool-summary::after {
  content:"+";position:static;display:grid;place-items:center;width:22px;height:28px;
  color:var(--design-link);font-size:1.5rem;line-height:1;font-weight:400;transform:none;
}
html:root body[data-design-refined] :is(.renewal-planner,.development-brief-shell,.scheme-guide-finder)[open] > summary.jc-tool-summary::after {content:"−";}
html:root body[data-design-refined] :is(.renewal-planner,.development-brief-shell,.scheme-guide-finder)[open] > summary.jc-tool-summary {
  background:var(--design-wash);box-shadow:inset 3px 0 var(--design-accent);
}
html:root body[data-design-refined] .jc-tool-summary .jc-design-symbol svg {display:block;margin:0;}
html:root body[data-design-refined] :is(.renewal-planner,.development-brief-shell,.scheme-guide-finder) > summary.jc-tool-summary:focus-visible {
  outline:3px solid var(--design-accent);outline-offset:-5px;
}
html:root body[data-design-refined] .development-brief-shell {border-top:3px solid var(--design-accent);}
/* The finder already has its own subheading; keep its copy in the middle column. */
html:root body[data-design-refined] .scheme-guide-finder > summary.jc-tool-summary .jc-tool-summary-copy {
  display:block;font-size:1.05rem;font-weight:700;line-height:1.6;color:var(--design-ink);
}
html:root body[data-design-refined] .scheme-guide-finder > summary.jc-tool-summary .jc-tool-summary-copy > small {
  display:block;font-size:.86rem;font-weight:400;line-height:1.65;color:var(--design-muted);margin-top:5px;
}

@media(max-width:760px) {
  html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link {
    min-height:106px;padding:18px;gap:12px;
  }
}
@media(max-width:540px) {
  html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link {
    grid-template-columns:40px minmax(0,1fr) 24px;padding:17px 15px;gap:11px;
  }
  html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link > .jc-design-symbol {width:40px;height:40px;border-radius:11px;}
  html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link > .jc-design-symbol svg {width:24px;height:24px;}
  html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link > b {width:24px;height:24px;}
  html:root body[data-design-refined] :is(.bridge-exit-heading,.development-brief-intro).jc-tool-heading {grid-template-columns:minmax(0,1fr);gap:14px;padding:20px 18px;}
  html:root body[data-design-refined] :is(.renewal-planner,.development-brief-shell,.scheme-guide-finder) > summary.jc-tool-summary {grid-template-columns:36px minmax(0,1fr) 18px;gap:11px;padding-inline:15px;}
  html:root body[data-design-refined] .jc-tool-summary > .jc-design-symbol {width:36px;height:36px;border-radius:10px;}
  html:root body[data-design-refined] .jc-tool-summary > .jc-design-symbol svg {width:23px;height:23px;}
  html:root body[data-design-refined] :is(.renewal-planner,.development-brief-shell,.scheme-guide-finder) > summary.jc-tool-summary::after {width:18px;}
}
@media(hover:hover) and (pointer:fine) {
  html:root body[data-design-refined] :is(.renewal-planner,.development-brief-shell,.scheme-guide-finder) > summary.jc-tool-summary:hover {background:var(--design-wash);}
}
@media(prefers-reduced-motion:reduce) {
  html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link,
  html:root body.home-depth[data-design-refined] .home-specialist-routes[data-refined-routes] .wealth-links > a,
  html:root body[data-design-refined] :is(.renewal-planner,.development-brief-shell,.scheme-guide-finder) > summary.jc-tool-summary {transition:none;transform:none;}
}
@media(forced-colors:active) {
  html:root body[data-design-refined] .jc-design-symbol,
  html:root body[data-design-refined] :is(.bridge-exit-heading,.development-brief-intro).jc-tool-heading,
  html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link,
  html:root body.home-depth[data-design-refined] .home-specialist-routes[data-refined-routes] .wealth-links > a {
    background:Canvas;color:CanvasText;border:1px solid CanvasText;box-shadow:none;
  }
  html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link:is(:hover,:focus-visible,[data-preview="true"]) {outline:2px solid Highlight;outline-offset:2px;box-shadow:none;}
  html:root body[data-design-refined] .jc-design-symbol svg {color:CanvasText;}
  html:root body[data-design-refined] :is(.renewal-planner,.development-brief-shell,.scheme-guide-finder)[open] > summary.jc-tool-summary {box-shadow:none;}
}
@media print {
  html:root body[data-design-refined] .jc-design-symbol {display:none!important;}
  html:root body[data-design-refined] :is(.bridge-exit-heading,.development-brief-intro).jc-tool-heading {display:block;background:#fff;color:#112340;box-shadow:none;border-color:#bbb;}
  html:root body[data-design-refined] :is(.renewal-planner,.development-brief-shell,.scheme-guide-finder) > summary.jc-tool-summary {display:block;background:#fff;box-shadow:none;}
  html:root body[data-design-refined] :is(.renewal-planner,.development-brief-shell,.scheme-guide-finder) > summary.jc-tool-summary::after {display:none;}
  html:root body.home-depth[data-design-refined] [data-home-choices] .finance-link {grid-template-columns:minmax(0,1fr) auto;background:#fff;box-shadow:none;}
  html:root body.home-depth[data-design-refined] .home-specialist-routes[data-refined-routes] .wealth-links > a {background:#fff;box-shadow:none;}
}


/* Existing stages, connected quietly. No new controls, animation or progress claims. */
html:root body.consultancy-simple .consult-simple-steps > li {
 position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:17px;align-content:start;
}
html:root body.consultancy-simple .consult-simple-steps > li > span {
 width:40px;height:40px;flex-basis:40px;border-color:var(--clarity-line);
 color:var(--experience-link);background:var(--clarity-paper);font-variant-numeric:tabular-nums;
}
html:root body.consultancy-simple .consult-simple-steps > li:not(:last-child)::after {
 content:"";position:absolute;top:20px;left:46px;right:-20px;
 border-top:1px dashed var(--clarity-line);pointer-events:none;
}
html:root body.consultancy-simple .consult-simple-steps h3 {margin-top:0;}

/* The number and title are separate spans so long headings wrap naturally. */
html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details {
 position:relative;overflow:visible;box-shadow:0 5px 18px var(--clarity-shadow);
}
html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details::before {
 content:"";position:absolute;left:100%;top:38px;width:17px;
 border-top:1px dashed var(--pf-line);pointer-events:none;
}
html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details:nth-child(3n)::before,
html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details:last-child::before {display:none;}
html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details > summary {
 display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:start;
 min-height:104px;padding:19px 43px 21px 18px;border-radius:10px;
}
html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details > summary::after {top:25px;}
html:root body.property-finance-refined .pf-process-grid[data-journey-design] .journey-stage-number {
 display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--pf-line);
 border-radius:50%;background:var(--clarity-paper);color:var(--experience-link);
 font-size:.76rem;font-weight:750;line-height:1;font-variant-numeric:tabular-nums;
}
html:root body.property-finance-refined .pf-process-grid[data-journey-design] .journey-stage-divider {display:none;}
html:root body.property-finance-refined .pf-process-grid[data-journey-design] .journey-stage-title {padding-top:4px;min-width:0;}
html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details[open] {
 border-color:var(--experience-accent);box-shadow:0 8px 24px var(--clarity-shadow);
}
html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details[open] > summary {border-radius:10px 10px 0 0;}
html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details[open] .journey-stage-number {
 background:var(--experience-accent);color:var(--experience-on-accent);border-color:var(--experience-accent);
}
html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details > div {border-radius:0 0 12px 12px;}

/* The international route keeps its established vertical, expandable layout. */
html:root body.premium-international .premium-international-process .premium-process-list > li {position:relative;}
html:root body.premium-international .premium-international-process .premium-process-list > li:not(:last-child)::after {
 content:"";position:absolute;top:100%;left:42px;height:13px;
 border-left:1px dashed var(--clarity-line);pointer-events:none;
}
html:root body.premium-international .premium-international-process .premium-process-step > summary {
 grid-template-columns:36px minmax(0,1fr) 20px;gap:15px;
}
html:root body.premium-international .premium-international-process .premium-process-number {
 display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--clarity-line);
 border-radius:50%;background:var(--clarity-paper);color:var(--experience-link);
 font-size:.76rem;font-weight:750;line-height:1;
}
html:root body.premium-international .premium-international-process .premium-process-step[open] .premium-process-number {
 background:var(--experience-accent);border-color:var(--experience-accent);color:var(--experience-on-accent);
}
html:root body.premium-international .premium-international-process .premium-process-step[open] {box-shadow:0 8px 24px var(--clarity-shadow);}
html:root body.premium-international .premium-international-process .premium-process-step > div {padding-left:74px;}

@media(max-width:1000px) and (min-width:641px) {
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details:nth-child(3n)::before {display:block;}
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details:nth-child(2n)::before,
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details:last-child::before {display:none;}
}
@media(max-width:900px) {
 html:root body.consultancy-simple .consult-simple-steps > li {display:flex;gap:17px;}
 html:root body.consultancy-simple .consult-simple-steps > li:not(:last-child)::after {
  top:46px;bottom:-17px;left:20px;right:auto;border-top:0;border-left:1px dashed var(--clarity-line);
 }
 html:root body.consultancy-simple .consult-simple-steps > li > div {min-width:0;}
 html:root body.consultancy-simple .consult-simple-steps h3 {margin-top:3px;}
}
@media(max-width:640px) {
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details:not(:last-child)::before {
  display:block;left:33px;top:100%;width:0;height:13px;border-top:0;border-left:1px dashed var(--pf-line);
 }
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details > summary {
  min-height:80px;padding:18px 42px 18px 15px;
 }
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details > summary::after {top:24px;}
 html:root body.premium-international .premium-international-process .premium-process-step > summary {
  grid-template-columns:36px minmax(0,1fr) 20px;gap:11px;
 }
 html:root body.premium-international .premium-international-process .premium-process-list > li:not(:last-child)::after {left:37px;}
 html:root body.premium-international .premium-international-process .premium-process-step > div {padding-left:18px;}
}
@media(forced-colors:active) {
 html:root body.consultancy-simple .consult-simple-steps > li::after,
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details::before,
 html:root body.premium-international .premium-international-process .premium-process-list > li::after {display:none!important;}
 html:root body.consultancy-simple .consult-simple-steps > li > span,
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] .journey-stage-number,
 html:root body.premium-international .premium-international-process .premium-process-number {
  background:Canvas;color:CanvasText;border-color:CanvasText;
 }
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details[open] .journey-stage-number,
 html:root body.premium-international .premium-international-process .premium-process-step[open] .premium-process-number {
  background:Highlight;color:HighlightText;border-color:Highlight;
 }
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details,
 html:root body.premium-international .premium-international-process .premium-process-step[open] {box-shadow:none;}
}
@media print {
 html:root body.consultancy-simple .consult-simple-steps > li::after,
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details::before,
 html:root body.premium-international .premium-international-process .premium-process-list > li::after {display:none!important;}
 html:root body.consultancy-simple .consult-simple-steps > li {display:flex;gap:12px;}
 html:root body.consultancy-simple .consult-simple-steps > li > span,
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] .journey-stage-number,
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details[open] .journey-stage-number,
 html:root body.premium-international .premium-international-process .premium-process-number,
 html:root body.premium-international .premium-international-process .premium-process-step[open] .premium-process-number {
  background:#fff;color:#182b43;border-color:#777;width:28px;height:28px;flex-basis:28px;
 }
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details,
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details[open],
 html:root body.premium-international .premium-international-process .premium-process-step[open] {box-shadow:none;}
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] > details > summary {
  grid-template-columns:28px minmax(0,1fr);min-height:0;padding:12px;
 }
 html:root body.property-finance-refined .pf-process-grid[data-journey-design] .journey-stage-title {padding-top:1px;}
 html:root body.premium-international .premium-international-process .premium-process-step > summary {grid-template-columns:28px minmax(0,1fr) 20px;}
 html:root body.premium-international .premium-international-process .premium-process-step > div {padding-left:12px;}
}


/* Resource desks: use the existing numbers, drawings and document previews. */
html:root body[data-experience-refined] .resource-directory .resource-group {
 border-color:var(--line);border-radius:16px;
 box-shadow:0 5px 18px var(--clarity-shadow,rgba(11,28,52,.045));
}
html:root body[data-experience-refined] .resource-directory .resource-group>summary {
 background:var(--experience-paper,var(--surface));
}
html:root body[data-experience-refined] .resource-directory .resource-group[open]>summary {
 border-left-color:var(--experience-accent);background:var(--experience-soft,var(--soft));
}
html:root body[data-experience-refined] .resource-directory .resource-group-index {
 display:grid;place-items:center;flex:0 0 38px;min-height:44px;
 border:1px solid var(--line);border-top:3px solid var(--experience-accent);
 border-radius:5px 5px 10px 5px;background:var(--experience-paper,var(--surface));
 color:var(--experience-link,var(--blue));font-size:.75rem;font-weight:700;
}
html:root body[data-experience-refined] .resource-directory .resource-toggle {
 background:var(--experience-soft,var(--soft));border-color:var(--line);
 color:var(--experience-link,var(--blue));
}
html:root body[data-experience-refined] .resource-directory .resource-link-grid a {
 border-radius:7px;padding-inline:8px;transition:background-color .18s ease;
}
html:root body[data-experience-refined] .resource-directory .resource-link-grid a>span:last-child {
 display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;
 border:1px solid var(--line);border-radius:50%;font-size:.9rem;
 color:var(--experience-link,var(--blue));background:var(--experience-paper,var(--surface));
 transform:none;transition:border-color .18s ease;
}
html:root body[data-experience-refined] .resource-directory .resource-link-grid a:focus-visible {
 background:var(--experience-soft,var(--soft));outline-offset:-2px;
}
html:root body[data-experience-refined] .resource-directory .resource-group>summary:focus-visible {
 outline-offset:-5px;
}

/* Calculator library: an icon above the copy and a clearly aligned action row. */
html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card {
 border-top:3px solid var(--experience-accent);background:var(--experience-paper,var(--surface));
 box-shadow:0 5px 18px var(--clarity-shadow,rgba(11,28,52,.045));
 transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .number {
 display:inline-flex;align-items:center;gap:12px;min-height:50px;margin-bottom:18px;
 color:var(--experience-muted,var(--muted));font-variant-numeric:tabular-nums;
}
html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .number::after {
 content:"";width:22px;height:1px;background:var(--line);
}
html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .site-tile-drawing {
 position:absolute;z-index:0;top:24px;right:26px;width:50px;height:50px;padding:7px;
 opacity:1;transform:none;color:var(--experience-accent);
 background:var(--experience-soft,var(--soft));border:1px solid var(--line);border-radius:12px;
 transition:none;
}
html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .site-tile-drawing :is(path,circle,rect,ellipse,line,polyline,polygon) {
 vector-effect:non-scaling-stroke;stroke-width:1.2px;stroke-dasharray:none;stroke-dashoffset:0;transition:none;
}
html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .card-link {
 border-top:1px solid var(--line);padding-top:16px;align-items:center;gap:12px;
 color:var(--experience-link,var(--blue));
}
html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .card-link>span:last-child,
html:root body.specialist-schemes[data-experience-refined] .scheme-card-link>span:last-child {
 display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;
 border:1px solid var(--line);border-radius:50%;background:var(--experience-soft,var(--soft));
 transform:none;transition:border-color .18s ease;
}
html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card:is(:hover,:focus-visible) {
 transform:none;border-color:var(--experience-accent);
}
html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card:focus-visible {
 outline:3px solid var(--experience-focus,var(--experience-accent));outline-offset:4px;
}

/* A screen preview keeps the same white paper as the generated document. */
html:root body.pdf-tools-page[data-experience-refined] .pdf-preview {
 margin-bottom:9px;border-radius:12px;
 box-shadow:0 3px 0 var(--experience-paper,var(--surface)),0 4px 0 var(--line),
  0 7px 0 var(--experience-soft,var(--soft)),0 8px 0 var(--line),
  0 16px 32px var(--clarity-shadow,rgba(11,28,52,.08));
}
html:root body.pdf-tools-page[data-experience-refined] .pdf-guide-group .gcc-document {
 border-radius:3px 12px 3px 3px;box-shadow:3px 3px 0 var(--line);
}
html:root body.pdf-tools-page[data-experience-refined] .pdf-calculator-links a {
 border-left:3px solid var(--experience-accent);
}

/* The image-led scheme library retains its artwork and reading order. */
html:root body.specialist-schemes[data-experience-refined] .scheme-card-body {
 border-top:2px solid var(--experience-accent);background:var(--experience-paper,var(--surface));
}
html:root body.specialist-schemes[data-experience-refined] .scheme-card-link {
 display:flex;align-items:center;align-self:stretch;justify-content:space-between;gap:12px;
 padding-top:16px;border-top:1px solid var(--line);
 color:var(--experience-link,var(--blue));
}
html:root body.specialist-schemes[data-experience-refined] .scheme-card:focus-visible {
 outline:3px solid var(--experience-focus,var(--experience-accent));outline-offset:4px;
 border-color:var(--experience-accent);
}

@media(hover:hover) and (pointer:fine) {
 html:root body[data-experience-refined] .resource-directory .resource-group>summary:hover,
 html:root body[data-experience-refined] .resource-directory .resource-link-grid a:hover {
  background:var(--experience-soft,var(--soft));
 }
 html:root body[data-experience-refined] .resource-directory .resource-link-grid a:hover>span:last-child,
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card:hover .card-link>span:last-child,
 html:root body.specialist-schemes[data-experience-refined] .scheme-card:hover .scheme-card-link>span:last-child {
  border-color:var(--experience-accent);
 }
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card:hover {
  transform:translateY(-2px);box-shadow:0 9px 24px var(--clarity-shadow,rgba(11,28,52,.08));
 }
}
@media(max-width:540px) {
 html:root body[data-experience-refined] .resource-directory .resource-group-index {
  flex-basis:30px;min-height:38px;font-size:.7rem;
 }
 html:root body[data-experience-refined] .resource-directory .resource-link-grid a {padding-inline:3px;gap:12px;}
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .site-tile-drawing {top:22px;right:23px;}
}
@media(prefers-reduced-motion:reduce) {
 html:root body[data-experience-refined] .resource-directory .resource-link-grid a,
 html:root body[data-experience-refined] .resource-directory .resource-link-grid a>span:last-child,
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card,
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .card-link>span:last-child,
 html:root body.specialist-schemes[data-experience-refined] .scheme-card-link>span:last-child {transition:none;}
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card:hover {transform:none;}
}
@media(forced-colors:active) {
 html:root body[data-experience-refined] .resource-directory .resource-group,
 html:root body[data-experience-refined] .resource-directory .resource-group>summary,
 html:root body[data-experience-refined] .resource-directory .resource-group-index,
 html:root body[data-experience-refined] .resource-directory .resource-link-grid a>span:last-child,
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card,
 html:root body.specialist-schemes[data-experience-refined] .scheme-card-body,
 html:root body.specialist-schemes[data-experience-refined] .scheme-card-link,
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .card-link {
  forced-color-adjust:auto;border-color:CanvasText;box-shadow:none;
 }
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .site-tile-drawing,
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .number::after {display:none;}
 html:root body.pdf-tools-page[data-experience-refined] .pdf-preview,
 html:root body.pdf-tools-page[data-experience-refined] .pdf-guide-group .gcc-document {box-shadow:none;}
}
@media print {
 html:root body[data-experience-refined] .resource-directory .resource-group,
 html:root body.pdf-tools-page[data-experience-refined] .pdf-preview,
 html:root body.pdf-tools-page[data-experience-refined] .pdf-guide-group .gcc-document,
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card {box-shadow:none;transform:none;}
 html:root body[data-experience-refined] .resource-directory .resource-group-index {
  min-height:0;flex-basis:auto;border:0;border-radius:0;background:none;color:inherit;
 }
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .number {min-height:0;}
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .site-tile-drawing,
 html:root body.calculator-tools[data-experience-refined] .calc-hub-group .card .number::after {display:none;}
 html:root body.specialist-schemes[data-experience-refined] .scheme-card-body {background:none;}
}


/* A quiet personal introduction beside the enquiry form. */
html:root body.contact-clarity .contact-personal-intro {
 display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:16px;
 margin:0 0 25px;padding:17px 15px;border:1px solid var(--clarity-line);
 border-inline-start:3px solid var(--experience-accent);border-radius:14px;
 background:var(--experience-soft);color:var(--experience-ink);
}
html:root body.contact-clarity .contact-personal-intro img {
 display:block;width:76px;height:88px;max-width:100%;object-fit:cover;
 object-position:60% 35%;border:1px solid var(--clarity-line);border-radius:10px;
}
html:root body.contact-clarity .contact-personal-intro strong {
 display:block;font-size:.98rem;line-height:1.45;color:var(--experience-ink);
}
html:root body.contact-clarity .contact-personal-intro p {
 margin:7px 0 0;font-size:.86rem;line-height:1.7;max-width:33ch;
 color:var(--experience-muted);overflow-wrap:break-word;
}
@media(max-width:380px) {
 html:root body.contact-clarity .contact-personal-intro {
  grid-template-columns:64px minmax(0,1fr);gap:12px;padding:15px 13px;
 }
 html:root body.contact-clarity .contact-personal-intro img {width:64px;height:76px;}
}
@media(forced-colors:active) {
 html:root body.contact-clarity .contact-personal-intro {
  background:Canvas;color:CanvasText;border-color:CanvasText;
 }
 html:root body.contact-clarity .contact-personal-intro :is(strong,p) {color:CanvasText;}
 html:root body.contact-clarity .contact-personal-intro img {border-color:CanvasText;}
}
@media print {
 html:root body.contact-clarity .contact-personal-intro {
  display:block;break-inside:avoid;padding:0 0 12px;background:#fff;border:0;border-radius:0;
 }
 html:root body.contact-clarity .contact-personal-intro img {display:none;}
 html:root body.contact-clarity .contact-personal-intro :is(strong,p) {color:#182b43;}
}
