/* Launch navigation and non-interactive fallback. */
.site-nav :focus-visible,.site-footer :focus-visible{outline-color:var(--m)}
.noscript-note{padding:64px 5%;max-width:850px;margin:auto}
.noscript-note h1{font-size:clamp(40px,7vw,80px);margin-bottom:24px}
.noscript-note a{text-decoration:underline;text-underline-offset:4px;color:var(--c)}
@media(max-width:760px){.site-nav.menu-open #site-menu a{min-height:44px;display:flex;align-items:center}.site-nav.menu-open #site-menu{gap:12px!important}}

/* Let enlarged text spacing wrap within its column instead of widening the page. */
main :is(h1,h2,h3),.education-grades dd,
main :is(.profile-hero,.skills-hero,.employer-section,.opening-heading,.case-responsibility,.case-context-heading,.pricing-service-heading,.skill-row,.case-core-idea,.skills-ai,.wb-slide){overflow-wrap:break-word}
main :is(.profile-hero,.skills-hero,.employer-section,.opening-heading,.case-responsibility,.case-context-heading,.pricing-service-heading,.skill-row,.case-core-idea,.skills-ai,.wb-slide)>*{min-width:0}
.profile-portrait figcaption{flex-wrap:wrap}
@media(min-width:641px) and (max-width:900px){.education-grades{grid-template-columns:repeat(2,minmax(0,1fr))}.education-grades>div:last-child{grid-column:1/-1}}
@media(max-width:700px){.opening-research>strong{flex-wrap:wrap}.opening-research>strong>span{flex:1 1 6em;min-width:0}}
@media(max-width:380px){.project-opening-playmobil .opening-heading h1{font-size:clamp(45px,14.5vw,58px)}}
@media(min-width:761px){.skills-hero{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr)}}

/* Enquiry-led freelance journey. Account registration is not part of the flow. */
.project-process{padding:clamp(44px,6vw,88px) 5%;background:var(--i);color:var(--v);scroll-margin-top:160px}
.project-process-heading{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end}
.project-process-heading h2{font-size:clamp(34px,4.8vw,68px);margin:20px 0 0;line-height:1.06}
.project-process-heading h2 span{color:var(--m)}
.project-process-heading>div>p:not(.eyebrow){max-width:48ch;font-size:21px;line-height:1.5}
.project-process-heading .text-link{color:var(--m);margin-top:24px}
.project-process-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px;margin:44px 0 0}
.project-process-steps li{min-width:0;border-top:1px solid #69756f;padding-top:22px;display:flex;flex-direction:column}
.project-process-number{font:13px/1.5 Mono,monospace;color:var(--m)}
.project-process-steps h3{font-size:23px;line-height:1.18;letter-spacing:-.03em;margin:20px 0 16px}
.project-process-steps p{font-size:18px;line-height:1.5;margin-bottom:24px}
.project-process-steps strong{margin-top:auto;font:14px/1.5 Mono,monospace;color:var(--m)}
.project-process-footnote{border-top:1px solid #69756f;padding-top:24px;margin-top:36px;font-size:17px;line-height:1.5;max-width:85ch}
.project-process-footnote a{display:inline-block;color:var(--m);text-decoration:underline;text-underline-offset:4px}
.project-process :focus-visible{outline-color:var(--m)}
.complete-next-steps{border-block:1px solid #657b72;padding:24px 0;margin:28px 0}
.complete-next-steps h2{font-size:24px;margin-bottom:16px;line-height:1.2}
.complete-next-steps p{line-height:1.5}.complete-next-steps .text-link{margin-top:20px}
@media(max-width:1050px){.project-process-steps{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:32px}}
@media(max-width:760px){.project-process{scroll-margin-top:190px}.project-process-heading{grid-template-columns:1fr;gap:24px}.project-process-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.project-process-heading>div>p:not(.eyebrow){font-size:19px}}
@media(max-width:480px){.project-process-steps{grid-template-columns:1fr;gap:26px}.project-process-steps h3{font-size:24px;margin:14px 0 12px}.project-process-steps p{margin-bottom:14px}}
.site-footer{flex-wrap:wrap}.site-footer .footer-extra{flex-wrap:wrap;min-width:0;max-width:100%}.site-footer>[data-back-to-top]{white-space:nowrap}

/* Shared project guidance has its own colour blocks after the six service tiers. */
.project-process{background:var(--c);color:var(--v);scroll-margin-top:0}
.project-process-heading .eyebrow{color:var(--m)}
.project-process-steps li,.project-process-footnote{border-color:#a0baff}
.project-payments{background:#fff;color:var(--i);border-top:0;scroll-margin-top:0}
.project-payments :focus-visible{outline-color:var(--c)}
.project-payments .payment-smallprint,.project-payments .payment-stages article+article{border-color:#7f9e91}
.pricing-questions{background:var(--i);color:var(--v);padding-block:clamp(48px,6vw,96px);scroll-margin-top:0}
.pricing-questions h2 span,.pricing-questions .eyebrow,.pricing-questions .text-link,.pricing-questions details a{color:var(--m)}
.pricing-questions details{border-color:#69756f}
.pricing-questions .button{background:var(--m);color:var(--i)}
.pricing-questions :focus-visible{outline-color:var(--m)}

/* Project access labels leave existing artwork and crops unchanged. */
.project-protected-label{display:block;font-family:"Source Code Pro",monospace;font-size:12px;line-height:1.5;letter-spacing:.035em;margin:14px 0;color:inherit}.project-protected-label:before{content:"";display:inline-block;width:8px;height:8px;border:1.5px solid currentColor;border-radius:1px;margin-right:8px}.project-lock-again{position:relative;padding:20px 5%;background:#18191b;color:#d2f4e5;margin:0}.project-lock-again button{font:inherit;color:inherit;background:none;border:1px solid currentColor;padding:10px 16px;cursor:pointer}
