/* Joe's homepage copy: six service rows, problem tags, two ways to work and technology partners. */
.home-refined .services .place{grid-template-columns:1fr 1.35fr;align-items:start}
.home-refined .service-head h3{margin-top:14px}
.home-refined .service-head p{margin-top:10px;font-size:17px;line-height:1.55;color:var(--stone);max-width:36ch}
.home-refined .services .place ul{grid-template-columns:minmax(0,1fr);gap:12px;padding-top:6px}
.home-refined .services .place li{position:relative;padding-left:22px}
.home-refined .services .place li:hover{padding-left:22px}
.home-refined .services .place li::before{content:"";position:absolute;left:0;top:.72em;width:10px;height:1px;background:currentColor;opacity:.45}
.svc-icon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--hair);color:var(--ink,#17212B);background:rgba(255,255,255,.5)}
.svc-icon svg{width:22px;height:22px}

.home-refined .solve-tags{margin-top:clamp(48px,6vw,72px)}
.home-refined .solve-title{margin:0 0 18px;font:500 13px/1.2 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--stone)}
.home-refined .solve-marquee{display:grid;gap:6px;margin-inline:calc(50% - 50vw);padding-block:6px}
.home-refined .solve-row{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
.home-refined .solve-track{display:flex;width:max-content;animation:solve-scroll 60s linear infinite}
.home-refined .solve-row.is-reverse .solve-track{animation-direction:reverse;animation-duration:52s}
.home-refined .solve-marquee:hover .solve-track{animation-play-state:paused}
.home-refined .solve-track ul{display:flex;margin:0;padding:0;list-style:none}
.home-refined .solve-track li{display:flex;align-items:center;gap:.7em;padding-right:.7em;white-space:nowrap;font:500 clamp(26px,3vw,44px)/1.25 var(--head);letter-spacing:-.025em;color:var(--ink,#17212B)}
.home-refined .solve-row.is-reverse li{color:var(--stone,#596571)}
.home-refined .solve-track li::after{content:"";flex:none;width:.34em;height:.34em;border-radius:50%;background:radial-gradient(circle,transparent 52%,#C9A15A 54%,#A48743 76%,transparent 78%)}
:root[data-palette="spectrum"] .home-refined .solve-track li::after{background:radial-gradient(circle,transparent 52%,#4D9BE6 54%,#D981BC 76%,transparent 78%)}
@keyframes solve-scroll{to{transform:translateX(-50%)}}
:root[data-halo-motion="paused"] .home-refined .solve-track{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){
  .home-refined .solve-marquee{margin-inline:0}
  .home-refined .solve-row{-webkit-mask-image:none;mask-image:none}
  .home-refined .solve-track{animation:none;width:auto}
  .home-refined .solve-track ul{flex-wrap:wrap}
  .home-refined .solve-track ul[aria-hidden]{display:none}
  .home-refined .solve-track li{font-size:24px}
}
.home-refined .solve-tags .more{display:inline-flex;align-items:center;min-height:44px;margin-top:24px;padding:13px 20px;font-size:16px;text-decoration:none}

.home-refined .report-note{margin-top:var(--space-sm);font-size:16px;line-height:1.6;color:var(--stone);max-width:46ch}
.home-refined .promise-more{margin:var(--space-sm) 0 0;max-width:46ch;font-size:17px;line-height:1.6;color:var(--stone)}

.home-refined .partner-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:56px;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.home-refined .partner{padding:32px 28px 36px 0}
.home-refined .partner+.partner{padding-left:28px;border-left:1px solid var(--hair)}
.home-refined .partner-logo{display:flex;align-items:baseline;justify-content:space-between;gap:8px;height:64px;padding:0 0 16px;border-bottom:1px dashed var(--hair)}
.home-refined .partner-logo span{align-self:flex-end;font:600 22px/1 var(--head);letter-spacing:-.02em;color:var(--ink,#17212B)}
.home-refined .partner-logo small{align-self:flex-start;font:400 11px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--stone)}
.home-refined .partner p{margin-top:18px;font-size:16px;line-height:1.6;color:var(--stone)}

@media(max-width:1000px){
  .home-refined .services .place{grid-template-columns:1fr 1.4fr}
  .home-refined .partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-refined .partner:nth-child(3){padding-left:0;border-left:0}
  .home-refined .partner:nth-child(n+3){border-top:1px solid var(--hair)}
}
@media(max-width:640px){
  .home-refined .services .place{display:block}
  .home-refined .services .place ul{margin-top:var(--space-sm)}
  .home-refined .partner-grid{grid-template-columns:minmax(0,1fr)}
  .home-refined .partner,.home-refined .partner+.partner{padding:28px 0;border-left:0}
  .home-refined .partner+.partner{border-top:1px solid var(--hair)}
}

/* Two ways to work: two cards across the full width. */
html .home-refined .ways-grid.ways-two{grid-template-columns:repeat(2,minmax(0,1fr))}
html .home-refined .ways-two .way p{max-width:52ch}
@media(max-width:900px){html .home-refined .ways-grid.ways-two{grid-template-columns:minmax(0,1fr)}}

/* Revised copy (22 Oct): hero pillars, why now, reassurance, pull quote, why a halo, community and the partner panel. */
.home-refined .hero-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;max-width:600px;margin:clamp(32px,4vw,44px) 0 0;padding:0;list-style:none;border-top:1px solid var(--hair)}
.home-refined .hero-pillars li{display:grid;gap:4px;padding:14px 16px 0 0;font-size:14px;line-height:1.45;color:var(--stone)}
.home-refined .hero-pillars li+li{padding-left:16px;border-left:1px solid var(--hair)}
.home-refined .hero-pillars b{font:500 12px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:inherit}

.home-refined .why-now{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 clamp(64px,8vw,104px);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.home-refined .why-now>div{padding:28px 28px 32px 0}
.home-refined .why-now>div+div{padding-left:28px;border-left:1px solid var(--hair)}
.home-refined .why-now__k{display:block;font:500 12px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--stone)}
.home-refined .why-now h3{margin:14px 0 0;font:600 clamp(20px,1.8vw,24px)/1.2 var(--head);letter-spacing:-.015em}
.home-refined .why-now p{margin-top:10px;font-size:16px;line-height:1.55;color:var(--stone);max-width:34ch}
.home-refined .ways-note{margin:clamp(32px,4vw,48px) 0 0;max-width:62ch;font-size:16px;line-height:1.6;color:var(--stone);padding-left:18px;border-left:2px solid var(--hair)}

.home-refined .report-quote{margin:var(--space-md,28px) 0 0;padding:0}
.home-refined .report-quote p{font:500 clamp(20px,1.7vw,24px)/1.35 var(--head);letter-spacing:-.015em;max-width:30ch;color:inherit}
.home-refined .report-quote p::before{content:"\201C"}.home-refined .report-quote p::after{content:"\201D"}

.home-refined .why-halo{grid-column:2;margin-top:calc(-1 * clamp(24px,3vw,48px));padding-top:18px;border-top:1px dashed var(--hair)}
.home-refined .why-halo h3{font:500 12px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--stone)}
.home-refined .why-halo p{margin-top:10px;font-size:16px;line-height:1.55;color:var(--stone);max-width:34ch}

.home-refined .community-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:56px;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.home-refined .community-grid article{padding:32px 28px 36px 0}
.home-refined .community-grid article+article{padding-left:28px;border-left:1px solid var(--hair)}
.home-refined .community-grid .n{font:500 12px/1 var(--mono);letter-spacing:.08em;color:var(--stone)}
.home-refined .community-grid h3{margin-top:18px;font:600 clamp(24px,2.2vw,30px)/1.1 var(--head);letter-spacing:-.02em}
.home-refined .community-grid p{margin-top:12px;font-size:16px;line-height:1.6;color:var(--stone);max-width:32ch}

.home-refined .partner-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px 40px;margin-top:48px;padding:32px clamp(24px,3vw,40px);border:1px solid var(--hair);border-radius:18px;background:rgba(255,255,255,.4)}
:root[data-theme="dark"] .home-refined .partner-cta{background:rgba(255,255,255,.03)}
.home-refined .partner-cta h3{font:600 clamp(22px,2vw,26px)/1.2 var(--head);letter-spacing:-.015em}
.home-refined .partner-cta p{margin-top:8px;font-size:16px;line-height:1.6;color:var(--stone);max-width:56ch}
.home-refined .partner-cta__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.home-refined .partner-cta__actions .key{display:inline-flex;align-items:center;min-height:48px;padding:0 22px;text-decoration:none}
.home-refined .partner-cta__mail{font-size:15px;color:var(--stone)}

@media(max-width:900px){
  .home-refined .why-now,.home-refined .community-grid{grid-template-columns:minmax(0,1fr)}
  .home-refined .why-now>div,.home-refined .why-now>div+div,.home-refined .community-grid article,.home-refined .community-grid article+article{padding:24px 0;border-left:0}
  .home-refined .why-now>div+div,.home-refined .community-grid article+article{border-top:1px solid var(--hair)}
}
@media(max-width:560px){
  .home-refined .hero-pillars{grid-template-columns:minmax(0,1fr)}
  .home-refined .hero-pillars li,.home-refined .hero-pillars li+li{padding:10px 0;border-left:0}
  .home-refined .hero-pillars li+li{border-top:1px solid var(--hair)}
}
@media(max-width:760px){.home-refined .why-halo{grid-column:auto;margin-top:0}}

/* Partner logos: one optical size on a shared baseline, toned to the page at rest and in full colour on hover. */
.home-refined .partner-logo{align-items:flex-end;justify-content:flex-start}
.home-refined .partner-logo img{display:block;width:auto;height:var(--logo-h,28px);max-width:100%}
.home-refined .partner-logo>*{filter:grayscale(1) brightness(.72) contrast(1.25);opacity:.82;transition:filter .3s ease,opacity .3s ease}
.home-refined .partner:hover .partner-logo>*,.home-refined .partner:focus-within .partner-logo>*{filter:none;opacity:1}
.home-refined .partner-logo.is-teifi{--logo-h:30px}
.home-refined .partner-logo.is-endear{--logo-h:24px}
.home-refined .partner-logo.is-pimsical{--logo-h:40px}
.home-refined .partner-logo.is-shopfields{--logo-h:34px;gap:10px;align-items:center}
.home-refined .partner-logo.is-shopfields span{align-self:center;font:600 22px/1 var(--head);letter-spacing:-.02em;color:inherit}
@media(prefers-reduced-motion:reduce){.home-refined .partner-logo img{transition:none}}

/* Problems we solve: more room above and below, and the "See more" link hidden until the other pages open. */
.home-refined .solve-tags{margin-top:clamp(88px,10vw,144px);margin-bottom:clamp(40px,5vw,72px)}
.home-refined .solve-tags .more{display:none}

/* Feasibility: the printer column no longer rises into the 03 divider (the unrolled receipt reached its barcode). */
@media(min-width:901px){.home-refined .till-printer{margin-top:-24px}}

/* About stats: the figure column grows with the figure, so "100+" no longer runs into its label. */
.home-refined .promise .label{grid-template-columns:calc(clamp(44px,4.8vw,64px) * 2.55) minmax(0,1fr);gap:clamp(20px,2.4vw,32px)}
