/* Four capabilities, each with a short visual story. */
.services{padding:12px 0 86px}.services .section-title{margin-bottom:30px}
.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.service{display:grid;grid-template-columns:minmax(0,1fr) 144px;column-gap:20px;align-content:start;position:relative;min-height:245px;padding:30px;background:#e9ecdf;border-radius:8px;color:var(--ink);overflow:hidden}
.service:nth-child(2){background:#e3e9e6}.service:nth-child(3){background:var(--berry);color:var(--paper)}.service:nth-child(4){background:#eee3d8}
.service-num{grid-column:1;font-size:11px}.service h3{grid-column:1;font-size:34px;margin:27px 0 16px;line-height:1.05}.service p{grid-column:1;font-size:15px;line-height:1.6;max-width:340px}
.service-art{grid-column:2;grid-row:1 / 5;align-self:center;color:#5f7355}.service:nth-child(2) .service-art{color:#456c68}.service:nth-child(3) .service-art{color:#f0dac4}.service:nth-child(4) .service-art{color:var(--berry)}
.service-art svg{width:100%;height:auto;display:block;overflow:visible;fill:currentColor}.service-line{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.service-outline{fill:none;stroke:currentColor;stroke-width:3}.service-art .secondary{opacity:.45}.service-art .arrow{stroke:var(--paper)}
.service-more{grid-column:1;margin-top:14px;max-width:340px;font-size:12px}.service-more summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:44px;cursor:pointer;list-style:none;border-top:1px solid #87436233}.service-more summary::-webkit-details-marker{display:none}.service-more p{font-size:13px;padding:8px 0;line-height:1.65}.service-more[open] summary span{transform:rotate(45deg)}
.motion-ready:not(.is-animated) .service-piece{opacity:0;transform:translate(var(--dx),var(--dy))}.motion-ready:not(.is-animated) .service-line{stroke-dasharray:600;stroke-dashoffset:600}
.is-animated .service-piece{animation:piece-settle 1.1s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--step)*.15s + var(--card-delay,0s))}
.is-animated .service-line{stroke-dasharray:600;animation:route-draw 1.8s ease both;animation-delay:var(--card-delay,0s)}
@keyframes piece-settle{from{opacity:0;transform:translate(var(--dx),var(--dy))}to{opacity:1;transform:translate(0,0)}}
@keyframes route-draw{from{stroke-dashoffset:600}to{stroke-dashoffset:0}}
/* A distinct work chapter, with the visuals attached to their projects. */
.work-section{background:#eae9e2;padding:72px 0 78px;border-top:1px solid #ddddd3;border-bottom:1px solid #ddddd3;scroll-margin-top:110px}
.work-heading{display:flex;justify-content:space-between;align-items:start;gap:40px;margin-bottom:45px}.work-heading .eyebrow{margin-top:9px;max-width:180px}.work-heading h2{font-size:clamp(48px,5.2vw,72px);line-height:1.02;width:66%}.work-heading h2 em{font-style:normal;color:var(--berry)}
.work-category{display:flex;justify-content:space-between;align-items:baseline;gap:24px;border-top:1px solid #c9ccc0;padding-top:20px;margin-bottom:26px}.work-category h3{font:400 21px/1.3 var(--body);letter-spacing:-.035em}.work-category>span{font-size:12px;color:var(--muted)}
.venture-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.venture-panel{background:var(--paper);border-radius:8px;overflow:hidden;min-width:0}.venture-picture{height:220px;display:flex;align-items:end;justify-content:center;background:#e0e8d5;padding:24px 24px 0}.venture-picture img{width:100%;height:auto;max-height:196px;object-fit:contain;object-position:center bottom}.osw-panel .venture-picture{background:#e9ded6}
.journey-art{padding:24px;color:var(--berry);align-items:center}.journey-art svg{width:100%;height:100%;max-width:470px;overflow:visible}.journey-art path{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round}.journey-art circle{fill:currentColor}.journey-art .journey-arrow{stroke-width:3}
.venture-content{padding:28px 30px 24px}.venture-content .venture-index{font-size:11px;margin-bottom:12px}.venture-content h4{font-size:clamp(33px,3.4vw,46px);line-height:1.05;margin-bottom:15px;color:var(--berry)}.venture-content>p{font-size:15px;line-height:1.6;max-width:450px}.venture-content .editorial-detail{max-width:none;margin-top:17px}.venture-content .editorial-detail p{max-width:450px}
.client-section{margin-top:58px}.client-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.8fr);gap:56px;align-items:start}.client-layout .advisory-row summary{grid-template-columns:minmax(0,1fr) 22px;gap:10px;padding:22px 0}.client-layout .advisory-name{grid-column:1;grid-row:1;font-size:31px}.client-layout .advisory-scope{grid-column:1;grid-row:2;font-size:13px}.client-layout .advisory-toggle{grid-column:2;grid-row:1 / 3}.client-layout .advisory-parent{font-size:11px;margin-top:7px}.client-layout .advisory-description{padding-right:25px;max-width:600px}.client-layout .advisory-description p{font-size:14px}
.client-visual{margin:0;background:#dae4e6;border-radius:8px;padding:28px 24px;display:flex;align-items:center;gap:24px;min-width:0;flex-direction:column}.client-phone{width:128px;max-width:100%}.client-phone img{width:100%;height:auto;display:block;filter:drop-shadow(0 12px 12px #26353a18)}.client-visual figcaption{text-align:center}.client-visual strong{display:block;font:400 25px/1.2 var(--display);margin-bottom:9px}.client-visual figcaption span{font-size:12px;color:#4e626b;line-height:1.6}
.studio-refresh{padding:72px 0 76px;border:0;grid-template-columns:1fr 1.25fr;gap:70px;align-items:center}.studio-refresh h2{font-size:clamp(43px,4.6vw,62px);line-height:1.02}.studio-refresh h2 em{font-style:normal;color:var(--berry)}.studio-refresh>div>p:not(.eyebrow){font-size:22px;line-height:1.5;max-width:610px}.studio-refresh .team{margin-top:26px;padding-top:24px;border-top:1px solid var(--line);gap:32px}.studio-refresh .team small{font-size:11px}
@media(max-width:1100px){.service{grid-template-columns:minmax(0,1fr) 112px;padding:26px;gap:16px}.service h3{font-size:30px}.service p{font-size:14px}.client-layout{gap:32px}.venture-content{padding:25px}.venture-picture{height:190px}.studio-refresh{gap:40px}}
@media(max-width:760px){.services{padding:8px 0 46px}.service-grid{grid-template-columns:1fr;gap:12px}.service{grid-template-columns:minmax(0,1fr) 132px;min-height:220px;padding:26px}.service h3{font-size:32px;margin:22px 0 13px}.service p{max-width:400px}.work-section{padding:44px 0 46px}.work-heading{display:block;margin-bottom:30px}.work-heading .eyebrow{max-width:none;margin-top:0;margin-bottom:17px}.work-heading h2{font-size:49px;width:100%}.work-category{display:block;padding-top:18px;margin-bottom:22px}.work-category h3{font-size:20px}.work-category>span{display:block;margin-top:8px}.venture-panels{grid-template-columns:1fr;gap:22px}.venture-picture{height:auto;min-height:170px;max-height:240px}.venture-picture img{max-height:210px}.journey-art{height:180px}.venture-content{padding:24px}.venture-content h4{font-size:38px}.client-section{margin-top:36px}.client-layout{grid-template-columns:1fr;gap:26px}.client-layout .advisory-name{font-size:29px}.client-visual{flex-direction:row;justify-content:center;gap:30px;padding:26px;align-items:center}.client-phone{width:106px;flex:none}.client-visual figcaption{text-align:left}.client-visual strong{font-size:26px}.studio-refresh{grid-template-columns:1fr;gap:26px;padding:44px 0 46px}.studio-refresh h2{font-size:46px}.studio-refresh>div>p:not(.eyebrow){font-size:20px}.studio-refresh .team{gap:28px;margin-top:22px}}
@media(max-width:420px){.service{grid-template-columns:minmax(0,1fr) 82px;column-gap:12px;padding:24px;min-height:225px}.service h3{font-size:28px}.service p{font-size:14px}.service-art{align-self:start;margin-top:38px}.service-more{grid-column:1 / -1}.work-heading h2{font-size:43px}.venture-content h4{font-size:34px}.client-visual{gap:22px;padding:24px 20px}.client-phone{width:94px}.client-visual strong{font-size:24px}}
@media(prefers-reduced-motion:reduce){.motion-ready .service-piece,.is-animated .service-piece{animation:none;opacity:1;transform:none}.motion-ready .service-line,.is-animated .service-line{animation:none;stroke-dashoffset:0}}
@media(max-width:760px){.service-art{grid-row:1 / 3}.service>p{grid-column:1 / -1}}
.service-art .secondary{fill-opacity:.45}
.service-art .service-finish-check{stroke:var(--paper)}
/* Keep founder projects compact within the broader work chapter. */
.work-section>.shell>.work-category,.venture-panels{max-width:1000px;margin-inline:auto}
.venture-panels{gap:20px}
.venture-picture{height:140px;min-height:0;max-height:none;padding:17px 20px 0}
.venture-picture img{max-height:123px}
.venture-picture.journey-art{height:140px;padding:16px 24px}
.venture-content{padding:22px 24px 18px}
.venture-content h4{font-size:34px;margin-bottom:12px}
.venture-content>p{font-size:14px}
.venture-content .venture-index{margin-bottom:10px}
.venture-content .editorial-detail{margin-top:13px}
@media(max-width:760px){.venture-panels{max-width:500px;gap:18px}.venture-picture,.venture-picture.journey-art{height:130px}.venture-picture img{max-height:113px}.venture-content{padding:21px 23px 17px}.venture-content h4{font-size:33px}}
/* One organisation, two distinct areas of work within CAHS. */
.client-layout.client-organisations{display:block}
.cahs-group{margin-top:30px}
.cahs-heading{margin-bottom:14px}
.cahs-heading>p{font-size:12px;color:var(--muted);margin-bottom:9px}
.cahs-heading h4{font-size:clamp(29px,3vw,38px);line-height:1.12;max-width:780px}
.cahs-heading h4 span{white-space:nowrap;color:var(--muted);font:400 14px/1.5 var(--body);letter-spacing:0}
.cahs-projects{padding-left:28px;border-left:2px solid #87436238}
.cahs-projects>.advisory-row{border-top:1px solid var(--line)}
.client-layout .cahs-projects .advisory-name{font-size:26px}
.cahs-child-work{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,430px);gap:40px;align-items:start;margin-top:23px}
.cahs-child-work>.advisory-row{border-bottom:0}
.cahs-child-work .client-visual{flex-direction:row;justify-content:center;gap:26px;padding:24px;margin:0}
.cahs-child-work .client-phone{width:106px;flex:none}
.cahs-child-work .client-visual figcaption{text-align:left}
.cahs-child-work .client-visual strong{font-size:26px}
@media(max-width:1000px){.cahs-child-work{grid-template-columns:minmax(0,1fr) minmax(0,330px);gap:28px}.cahs-child-work .client-visual{gap:20px;padding:22px}.cahs-child-work .client-phone{width:94px}.cahs-child-work .client-visual strong{font-size:24px}}
@media(max-width:760px){.cahs-group{margin-top:27px}.cahs-heading h4{font-size:30px}.cahs-projects{padding-left:19px}.cahs-child-work{grid-template-columns:minmax(0,1fr);gap:18px;margin-top:0}.cahs-child-work .client-visual{justify-content:flex-start;max-width:430px;padding:24px}.client-layout .cahs-projects .advisory-name{font-size:26px}}

/* Selected work delivered for Lyfe Languages. */
.client-layout .lyfe-work .advisory-description{max-width:850px;padding-right:0;padding-bottom:26px}
.lyfe-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:24px}
.lyfe-example{display:block;color:var(--ink);text-decoration:none;border-radius:8px}
.lyfe-example-image{position:relative;overflow:hidden;border-radius:8px;background:#e9e3d7;aspect-ratio:16/9}
.lyfe-example-image img{display:block;width:100%;height:100%;object-fit:contain}
.lyfe-example-image>span{position:absolute;bottom:12px;right:12px;display:grid;place-items:center;width:36px;height:36px;background:var(--berry);color:white;border-radius:50%;font-size:12px}
.lyfe-example-title{display:flex;justify-content:space-between;gap:12px;font-size:16px;line-height:1.4;margin-top:12px}
.lyfe-example small{display:block;color:var(--muted);font-size:12px;margin-top:4px}
.lyfe-example:hover .lyfe-example-title{color:var(--berry)}
.lyfe-example:focus-visible{outline:2px solid var(--berry);outline-offset:6px}
@media(max-width:520px){.lyfe-examples{grid-template-columns:minmax(0,1fr);gap:24px;max-width:420px}}


.lyfe-website-image{aspect-ratio:16/10}

/* Equal card heights across both rows and the stacked mobile layout. */
.service-grid{grid-auto-rows:1fr;align-items:stretch}
.service.motion-ready{transition:opacity .55s ease,transform .55s ease}
.service.motion-ready:not(.is-animated){opacity:0;transform:translateY(18px)}
.service.motion-ready:focus-within{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.service.motion-ready{opacity:1;transform:none;transition:none}}
