/* THE COMPOSER / ATELIER — typography, material and composition. */
@font-face{font-family:"Instrument Sans";src:url("fonts/InstrumentSans-Variable.woff2") format("woff2");font-weight:400 700;font-stretch:75% 100%;font-style:normal;font-display:swap}
body.composer-next{--ink:#222520;--paper:#e9e6df;--orange:#a94f31;--blue:#b9c7c5;--dark:#20241f;--black:var(--ink);--beige:var(--paper);--bone:#f4f1eb;--panel:var(--paper);--beige-deep:#dedbd3;--muted:#656960;--muted-inv:#b4b9af;--rule:#c9c9bf;--rule-inv:#454a42;--font-display:"Instrument Sans","Helvetica Neue",Arial,sans-serif;--font-deck:var(--font-display);--font-text:var(--font-display);--gutter:clamp(24px,5vw,100px);--maxw:1600px;--section:clamp(80px,10vw,160px);margin:0;padding:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 var(--font-text);letter-spacing:0;-webkit-font-smoothing:antialiased;overflow-x:clip}
.composer-next *{box-sizing:border-box}.composer-next ::selection{background:#b86647;color:#fff}.composer-next a{color:inherit}.composer-next button{font:inherit}.composer-next h1,.composer-next h2,.composer-next h3{font-family:var(--font-display);font-weight:450;letter-spacing:-.045em}.composer-next p{letter-spacing:0}.composer-next :focus-visible{outline:2px solid #a94f31;outline-offset:5px}
.composer-next main{margin:0;padding:0;gap:0;width:100%;max-width:none}.composer-next main>section{width:100%;margin:0;border:0;border-radius:0;overflow:visible}.composer-next .wrap{max-width:var(--maxw);width:auto;margin-inline:auto;padding-inline:var(--gutter)}
.composer-next .h2{font-size:clamp(38px,4.4vw,72px);line-height:1.06;max-width:900px;font-weight:450;letter-spacing:-.045em}.composer-next .meta,.c-eyebrow{font:450 12px/1.5 var(--font-text);text-transform:none;letter-spacing:0;margin:0 0 26px}.composer-next .meta:before,.c-eyebrow:before{content:"";display:inline-block;width:5px;height:5px;background:currentColor;border-radius:50%;vertical-align:middle;margin-right:12px}
.composer-next .reveal{opacity:1;transform:none}.composer-next .section__head{margin-bottom:55px}.composer-next .lead{font-size:18px;line-height:1.6;color:var(--muted)}
.c-nav{max-width:1600px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:35px;height:112px;padding:0 var(--gutter);color:var(--ink);position:relative;z-index:5;background:var(--paper)}.c-brand{width:128px;flex-shrink:0;display:block}.c-brand svg{width:100%;height:61px;display:block}
.c-nav-links{display:flex;gap:38px;margin-left:auto;margin-right:70px}.c-nav-links a{padding-block:15px;text-decoration:none;font-size:14px;font-weight:450}.c-nav-links a:hover{color:var(--orange)}.c-nav-cta{display:flex;gap:22px;align-items:center;font-size:14px;text-decoration:none;border-bottom:1px solid #90938b;padding:12px 0}.c-nav-cta span{font-size:23px;transition:transform .3s}.c-nav-cta:hover span{transform:translate(3px,-3px)}.c-mobile-menu{display:none}
.composer-next main>.c-hero{max-width:1600px;margin:auto;background:var(--paper);color:var(--ink);min-height:720px;height:auto;padding:40px var(--gutter) 0;position:relative;isolation:isolate;display:grid;grid-template-columns:46% 54%;grid-template-rows:auto auto auto;column-gap:0;overflow:visible}
.c-hero-top{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--rule);padding:20px 0 22px;font-size:12px;color:#5c6158}
.c-hero-copy{grid-column:1;grid-row:2;align-self:center;padding:45px 0 48px;position:relative;z-index:2;pointer-events:none}.c-hero-copy a{pointer-events:auto}.c-hero .c-eyebrow{margin-bottom:27px;color:#5c6158}
.c-hero h1{font-size:clamp(74px,8.1vw,130px);font-weight:450;line-height:.93;letter-spacing:-.065em;margin:0 0 35px;max-width:none;font-stretch:95%}.c-hero h1 em{font:inherit;color:var(--orange);font-style:normal}.c-hero-sub{font-size:16px;line-height:1.55;max-width:330px;color:#52594f;margin:0 0 28px}
.c-pill{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;border-radius:0;border-bottom:1px solid var(--ink);padding:10px 0;text-decoration:none;font-size:15px;font-weight:450}.c-pill span{font-size:27px;line-height:1;transition:transform .3s}.c-pill:hover span{transform:translate(4px,-4px)}
.c-stage{grid-column:2;grid-row:2;position:relative;align-self:stretch;min-width:0;min-height:540px;touch-action:pan-y;background:var(--paper)}.c-stage-canvas{position:absolute;inset:0;cursor:grab;outline-offset:-4px!important}.c-stage-canvas:active{cursor:grabbing}.c-stage canvas,.a-chain-canvas canvas{display:block;width:100%;height:100%}
.c-orb-fallback{position:absolute;left:28%;top:22%;width:54%;aspect-ratio:1;background:radial-gradient(circle at 35% 22%,#fffdfa,#e2d8c5 53%,#918775);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:11%;box-shadow:inset -15px -10px 40px #00000010,0 30px 50px #2a241722}.c-orb-fallback i{width:13%;height:28%;border-radius:45% 45% 20% 20%;background:#282c27;box-shadow:inset 4px 3px 5px #9da99b66}.c-stage.is-ready .c-orb-fallback{display:none}
.c-orbit-label{position:absolute;bottom:8px;right:20px;display:flex;flex-direction:column;gap:4px;font-size:11px;text-align:right;pointer-events:none;color:#62685d}.c-orbit-label span:first-child{font-size:10px;letter-spacing:.04em}.c-orbit-label span:last-child{font-size:13px;color:#394132}.a-drag-hint{position:absolute;top:25px;right:20px;font-size:11px;color:#62685d;pointer-events:none}.a-drag-hint:before{content:"↔";margin-right:9px;font-size:16px}
.c-hero-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:25px;position:relative;padding:29px 0 34px;margin-top:15px;border-top:1px solid var(--rule)}.c-scroll{font-size:12px;display:flex;gap:25px;text-decoration:none;align-items:center}.c-scroll span{font-size:22px}
.a-materials{display:flex;gap:27px;align-items:center}.a-materials>span{font-size:11px;color:#62685d}.c-composition-controls{display:flex;gap:20px;align-items:center}.c-composition-controls button{display:flex;align-items:center;gap:9px;background:none;border:0;border-bottom:1px solid transparent;padding:10px 0;color:#656b61;font-size:11px;cursor:pointer}.c-composition-controls button i{display:block;width:15px;height:15px;border-radius:50%;background:linear-gradient(135deg,#fff,#c5beaf);box-shadow:0 0 0 1px #2b302326}.c-composition-controls button[data-form="1"] i{background:linear-gradient(125deg,#535b54,#fafef6 42%,#929b94 49%,#d6dbd2)}.c-composition-controls button[data-form="2"] i{background:linear-gradient(125deg,#5f665c,#151b17)}.c-composition-controls button[aria-pressed=true]{border-bottom-color:var(--ink);color:var(--ink)}.c-motion{background:none;border:0;padding:12px 0;color:#62685d;font-size:11px!important;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.composer-next main>.c-intro{background:var(--dark);color:var(--paper);display:grid;grid-template-columns:1fr 3fr;padding:110px max(var(--gutter),calc((100% - 1400px)/2));gap:35px}.c-intro>.c-eyebrow{padding-top:10px;color:#b4b9af}.c-intro h2{font-size:clamp(55px,6.7vw,108px);line-height:.98;letter-spacing:-.055em;margin:0;font-weight:450}.c-intro h2 span{color:#b4bdae}.c-intro-bottom{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;align-items:end;margin-top:50px}.c-intro-bottom p{max-width:420px;font-size:17px;line-height:1.6;color:#b4b9af;margin:0}.c-intro-bottom a{justify-self:end}
.c-textlink{font-size:14px;display:inline-flex;gap:30px;align-items:center;border-bottom:1px solid currentColor;text-decoration:none;padding-bottom:9px}.c-textlink span{font-size:23px;transition:transform .3s}.c-textlink:hover span{transform:translate(3px,-3px)}
.composer-next main>.a-selected{background:var(--paper);color:var(--ink);max-width:1600px;margin:auto;padding:120px var(--gutter) 50px}.a-section-top{display:grid;grid-template-columns:1fr 2.2fr 1fr;align-items:start;gap:30px;margin-bottom:64px}.a-section-top .c-eyebrow{padding-top:9px}.a-section-top h2{font-size:clamp(42px,4.3vw,68px);line-height:1.02;letter-spacing:-.055em;margin:0}.a-section-top h2 span{color:#72796c}.a-section-top>a{align-self:end;justify-self:end;white-space:nowrap}
.a-case-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:90px 65px}.a-case-frigera{grid-column:1/-1}.a-case-staf-cars{margin-top:130px}.a-case .folio__shot{border-radius:0;aspect-ratio:auto;overflow:hidden;background:#d5d5cc;margin:0 0 22px}.a-case .folio__shot img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;filter:none;transition:transform 1s cubic-bezier(.2,.7,.1,1)}.a-case a:hover img{transform:scale(1.025)}.a-case a:focus-visible{display:block}.a-case-frigera .folio__shot{aspect-ratio:1.95}.a-case-frigera .folio__shot img{width:100%;height:100%;object-fit:cover;object-position:center 55%}
.a-case .folio__meta{font-size:12px;color:#666f60;letter-spacing:0;margin-bottom:9px}.a-case .folio__meta b{font-weight:450}.a-case .folio__name{font-size:clamp(27px,2.7vw,42px);font-weight:450;margin:0 0 8px;letter-spacing:-.04em}.a-case .folio__line{font-size:16px;line-height:1.6;color:#5a6453;max-width:540px;margin:0}
.a-case-frigera{display:grid;grid-template-columns:1.4fr 1fr;gap:0 50px}.a-case-frigera>a{grid-column:1/-1}.a-case-frigera .folio__meta,.a-case-frigera .folio__name{grid-column:1}.a-case-frigera .folio__line{grid-column:2;grid-row:2/4;align-self:center}
.composer-next main>.c-clients{background:var(--paper);color:var(--ink);padding:55px var(--gutter) 95px;max-width:1600px;margin:auto}.c-clients .clients__label{color:#666e5e;font:400 12px var(--font-text);text-transform:none;letter-spacing:0;margin-bottom:30px}.c-clients .clients__item img{filter:grayscale(1);opacity:.75}.c-clients .clients__track{animation-duration:65s}
.composer-next main>.a-capabilities{background:#343b31;color:var(--paper);display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;position:relative;padding:100px max(var(--gutter),calc((100% - 1400px)/2));gap:0 65px}.a-capability-head{grid-column:1;grid-row:1}.a-capability-head .c-eyebrow{color:#bdc5b6}.a-capability-head h2{font-size:clamp(48px,5.3vw,82px);line-height:1;letter-spacing:-.05em;margin:0}.a-capability-art{grid-column:1;grid-row:2;position:relative;min-height:400px;margin-top:35px;isolation:isolate}.a-chain-canvas{position:absolute;inset:0}.a-capability-art>span{position:absolute;bottom:0;left:0;color:#bdc5b6;font-size:12px}.a-chain-fallback{font-size:240px;line-height:1;position:absolute;inset:20px;text-align:center;color:#b9c7b2}.a-capability-art.is-ready .a-chain-fallback{display:none}.a-disciplines{grid-column:2;grid-row:1/3;align-self:center}
.a-discipline{padding:30px 0 36px;border-top:1px solid #818d7755;display:grid;grid-template-columns:30px 1fr 30px;gap:18px;align-items:start;text-decoration:none}.a-discipline-number{font-size:11px;color:#aebda3;padding-top:13px}.a-discipline-arrow{font-size:30px;transition:transform .3s;padding-top:5px}.a-discipline h3{font-size:clamp(40px,4vw,62px);line-height:1.1;font-weight:450;letter-spacing:-.05em;margin:0 0 18px}.a-discipline p{font-size:16px;line-height:1.6;color:#c0c9b8;max-width:410px;margin:0}.a-discipline:hover .a-discipline-arrow{transform:translate(4px,-4px)}.a-discipline:hover h3{color:#fffaf0}
.composer-next main>.a-ventures{background:var(--paper);color:var(--ink);padding-block:110px}.a-ventures .wrap{display:grid;grid-template-columns:1fr 2fr;gap:70px}.a-ventures .h2{font-size:clamp(36px,3.6vw,58px)}.a-ventures .ventures{display:block;padding:0;margin:0;border:0}.a-ventures .venture{display:grid;grid-template-columns:120px 1fr;gap:30px;padding:25px 0;border:0;border-top:1px solid var(--rule);background:none}.a-ventures .venture__name{font-size:24px;font-weight:450;letter-spacing:-.04em;padding:0;margin:0}.a-ventures .venture__desc{padding:0;margin:0;font-size:16px;line-height:1.65;color:#5c6555}.a-ventures .venture__desc a{text-underline-offset:4px;color:var(--ink);white-space:nowrap}
.composer-next main>.c-process{background:#d8ded1;color:var(--ink);padding:110px 0}.c-process .wrap{display:grid;grid-template-columns:1fr 1.4fr;gap:60px}.c-process .section__head{grid-column:1;grid-row:1/3;margin:0}.c-process .h2{font-size:clamp(45px,4.4vw,70px);line-height:1.04}.c-process .lead{font-size:16px;line-height:1.65;color:#57624f;margin-top:30px;max-width:430px}.a-process-mark{font-size:120px;line-height:1.1;font-weight:400;display:block;margin-top:35px;color:#717f63}.c-process .path{grid-column:2;padding:0;margin:0;border:0}.c-process .stage{display:block;padding:0;border-bottom:1px solid #75806a55}.c-process .stage details{border:0}.c-process .stage summary{display:grid;grid-template-columns:28px 1fr 20px;align-items:center;gap:16px;padding:27px 0;cursor:pointer;list-style:none}.c-process summary::-webkit-details-marker{display:none}.c-process .stage summary:after{content:'+';font-size:25px;justify-self:end}.c-process .stage details[open] summary:after{content:'−'}.c-process .stage__num{margin:0;font-size:11px;color:#5c6b51;min-width:0}.c-process .stage__num:before{display:none}.c-process .stage__name{font-size:26px;letter-spacing:-.035em;margin:0;font-weight:450}.c-process .stage__body{font-size:16px;line-height:1.65;color:#4d5b42;margin:0 0 28px 44px;max-width:600px}.c-process .band__close{grid-column:2;margin-top:20px}.c-process .band__oneline{font-size:16px;line-height:1.6;color:#4d5b42;max-width:540px;margin:0 0 25px}.c-process .btn{background:var(--ink);color:var(--paper);font-size:14px;border-radius:0;padding:17px 25px}
.composer-next main>.c-starts{background:var(--dark);color:var(--paper);padding-block:110px}.c-starts .wrap{display:grid;grid-template-columns:1fr 1.5fr;gap:75px}.c-starts .section__head{margin:0}.c-starts .meta{color:#b4b9af}.c-starts .h2{font-size:clamp(36px,3.7vw,57px);max-width:420px}.c-starts .starts{display:block}.c-starts .start-card{padding:30px 0 34px 65px;background:none;border:0;border-top:1px solid #737c6855;position:relative;border-radius:0;box-shadow:none}.a-start-number{position:absolute;top:32px;left:0;color:#b4b9af;font-size:12px}.c-starts .start-card .meta{font-size:12px;margin-bottom:22px}.c-starts .start-card .meta:before{display:none}.c-starts .start-card__price{font-size:48px;font-weight:400;line-height:1.1;letter-spacing:-.045em;margin-bottom:17px;color:var(--paper)}.c-starts .start-card__title{font-size:21px;line-height:1.25;font-weight:450;margin-bottom:12px;color:#edf0e8}.c-starts .start-card__body{font-size:16px;line-height:1.65;color:#b4b9af;max-width:510px;margin-bottom:26px}.c-starts .textlink{font-size:14px;border-color:#b4b9af;color:var(--paper)}
.composer-next main>.c-faq{background:var(--paper);color:var(--ink);padding:110px 0}.c-faq .wrap{display:grid;grid-template-columns:1fr 1.5fr;gap:20px 75px}.c-faq .section__head{margin:0}.c-faq .h2{font-size:48px;max-width:370px}.c-faq .faq{grid-column:2;grid-row:1/4;max-width:none}.c-faq details{border-color:var(--rule)}.c-faq summary{font:450 20px/1.4 var(--font-text);padding-block:25px;letter-spacing:-.02em}.c-faq details p{font-size:16px;line-height:1.65}.c-faq .faq__aside{font-size:14px}
.composer-next main>.c-close{background:#a55238;color:#f2ebe1;padding:100px 0}.c-close .wrap{display:block}.c-close-title{font:450 clamp(70px,10.3vw,165px)/.94 var(--font-display)!important;letter-spacing:-.065em!important;max-width:1200px!important;margin-bottom:40px!important}.c-close p{font-size:17px;line-height:1.65;max-width:540px;color:#f3ded2}.c-close .cta{max-width:none;text-align:left}.c-close .cta__lead{margin-left:0}.c-close .cta__actions{justify-content:flex-start}.c-close .btn{background:#f3ebe1;color:#4c3024;font-size:14px;border-radius:0;padding:18px 26px}.c-close .textlink{font-size:16px;color:#f3ebe1;border-color:#eec9b5}
.composer-next .c-footer{margin:0;padding:70px 0 20px;background:var(--dark);color:var(--paper);border:0;border-radius:0}.c-footer .bigfoot__top,.c-footer .bigfoot__bottom{border-color:#69735e55}.c-footer .bigfoot__brand{font-family:var(--font-text);font-size:42px;letter-spacing:-.05em;font-weight:450}.c-footer .fgroup__title{font-size:12px;color:#b4b9af}.c-footer .fgroup a{font-size:15px;color:var(--paper)}.c-footer .fgroup p{color:#b4b9af;font-size:16px;line-height:1.65}.c-footer .socials a{color:var(--paper)}.c-footer .bigfoot__grid{gap:40px}.c-footer .langs{border-color:#69735e55;color:#b4b9af}.c-footer .langs .is-lang{color:var(--paper)}
.c-motion-off *{animation:none!important;transition:none!important;scroll-behavior:auto!important}html:has(.c-motion-off){scroll-behavior:auto}
.composer-next.c-inner{--maxw:1360px}.composer-next.c-inner main{padding:0 var(--gutter);max-width:1600px;margin:auto}.composer-next.c-inner main>section{padding-block:85px;margin:0;border:0;border-bottom:1px solid var(--rule);border-radius:0;background:var(--paper);color:var(--ink)}.composer-next.c-inner main>.section--ink,.composer-next.c-inner main>.cloud--ink{background:var(--dark);color:var(--paper)}.composer-next.c-inner .pagehead .h1{font-size:clamp(48px,6vw,96px);font-weight:450;line-height:1.03;letter-spacing:-.05em;max-width:980px}.composer-next.c-inner .pagehead .lead{font-size:20px;line-height:1.55;max-width:740px;margin-top:30px}.composer-next.c-inner .btn{border-radius:0;font-size:15px}.composer-next.c-inner .folio__shot{border-radius:0}.composer-next.c-inner .folio__shot img{filter:none}.composer-next.c-inner main>section>.wrap{padding-inline:clamp(24px,4vw,60px)}.composer-next.c-inner .pagehead:after{display:none}
@media(max-width:1100px){.c-nav-links{margin-right:20px;gap:24px}.c-nav{height:100px}.composer-next main>.c-hero{padding-top:28px;grid-template-columns:48% 52%;min-height:660px}.c-hero h1{font-size:clamp(68px,8.5vw,90px)}.c-stage{min-height:480px}.a-materials>span{display:none}.c-composition-controls{gap:14px}.a-section-top{grid-template-columns:1fr 2fr}.a-section-top>a{grid-column:2;justify-self:start;margin-top:10px}.a-case-grid{gap:60px 30px}.a-capabilities{gap:0 35px!important}.a-ventures .wrap,.c-starts .wrap,.c-process .wrap,.c-faq .wrap{gap:35px}.c-faq .h2{font-size:40px}.c-process .stage__name{font-size:23px}}
@media(max-width:700px){
 .c-nav{height:86px;gap:16px}.c-brand{width:95px}.c-brand svg{height:48px}.c-nav-links{display:none}.c-nav-cta{font-size:11px;gap:8px;padding:8px 0}.c-nav-cta span{font-size:18px}.c-mobile-menu{display:block;margin-left:auto}.c-mobile-menu summary{font-size:12px;padding:12px 0;cursor:pointer;list-style:none}.c-mobile-menu summary::-webkit-details-marker{display:none}.c-mobile-menu nav{position:absolute;top:85px;left:0;right:0;padding:20px var(--gutter);background:var(--paper);box-shadow:0 15px 20px #232b1910;border-bottom:1px solid var(--rule);display:flex;flex-direction:column;gap:8px}.c-mobile-menu nav a{padding:12px 0;font-size:20px;text-decoration:none}.c-mobile-menu[open] summary{color:var(--orange)}
 .composer-next main>.c-hero{display:flex;flex-direction:column;min-height:0;padding-top:14px}.c-hero-top{font-size:11px;padding:17px 0 8px}.c-hero-top>span:last-child{display:none}.c-hero-copy{padding:30px 0 12px;align-self:stretch}.c-hero .c-eyebrow{font-size:12px;margin-bottom:20px}.c-hero h1{font-size:clamp(73px,19vw,110px);line-height:.94;margin-bottom:25px;letter-spacing:-.062em}.c-hero-sub{font-size:16px;max-width:350px;margin-bottom:16px}.c-pill{font-size:14px}
 .c-stage{width:100%;min-height:390px;aspect-ratio:.96;margin:14px 0 0;align-self:auto}.a-drag-hint{top:4px;right:0;font-size:10px}.c-orbit-label{bottom:0;right:0}.c-orbit-label span:first-child{font-size:9px}.c-orbit-label span:last-child{font-size:12px}.c-hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:20px 0 30px;margin-top:25px}.a-materials{grid-column:1/-1;grid-row:1;justify-content:center}.c-composition-controls{justify-content:space-between;width:100%;gap:12px}.c-composition-controls button{font-size:11px;padding:12px 0}.c-scroll{grid-row:2;font-size:11px;gap:18px}.c-motion{grid-row:2;text-align:right;font-size:10px!important}
 .composer-next main>.c-intro{display:block;padding:70px var(--gutter)}.c-intro>.c-eyebrow{padding:0;margin-bottom:35px}.c-intro h2{font-size:clamp(51px,12.8vw,75px);line-height:1.03}.c-intro-bottom{display:block;margin-top:35px}.c-intro-bottom p{font-size:16px;margin-bottom:28px}.c-textlink{font-size:14px}
 .composer-next main>.a-selected{padding:70px var(--gutter) 20px}.a-section-top{display:block;margin-bottom:35px}.a-section-top h2{font-size:43px;margin-bottom:25px}.a-section-top>a{margin:0}.a-case-grid{display:block}.a-case,.a-case-frigera{display:block;margin:0 0 48px}.a-case-staf-cars{margin-top:0}.a-case-frigera .folio__shot{aspect-ratio:1.35}.a-case-frigera .folio__shot img{object-position:center center}.a-case .folio__shot{margin-bottom:20px}.a-case .folio__name{font-size:30px}.a-case .folio__line{font-size:16px}.a-case .folio__meta{font-size:11px}
 .composer-next main>.c-clients{padding:10px var(--gutter) 55px}.c-clients .clients__track{gap:30px}.c-clients .clients__item img{height:30px}.composer-next main>.a-capabilities{display:flex;flex-direction:column;padding:70px var(--gutter)}.a-capability-head h2{font-size:56px}.a-capability-art{order:2;min-height:320px;margin:20px 0 0}.a-disciplines{order:1;margin-top:45px}.a-discipline{padding:24px 0 30px;grid-template-columns:22px 1fr 20px;gap:12px}.a-discipline h3{font-size:44px}.a-discipline p{font-size:16px}.a-discipline-arrow{font-size:23px}
 .composer-next main>.a-ventures{padding-block:70px}.a-ventures .wrap{display:block}.a-ventures .section__head{margin-bottom:35px}.a-ventures .h2{font-size:44px}.a-ventures .venture{grid-template-columns:1fr;gap:12px;padding:24px 0}.a-ventures .venture__name{font-size:27px}.a-ventures .venture__desc{font-size:16px}
 .composer-next main>.c-process{padding-block:70px}.c-process .wrap{display:block}.c-process .h2{font-size:47px}.c-process .lead{font-size:16px}.a-process-mark{display:none}.c-process .path{margin-top:35px}.c-process .stage summary{gap:10px;grid-template-columns:23px 1fr 20px;padding:23px 0}.c-process .stage__name{font-size:23px}.c-process .stage__body{margin-left:33px;font-size:16px}.c-process .band__close{margin-top:30px}
 .composer-next main>.c-starts{padding-block:70px}.c-starts .wrap{display:block}.c-starts .h2{font-size:43px;max-width:380px}.c-starts .starts{margin-top:35px}.c-starts .start-card{padding-left:36px}.c-starts .start-card__price{font-size:42px}.c-starts .start-card__body{font-size:16px}.composer-next main>.c-faq{padding-block:70px}.c-faq .wrap{display:block}.c-faq .h2{font-size:43px}.c-faq .faq{margin-top:30px}.c-faq summary{font-size:18px}.c-faq details p{font-size:16px}
 .composer-next main>.c-close{padding-block:65px}.c-close-title{font-size:clamp(45px,11.3vw,77px)!important;line-height:1.04!important;letter-spacing:-.055em!important}.c-close p{font-size:16px}.c-close .cta__actions{gap:22px}.c-footer .bigfoot__grid{grid-template-columns:1fr 1fr;gap:35px 25px}.c-footer .bigfoot__top{flex-wrap:wrap;gap:25px}.c-footer .bigfoot__brand{font-size:34px}.c-footer .fgroup:last-child{grid-column:1/-1}.c-footer .fgroup p{font-size:16px}.composer-next.c-inner main{padding:0 12px}.composer-next.c-inner main>section{padding-block:55px}.composer-next.c-inner .pagehead .h1{font-size:48px}.composer-next.c-inner .pagehead .lead{font-size:18px}
}
@media(prefers-reduced-motion:reduce){html:has(.composer-next){scroll-behavior:auto}.composer-next *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Explicitly reset the legacy portfolio and FAQ component geometry. */
.a-case .folio__shot{aspect-ratio:1.5}.a-case .folio__shot img{position:static;width:100%;height:100%;object-fit:cover}.a-case-frigera .folio__shot{aspect-ratio:1.95}
.c-faq .wrap{display:block}.c-faq .faqwrap{display:grid;grid-template-columns:1fr 1.5fr;gap:75px;max-width:none}.c-faq .faqwrap__aside{position:static}.c-faq .faqwrap__aside>p:last-child{font-size:16px;color:#62685d;max-width:280px}.c-faq .acc{border:0;border-top:1px solid var(--rule);border-radius:0;background:none;margin:0;padding:0}.c-faq .acc:last-child{border-bottom:1px solid var(--rule)}.c-faq .acc summary{display:flex;gap:20px;padding:25px 0}.c-faq .acc__icon{display:none}.c-faq .acc__sign{margin-left:auto;flex-shrink:0}.c-faq .acc__body{padding:0 35px 25px 0}.composer-next .c-close .lead{color:#f3ded2}.c-process .meta{color:#545e4b}.a-start-number{display:none}.c-starts .start-card{padding-left:0}
@media(max-width:700px){.c-faq .faqwrap{display:block}.c-faq .faqwrap__aside{margin-bottom:35px}.a-case-frigera .folio__shot{aspect-ratio:1.35}.c-faq .acc summary{font-size:18px}.c-starts .start-card{padding-left:0}}
/* Living material: warm light, electric blue and a fluid, unframed mascot. */
body.composer-next:not(.c-inner){background:#101522}.composer-next:not(.c-inner) .c-nav{max-width:none;background:#101522;color:#f3f1ed;padding-inline:max(var(--gutter),calc((100% - 1400px)/2))}.composer-next:not(.c-inner) .c-brand svg path{fill:currentColor}.composer-next:not(.c-inner) .c-nav-cta{border-color:#7c8390}.composer-next:not(.c-inner) .c-nav-links a:hover{color:#ffad83}
.composer-next main>.c-hero{max-width:none;padding-inline:max(var(--gutter),calc((100% - 1400px)/2));color:#f7f4ef;background:radial-gradient(ellipse at 76% 40%,#26345555,transparent 52%),#101522;--rule:#424858;--ink:#f7f4ef;--orange:#ff9868}
.c-hero-top,.c-hero .c-eyebrow,.c-hero-sub{color:#bac1ce}.c-hero-top{border-color:#353c4a}.c-stage{background:radial-gradient(ellipse at 24% 44%,#ff5d1833,transparent 49%),radial-gradient(ellipse at 79% 58%,#2d62ff40,transparent 48%)}.c-orbit-label,.a-drag-hint,.a-materials>span,.c-motion{color:#a7b0c1}.c-orbit-label span:last-child{color:#c6cfdd}.c-composition-controls button{color:#b9c2d1}.c-composition-controls button[aria-pressed=true]{color:#fff;border-color:#ffad83}.c-composition-controls button i{box-shadow:0 0 0 1px #ffffff30}.c-hero .c-pill{border-color:#798190}.composer-next main>.c-intro{background:#2757d5;color:#fff}.c-intro>.c-eyebrow,.c-intro-bottom p{color:#d7e2ff}.c-intro h2 span{color:#a8c2ff}.c-intro .c-textlink{color:#fff;border-color:#acc4ff}
.composer-next main>.a-capabilities{background:#202e51}.a-capability-head .c-eyebrow,.a-capability-art>span{color:#bbc9e7}.a-discipline{border-color:#53617b}.a-discipline p{color:#bbc9e7}.composer-next main>.c-process{background:#d3ddf0}.c-process .meta{color:#4a5b7d}.composer-next main>.c-close{background:#f3794b;color:#221c21}.composer-next .c-close .lead{color:#432b26}.c-close .btn{background:#211e27;color:#fff}.c-close .close__email{color:#211e27;border-color:#764c40}
@media(max-width:700px){.composer-next:not(.c-inner) .c-mobile-menu nav{background:#101522;border-color:#424858}.composer-next:not(.c-inner) .c-mobile-menu[open] summary{color:#ffad83}}

.composer-next main>.c-hero{background:radial-gradient(ellipse at 66% 45%,#e16c1826,transparent 32%),radial-gradient(ellipse at 87% 53%,#2f63ff2e,transparent 35%),#101522}.c-stage{background:transparent}
/* Postures share one nacre finish. Animation begins over the actual mascot. */
.c-composition-controls button[data-pose] i{width:12px;height:12px;background:#cdd9e8;box-shadow:none;border:1px solid #ffffff50}.c-composition-controls button[data-pose="1"] i{width:7px;height:7px;margin-inline:3px;border:0;box-shadow:-4px 5px 0 -1px #cdd9e8,5px -4px 0 1px #cdd9e8}.c-composition-controls button[data-pose="2"] i{border-radius:2px;width:9px;height:9px;margin-right:4px;box-shadow:5px 5px 0 -1px #cdd9e8,-5px 5px 0 -1px #cdd9e8}.c-stage-canvas{cursor:default}.c-stage-canvas[data-motion-state="reacting"]{cursor:grab}.c-stage-canvas:active{cursor:grabbing}.a-drag-hint:before{content:"";margin:0}.c-orbit-label span:first-child{letter-spacing:.1em}
/* Haskell stays available as a small guide after the hero leaves the screen. */
.haskell-invite{position:absolute;bottom:18px;right:18px;z-index:3;padding:12px 18px;border:1px solid #91a5ca70;border-radius:28px;background:#d7e7ff12;color:#e5edff;font:450 13px var(--font-text);cursor:pointer;backdrop-filter:blur(12px)}.haskell-invite:hover{background:#d7e7ff26}.c-orbit-label{bottom:74px}.haskell-dock{position:fixed;right:26px;bottom:22px;z-index:90;opacity:0;visibility:hidden;transform:translateY(18px);transition:opacity .35s,transform .5s,visibility .35s}.haskell-dock.is-visible{opacity:1;visibility:visible;transform:none}.haskell-dock-button{display:flex;align-items:center;gap:0;border:0;padding:0;background:none;color:#fff;cursor:pointer;font-family:var(--font-text)}.haskell-dock-label{padding:12px 17px;background:#19233b;border:1px solid #627499;border-radius:24px;box-shadow:0 8px 25px #11182720;font-size:13px}.haskell-dock-avatar{position:relative;display:block;width:108px;height:108px;margin-left:-4px;filter:drop-shadow(0 7px 15px #07102130)}.c-stage-canvas.is-docked{position:absolute;inset:0;width:108px;height:108px;pointer-events:none;cursor:pointer}.haskell-panel{position:fixed;bottom:145px;right:30px;z-index:100;width:min(385px,calc(100vw - 32px));max-height:min(580px,calc(100dvh - 175px));background:#f2f0eb;color:#242938;border:1px solid #ffffff55;border-radius:22px;box-shadow:0 28px 100px #03071250;overflow:hidden;display:flex;flex-direction:column;font:400 14px/1.5 var(--font-text)}.haskell-panel[hidden]{display:none}.haskell-panel-header{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;background:#1b2944;color:#f5f3ef;gap:20px}.haskell-panel-header h2{font:550 22px/1.1 var(--font-text);margin:0;letter-spacing:-.02em}.haskell-panel-header p{margin:5px 0 0;font-size:12px;color:#b9c8e1}.haskell-close{border:0;background:#ffffff12;border-radius:50%;width:32px;height:32px;font:300 25px/1 var(--font-text);color:white;cursor:pointer}.haskell-messages{overflow-y:auto;min-height:120px;padding:20px;overscroll-behavior:contain;flex:1}.haskell-message{padding:0 0 20px;max-width:96%}.haskell-message p{margin:5px 0 0;white-space:pre-line;font-size:14px;line-height:1.6}.haskell-speaker{font-size:11px;font-weight:600;color:#687183}.haskell-message.is-user{background:#dce5f6;padding:12px 14px;border-radius:14px;margin:0 0 20px 20px}.haskell-message a{display:inline-block;margin-top:12px;color:#2b51a1;text-decoration:underline;text-underline-offset:4px}.haskell-questions{padding:0 20px 12px;display:flex;gap:7px;flex-wrap:wrap}.haskell-questions button{font:450 11px var(--font-text);padding:8px 10px;border:1px solid #c8cdd7;background:transparent;border-radius:18px;color:#46526b;cursor:pointer}.haskell-questions button:hover{background:#e1e7f1}.haskell-form{display:flex;margin:0 16px;border:1px solid #c8cdd7;background:white;border-radius:14px;padding:6px;gap:6px}.haskell-form input{font:400 13px var(--font-text);color:#242938;border:0;background:transparent;min-width:0;width:100%;padding:9px 8px;outline-offset:0}.haskell-form button{flex-shrink:0;width:36px;border:0;border-radius:10px;background:#284c9b;color:#fff;font-size:24px;cursor:pointer}.haskell-source{font-size:10px;color:#757d8b;text-align:center;margin:9px 10px 12px}.haskell-panel :focus-visible,.haskell-dock :focus-visible,.haskell-invite:focus-visible{outline:2px solid #ef966c;outline-offset:3px}
@media(max-width:700px){.haskell-dock{right:10px;bottom:12px}.haskell-dock-avatar,.c-stage-canvas.is-docked{width:88px;height:88px}.haskell-dock-label{font-size:12px;padding:10px 14px}.haskell-panel{right:16px;bottom:110px;max-height:calc(100dvh - 135px)}.haskell-form input{font-size:16px}.haskell-invite{right:0;bottom:0;padding:10px 15px;font-size:12px}.c-orbit-label{bottom:54px}}
@media(prefers-reduced-motion:reduce){.haskell-dock{transition:none}}
/* One connected team: brand, technology, growth and legal operations. */
.c-footer-position{max-width:760px;margin:0 0 48px;font-size:clamp(26px,3.5vw,48px);line-height:1.15;letter-spacing:-.035em!important;color:#f3f1ed}
.composer-next .team__grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.composer-next .member__portrait{border-radius:0}
.composer-next .member__portrait--monogram,.composer-next .member:hover .member__portrait--monogram{background:radial-gradient(ellipse at 80% 12%,#566e9855,transparent 70%),#202e51;border-color:#435477;color:#e4eafa}
.member__portrait--monogram>span{font:450 clamp(48px,5.7vw,90px)/1 var(--font-display);letter-spacing:-.09em;padding-right:.09em}
.composer-next .member__note{font-size:14px;line-height:1.55;color:#656960;margin-top:12px;max-width:27ch}
#wim-wijmans{scroll-margin-top:40px}
.composer-next.c-inner main>.future-legal{background:#202e51;color:#f3f1ed}
.future-legal .meta,.composer-next .future-legal .lead{color:#c8d5ed}
.future-legal .lead{max-width:680px;margin:28px 0}
html[lang=nl] .c-hero h1{font-size:clamp(64px,7.2vw,108px)}
html[lang=fr] .c-hero h1{font-size:clamp(48px,5.35vw,80px)}
html[lang=de] .c-hero h1{font-size:clamp(43px,4.65vw,70px)}
html[lang=es] .c-hero h1{font-size:clamp(58px,6.7vw,100px)}
@media(max-width:1100px){.composer-next .team__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.composer-next .team__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 18px}.member__portrait--monogram>span{font-size:64px}.c-footer-position{margin-bottom:36px}html[lang=nl] .c-hero h1{font-size:clamp(44px,14.5vw,90px)}html[lang=fr] .c-hero h1{font-size:clamp(34px,11.5vw,70px)}html[lang=de] .c-hero h1{font-size:clamp(30px,9.6vw,62px)}html[lang=es] .c-hero h1{font-size:clamp(43px,14vw,86px)}}
@media(max-width:420px){.composer-next .team__grid{grid-template-columns:1fr}.member__portrait--monogram>span{font-size:100px}}

/* Start page contact card: a confident focal panel with the same deep-blue
   and coral language as the landing page. The details stay quiet so the
   email remains the clear action. */
.composer-next.c-start-page .split__panel{
  position:relative;isolation:isolate;overflow:hidden;min-height:clamp(24rem,42vw,34rem);
  padding:clamp(2rem,4vw,4rem);border:0;border-radius:18px;
  background:linear-gradient(145deg,#1b2944 0%,#2757d5 100%);color:#f5f3ef;
  box-shadow:0 24px 60px #17234822;
}
.composer-next.c-start-page .split__panel::before{
  content:"";position:absolute;width:22rem;height:22rem;border:1px solid #d7e2ff38;
  border-radius:50%;right:-8rem;top:-7rem;box-shadow:0 0 0 2.5rem #d7e2ff0e,0 0 0 5rem #d7e2ff08;
}
.composer-next.c-start-page .split__panel::after{
  content:"";position:absolute;inset:1.5rem;opacity:.22;pointer-events:none;
  background:linear-gradient(90deg,transparent 49.8%,#d7e2ff 50%,transparent 50.2%),linear-gradient(0deg,transparent 49.8%,#d7e2ff 50%,transparent 50.2%);
  background-size:4rem 4rem;mask-image:linear-gradient(135deg,transparent 15%,#000 65%);
}
.composer-next.c-start-page .split__panel > .contact-card{position:relative;z-index:1;text-align:left;max-width:30rem;margin-top:auto}
.composer-next.c-start-page .split__panel .meta{color:#b9c8e1}
.composer-next.c-start-page .split__panel .close__email{display:inline-block;color:#fff;font-size:clamp(1.55rem,2.8vw,2.35rem);letter-spacing:-.035em;border-color:#acc4ff;text-decoration:none;transition:color .25s,border-color .25s}
.composer-next.c-start-page .split__panel .close__email:hover{color:#ffad83;border-color:#ffad83}
.composer-next.c-start-page .split__panel .trait__body{color:#d7e2ff;max-width:25ch}
.composer-next.c-start-page .contact{
  max-width:none;margin-top:clamp(2.5rem,5vw,4.5rem);padding:clamp(1.25rem,3.5vw,3.25rem);
  background:#f3f1eb;border:1px solid #c9c9bf;border-radius:18px;box-shadow:0 18px 45px #17234812;
}
.composer-next.c-start-page .contact .choice{margin-top:0}
.composer-next.c-start-page .contact .field__input{background:#fbfaf7;border-color:#c9c9bf}
.composer-next.c-start-page .contact .field__input:focus{border-color:#2757d5;box-shadow:0 0 0 3px #2757d51c}
.composer-next.c-start-page .contact .btn{background:#20241f;color:#f3f1eb;border-radius:0;padding:15px 24px}
@media(max-width:700px){.composer-next.c-start-page .contact{margin-top:2.5rem;padding:1.25rem;border-radius:14px}}
@media(max-width:700px){.composer-next.c-start-page .split__panel{min-height:24rem;border-radius:14px}.composer-next.c-start-page .split__panel::after{inset:1rem}.composer-next.c-start-page .split__panel > .contact-card{margin-top:5rem}}

/* Clear hierarchy: the message and character lead, controls stay unobtrusive. */
.composer-next main>.c-hero{grid-template-rows:1fr;min-height:710px;padding-top:38px;padding-bottom:54px}
.c-hero-copy,.c-stage{grid-row:1}
.c-hero-copy{padding:25px 0}
.c-stage{min-height:570px}
.c-stage .c-motion{position:absolute;z-index:4;right:18px;bottom:18px;width:44px;height:44px;padding:0;display:grid;place-items:center;border:1px solid #91a5ca70;border-radius:50%;color:#e5edff;background:#d7e7ff12;cursor:pointer;text-decoration:none}
.c-stage .c-motion:hover{background:#d7e7ff26}
.c-stage .c-motion:before{content:"";display:block;box-sizing:border-box;width:11px;height:13px;border-left:3px solid currentColor;border-right:3px solid currentColor}
.c-stage .c-motion[aria-pressed=true]:before{border:0;width:12px;height:14px;background:currentColor;clip-path:polygon(15% 0,100% 50%,15% 100%)}
.c-stage .haskell-invite{right:18px;bottom:18px;min-height:44px;font-size:15px}
.composer-next main>.c-intro{display:block}
.c-intro>div{max-width:1080px}
.a-section-top{grid-template-columns:2fr 1fr}
.a-section-top>a{grid-column:2}
.a-case .folio__meta{font-size:14px}
.c-starts .start-card .meta{font-size:15px}
.c-clients .c-eyebrow{font-size:16px}
.c-process .stage__num,.a-discipline-number{font-size:14px}
.c-footer .fgroup__title{font-size:14px}
.haskell-questions button{font-size:13px;padding:10px 12px}
.haskell-source{font-size:12px}
@media(max-width:700px){
 .composer-next main>.c-hero{min-height:0;padding-top:12px;padding-bottom:42px}
 .c-hero-copy{padding:22px 0 8px}
 .c-stage{min-height:390px}
 .c-stage .c-motion{right:0;bottom:0}
 .c-stage .haskell-invite{right:0;bottom:0;font-size:15px}
 .a-section-top{display:block}
 .a-section-top>a{margin-top:24px}
 .a-case .folio__meta{font-size:13px}
}

/* The approach is a visible sequence, separate from the FAQ disclosures. */
.composer-next main>.c-process{padding:112px 0 120px;scroll-margin-top:80px}
.c-process .wrap{grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:clamp(48px,6vw,104px);align-items:start}
.c-process .section__head{grid-row:auto;max-width:430px}
.c-process .lead{margin-top:28px;color:#45516a;font-size:18px;line-height:1.6;max-width:380px}
.c-process-actions{display:flex;flex-direction:column;align-items:flex-start;gap:22px;margin-top:36px}
.c-process-actions .textlink{font-size:16px;color:#283955}
.c-process .path{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:54px 42px;list-style:none;border:0}
.c-process .stage{display:block;min-width:0;padding:0;border:0;background:none}
.c-process .stage__num{display:block;width:auto;font-family:inherit;font-size:42px;font-weight:400;letter-spacing:-.06em;line-height:1;color:#4269b1;margin:0 0 20px}
.c-process .stage__name{font-size:27px;line-height:1.15;letter-spacing:-.035em;margin:0 0 15px}
.c-process .stage__body{font-size:17px;line-height:1.65;color:#45516a;margin:0;max-width:34ch}
@media(max-width:1050px) and (min-width:701px){
 .c-process .wrap{grid-template-columns:1fr;gap:54px}
 .c-process .section__head{max-width:680px}
 .c-process .lead{max-width:560px}
 .c-process .path{grid-column:1;gap:44px 48px}
 .c-process-actions{flex-direction:row;align-items:center;gap:26px}
}
@media(max-width:700px){
 .composer-next main>.c-process{padding:70px 0 78px;scroll-margin-top:64px}
 .c-process .lead{font-size:17px;margin-top:24px}
 .c-process-actions{margin-top:28px;gap:22px}
 .c-process .path{display:grid;grid-template-columns:1fr;gap:36px;margin-top:54px}
 .c-process .stage{display:grid;grid-template-columns:42px minmax(0,1fr);column-gap:20px}
 .c-process .stage__num{grid-row:1/3;font-size:30px;margin:0;line-height:1.15}
 .c-process .stage__name{grid-column:2;font-size:25px;margin:0 0 12px}
 .c-process .stage__body{grid-column:2;font-size:16px;margin:0;max-width:38ch}
}

/* Flat vector character: self-contained artboard, crisp at dock and hero sizes. */
.c-vector-mascot{display:block;width:100%;height:100%;overflow:hidden;pointer-events:none}
.c-stage-canvas[data-renderer="vector"]{touch-action:pan-y}

/* Full-width work background; retain the original 1600px content alignment. */
.composer-next main>.a-selected,
.composer-next main>.c-clients{
 max-width:none;
 margin-inline:0;
 padding-inline:max(var(--gutter),calc((100% - 1600px)/2 + var(--gutter)));
}

/* Independent corner avatar: never remove the hero renderer during scrolling. */
.c-guide-canvas{position:absolute;inset:0;display:block;pointer-events:none}

/* Show complete Frigera packaging and Staf Cars fleet artwork at their native ratio. */
.a-case-frigera .folio__shot,.a-case-staf-cars .folio__shot{aspect-ratio:16/9}


/* Modern guide panel refresh */
.haskell-panel{width:min(420px,calc(100vw - 32px));max-height:min(640px,calc(100dvh - 150px));background:linear-gradient(145deg,#f8f7f2 0%,#eef2f9 100%);color:#20283a;border:1px solid #d8d9d7;border-radius:26px;box-shadow:0 24px 90px #0b17334d;overflow:hidden;backdrop-filter:blur(18px)}
.haskell-panel-header{position:relative;padding:22px 24px 21px;background:linear-gradient(135deg,#17233f 0%,#2b4784 100%);color:#f7f3ec;border-bottom:1px solid #ffffff20}
.haskell-panel-header:before{content:"";position:absolute;left:24px;top:25px;width:8px;height:8px;border-radius:50%;background:#ff9b73;box-shadow:0 0 0 5px #ff9b7320}
.haskell-panel-header>div{padding-left:17px}
.haskell-panel-header h2{font-size:21px;letter-spacing:-.025em}
.haskell-panel-header p{margin-top:6px;color:#cad6ee;font-size:12px;letter-spacing:.01em}
.haskell-close{width:30px;height:30px;background:#ffffff14;border:1px solid #ffffff2b;color:#fff;font-size:21px;line-height:1;transition:background .2s,transform .2s}
.haskell-close:hover{background:#ffffff2b;transform:rotate(8deg)}
.haskell-messages{padding:22px 20px 14px;scrollbar-width:thin;scrollbar-color:#b5bfd0 transparent}
.haskell-message{max-width:90%;padding:13px 15px;background:#fff;border:1px solid #e1e2df;border-radius:5px 18px 18px 18px;margin:0 0 14px;box-shadow:0 5px 18px #1c2d4b0c}
.haskell-message p{margin:5px 0 0;font-size:13px;line-height:1.6;color:#3e485b}
.haskell-speaker{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#68758c}
.haskell-message.is-user{max-width:82%;margin:0 0 14px auto;padding:12px 15px;background:#1c2b4a;border:1px solid #53688e;color:#f7f3ec;border-radius:18px 5px 18px 18px;box-shadow:none}
.haskell-message.is-user .haskell-speaker{color:#b8c8e5}
.haskell-message.is-user p{color:#f7f3ec}
.haskell-message a{margin-top:12px;color:#3159ad;text-decoration:none;font-weight:550;border-bottom:1px solid #3159ad66;padding-bottom:2px}
.haskell-questions{padding:4px 20px 14px;border-top:1px solid #d8dce3;gap:8px}
.haskell-questions button{padding:8px 11px;border:1px solid #c6ccd7;background:#ffffff88;border-radius:999px;color:#41506b;font-size:11px;transition:background .2s,border-color .2s,transform .2s}
.haskell-questions button:hover{background:#fff;border-color:#8193b5;transform:translateY(-1px)}
.haskell-form{margin:0 18px 11px;border:1px solid #c6ccd7;background:#fff;border-radius:17px;padding:5px;gap:5px;box-shadow:0 5px 18px #1c2d4b0b}
.haskell-form input{font-size:13px;padding:10px 10px}
.haskell-form button{width:36px;height:36px;border-radius:12px;background:#3159ad;font-size:21px;line-height:1;transition:background .2s,transform .2s}
.haskell-form button:hover{background:#26468d;transform:translateY(-1px)}
.haskell-source{margin:5px 16px 14px;font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:#7a8494}
@media(max-width:700px){.haskell-panel{right:16px;bottom:110px;width:calc(100vw - 32px);max-height:calc(100dvh - 132px);border-radius:22px}.haskell-panel-header{padding:19px 19px 18px}.haskell-panel-header:before{left:19px;top:22px}.haskell-messages{padding:18px 16px 12px}.haskell-questions{padding-inline:16px}.haskell-form{margin-inline:14px}}


/* Sticky glass navigation */
.composer-next .c-nav{position:sticky;top:0;z-index:80;backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%);box-shadow:0 8px 28px #07102112;transition:background-color .25s,border-color .25s,box-shadow .25s}
.composer-next:not(.c-inner) .c-nav{background:rgba(16,21,34,.72);border-bottom:1px solid #ffffff24}
.composer-next.c-inner .c-nav{background:rgba(242,239,232,.78);border-bottom:1px solid #24282024}
.composer-next .c-mobile-menu nav{top:calc(100% - 1px);backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%)}
.composer-next:not(.c-inner) .c-mobile-menu nav{background:rgba(16,21,34,.9);border-bottom:1px solid #ffffff24}
.composer-next.c-inner .c-mobile-menu nav{background:rgba(242,239,232,.92);border-bottom:1px solid #24282024}
@media(max-width:700px){.composer-next .c-nav{position:sticky;top:0}.composer-next .c-mobile-menu nav{top:calc(100% - 1px)}}

/* Temporary construction notice */
.composer-notice{position:fixed;left:50%;bottom:24px;z-index:130;width:min(560px,calc(100vw - 32px));padding:22px 58px 22px 24px;color:#f7f4ef;background:linear-gradient(135deg,rgba(21,33,60,.96),rgba(43,71,132,.94));border:1px solid #ffffff38;border-radius:22px;box-shadow:0 24px 80px #07102152;backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);opacity:0;transform:translate(-50%,18px) scale(.98);pointer-events:none;transition:opacity .26s ease,transform .26s ease}
.composer-notice.is-visible{opacity:1;transform:translate(-50%,0) scale(1);pointer-events:auto}
.composer-notice__eyebrow{margin:0 0 10px;color:#b9c9e7;font:500 10px/1.3 var(--font-text);letter-spacing:.11em;text-transform:uppercase}
.composer-notice h2{margin:0 0 7px;color:#f7f4ef;font:450 clamp(21px,2.8vw,28px)/1.08 var(--font-display);letter-spacing:-.035em}
.composer-notice>p:not(.composer-notice__eyebrow){margin:0;max-width:47ch;color:#d5def0;font:400 13px/1.55 var(--font-text)}
.composer-notice__close{position:absolute;top:17px;right:17px;width:30px;height:30px;border:1px solid #ffffff3d;border-radius:50%;background:#ffffff12;color:#f7f4ef;font:300 20px/1 var(--font-text);cursor:pointer;transition:background .2s,transform .2s}
.composer-notice__close:hover{background:#ffffff2d;transform:rotate(8deg)}
.composer-notice :focus-visible{outline:2px solid #ffad83;outline-offset:3px}
@media(max-width:700px){.composer-notice{bottom:16px;width:calc(100vw - 24px);padding:20px 54px 20px 20px;border-radius:19px}.composer-notice h2{font-size:22px}.composer-notice>p:not(.composer-notice__eyebrow){font-size:12px}}
@media(prefers-reduced-motion:reduce){.composer-notice{transition:none}}

/* Hero: a second, quieter action (The Academy). */
.c-hero-copy .c-pill{margin-right:28px;margin-bottom:12px}.c-hero-copy .c-pill--quiet{margin-right:0;border-bottom-color:transparent;color:inherit;opacity:.72}.c-hero-copy .c-pill--quiet:hover{opacity:1;border-bottom-color:currentColor}
/* Academy waiting list (coming-soon page). */
.academy-wait{display:flex;flex-direction:column;gap:10px;margin-top:.25rem}.academy-wait .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.academy-wait__input{font:inherit;font-size:16px;padding:12px 0;border:0;border-bottom:1px solid var(--ink);background:transparent;color:inherit;outline:none}.academy-wait__input:focus{border-bottom-color:var(--orange)}.academy-wait .btn{align-self:flex-start;margin-top:6px}.academy-wait__note{font-size:13px;opacity:.8}.academy-wait__done{font-weight:500}
/* Analytics consent. Same glass as the notice; the two answers are the same size and weight, so neither is the easy one. */
.composer-consent{position:fixed;left:50%;bottom:24px;z-index:131;width:min(560px,calc(100vw - 32px));padding:22px 24px;color:#f7f4ef;background:linear-gradient(135deg,rgba(21,33,60,.97),rgba(43,71,132,.95));border:1px solid #ffffff38;border-radius:22px;box-shadow:0 24px 80px #07102152;backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);opacity:0;transform:translate(-50%,18px) scale(.98);transition:opacity .26s ease,transform .26s ease}
.composer-consent.is-visible{opacity:1;transform:translate(-50%,0) scale(1)}
.composer-consent__eyebrow{margin:0 0 10px;color:#b9c9e7;font:500 10px/1.3 var(--font-text);letter-spacing:.11em;text-transform:uppercase}
.composer-consent h2{margin:0 0 7px;color:#f7f4ef;font:450 clamp(21px,2.8vw,28px)/1.08 var(--font-display);letter-spacing:-.035em}
.composer-consent__copy{margin:0;max-width:52ch;color:#d5def0;font:400 13px/1.55 var(--font-text)}
.composer-consent__copy a{color:#f7f4ef;text-decoration:underline;text-underline-offset:3px}
.composer-consent__actions{display:flex;gap:10px;margin-top:18px}
.composer-consent__actions button{flex:1 1 0;min-height:44px;padding:0 18px;border:1px solid #f7f4ef;border-radius:999px;background:#f7f4ef;color:#101522;font:500 14px/1.2 var(--font-text);cursor:pointer;transition:background .2s,border-color .2s}
.composer-consent__actions button:hover{background:#ff9868;border-color:#ff9868}
.composer-consent :focus-visible{outline:2px solid #ffad83;outline-offset:3px}
.consent-panel{margin:18px 0 22px;padding:22px 24px;border:1px solid var(--rule);border-radius:18px}
.consent-panel__status{margin:0 0 14px;font-weight:500}
.consent-panel__actions{display:flex;flex-wrap:wrap;gap:10px}
.consent-panel__actions button{min-height:44px;padding:0 20px;border:1px solid currentColor;border-radius:999px;background:transparent;color:inherit;font:500 14px/1.2 var(--font-text);cursor:pointer}
.consent-panel__actions button[aria-pressed="true"]{background:#101522;border-color:#101522;color:#f7f4ef}
@media(max-width:700px){.composer-consent{bottom:12px;width:calc(100vw - 24px);padding:20px;border-radius:19px}.composer-consent h2{font-size:22px}.composer-consent__copy{font-size:12px}}
@media(max-width:380px){.composer-consent__actions{flex-direction:column}}
@media(prefers-reduced-motion:reduce){.composer-consent{transition:none}}

/* Connected components — existing Composer palette and Instrument Sans. */
.c-refined{--radius-card:24px;--radius-panel:32px;--space-card:clamp(24px,3.4vw,48px)}
.c-refined main>section{scroll-margin-top:112px}
.composer-next.c-refined main>.c-hero{grid-template-columns:57% 43%;min-height:690px;padding-block:48px 64px}
.composer-next.c-refined .c-hero h1{font-size:clamp(56px,6.2vw,94px);line-height:1.02;letter-spacing:-.06em;text-wrap:balance;margin-bottom:28px}
.c-refined .c-hero-sub{max-width:48ch;font-size:18px;line-height:1.65;margin-bottom:18px}
.c-refined .c-hero-team{font-size:14px;color:#f7f4ef;margin:0 0 30px}
.c-refined .c-stage{min-height:490px}
.c-refined .c-hero .c-pill:not(.c-pill--quiet){border:1px solid #f7f4ef;background:#f7f4ef;color:#101522;border-radius:999px;padding:14px 22px;min-height:52px;gap:38px;transition:background .2s,transform .2s}
.c-refined .c-hero .c-pill:not(.c-pill--quiet):hover{background:#ff9868;border-color:#ff9868;transform:translateY(-2px)}
.composer-next.c-refined main>.a-capabilities{background:var(--paper);color:var(--ink);grid-template-columns:minmax(0,1fr) 180px;gap:40px;padding-block:100px}
.c-refined .a-capability-head{grid-column:1;grid-row:1}
.c-refined .a-capability-head .c-eyebrow{color:var(--muted);margin-bottom:22px}
.c-refined .a-capability-head h2{font-size:clamp(42px,4.5vw,68px);line-height:1.06}
.c-refined .c-service-lead{font-size:18px;line-height:1.6;max-width:48ch;color:var(--muted);margin:24px 0 0}
.c-refined .a-capability-art{grid-column:2;grid-row:1;min-height:180px;margin:0;align-self:center;background:#202e51;border-radius:50%;aspect-ratio:1}
.c-refined .a-chain-fallback{font-size:90px;inset:40px 0;color:var(--paper)}
.c-refined .a-disciplines{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0}
.c-refined .a-discipline{background:#202e51;color:#f7f4ef;border:1px solid transparent;border-radius:var(--radius-card);padding:var(--space-card);grid-template-columns:1fr 32px;gap:18px 14px;position:relative;transition:transform .25s,border-color .25s}
.c-refined .a-discipline-number{grid-column:1;padding:0;color:#bbc9e7;font-size:13px}
.c-refined .a-discipline>div{grid-column:1/-1;grid-row:2}
.c-refined .a-discipline-arrow{grid-column:2;grid-row:1;padding:0;line-height:1;text-align:right}
.c-refined .a-discipline h3{font-size:clamp(28px,2.8vw,42px);line-height:1.13;letter-spacing:-.035em;margin-bottom:20px}
.c-refined .a-discipline p{max-width:46ch;line-height:1.7;color:#d7e2ff;font-size:17px}
.c-refined .a-discipline .c-service-tags{font-size:12px;color:#bbc9e7;padding-top:26px;margin-top:28px;border-top:1px solid #53617b;max-width:none}
.c-refined .a-discipline:hover{transform:translateY(-4px);border-color:#bbc9e7}
.composer-next.c-refined main>.c-intro{padding:0 max(var(--gutter),calc((100% - 1400px)/2)) 100px;background:var(--paper)}
.c-refined .c-intro>.c-team-panel{display:grid;grid-template-columns:1.1fr 1fr;max-width:none;border-radius:var(--radius-panel);overflow:hidden;background:#2757d5}
.c-refined .c-team-copy{padding:clamp(32px,4.5vw,64px)}
.c-refined .c-team-copy .c-eyebrow{color:#d7e2ff;margin-bottom:34px}
.c-refined .c-team-copy h2{font-size:clamp(40px,4.1vw,62px);line-height:1.06}
.c-refined .c-intro-bottom{display:block;margin-top:30px}
.c-refined .c-intro-bottom p{max-width:44ch;font-size:17px;margin-bottom:22px;color:#fff}
.c-refined .c-intro-bottom a{margin-top:12px}
.c-refined .c-team-photo{min-width:0;min-height:480px}
.c-refined .c-team-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.composer-next.c-refined main>.a-selected{padding-top:12px;padding-bottom:64px}
.c-refined .a-section-top{gap:36px;margin-bottom:44px}
.c-refined .a-case-grid{gap:56px 32px;grid-template-columns:repeat(2,minmax(0,1fr))}
.c-refined .a-case-staf-cars{margin-top:0}
.c-refined .a-case .folio__shot{border-radius:var(--radius-card);margin-bottom:24px}
.c-refined .a-case-frigera{grid-template-columns:1fr 1fr;gap:0 40px}
.c-refined .a-case-frigera .folio__shot{aspect-ratio:16/9;border-radius:var(--radius-panel)}
.c-refined .a-case .folio__meta{border:0;padding-top:0}
.c-refined .a-case .folio__line{max-width:48ch}
.c-refined .a-case-cwg .folio__shot,.c-refined .a-case-staf-cars .folio__shot{aspect-ratio:16/9}
.c-refined .a-case-cwg img,.c-refined .a-case-staf-cars img{height:100%;width:100%;object-fit:cover}
.composer-next.c-refined main>.a-ventures{padding-block:80px}
.c-refined .a-ventures .ventures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.c-refined .a-ventures .venture{display:block;padding:28px;background:var(--bone);border:0;border-radius:var(--radius-card)}
.c-refined .a-ventures .venture__name{margin-bottom:18px}
.c-refined .a-ventures .venture__desc a{white-space:normal;overflow-wrap:anywhere}
.c-refined .c-process .stage{background:#ffffff60;border:0;padding:28px;border-radius:var(--radius-card)}
.c-refined .c-process .path{gap:20px}
.c-refined .c-process .stage__body{max-width:none}
.c-refined .c-process .btn{border-radius:999px}
.c-refined .c-starts .starts{display:grid;gap:20px}
.c-refined .c-starts .start-card{padding:var(--space-card);border:1px solid var(--rule-inv);border-radius:var(--radius-card);background:#ffffff06}
.c-refined .c-faq .acc{background:var(--bone);border:0;border-radius:18px;padding-inline:24px;margin-bottom:12px}
.c-refined .c-faq .acc:last-child{border:0}
.c-refined .c-faq .acc summary{min-height:72px}
.c-refined .c-close .btn{border-radius:999px;padding:16px 24px}
@media(min-width:701px) and (max-width:1050px){
 .composer-next.c-refined .c-hero h1{font-size:clamp(48px,6.2vw,66px)}
 .c-refined .c-team-copy{padding:32px}
 .c-refined .c-team-copy h2{font-size:40px}
 .c-refined .a-ventures .wrap{grid-template-columns:1fr;gap:32px}
}
@media(max-width:700px){
 .c-refined{--radius-card:22px;--radius-panel:26px}
 .c-refined main>section{scroll-margin-top:86px}
 .composer-next.c-refined main>.c-hero{display:flex;padding-top:14px;padding-bottom:32px;min-height:0}
 .composer-next.c-refined .c-hero h1{font-size:clamp(42px,11.8vw,78px);line-height:1.04;margin-bottom:24px}
 .c-refined .c-hero-sub{font-size:16px;line-height:1.6}
 .c-refined .c-hero-team{font-size:13px;margin-bottom:24px}
 .c-refined .c-hero-copy .c-pill{margin-right:16px;font-size:14px}
 .c-refined .c-stage{min-height:300px;aspect-ratio:1.12;margin-top:12px}
 .composer-next.c-refined main>.a-capabilities{display:block;padding:64px var(--gutter)}
 .c-refined .a-capability-head h2{font-size:clamp(36px,9.2vw,54px)}
 .c-refined .c-service-lead{font-size:16px;margin-top:20px}
 .c-refined .a-capability-art{display:none}
 .c-refined .a-disciplines{grid-template-columns:1fr;gap:16px;margin-top:32px}
 .c-refined .a-discipline{padding:26px;gap:20px}
 .c-refined .a-discipline h3{font-size:30px}
 .c-refined .a-discipline p{font-size:16px}
 .c-refined .a-discipline .c-service-tags{margin-top:22px;padding-top:20px}
 .composer-next.c-refined main>.c-intro{padding:0 var(--gutter) 64px}
 .c-refined .c-intro>.c-team-panel{grid-template-columns:1fr}
 .c-refined .c-team-copy{padding:30px 26px}
 .c-refined .c-team-copy h2{font-size:clamp(34px,9vw,52px)}
 .c-refined .c-team-copy .c-eyebrow{font-size:11px;margin-bottom:26px}
 .c-refined .c-intro-bottom p{font-size:16px}
 .c-refined .c-team-photo{min-height:0;aspect-ratio:1.1}
 .c-refined .a-section-top{display:block;margin-bottom:32px}
 .c-refined .a-section-top>a{margin-top:24px}
 .c-refined .a-case-grid{grid-template-columns:1fr;gap:40px}
 .c-refined .a-case-frigera{display:block;grid-column:auto}
 .c-refined .a-case-frigera .folio__shot{aspect-ratio:16/9}
 .c-refined .a-case .folio__name{font-size:30px}
 .c-refined .a-ventures .ventures{grid-template-columns:1fr}
 .c-refined .c-process .stage{padding:24px;grid-template-columns:32px minmax(0,1fr);gap:12px}
 .c-refined .c-process .stage__name{margin:0}
 .c-refined .c-process .stage__body{margin:0}
 .c-refined .c-starts .start-card{padding:28px}
 .c-refined .c-faq .acc{padding-inline:20px}
}
@media(prefers-reduced-motion:reduce){.c-refined .a-discipline,.c-refined .c-hero .c-pill{transition:none}.c-refined .a-discipline:hover,.c-refined .c-hero .c-pill:hover{transform:none}}
.c-refined .a-discipline{grid-template-rows:20px 1fr}
.c-refined .a-discipline>div{display:flex;flex-direction:column}
.c-refined .a-discipline .c-service-tags{margin-top:auto;padding-top:24px;border:0}
.c-refined .a-discipline>div>p:not(.c-service-tags){margin-bottom:28px}
.c-refined .c-starts .starts{grid-template-columns:minmax(0,1fr)}
.c-refined .c-starts .start-card{min-width:0;overflow-wrap:anywhere;hyphens:auto}
@media(max-width:360px){.c-refined .start-card__price{font-size:32px}}

/* Second review: expertise-led navigation and open, editorial sections. */
.c-refined .c-nav{gap:24px}
.c-refined .c-nav-links{gap:24px;margin-right:20px}
.c-refined .c-nav-links a{font-size:14px;white-space:nowrap}
.composer-next.c-refined main>.a-capabilities{display:block;padding-top:76px;padding-bottom:86px}
.c-refined .a-capability-head{display:grid;grid-template-columns:1.5fr 1fr;gap:0 60px;align-items:end}
.c-refined .a-capability-head .c-eyebrow{grid-column:1/-1}
.c-refined .a-capability-head h2{font-size:clamp(42px,4.5vw,68px)}
.c-refined .c-service-lead{margin:0 0 4px;max-width:32ch}
.c-refined .a-capability-art{display:none}
.c-refined .a-disciplines{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin-top:64px}
.c-refined .a-discipline{display:grid;grid-template-columns:1fr 24px;grid-template-rows:24px 1fr;gap:24px 12px;padding:24px 0 0;background:transparent;color:var(--ink);border:0;border-top:1px solid var(--rule);border-radius:0;scroll-margin-top:145px;transition:border-color .2s}
.c-refined .a-discipline-number{color:#2757d5}
.c-refined .a-discipline-arrow{font-size:24px;color:var(--ink)}
.c-refined .a-discipline h3{font-size:clamp(28px,2.5vw,40px);margin-bottom:22px;letter-spacing:-.045em}
.c-refined .a-discipline p{color:var(--muted);font-size:16px;line-height:1.7}
.c-refined .a-discipline .c-service-tags{color:var(--ink);font-size:12px;padding-top:8px}
.c-refined .a-discipline:hover{transform:none;border-color:#2757d5}
.c-refined .a-discipline:hover h3{color:#2757d5}
.c-refined .c-assurance{display:grid;grid-template-columns:1fr 1.6fr auto;gap:32px;align-items:center;margin-top:56px;padding:32px 0;border-top:1px solid var(--rule)}
.c-refined .c-assurance h3{font-size:24px;line-height:1.15;margin:0;max-width:15ch}
.c-refined .c-assurance p{font-size:15px;line-height:1.65;color:var(--muted);max-width:52ch;margin:0}
.c-refined .c-assurance a{white-space:nowrap}
.c-refined .c-intro>.c-team-panel{background:none;color:var(--ink);border-radius:0;grid-template-columns:1fr 1.05fr;gap:64px;align-items:center;overflow:visible}
.c-refined .c-team-copy{padding:0}
.c-refined .c-team-copy .c-eyebrow{color:var(--muted)}
.c-refined .c-team-copy h2 span{color:#2757d5}
.c-refined .c-intro-bottom p{color:var(--muted)}
.c-refined .c-intro .c-textlink{color:var(--ink);border-color:var(--ink)}
.c-refined .c-team-photo{min-height:0;aspect-ratio:1.05;border-radius:12px;overflow:hidden}
.c-refined .a-case .folio__shot,.c-refined .a-case-frigera .folio__shot{border-radius:12px}
.c-refined .a-ventures .venture{background:none;border-top:1px solid var(--rule);border-radius:0;padding:24px 0}
.c-refined .c-process .stage{background:none;padding:0;border-radius:0}
.c-refined .c-process .path{gap:48px 36px}
.c-refined .c-starts .start-card{background:none;border:0;border-top:1px solid var(--rule-inv);border-radius:0;padding:32px 0}
@media(min-width:701px) and (max-width:1100px){
 .c-refined .c-nav-links{gap:16px;margin-right:0}
 .c-refined .c-nav-links a{font-size:12px}
 .c-refined .c-nav{gap:18px}
 .c-refined .c-brand{width:106px}
 .c-refined .c-nav-cta{font-size:12px;gap:12px}
 .c-refined .a-disciplines{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
 .c-refined .c-intro>.c-team-panel{gap:40px}
}
@media(max-width:700px){
 .c-refined .c-nav{gap:16px}
 .c-refined .c-mobile-menu nav{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px;padding-block:24px}
 .c-refined .c-mobile-menu nav a{font-size:18px;padding:12px 0;min-height:48px}
 .composer-next.c-refined main>.a-capabilities{padding-block:56px}
 .c-refined .a-capability-head{display:block}
 .c-refined .c-service-lead{margin-top:24px;max-width:36ch}
 .c-refined .a-disciplines{grid-template-columns:1fr;gap:32px;margin-top:40px}
 .c-refined .a-discipline{padding-top:20px;gap:18px 12px;scroll-margin-top:110px}
 .c-refined .a-discipline h3{font-size:34px;margin-bottom:16px}
 .c-refined .a-discipline>div>p:not(.c-service-tags){margin-bottom:16px}
 .c-refined .c-assurance{grid-template-columns:1fr;gap:20px;margin-top:40px;padding-bottom:0}
 .c-refined .c-assurance h3{max-width:none;font-size:26px}
 .c-refined .c-assurance a{justify-self:start}
 .c-refined .c-intro>.c-team-panel{grid-template-columns:1fr;gap:32px}
 .c-refined .c-team-copy{padding:0}
 .c-refined .c-team-photo{aspect-ratio:1}
 .c-refined .c-process .stage{padding:0}
 .c-refined .c-process .path{gap:36px}
 .c-refined .c-starts .start-card{padding:28px 0}
}
/* Warm light ground meets the hero without enclosing it in a dark card. */
.composer-next.c-refined main>.c-hero{padding-bottom:96px}
.c-refined .c-hero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:32px;background:var(--paper);border-radius:32px 32px 0 0;pointer-events:none;z-index:0}
@media(max-width:700px){.composer-next.c-refined main>.c-hero{padding-bottom:62px}.c-refined .c-hero::after{height:24px;border-radius:24px 24px 0 0}}
.c-refined .a-discipline>div{align-self:stretch}
@media(max-width:700px){.composer-next:not(.c-inner) .c-mobile-menu nav{background:rgba(16,21,34,.98)}}
@media(min-width:701px) and (max-width:1000px){
 .c-refined .c-nav-links{display:none}
 .c-refined .c-mobile-menu{display:block;margin-left:auto}
 .c-refined .c-mobile-menu summary{font-size:14px;list-style:none;cursor:pointer;padding:14px 0}
 .c-refined .c-mobile-menu summary::-webkit-details-marker{display:none}
 .c-refined .c-mobile-menu nav{position:absolute;top:100%;left:0;right:0;padding:24px var(--gutter);display:grid;grid-template-columns:1fr 1fr;gap:8px 32px;background:rgba(16,21,34,.98)}
 .c-refined .c-mobile-menu nav a{padding:14px 0;font-size:20px;text-decoration:none}
}

/* Light, nested mega navigation — scoped to the reviewed homepage. */
.c-refined .c-nav{gap:40px}
.c-mega-nav{display:flex;gap:32px;margin-right:auto;margin-left:12px;align-items:center}
.c-mega-item>summary,.c-mega-menu>summary{list-style:none;display:flex;align-items:center;gap:12px;cursor:pointer;min-height:48px;font-size:16px;font-weight:450;white-space:nowrap}
.c-mega-item>summary::-webkit-details-marker,.c-mega-menu>summary::-webkit-details-marker{display:none}
.c-mega-chevron{width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .18s}
.c-mega-item[open]>summary .c-mega-chevron{transform:translateY(2px) rotate(225deg)}
.c-mega-nav:has(.c-mega-item[open])>.c-mega-item:not([open])>summary{opacity:.55}
.c-mega-hamburger{width:22px;height:12px;border-top:2px solid currentColor;border-bottom:2px solid currentColor}
.c-mega-menu{margin-left:auto}
.c-mega-panel{position:absolute;top:calc(100% + 10px);left:max(24px,calc((100% - 1456px)/2));right:max(24px,calc((100% - 1456px)/2));padding:40px;background:var(--bone);color:var(--ink);border-radius:36px;box-shadow:0 24px 64px #10152222;max-height:calc(100dvh - 146px);overflow:auto;overscroll-behavior:contain}
.c-mega-heading{display:flex;align-items:center;gap:28px;margin-bottom:30px}
.c-mega-heading h2{font-size:32px;line-height:1.15;letter-spacing:-.035em;margin:0}
.c-mega-heading>a{display:flex;align-items:center;gap:20px;border-left:1px solid var(--rule);padding-left:28px;font-size:18px;text-decoration:none}
.c-mega-heading>a span{font-size:30px;color:#2757d5}
.c-mega-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.c-mega-block{padding:36px 40px;background:var(--paper);border-radius:28px;min-width:0}
.c-mega-block h3{display:flex;align-items:center;gap:16px;margin:0 0 30px;font-size:21px;letter-spacing:-.02em}
.c-mega-block h3::before{content:"";width:20px;height:2px;background:#2757d5;flex-shrink:0}
.c-mega-block ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.c-mega-block a,.c-mega-offer,.c-mega-site-links a{display:flex;align-items:baseline;gap:16px;min-height:48px;padding:10px 0;font-size:20px;line-height:1.4;text-decoration:none;letter-spacing:-.02em}
.c-mega-block a>span:first-child,.c-mega-site-links a>span:first-child{color:#2757d5;font-size:26px;line-height:1;transition:transform .2s}
.c-mega-block a:hover>span:first-child,.c-mega-site-links a:hover>span:first-child{transform:translate(3px,-3px)}
.c-mega-block a:hover,.c-mega-heading>a:hover,.c-mega-site-links a:hover{color:#2757d5}
.c-mega-block>p{font-size:16px;line-height:1.6;color:var(--muted);max-width:36ch;margin:0 0 20px}
.c-mega-offer{padding-left:36px;position:relative}
.c-mega-offer::before{content:"";position:absolute;left:7px;top:23px;width:6px;height:6px;border-radius:50%;background:#2757d5}
.c-mega-site-links{display:grid;grid-template-columns:1fr 1fr;gap:12px 40px;padding:28px 36px;background:var(--paper);border-radius:28px}
.c-mega-mobile-services{display:none}
.c-mega-shade{position:fixed;inset:112px 0 0;background:#10152255;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);z-index:75}
.c-mega-shade[hidden]{display:none}
@media(min-width:1001px) and (max-width:1200px){.c-refined .c-nav{gap:26px}.c-mega-nav{gap:22px;margin-left:0}.c-mega-item>summary{font-size:15px}}
@media(max-width:1000px){
 .c-refined .c-nav{gap:24px;height:86px}
 .c-mega-nav{display:none}
 .c-mega-menu>summary{font-size:16px;gap:14px}
 .c-mega-panel{left:16px;right:16px;top:calc(100% + 8px);padding:24px;border-radius:26px;max-height:calc(100dvh - 110px)}
 .c-mega-site>.c-mega-heading{display:none}
 .c-mega-mobile-services{display:block}
 .c-mega-mobile-services>.c-mega-item{border-bottom:1px solid var(--rule)}
 .c-mega-mobile-services>.c-mega-item>summary{justify-content:space-between;font-size:24px;padding:14px 0;min-height:60px}
 .c-mega-mobile-services .c-mega-panel{position:static;max-height:none;padding:8px 0 24px;overflow:visible;border-radius:0;box-shadow:none;background:none}
 .c-mega-mobile-services .c-mega-heading{margin:4px 0 20px}
 .c-mega-mobile-services .c-mega-heading h2{display:none}
 .c-mega-mobile-services .c-mega-heading>a{padding:0;border:0;font-size:16px;min-height:44px}
 .c-mega-columns{grid-template-columns:1fr;gap:14px}
 .c-mega-block{padding:24px;border-radius:20px}
 .c-mega-block h3{font-size:18px;margin-bottom:18px;gap:12px}
 .c-mega-block a,.c-mega-offer{font-size:17px;gap:12px}
 .c-mega-block>p{font-size:15px}
 .c-mega-offer{padding-left:24px}
 .c-mega-site-links{margin-top:24px;padding:18px 22px;grid-template-columns:1fr;gap:0;border-radius:20px}
 .c-mega-site-links a{font-size:18px}
 .c-mega-shade{top:86px}
}
@media(prefers-reduced-motion:reduce){.c-mega-chevron,.c-mega-block a>span:first-child,.c-mega-site-links a>span:first-child{transition:none}}
