.services-page { background:#10110f; color:var(--paper); }
.services-skip-link { position:fixed; z-index:70; top:1rem; left:1rem; padding:.7rem .9rem; transform:translateY(-170%); background:var(--paper); color:var(--ink); font:500 .65rem/1 var(--mono); letter-spacing:.08em; transition:transform .2s ease; }
.services-skip-link:focus { transform:translateY(0); outline:2px solid #c8ff50; outline-offset:3px; }
.services-hero { position:relative; min-height:clamp(430px,68svh,760px); overflow:hidden; padding:clamp(5rem,11vw,10rem) 8vw clamp(4rem,8vw,7rem); background:radial-gradient(circle at 74% 23%,rgb(190 255 85 / 15%),transparent 20%),radial-gradient(circle at 20% 92%,rgb(91 125 52 / 16%),transparent 28%),#10130e; }
.services-hero-grid { position:absolute; inset:-15%; background-image:linear-gradient(rgb(214 255 144 / 8%) 1px,transparent 1px),linear-gradient(90deg,rgb(214 255 144 / 8%) 1px,transparent 1px); background-size:clamp(44px,5vw,80px) clamp(44px,5vw,80px); mask-image:radial-gradient(ellipse at 60% 45%,black,transparent 70%); transform:rotate(-4deg); }
.services-eyebrow,.catalogue-heading > p,.service-case-label,.services-pricing-note p { position:relative; margin:0; color:#c8ff50; font:500 .6rem/1.4 var(--mono); letter-spacing:.14em; }
.services-hero h1 { position:relative; max-width:1000px; margin:clamp(1.7rem,4vw,3.6rem) 0 0; font:500 clamp(4.7rem,11vw,12rem)/.74 var(--serif); letter-spacing:-.09em; }
.services-hero h1 em,.catalogue-heading h2 em,.service-case-paper h3 em { color:#c8ff50; font-weight:500; }
.services-hero-copy { position:relative; max-width:380px; margin:clamp(2rem,5vw,4rem) 0 0 18%; color:var(--bone); font-size:clamp(.95rem,1.25vw,1.1rem); line-height:1.65; }
.services-hero-note { position:absolute; bottom:clamp(2rem,4vw,4rem); left:8vw; margin:0; color:rgb(231 226 215 / 65%); font:500 .57rem/1.3 var(--mono); letter-spacing:.1em; }.services-hero-note span { color:#c8ff50; font-size:1rem; }
.services-catalogue { padding:clamp(5rem,10vw,10rem) 7vw; background:#171715; }
.catalogue-heading { display:flex; align-items:end; justify-content:space-between; gap:2rem; width:min(100%,1240px); margin:0 auto; }.catalogue-heading h2 { max-width:700px; margin:1.15rem 0 0; font:500 clamp(3.5rem,7vw,7.5rem)/.82 var(--serif); letter-spacing:-.075em; }
.service-cases { width:min(100%,1240px); margin:clamp(4rem,8vw,7rem) auto 0; }
.service-case { --case-accent:#c8ff50; position:relative; margin-top:clamp(.9rem,1.8vw,1.5rem); border:1px solid rgb(231 226 215 / 19%); background:#20211d; box-shadow:0 18px 42px rgb(0 0 0 / 16%); }.service-case--video { --case-accent:#e4b36c; }.service-case--photo { --case-accent:#d8d4c9; }.service-case--web { --case-accent:#a5c7ff; }.service-case--packages { --case-accent:#e7a4c3; }
.service-case.is-coming-soon { --case-accent:#cc5f5f; border-color:rgb(210 137 137 / 34%); background:#242321; box-shadow:none; opacity:.68; }.service-case.is-coming-soon .service-case-trigger { cursor:not-allowed; }.service-case.is-coming-soon .service-case-trigger > :not(.service-case-status) { filter:grayscale(1); opacity:.72; }.service-case.is-coming-soon .service-case-trigger::after { background:#cc5f5f; transform:scaleX(.35); }.service-case.is-coming-soon .service-case-mark { color:#c98989; }.service-case.is-coming-soon .service-case-summary { color:#aaa59b; }.service-case-summary small { display:block; margin-top:.4rem; color:inherit; font-size:.68rem; line-height:1.4; }.service-case-status { position:absolute; top:0; right:clamp(1.25rem,3vw,3rem); padding:.38rem .65rem; background:#a84646; color:#fff1e9; font:500 .52rem/1 var(--mono); letter-spacing:.1em; }
.service-case-trigger { position:relative; display:grid; grid-template-columns:auto minmax(0,1fr) minmax(190px,.65fr) auto; align-items:center; gap:clamp(1rem,3vw,3rem); width:100%; min-height:clamp(106px,11vw,156px); padding:clamp(1.5rem,3vw,3rem) clamp(1.25rem,3vw,3rem); border:0; background:linear-gradient(115deg,rgb(255 255 255 / 3%),transparent 55%); color:inherit; text-align:left; cursor:pointer; }.service-case-trigger::after { content:""; position:absolute; right:0; bottom:-1px; width:clamp(56px,11vw,150px); height:1px; background:var(--case-accent); transform:scaleX(.45); transform-origin:right; transition:transform .4s ease; }.service-case.is-open .service-case-trigger::after,.service-case-trigger:hover::after { transform:scaleX(1); }
.service-case-tab { position:absolute; top:-1px; left:clamp(1.25rem,3vw,3rem); padding:.35rem .7rem; background:var(--case-accent); color:#161713; font:500 .58rem/1 var(--mono); letter-spacing:.1em; }.service-case-number { color:var(--case-accent); font:500 .62rem/1 var(--mono); letter-spacing:.1em; }.service-case-title { font:500 clamp(2.3rem,4.5vw,5.2rem)/.85 var(--serif); letter-spacing:-.07em; }.service-case-summary { color:var(--bone); font:.78rem/1.5 var(--sans); }.service-case-mark { display:grid; justify-items:center; gap:.5rem; color:var(--case-accent); font:500 .5rem/1 var(--mono); letter-spacing:.1em; }.service-case-mark i { font-size:1.4rem; }.service-case.is-open .service-case-mark b::after { content:" / CLOSE"; font-weight:500; }.service-case.is-open .service-case-mark b { font-size:0; }.service-case.is-open .service-case-mark b::after { font-size:.5rem; }
.service-case-trigger:focus-visible,.service-quote-link:focus-visible { outline:2px solid var(--case-accent); outline-offset:-5px; }
.service-case-panel { display:grid; grid-template-rows:1fr; transition:grid-template-rows .5s cubic-bezier(.2,.7,.2,1),opacity .35s ease; }.service-case-panel[hidden] { display:grid; grid-template-rows:0fr; opacity:0; visibility:hidden; }.service-case-paper { display:grid; grid-template-columns:minmax(0,.8fr) minmax(320px,1fr) auto; gap:clamp(2rem,5vw,6rem); min-height:0; overflow:hidden; padding:clamp(2rem,5vw,5rem); background:#e8e3d6; color:#1a1a16; }.service-case-paper > * { min-width:0; }.service-case-label { color:#566329; }.service-case-paper h3 { margin:clamp(1.3rem,3vw,2.8rem) 0 0; font:500 clamp(2.7rem,5vw,5.4rem)/.79 var(--serif); letter-spacing:-.08em; }.service-case-paper h3 em { color:#557421; }.service-case-description { max-width:300px; margin:clamp(1.5rem,3vw,2.5rem) 0 0; color:#3f4039; font-size:.92rem; line-height:1.65; }.service-case-detail { margin:1.1rem 0 0; color:#596047; font:500 .62rem/1.5 var(--mono); letter-spacing:.03em; }
.service-price-list { display:grid; align-content:start; gap:0; margin:0; padding:0; list-style:none; border-top:1px solid rgb(26 26 22 / 18%); }.service-price-list li { display:flex; justify-content:space-between; gap:1.5rem; padding:.85rem 0; border-bottom:1px solid rgb(26 26 22 / 14%); color:#30312c; font:.82rem/1.35 var(--sans); }.service-price-list strong { flex:0 0 auto; color:#22261d; font:500 .66rem/1.35 var(--mono); letter-spacing:.02em; white-space:nowrap; }.service-price-list small { display:block; max-width:280px; margin-top:.3rem; color:#68675e; font-size:.72rem; }.service-price-list--packages li { padding:1rem 0; }.service-price-list--design li { padding:1rem 0; }.service-price-list--design small { max-width:340px; }.service-bundle-note { display:block!important; padding:1rem 0!important; color:#536130!important; font:500 .7rem/1.5 var(--sans)!important; }
.service-quote-link { align-self:end; display:inline-flex; align-items:center; gap:.6rem; padding-bottom:.4rem; border-bottom:1px solid #596f2c; color:#35421e; font:500 .6rem/1.2 var(--mono); letter-spacing:.1em; text-transform:uppercase; }.service-quote-link span { font-size:1rem; }
.services-pricing-note { display:grid; grid-template-columns:160px minmax(0,1fr); gap:2rem; padding:clamp(2rem,4vw,3.4rem) 7vw; background:#0f100e; color:var(--bone); }.services-pricing-note span { max-width:550px; font-size:.86rem; line-height:1.6; }
.services-footer { display:flex; justify-content:space-between; gap:1rem; padding:1.5rem 4vw; border-top:1px solid rgb(231 226 215 / 12%); background:#0f100e; color:var(--bone); font:500 .57rem/1.4 var(--mono); letter-spacing:.08em; }.services-footer p { margin:0; }.services-footer a:hover { color:#c8ff50; }
@media (max-width:800px) { .services-hero { min-height:520px; }.services-hero-copy { margin-left:8%; }.catalogue-heading { display:block; }.service-case-trigger { grid-template-columns:auto minmax(0,1fr) auto; }.service-case-summary { grid-column:2; }.service-case-paper { grid-template-columns:1fr 1fr; }.service-quote-link { grid-column:1 / -1; justify-self:start; }.services-pricing-note { grid-template-columns:1fr; gap:1rem; } }
@media (max-width:560px) { .services-hero,.services-catalogue { padding-inline:7vw; }.services-hero h1 { font-size:clamp(4.3rem,19vw,6rem); }.services-hero-copy { margin-left:0; }.services-hero-note { left:7vw; }.service-case-trigger { grid-template-columns:auto minmax(0,1fr) auto; gap:.8rem 1rem; min-height:122px; padding:2rem 1.25rem 1.35rem; }.service-case-title { font-size:clamp(2.15rem,11vw,3.4rem); }.service-case-summary { grid-column:1 / -1; font-size:.74rem; }.service-case-mark b { display:none; }.service-case-paper { grid-template-columns:1fr; gap:2rem; padding:2rem 1.4rem; }.service-case-paper h3 { font-size:clamp(2.7rem,13vw,4.2rem); }.service-price-list li { gap:.75rem; }.service-price-list span { max-width:68%; }.service-price-list--packages span { max-width:72%; }.services-footer { flex-direction:column; } }
@media (prefers-reduced-motion:reduce) { .service-case-trigger::after,.service-case-panel { transition:none; } }

/* Static public paperwork examples; these do not query or expose Admin data. */
.project-process { padding:clamp(6rem,12vw,12rem) 7vw; background:radial-gradient(circle at 82% 12%,rgb(200 255 80 / 12%),transparent 24rem),#132317; color:#f2efe4; }.project-process-heading { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(250px,.55fr); gap:clamp(2rem,7vw,8rem); width:min(100%,1240px); margin:0 auto; }.project-process-heading > p,.project-process-cta p { margin:0; color:#c8ff50; font:500 .6rem/1.4 var(--mono); letter-spacing:.14em; }.project-process-heading h2 { margin:1.2rem 0 0; font:500 clamp(3.8rem,7.5vw,8rem)/.8 var(--serif); letter-spacing:-.075em; }.project-process-heading h2 em { color:#c8ff50; font-weight:500; }.project-process-heading > div { align-self:end; }.project-process-heading > div > p { color:#d6dccc; font-size:.95rem; line-height:1.65; }.project-process-heading .project-process-trust { margin-top:1.5rem; color:#aebaa5; font:.72rem/1.55 var(--mono); }.project-process-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin:clamp(3rem,7vw,6rem) auto 0; padding:0; overflow:hidden; list-style:none; background:rgb(242 239 228 / 22%); width:min(100%,1240px); }.project-process-steps li { min-height:130px; padding:1.3rem; background:#183322; color:#edf0e7; font:500 clamp(1.15rem,1.9vw,1.65rem)/1.05 var(--serif); letter-spacing:-.025em; }.project-process-steps span { display:block; margin-bottom:1.7rem; color:#c8ff50; font:500 .55rem/1 var(--mono); letter-spacing:.1em; }.project-process-note { width:min(100%,1240px); margin:1.2rem auto 0; color:#b9c4b2; font-size:.82rem; line-height:1.55; }.sample-documents { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(1.1rem,3vw,2rem); width:min(100%,1020px); margin:clamp(4rem,9vw,8rem) auto 0; }.sample-document { min-width:0; }.sample-document summary { display:grid; gap:.8rem; cursor:zoom-in; list-style:none; }.sample-document summary::-webkit-details-marker { display:none; }.public-document { display:grid; gap:1.3rem; min-height:315px; padding:clamp(1.2rem,3vw,2.3rem); border:1px solid #c5d1ad; background:#f3f0e5; color:#173e24; box-shadow:10px 12px 0 rgb(0 0 0 / 16%); transition:transform .25s ease,box-shadow .25s ease; }.sample-document summary:hover .public-document,.sample-document[open] .public-document { transform:translateY(-4px); box-shadow:14px 17px 0 rgb(0 0 0 / 18%); }.public-document > p { color:#667d4d; font:500 .5rem/1.2 var(--mono); letter-spacing:.12em; }.public-document header { display:grid; gap:.5rem; padding-bottom:1rem; border-bottom:2px solid #173e24; }.public-document header span,.public-document dl dt,.public-document footer { color:#567043; font:500 .5rem/1.25 var(--mono); letter-spacing:.1em; }.public-document header strong { font:500 clamp(1.5rem,3vw,2.5rem)/.9 var(--serif); letter-spacing:-.05em; }.public-document dl { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin:0; }.public-document dl div { min-width:0; }.public-document dd { margin:.3rem 0 0; color:#263a2b; font:.76rem/1.4 var(--sans); }.public-document footer { align-self:end; padding-top:1rem; border-top:1px solid rgb(23 62 36 / 26%); }.sample-document-action { color:#c8ff50; font:500 .56rem/1.2 var(--mono); letter-spacing:.1em; text-transform:uppercase; }.sample-document[open] .sample-document-action { color:#edf0e7; }.sample-document-caption { margin:.7rem 0 0; color:#bdc8b5; font-size:.78rem; line-height:1.5; }.project-process-cta { display:flex; align-items:end; justify-content:space-between; gap:2rem; width:min(100%,1240px); margin:clamp(5rem,10vw,9rem) auto 0; padding-top:2rem; border-top:1px solid rgb(242 239 228 / 22%); }.project-process-cta h3 { margin:1rem 0 0; font:500 clamp(2rem,4vw,4.2rem)/.88 var(--serif); letter-spacing:-.06em; }.project-process-cta > div:last-child { display:flex; flex-wrap:wrap; gap:1rem; }.project-process-primary,.project-process-secondary { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:.75rem 1rem; border:1px solid #c8ff50; font:500 .57rem/1.2 var(--mono); letter-spacing:.09em; text-transform:uppercase; }.project-process-primary { background:#c8ff50; color:#152014; }.project-process-secondary { color:#edf0e7; }.project-process-primary:hover,.project-process-secondary:hover { background:transparent; color:#c8ff50; }.sample-document summary:focus-visible,.project-process-primary:focus-visible,.project-process-secondary:focus-visible { outline:2px solid #c8ff50; outline-offset:5px; }
@media (max-width:800px) { .project-process { padding-inline:7vw; }.project-process-heading { grid-template-columns:1fr; gap:2rem; }.project-process-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }.project-process-cta { align-items:flex-start; flex-direction:column; } }
@media (max-width:560px) { .project-process-steps,.sample-documents { grid-template-columns:1fr; }.project-process-steps li { min-height:108px; }.public-document { min-height:280px; }.project-process-cta > div:last-child { width:100%; }.project-process-primary,.project-process-secondary { flex:1 1 11rem; } }
.project-process-support { flex-basis:100%; color:#b9c4b2; font:500 .55rem/1.45 var(--mono); letter-spacing:.05em; }

.services-start { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(2rem,7vw,8rem); padding:clamp(5rem,10vw,9rem) 7vw; background:#e9e4d7; color:#173e24; }.services-start > div > p,.services-start li span { margin:0; color:#587543; font:500 .58rem/1.35 var(--mono); letter-spacing:.12em; }.services-start h2 { margin:1.15rem 0 0; font:500 clamp(3rem,6vw,6.5rem)/.8 var(--serif); letter-spacing:-.075em; }.services-start h2 em { color:#587543; font-weight:500; }.services-start ol { display:grid; gap:1px; margin:0; padding:0; list-style:none; background:rgb(23 62 36 / 19%); }.services-start li { padding:1.25rem; background:#f3f0e5; }.services-start li span { display:block; }.services-start h3 { margin:.65rem 0 0; font:500 clamp(1.3rem,2.2vw,1.8rem)/.95 var(--serif); letter-spacing:-.035em; }.services-start li p { margin:.65rem 0 0; color:#576255; font-size:.8rem; line-height:1.5; }.service-price-list li { align-items:start; flex-wrap:wrap; }.service-select-button { margin-left:auto; border:1px solid #587543; padding:.48rem .6rem; background:transparent; color:#365225; font:500 .53rem/1.2 var(--mono); letter-spacing:.07em; text-transform:uppercase; }.service-select-button:hover,.service-select-button:focus-visible,.service-select-button[aria-pressed="true"] { background:#365225; color:#f3f0e5; outline:2px solid #365225; outline-offset:2px; }.service-select-button[aria-pressed="true"]::before { content:"✓ "; }.selection-tray { position:fixed; z-index:50; right:max(1rem,3vw); bottom:max(1rem,3vw); width:min(24rem,calc(100vw - 2rem)); padding:1rem; border:1px solid rgb(200 255 80 / 62%); background:#163521; color:#eff1e8; box-shadow:.65rem .7rem 0 rgb(0 0 0 / 21%); }.selection-tray > p { margin:0; color:#c8ff50; font:500 .56rem/1.3 var(--mono); letter-spacing:.1em; }.selection-tray ul { display:grid; gap:.4rem; margin:.75rem 0; padding:0; list-style:none; }.selection-tray li { display:flex; justify-content:space-between; gap:.8rem; padding:.42rem 0; border-bottom:1px solid rgb(239 241 232 / 17%); font:.76rem/1.4 var(--sans); }.selection-tray li button,.selection-tray > div > button { border:0; padding:0; background:transparent; color:#b9c9b4; cursor:pointer; font:500 .54rem/1.2 var(--mono); letter-spacing:.08em; text-transform:uppercase; }.selection-tray li button { color:#c8ff50; font-size:1rem; }.selection-tray > div { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:1rem; }.selection-tray a { padding:.65rem .7rem; background:#c8ff50; color:#173e24; font:500 .54rem/1.2 var(--mono); letter-spacing:.08em; text-decoration:none; text-transform:uppercase; }.selection-tray a:hover,.selection-tray a:focus-visible { outline:2px solid #c8ff50; outline-offset:3px; background:transparent; color:#c8ff50; }.sample-document-viewer { width:min(100%,900px); margin:clamp(4rem,9vw,8rem) auto 0; }.sample-document-viewer header { max-width:620px; }.sample-document-viewer header > p:first-child,.sample-document-preview > p,.sample-document-preview__top span,.sample-document-preview dt,.sample-document-preview footer { color:#597044; font:500 .52rem/1.3 var(--mono); letter-spacing:.11em; }.sample-document-viewer h3 { margin:1rem 0 0; font:500 clamp(2.7rem,5vw,5.4rem)/.82 var(--serif); letter-spacing:-.065em; }.sample-document-viewer h3 em { color:#c8ff50; font-weight:500; }.sample-document-viewer header > p:last-child,.sample-document-note { color:#bdc8b5; font-size:.82rem; line-height:1.55; }.sample-document-controls { display:flex; flex-wrap:wrap; gap:.45rem; margin:2rem 0 1rem; }.sample-document-controls button { border:1px solid rgb(242 239 228 / 32%); padding:.62rem .72rem; background:transparent; color:#edf0e7; font:500 .55rem/1.2 var(--mono); letter-spacing:.07em; text-transform:uppercase; }.sample-document-controls button[aria-selected="true"],.sample-document-controls button:hover,.sample-document-controls button:focus-visible { border-color:#c8ff50; background:#c8ff50; color:#173e24; outline:0; }.sample-document-preview { display:grid; gap:1.25rem; min-height:300px; padding:clamp(1.3rem,4vw,2.6rem); border:1px solid #c5d1ad; background:#f3f0e5; color:#173e24; box-shadow:12px 14px 0 rgb(0 0 0 / 16%); }.sample-document-preview > p { margin:0; }.sample-document-preview__top { display:grid; gap:.55rem; padding-bottom:1rem; border-bottom:2px solid #173e24; }.sample-document-preview__top strong { font:500 clamp(1.65rem,3vw,2.7rem)/.9 var(--serif); letter-spacing:-.05em; }.sample-document-preview dl { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin:0; }.sample-document-preview dd { margin:.35rem 0 0; font:.8rem/1.45 var(--sans); }.sample-document-preview footer { align-self:end; padding-top:1rem; border-top:1px solid rgb(23 62 36 / 25%); }.sample-document-note { margin:.9rem 0 0; }
@media (max-width:800px) { .services-start { grid-template-columns:1fr; }.sample-document-viewer { width:min(100%,650px); } }
@media (max-width:560px) { .services-start { padding-inline:7vw; }.service-select-button { margin-left:0; }.selection-tray { right:1rem; bottom:1rem; left:1rem; width:auto; }.sample-document-controls { display:grid; grid-template-columns:1fr 1fr; }.sample-document-controls button { min-height:2.8rem; }.sample-document-preview { min-height:270px; }.sample-document-preview dl { grid-template-columns:1fr; gap:.75rem; } }

/* Enquiry actions: lime stays a precise accent, never the main reading surface. */
.service-select-button { border-color:#254a30; background:#f3f0e5; color:#173e24; box-shadow:inset 3px 0 0 #8faa62; }.service-select-button:hover { border-color:#173e24; background:#e3ead9; color:#173e24; box-shadow:inset 3px 0 0 #b5d16e; }.service-select-button:focus-visible { border-color:#b5d16e; background:#f3f0e5; color:#173e24; outline:2px solid #173e24; outline-offset:3px; }.service-select-button[aria-pressed="true"] { border-color:#294e34; background:#294e34; color:#f3f0e5; box-shadow:inset 3px 0 0 #b5d16e; outline:0; }.service-select-button[aria-pressed="true"]:hover { background:#365f40; color:#f3f0e5; }.service-select-button[aria-pressed="true"]:focus-visible { outline:2px solid #b5d16e; outline-offset:3px; }
.selection-tray { border-color:#78945d; background:#123621; color:#f3f0e5; box-shadow:.65rem .7rem 0 rgb(0 0 0 / 21%),inset 3px 0 0 #a8c96c; }.selection-tray > p { color:#f3f0e5; }.selection-tray li { border-bottom-color:rgb(243 240 229 / 26%); color:#f3f0e5; }.selection-tray li button { color:#c0d793; }.selection-tray li button:hover,.selection-tray li button:focus-visible { color:#f3f0e5; outline:2px solid #b5d16e; outline-offset:3px; }.selection-tray > div > button { color:#e5ecdc; text-decoration:underline; text-decoration-color:#8faa62; text-underline-offset:.25rem; }.selection-tray > div > button:hover,.selection-tray > div > button:focus-visible { color:#f3f0e5; outline:2px solid #b5d16e; outline-offset:3px; }.selection-tray a { border:1px solid #8faa62; background:#173e24; color:#f3f0e5; box-shadow:inset 3px 0 0 #a8c96c; }.selection-tray a:hover { border-color:#b5d16e; background:#244e31; color:#f3f0e5; }.selection-tray a:focus-visible { border-color:#b5d16e; background:#173e24; color:#f3f0e5; outline:2px solid #f3f0e5; outline-offset:3px; }

/* Keep primary project actions dark and reserve lime for the edge/focus accents. */
.project-process-primary { border-color:#8faa62; background:#173e24; color:#f3f0e5; box-shadow:inset 3px 0 0 #b5d16e; }.project-process-secondary { border-color:#8faa62; color:#f3f0e5; }.project-process-primary:hover { border-color:#b5d16e; background:#294e34; color:#f3f0e5; }.project-process-secondary:hover { border-color:#b5d16e; background:rgb(143 170 98 / 14%); color:#f3f0e5; }.project-process-primary:focus-visible,.project-process-secondary:focus-visible { outline-color:#c8ff50; }.sample-document-controls button[aria-selected="true"] { border-color:#b5d16e; background:#294e34; color:#f3f0e5; box-shadow:inset 3px 0 0 #b5d16e; }.sample-document-controls button:hover,.sample-document-controls button:focus-visible { border-color:#b5d16e; background:rgb(143 170 98 / 18%); color:#f3f0e5; }
.sample-document-controls button[aria-selected="true"]:hover,.sample-document-controls button[aria-selected="true"]:focus-visible { background:#365f40; color:#f3f0e5; }

/* Keep the supporting project copy visually tied to its headline. */
.project-process-heading { column-gap:clamp(2rem,7vw,8rem); row-gap:clamp(1.25rem,4.5vw,5rem); }
@media (max-width:800px) { .project-process-heading { column-gap:2rem; row-gap:1.25rem; } }
