.scrambled-text-block{color:#fff;max-width:800px;margin:7vw;font-family:monospace;font-size:clamp(14px,4vw,32px)}.char{will-change:transform;display:inline-block}
.shiny-text{color:#b5b5b5a4;background:linear-gradient(120deg,#fff0 40%,#fffc 50%,#fff0 60%) 0 0/200% 100%;-webkit-background-clip:text;background-clip:text;animation:5s linear infinite shine;display:inline-block}@keyframes shine{0%{background-position:100%}to{background-position:-100%}}.shiny-text.disabled{animation:none}
.next-dot__host{display:block}.next-dot{z-index:1;justify-content:center;width:min(100%,44rem);margin:clamp(4rem,12vw,8rem) auto 0;padding-bottom:calc(clamp(7rem,18vw,11rem) + 30vh);display:flex;position:relative}.next-dot__link{opacity:0;flex-direction:column;align-items:center;gap:.9rem;text-decoration:none;transition:transform .42s ease-out,opacity .42s ease-out;display:flex;transform:translateY(2.5rem)}.next-dot__link:not([data-risen]),.next-dot__link[data-risen=true]{opacity:1;transform:translateY(0)}.next-dot__link:focus-visible{outline:3px solid var(--running-ink);outline-offset:6px}.next-dot__disc{aspect-ratio:1;width:clamp(7rem,18vw,11rem);color:var(--brand-navy);font-family:var(--font-wordmark), Lexend, system-ui, sans-serif;letter-spacing:-.02em;border-radius:50%;justify-content:center;align-items:center;font-size:clamp(1.3rem,3vw,2rem);font-weight:700;display:flex}.next-dot__link[data-dot=gold] .next-dot__disc{background:var(--dot-gold)}.next-dot__link[data-dot=vermilion] .next-dot__disc{background:var(--dot-vermilion)}.next-dot__link[data-dot=terracotta] .next-dot__disc{background:var(--dot-terracotta)}.next-dot__link[data-dot=steel] .next-dot__disc{background:var(--dot-steel)}.next-dot__link[data-dot=cream] .next-dot__disc{background:var(--dot-cream)}.next-dot__phrase{color:var(--running-ink);font-family:var(--font-wordmark), Lexend, system-ui, sans-serif;letter-spacing:-.02em;font-size:1.5rem;font-weight:700}.next-dot__disc{background:var(--next-dot-colour,var(--brand-navy,#182534))}.next-dot__link{transition:transform var(--next-dot-rise-ms,.42s) ease, opacity var(--next-dot-rise-ms,.42s) ease}@media (prefers-reduced-motion:reduce){.next-dot__link{opacity:1;transition:none;transform:none}}
.contact-form__magnet{display:none}
.section-dots-host{display:none}.service-grid{position:relative}.service-grid:has(.section-dot__disc){align-items:start}.service-grid article:has(.section-dot__disc){justify-content:center;min-height:0;display:flex}.section-dot__disc{aspect-ratio:1;background:var(--field);width:clamp(6.5rem,14vw,8.5rem);color:var(--running-ink);font-family:var(--font-wordmark), Lexend, system-ui, sans-serif;letter-spacing:-.02em;cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:clamp(1.1rem,2.4vw,1.5rem);font-weight:700;transition:transform .2s ease-out;display:flex}.section-dot__disc:hover{transform:scale(1.04)}.section-dot__disc:focus-visible{outline:3px solid var(--plate-accent);outline-offset:4px}.section-dot__panel{z-index:2;background:var(--plate);color:var(--plate-ink);padding:clamp(1.2rem,4vw,2.4rem);animation:.26s ease-out both section-dot-plate;position:relative}.section-dot__panel--full{grid-column:1/-1;width:100%}@keyframes section-dot-plate{0%{opacity:0}to{opacity:1}}.section-dot__close{background:var(--field);width:2.25rem;height:2.25rem;color:var(--running-ink);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:1.25rem;line-height:1;display:flex;position:absolute;top:clamp(.6rem,2vw,1rem);right:clamp(.6rem,2vw,1rem)}.section-dot__close:focus-visible{outline:3px solid var(--plate-accent);outline-offset:3px}.section-dot__circle{z-index:1;background:var(--field);pointer-events:none;opacity:0;border-radius:50%;width:2rem;height:2rem;margin:-1rem 0 0 -1rem;position:absolute;transform:scale(0)}.section-dot__circle[data-state=grow]{opacity:1;animation:.42s ease-in-out forwards section-dot-grow}@keyframes section-dot-grow{0%{transform:scale(0)}to{transform:scale(60)}}@media (prefers-reduced-motion:reduce){.section-dot__circle{display:none}.section-dot__panel{animation:none}.section-dot__disc{transition:none}.section-dot__disc:hover{transform:none}}
