@font-face{font-family:Geist;src:url('fonts/Geist-400.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Geist;src:url('fonts/Geist-500.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Geist;src:url('fonts/Geist-600.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Geist;src:url('fonts/Geist-700.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
:root{--lime:#9eff1f;--ink:#111310;--paper:#f6f7f2;--white:#fff;--line:#d9ddd3;--muted:#60665b;--soft:#b8c0af;--max:1440px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:Geist,system-ui,sans-serif;font-size:1.125rem;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #477a06;outline-offset:5px}.dark a:focus-visible{outline-color:var(--lime)}::selection{background:var(--lime);color:var(--ink)}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(2.75rem,5.4vw,5rem);max-width:1060px}h2{font-size:clamp(2rem,3.15vw,2.75rem);max-width:900px}h3{font-size:1.55rem;line-height:1.2;letter-spacing:-.03em}h4{font-size:1.0625rem}p{max-width:72ch}img{max-width:100%;height:auto}button{border:0}small{font-size:.875rem}.wrap{max-width:var(--max);margin:auto;padding-inline:64px}.skip{position:absolute;top:-100px;left:16px;padding:12px;background:var(--lime);z-index:100}.skip:focus{top:8px}.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:10}.nav-shell{min-height:144px;display:flex;align-items:center;gap:32px}.logo{display:block;position:relative;overflow:hidden;width:216px;height:137px;flex:none}.logo img{position:absolute;width:230px;height:230px;max-width:none;top:-44px;left:-7px}.navigation{margin-left:auto;display:flex;align-items:center;gap:26px;font-size:.9375rem;font-weight:500}.navigation>a,.navgroup>summary{padding:12px 0;border-bottom:2px solid transparent}.navigation>a[aria-current=page],.navgroup.active>summary{border-color:var(--ink)}.navgroup>summary{list-style:none;cursor:pointer;white-space:nowrap}.navgroup>summary::-webkit-details-marker{display:none}.navgroup>summary:after{content:'+';display:inline-block;margin-left:8px;font-size:1rem}.navgroup[open]>summary:after{content:'−'}.dropdown{position:absolute;left:0;right:0;top:100%;background:#fff;border-block:1px solid var(--line);box-shadow:0 16px 20px #1113100c;padding:32px 0}.dropgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.dropgrid a{display:block;padding:24px;background:var(--paper)}.dropgrid a:hover{background:#eaf0e3}.dropgrid strong{display:block;font-size:1.3rem;letter-spacing:-.025em}.dropgrid span{font-weight:400;display:block;font-size:.9375rem;color:var(--muted);margin-top:8px}.mobile-toggle{display:none;font-size:.875rem;background:var(--paper);padding:10px 14px;border:1px solid var(--line)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:15px 23px;min-height:52px;background:var(--lime);color:var(--ink);border:1px solid var(--lime);font-size:.9375rem;line-height:1.35;font-weight:600}.button:hover{background:#8beb16}.button.outline{background:transparent;border-color:var(--line)}.button.outline:hover{border-color:var(--ink)}.dark .button.outline{color:white;border-color:#647057}.dark .button.outline:hover{border-color:var(--lime)}.nav-cta{white-space:nowrap;font-size:.875rem;padding-inline:18px}.textlink{text-decoration:underline;text-underline-offset:6px;font-size:.9375rem;font-weight:600}.arrow{font-size:1.2em;font-weight:400;flex:none}.eyebrow{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.8125rem;line-height:1.5;font-weight:600;margin-bottom:24px}.muted{color:var(--muted)}.lead{font-size:1.25rem;color:var(--muted);line-height:1.6;margin-top:28px;max-width:680px}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:32px}.hero{padding-block:72px 64px;display:grid;grid-template-columns:1.5fr 1fr;gap:72px;align-items:center}.hero h1{font-size:clamp(2.75rem,5.5vw,5rem)}.hero h1 span{color:#6c7464}.hero .lead{font-size:1.125rem;max-width:560px}.hero-board{background:var(--ink);color:white;padding:32px;align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-height:445px}.hero-board>.eyebrow{color:var(--soft)}.board-item{padding:24px 0;display:grid;grid-template-columns:18px 1fr 20px;gap:16px;border-top:1px solid #46503b;align-items:start}.board-item:hover h3{text-decoration:underline;text-underline-offset:5px}.dot{width:12px;height:12px;border-radius:100%;background:var(--lime);margin-top:9px}.board-item h3{font-size:1.75rem;font-weight:500}.board-item p{font-size:.9375rem;line-height:1.5;color:var(--soft);margin-top:10px}.board-item .arrow{color:var(--lime)}.hero-board small{color:var(--soft);font-size:.8125rem;border-top:1px solid #46503b;padding-top:20px}.entrybar{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line)}.entrybar a{padding:24px;display:flex;justify-content:space-between;align-items:center;gap:16px;border-right:1px solid var(--line);font-size:1rem}.entrybar a:first-child{padding-left:0}.entrybar a:last-child{border:0}.entrybar a:hover{background:var(--paper)}.entrybar small{display:block;color:var(--muted);margin-top:5px}.section{padding-block:88px}.sectiontop{display:grid;grid-template-columns:1.1fr 1fr;gap:72px;align-items:end;margin-bottom:40px}.sectiontop p{color:var(--muted);font-size:1.0625rem}.paper{background:var(--paper)}.dark{background:var(--ink);color:#fff}.dark .lead,.dark p{color:var(--soft)}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.practice-card{padding:32px;border:1px solid var(--line);background:#fff;display:flex;flex-direction:column;min-height:440px}.practice-card .big-number{font-size:3.75rem;font-weight:400;line-height:1;letter-spacing:-.06em;color:#c5cdbe;margin-bottom:40px}.practice-card h3{font-size:2rem}.practice-card p{font-size:1.0625rem;color:var(--muted);margin-block:18px}.practice-card ul{list-style:none;padding:0;margin:0 0 24px;font-size:.9375rem;line-height:1.8}.practice-card .textlink{margin-top:auto}.practice-card:hover{border-color:#6f7d61}.card{border:1px solid var(--line);background:#fff;padding:30px;min-height:285px;display:flex;flex-direction:column;align-items:flex-start;transition:border-color .18s,transform .18s}.card:hover{border-color:var(--ink);transform:translateY(-3px)}.card .eyebrow{font-size:.75rem;color:var(--muted);margin-bottom:32px}.card h3{font-size:1.5rem}.card p{font-size:1rem;color:var(--muted);margin-block:16px 24px}.card .more{font-size:.875rem;font-weight:500;border-bottom:1px solid var(--ink);padding-bottom:4px;margin-top:auto}.below{margin-top:32px}.industry-list{border-top:1px solid var(--line)}.industry-row{padding:28px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:48px 1fr 1fr 24px;gap:24px;align-items:center}.industry-row:hover{background:var(--paper)}.industry-row .index{font-size:.875rem;color:var(--muted)}.industry-row h3{font-weight:500;font-size:1.4rem}.industry-row p{font-size:1rem;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin-top:48px}.step{border-top:1px solid #56614a;padding-top:24px}.step .number{font-size:.875rem;color:var(--lime)}.step h3{margin-top:24px}.step p{font-size:1rem;margin-top:16px}.cta{padding-block:72px;display:flex;align-items:center;justify-content:space-between;gap:48px}.cta h2{max-width:750px}.cta p{color:var(--muted);margin-top:20px}.cta .button{flex:none}.pagehero{padding-block:56px 64px}.pagehero .lead{max-width:790px}.breadcrumb{display:flex;flex-wrap:wrap;gap:12px;font-size:.875rem;color:var(--muted);margin-bottom:32px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.practice-hero{padding-bottom:72px}.practice-hero .meta{border-top:1px solid var(--line);margin-top:40px;padding-top:20px;font-size:.875rem;color:var(--muted)}.practice-hero h1{max-width:950px}.split{display:grid;grid-template-columns:1.3fr 1fr;gap:80px}.prose p{color:var(--muted);margin-top:24px}.prose h2{font-size:2.1rem}.listbox{padding:32px;background:var(--paper)}.paper .listbox{background:white}.listbox ul{list-style:none;margin:24px 0 0;padding:0}.listbox li{font-size:1rem;border-top:1px solid var(--line);padding:15px 0;display:flex;gap:14px}.listbox li:before{content:'—';color:#527b25}.tags{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.tag{font-size:.875rem;border:1px solid var(--line);padding:8px 14px;background:white}.footnote{font-size:.875rem;color:var(--muted);margin-top:20px}.group-header{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;border-top:1px solid var(--line);padding-top:32px}.group-header h2{font-size:2rem}.catalog-group+.catalog-group{margin-top:64px}.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:36px}.filter{padding:10px 20px;background:#fff;color:var(--ink);border:1px solid var(--line);font-size:.9375rem;min-height:44px}.filter[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.filter:hover{border-color:var(--ink)}.filter-count{font-size:.875rem;color:var(--muted);margin:0 0 18px}.application{padding:32px;background:white;border:1px solid var(--line);display:flex;flex-direction:column}.application .eyebrow{color:var(--muted)}.application h3{font-size:1.45rem}.application .links{margin-top:28px;display:grid;gap:16px}.application .links a{font-size:.9375rem;text-decoration:underline;text-underline-offset:5px}.engagement{padding:32px;background:var(--paper)}.engagement h3{font-size:1.5rem}.engagement strong{display:block;font-size:1rem;margin:20px 0 12px}.engagement p,.engagement li{font-size:1rem;color:var(--muted)}.engagement ul{padding-left:20px;margin-top:24px}.faq{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{cursor:pointer;font-weight:500;padding-right:12px;font-size:1.125rem}.faq p{font-size:1.0625rem;color:var(--muted);margin-top:18px;max-width:850px}.form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form label{display:block;font-size:.9375rem;font-weight:500;margin-bottom:9px}.form input,.form select,.form textarea{display:block;width:100%;border:1px solid #aeb7a4;padding:13px;background:white;color:var(--ink);font-size:1rem;border-radius:0}.form textarea{min-height:170px;resize:vertical}.form .full{grid-column:1/-1}.form .help{font-size:.875rem;color:var(--muted)}.form .actions{margin:0}.status{font-size:.9375rem;min-height:26px}.site-footer{border-top:1px solid var(--line);padding-block:48px 24px;background:var(--paper)}.footer-top{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:40px}.footer-brand strong{font-size:1.25rem;font-weight:600;letter-spacing:-.03em}.footer-brand p{font-size:.9375rem;color:var(--muted);margin-top:18px;max-width:320px}.footer-col strong{font-size:.875rem;font-weight:600}.footer-col a{display:block;font-size:.9375rem;color:var(--muted);margin-top:12px}.footer-col a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);margin-top:40px;padding-top:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:.8125rem;color:var(--muted)}.footer-bottom a{text-decoration:underline;text-underline-offset:4px}.notice{font-size:.875rem;background:var(--paper);padding:20px;margin-top:24px}body.no-js .filter-bar,body.no-js .filter-count{display:none}[hidden]{display:none!important}
@media(min-width:1600px){.hero{gap:96px}}
@media(max-width:1150px){.wrap{padding-inline:40px}.nav-shell{gap:20px}.navigation{gap:20px}.nav-cta{display:none}.hero{gap:40px}.hero h1{font-size:4rem}.sectiontop{gap:48px}.split{gap:48px}.grid3{gap:20px}.card,.practice-card{padding:26px}.industry-row{gap:20px}.footer-top{gap:24px}}
@media(max-width:900px){.hero h1{font-size:3.4rem}.hero{grid-template-columns:1.2fr 1fr;gap:28px}.hero-board{padding:26px}.grid3{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-grid{grid-template-columns:1fr}.practice-card{min-height:0;display:grid;grid-template-columns:80px 1fr 1fr;column-gap:24px}.practice-card .big-number{grid-row:1/4;margin:0;font-size:3rem}.practice-card p{grid-column:2;margin-block:16px}.practice-card ul{grid-column:3;grid-row:1/4}.practice-card .textlink{grid-column:2}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-top{grid-template-columns:repeat(3,1fr)}.footer-brand{grid-column:1/-1}.footer-brand p{max-width:600px}.cta{align-items:flex-start;flex-direction:column;gap:24px}.industry-row{grid-template-columns:32px 1fr 1fr 24px}.industry-row h3{font-size:1.25rem}}
@media(min-width:721px) and (max-width:900px){.nav-shell{flex-wrap:wrap;justify-content:space-between;gap:0}.mobile-toggle{display:block}.navigation{display:none;width:100%;margin:0;padding-block:16px 24px;flex-direction:column;align-items:stretch;gap:0}.navigation.open,body.no-js .navigation{display:flex}body.no-js .mobile-toggle{display:none}.navigation>a,.navgroup>summary{padding:14px 0}.dropdown{position:static;border:0;box-shadow:none;padding:8px 0}.dropdown .wrap{padding:0}.dropgrid{grid-template-columns:1fr;gap:8px}.dropgrid a{padding:16px}}
@media(max-width:720px){.wrap{padding-inline:24px}.nav-shell{min-height:140px;flex-wrap:wrap;justify-content:space-between;gap:0}.logo{width:208px}.mobile-toggle{display:block}.navigation{display:none;margin:0;width:100%;padding:8px 0 24px;flex-direction:column;align-items:stretch;gap:0}.navigation.open{display:flex}body.no-js .navigation{display:flex}body.no-js .mobile-toggle{display:none}.navigation>a,.navgroup>summary{padding:14px 0}.dropdown{position:static;padding:12px 0;border:0;box-shadow:none}.dropdown .wrap{padding:0}.dropgrid{grid-template-columns:1fr;gap:8px}.dropgrid a{padding:16px}.dropgrid strong{font-size:1.125rem}.dropgrid span{font-size:.875rem}.hero{grid-template-columns:1fr;gap:40px;padding-block:48px}.hero h1{font-size:2.75rem}.hero-board{min-height:400px;padding:28px}.entrybar{grid-template-columns:1fr}.entrybar a,.entrybar a:first-child{padding:20px 0;border-right:0;border-bottom:1px solid var(--line)}.entrybar a:last-child{border:0}.section{padding-block:56px}.sectiontop{grid-template-columns:1fr;gap:24px;margin-bottom:32px}.grid3,.grid2{grid-template-columns:1fr}.practice-card{display:flex;padding:28px}.practice-card .big-number{margin-bottom:28px}.practice-card p{margin-block:18px}.practice-card ul{margin-bottom:28px}.card{min-height:260px;padding:28px}.industry-row{grid-template-columns:26px 1fr 20px;gap:12px;padding-block:24px}.industry-row h3{font-size:1.3125rem}.industry-row p{grid-column:2;grid-row:2;font-size:.9375rem}.industry-row .arrow{grid-column:3;grid-row:1}.steps{grid-template-columns:1fr}.step h3{margin-top:16px}.pagehero{padding-block:40px 48px}.pagehero h1{font-size:2.75rem}.lead{font-size:1.125rem}.split{grid-template-columns:1fr;gap:32px}.listbox{padding:26px}.group-header{flex-direction:column;align-items:flex-start;gap:16px}.group-header h2{font-size:1.875rem}.form{grid-template-columns:1fr}.form .full{grid-column:auto}.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-col:last-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span,.footer-bottom a{display:block;margin-top:8px}.button{font-size:.875rem;gap:18px;padding:14px 20px}.cta{padding-block:48px}.actions{gap:24px}.eyebrow{font-size:.75rem}h2{font-size:2rem}.application{padding:26px}.filter{padding:10px 15px}.engagement{padding:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(max-width:360px){.mobile-toggle{padding-inline:9px}.filter{padding-inline:12px}}
@media print{.site-header,.site-footer,.actions,.filter-bar,.filter-count{display:none!important}.wrap{padding-inline:0}.section,.pagehero,.hero{padding-block:24px}.dark{background:white;color:black}.dark p{color:#444}.grid3,.grid2{display:block}.card,.application,.engagement{break-inside:avoid;margin-bottom:16px}.hero-board{display:none}.hero{display:block}.sectiontop,.split{display:block}a{text-decoration:none}body{font-size:11pt}h1{font-size:30pt!important}h2{font-size:22pt!important}}

/* Motion and responsive refinement. All reading content remains visible by default. */
:root{--ease-out:cubic-bezier(.22,1,.36,1)}
h1,h2,h3,p,a,li{overflow-wrap:break-word}
h1,h2,h3{overflow-wrap:anywhere;text-wrap:balance}
.wrap{width:100%}
.hero>*,.sectiontop>*,.grid3>*,.grid2>*,.split>*,.steps>*,.footer-top>*,.industry-row>*,.entrybar>*,.form>*{min-width:0}
input,select,textarea{min-width:0;max-width:100%}
.button{max-width:100%;white-space:normal}
.button,.card,.practice-card,.board-item,.industry-row,.filter{transition:background-color .25s ease,border-color .25s ease,box-shadow .3s ease,transform .4s var(--ease-out)}
.arrow{display:inline-block;transition:transform .35s var(--ease-out)}
.practice-card{position:relative;isolation:isolate}
.practice-card:after{content:'';position:absolute;inset:auto 0 0;height:3px;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease-out)}
.practice-card .big-number{transition:color .4s ease}
.card .more{position:relative;border-bottom-color:var(--line)}
.card .more:after{content:'';height:1px;position:absolute;bottom:-1px;left:0;right:0;background:var(--ink);transform:scaleX(.2);transform-origin:left;transition:transform .4s var(--ease-out)}
.navgroup[open] .dropdown{animation:menu-enter .24s var(--ease-out)}
.faq details[open]>p{animation:content-enter .32s var(--ease-out)}
.navigation.open{animation:menu-enter .24s var(--ease-out)}
.board-item .dot{animation:dot-welcome 1.2s ease-in-out 2}
.board-item:nth-of-type(2) .dot{animation-delay:.2s}
.board-item:nth-of-type(3) .dot{animation-delay:.4s}
.navigation>a:hover,.footer-col a:hover{text-underline-offset:6px}
.practice-card:focus-within:after{transform:scaleX(1)}
.card:focus-visible .more:after{transform:scaleX(1)}
.filter[aria-pressed=true]{box-shadow:inset 0 -3px var(--lime)}
.form input,.form textarea,.form select{transition:border-color .2s ease,box-shadow .2s ease}
.form input:focus,.form textarea:focus,.form select:focus{border-color:#527b25;box-shadow:0 0 0 1px #527b25}
.form button:disabled{opacity:.6;cursor:not-allowed}
@keyframes menu-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@keyframes content-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes dot-welcome{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}
@media(hover:hover) and (pointer:fine){
 .button:hover .arrow,.card:hover .arrow,.practice-card:hover .arrow,.board-item:hover .arrow{transform:translate(3px,-3px)}
 .button:not(.outline):hover{background:var(--ink);color:white;border-color:var(--ink)}
 .dark .button:not(.outline):hover{background:white;color:var(--ink);border-color:white}
 .card:hover,.practice-card:hover{transform:translateY(-5px);box-shadow:0 16px 30px -24px #11131055}
 .practice-card:hover:after,.card:hover .more:after{transform:scaleX(1)}
 .practice-card:hover .big-number{color:#62734f}
 .industry-row:hover h3{transform:translateX(5px)}
 .industry-row h3{transition:transform .35s var(--ease-out)}
 .board-item:hover{background:#ffffff05}
}
@media(hover:none),(pointer:coarse){
 .card:hover,.practice-card:hover{transform:none;box-shadow:none}
 .button:active,.filter:active{opacity:.84}
 .navigation>a,.navgroup>summary,.footer-col a{min-height:44px;display:flex;align-items:center}
}
@media(min-width:1600px){.wrap{padding-inline:64px}.hero h1{font-size:5rem}.section{padding-block:104px}}
@media(min-width:721px) and (max-width:1000px){
 .hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
 .hero h1{font-size:clamp(2.75rem,5.4vw,3.75rem)}
 .hero-board{padding:24px}
 .board-item{grid-template-columns:12px minmax(0,1fr) 18px;gap:12px}
 .board-item h3{font-size:1.5rem}
 .entrybar a{padding-inline:16px;font-size:.9375rem}
}
@media(max-width:720px){
 .wrap{padding-inline:clamp(16px,5vw,24px)}
 .hero h1,.pagehero h1{font-size:clamp(2.25rem,9.7vw,2.75rem)}
 .hero-board{min-height:0;padding:28px}
 .board-item{padding-block:20px}
 .sectiontop p{font-size:1rem}
 .industry-row h3{line-height:1.25}
 .button{min-height:48px}
 .form input,.form select{min-height:48px}
 .footer-col a{padding-block:4px;min-height:44px}
 .filter-bar{gap:8px}
}
@media(max-width:380px){
 .logo{width:208px;max-width:calc(100% - 65px)}
 .mobile-toggle{padding-inline:9px;min-height:44px}
 .hero-board,.practice-card,.card,.application,.engagement,.listbox{padding:24px}
 .board-item h3{font-size:1.5rem}
 .actions{align-items:stretch;flex-direction:column}
 .actions .button{width:100%}
 .actions .textlink{align-self:flex-start}
 .footer-top{gap:24px 16px}
}
@media(max-height:500px) and (orientation:landscape){.hero,.pagehero{padding-block:32px}.hero-board{min-height:0}.section{padding-block:48px}}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*:before,*:after{animation:none!important;transition:none!important}
 .card:hover,.practice-card:hover,.industry-row:hover h3,.button:hover .arrow,.card:hover .arrow,.practice-card:hover .arrow,.board-item:hover .arrow{transform:none}
}
@media print{*,*:before,*:after{animation:none!important;transition:none!important}}

/* Fluid edition: floating navigation, layered surfaces and generous editorial rhythm. */
:root{--paper:#f1f4f3;--muted:#59625f;--line:#dce3df;--ink:#111916;--max:1440px}
body{background:#fbfcfb}h1,h2,h3{font-weight:500;letter-spacing:-.052em}h1,h2{text-wrap:balance}h2{font-size:clamp(2.2rem,4.3vw,4rem)}
.site-header{position:sticky;top:16px;margin:16px auto 0;width:calc(100% - 64px);max-width:1280px;border:1px solid #ffffffb8;border-radius:60px;background:#ffffffed;box-shadow:0 8px 35px #1735260c;backdrop-filter:blur(18px)}
.nav-shell{min-height:78px;padding:0 24px;gap:24px}.logo{width:165px;height:72px}.logo img{width:190px;height:190px;left:-12px;top:-59px}.navigation{gap:24px}.nav-cta{border-radius:40px;min-height:46px}.button{border-radius:50px;padding:16px 24px;gap:22px}.button .arrow{width:25px;height:25px;border-radius:50%;background:#142116;color:white;text-align:center;line-height:25px}.button.outline{border-color:#a0afa8;background:#ffffff60}.button.outline:hover{background:white}.dropdown{left:12px;right:12px;border-radius:24px;border:1px solid var(--line);padding:20px}.dropgrid{padding:0;gap:12px}.dropgrid a{border-radius:16px}.eyebrow{font-size:.8125rem;letter-spacing:.12em;color:#445a4b}
.fluid-hero{position:relative;isolation:isolate;margin-top:-95px;padding-top:95px;overflow:hidden;background:radial-gradient(ellipse at 50% 65%,#dfffbe 0,transparent 50%),linear-gradient(145deg,#edf4ef,#f8fcf6 45%,#d9eddf);border-radius:0 0 56px 56px}.flow-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:.65}.hero-glow{position:absolute;width:65%;height:500px;left:17%;top:280px;background:radial-gradient(ellipse,#a8ff4740,transparent 65%);z-index:-1;pointer-events:none}.hero{display:block;text-align:center;padding-top:80px;padding-bottom:36px}.hero-copy{max-width:1000px;margin:auto}.hero .eyebrow{margin-bottom:24px}.hero h1{font-size:clamp(3.5rem,7.5vw,7.1rem);line-height:1.01;margin:auto;max-width:1100px;font-weight:500;letter-spacing:-.065em}.hero h1 span{color:#36623d}.hero .lead{margin:30px auto 0;max-width:750px;font-size:1.125rem;color:#43574b}.hero .actions{justify-content:center;margin-top:30px}.orbit-deck{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:1060px;margin:70px auto 0;text-align:left;align-items:start}.orbit-card{display:block;position:relative;background:#ffffffd9;backdrop-filter:blur(12px);padding:28px;border:1px solid #fff;border-radius:24px;box-shadow:0 18px 50px #29462712;transition:transform .5s var(--ease-out),box-shadow .5s;min-height:245px}.orbit-gtm{margin-top:30px;background:#12221c;color:white;border-color:#283d31}.orbit-talent{margin-top:5px}.orbit-card h3{font-size:1.8rem;margin-top:16px}.orbit-card p{font-size:1rem;line-height:1.5;margin-top:10px;color:#506253}.orbit-gtm p{color:#c6d7cd}.orbit-number{font-size:.875rem;border:1px solid #c0d3c2;border-radius:50%;padding:7px 9px}.orbit-gtm .orbit-number{border-color:#566c5e;color:var(--lime)}.orbit-action{display:flex;justify-content:space-between;margin-top:24px;font-size:.875rem}.orbit-gtm .orbit-action{color:var(--lime)}.hero-caption{font-size:.875rem;color:#506455;margin-top:34px}.entrybar{margin-top:32px;border:0;background:white;border-radius:22px;box-shadow:0 6px 35px #1c342808}.entrybar a,.entrybar a:first-child{padding:26px 30px}.entrybar a:hover{border-radius:22px}.section{padding-block:110px}.sectiontop{gap:80px;margin-bottom:54px}.sectiontop p{font-size:1.125rem;line-height:1.75}.practice-card,.card,.application,.engagement,.listbox{border-radius:26px;border-color:#e2e9e2;padding:36px;overflow:hidden}.practice-grid{gap:24px}.practice-card{background:linear-gradient(155deg,#fff,#f1f6ef);min-height:470px}.practice-card:nth-child(2){background:#17271e;color:white}.practice-card:nth-child(2) p{color:#bdcfc0}.practice-card:nth-child(2) .big-number{color:var(--lime)}.practice-card .big-number{font-size:4rem;color:#638c54;margin-bottom:52px}.practice-card:after{height:4px}.practice-card ul{font-size:1rem}.practice-card .textlink{padding-top:18px}.paper{border-radius:48px;margin-inline:20px;background:#eef3f0}.card{min-height:310px;border:0;box-shadow:0 12px 32px #284a2d06}.card h3{font-size:1.8rem}.card .eyebrow{font-size:.8125rem}.industry-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;border:0}.industry-row{display:grid;grid-template-columns:30px 1fr 22px;align-items:start;padding:30px;border:1px solid var(--line);border-radius:20px;background:white;gap:18px}.industry-row p{grid-column:2;grid-row:2}.industry-row>.arrow{grid-column:3;grid-row:1}.industry-row h3{font-size:1.4rem}.dark.section{margin:0 20px;border-radius:48px;background:radial-gradient(ellipse at 95% 100%,#345431,transparent 60%),#132019}.dark .eyebrow{color:#c8ddcb}.dark h2{max-width:1000px}.steps{gap:32px;margin-top:65px}.step{border-color:#527254}.step h3{font-size:1.7rem}.cta{background:#dfffbd;border-radius:36px;max-width:1312px;width:calc(100% - 80px);padding:64px;margin-bottom:64px}.cta .button{background:#14221a;color:white;border-color:#14221a}.cta .button .arrow{background:var(--lime);color:#14221a}.cta h2{font-size:clamp(2.2rem,4vw,3.6rem)}.answers{max-width:1060px}.faq details{padding:26px 0}.faq summary{font-size:1.2rem}.faq p{line-height:1.75}.pagehero{padding-top:70px;padding-bottom:70px}.pagehero h1{font-size:clamp(2.8rem,5.5vw,5.4rem)}.pagehero .lead{font-size:1.2rem}.inner-page .site-header{background:#fffffff0}.filter,.tag{border-radius:30px}.form input,.form select,.form textarea{border-radius:12px}.site-footer{background:#eef3f0;border:0;border-radius:40px 40px 0 0;padding-top:64px}.footer-bottom{font-size:.875rem}.prose h2{font-size:clamp(2.1rem,3.2vw,3rem)}
@media(hover:hover) and (pointer:fine){.orbit-card:hover{transform:translateY(-8px);box-shadow:0 24px 50px #29462726}.industry-row:hover{background:#edffd9;transform:translateY(-3px)}}
@media(max-width:1100px){.navigation{gap:18px}.nav-shell{gap:16px}.orbit-card{padding:24px}.hero{padding-top:64px}.section{padding-block:80px}.practice-card,.card{padding:28px}.sectiontop{gap:40px}.cta{padding:48px}.practice-card{min-height:0}}
@media(max-width:900px){.site-header{width:calc(100% - 32px);top:12px;margin-top:12px;border-radius:28px}.nav-shell{min-height:74px}.mobile-toggle{border-radius:30px}.navigation{max-height:70vh;overflow-y:auto}.dropdown{padding:10px 0}.hero{grid-template-columns:1fr;padding-top:62px}.orbit-deck{gap:14px}.orbit-card{padding:22px;min-height:260px}.orbit-card h3{font-size:1.45rem}.orbit-card p{font-size:.9375rem}.sectiontop{gap:28px}.practice-card .big-number{margin-bottom:0}.industry-row{padding:24px}.industry-row h3{font-size:1.3rem}.fluid-hero{margin-top:-87px;padding-top:87px}.dark.section,.paper{margin-inline:12px;border-radius:32px}}
@media(max-width:720px){.site-header{width:calc(100% - 24px);top:10px;margin-top:10px}.nav-shell{padding-inline:16px;min-height:70px}.logo{width:155px;height:70px;max-width:calc(100% - 70px)}.logo img{width:180px;height:180px;top:-56px;left:-10px}.fluid-hero{margin-top:-81px;padding-top:81px;border-radius:0 0 30px 30px}.hero{padding-top:56px;padding-bottom:30px}.hero h1{font-size:clamp(2.75rem,10.5vw,4.5rem);letter-spacing:-.06em}.hero .lead{font-size:1rem;max-width:490px}.desktop-break{display:none}.hero .actions{gap:12px;flex-direction:row;align-items:center}.hero .actions .button{width:auto;font-size:.875rem;padding:13px 17px;gap:12px}.orbit-deck{grid-template-columns:1fr;margin-top:40px;gap:12px;max-width:480px}.orbit-card{margin:0;min-height:0;padding:22px 24px;display:grid;grid-template-columns:35px 1fr;gap:8px 14px}.orbit-card h3{margin:0;font-size:1.45rem;align-self:center}.orbit-number{grid-row:1;align-self:center;text-align:center;padding:5px;font-size:.8125rem}.orbit-card p{grid-column:2;margin:0;font-size:.9375rem}.orbit-action{grid-column:2;margin-top:10px}.hero-caption{font-size:.8125rem}.entrybar{margin-top:22px}.entrybar a,.entrybar a:first-child{padding:22px}.section{padding-block:64px}.sectiontop{gap:24px;margin-bottom:32px}.sectiontop p{font-size:1rem}.practice-card .big-number{margin-bottom:28px}.practice-card{padding:30px;min-height:0}.industry-list{grid-template-columns:1fr}.industry-row{padding:24px;gap:12px}.card{min-height:0;padding:28px}.card h3{font-size:1.55rem}.cta{width:calc(100% - 32px);padding:32px 24px;border-radius:28px;margin-bottom:40px}.cta .button{align-self:flex-start}.pagehero{padding-top:42px;padding-bottom:48px}.pagehero h1{font-size:clamp(2.4rem,9vw,3.5rem)}.pagehero .lead{font-size:1.0625rem}.steps{margin-top:40px}.dark.section,.paper{border-radius:28px}.form .actions{align-items:stretch}.faq summary{font-size:1.0625rem}.footer-top{gap:32px}.hero .eyebrow{font-size:.75rem}.breadcrumb{font-size:.8125rem}.listbox{padding:26px}}
@media(prefers-reduced-motion:reduce){.flow-canvas{opacity:.35}.orbit-card:hover{transform:none}}
@media print{.site-header,.flow-canvas{display:none}.fluid-hero{padding:0;margin:0}.hero,.section{padding-block:24px}.orbit-deck{margin-top:24px}.paper,.dark.section{margin:0}.cta{width:100%}}
/* Fit the complete supplied stacked logo, including the three lime marks. */
.logo{width:112px;height:74px}.logo img{width:124px;height:124px;left:-6px;top:-22px}
@media(max-width:720px){.logo{width:110px;height:70px}.logo img{width:120px;height:120px;left:-5px;top:-22px}}

/* Alignment revision: one shared grid and a header sized for the original logo. */
:root{--gutter:64px;--surface-inset:20px;--header-space:110px}
.wrap{padding-inline:var(--gutter)}
.site-header{max-width:1312px;width:calc(100% - 2 * var(--gutter));border-radius:28px;top:16px;margin-top:16px}
.nav-shell{display:grid;grid-template-columns:122px minmax(0,1fr) auto;gap:28px;min-height:92px;padding:12px 28px;position:relative}
.logo{display:flex;width:122px;height:66px;align-items:center;justify-content:flex-start;overflow:visible;max-width:none;margin:0;padding-right:22px;border-right:1px solid var(--line)}
.brand-artwork{display:block;width:98px;height:auto;aspect-ratio:1420/900;flex:none}
.navigation{display:flex;margin:0;justify-content:center;align-items:center;gap:24px;font-size:.9375rem;min-width:0}
.navigation>a,.navgroup>summary{display:flex;align-items:center;min-height:48px;padding:12px 0;line-height:1.4;white-space:nowrap}
.nav-cta{display:inline-flex;align-self:center;justify-self:end;min-height:48px;padding:12px 18px;font-size:.875rem;white-space:nowrap;gap:12px}
.mobile-toggle{display:none}.dropdown{top:calc(100% + 10px);left:0;right:0;padding:18px;border-radius:22px}.dropdown .wrap{padding:0}.dropgrid a{height:100%}
.fluid-hero{margin-top:calc(-1 * var(--header-space));padding-top:var(--header-space)}
.paper,.dark.section{margin-inline:var(--surface-inset)}
.paper>.wrap,.dark.section>.wrap{max-width:calc(var(--max) - 2 * var(--surface-inset));padding-inline:calc(var(--gutter) - var(--surface-inset))}
.sectiontop{align-items:start}.sectiontop>p{padding-top:44px}
.entrybar{align-items:stretch}.entrybar>a{height:100%}
.practice-card h3{min-height:2.4em}.practice-card .textlink{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;width:100%;line-height:1.5}
.grid3:not(.practice-grid)>.card{height:100%}.card .more{display:flex;align-items:center;justify-content:space-between;gap:16px;line-height:1.5}
.industry-row h3{align-self:center}.industry-row>.arrow{align-self:center}
.orbit-card{display:flex;flex-direction:column;min-height:275px}.orbit-card .orbit-number{align-self:flex-start}.orbit-card .orbit-action{margin-top:auto;padding-top:24px}.orbit-card p{margin-bottom:12px}
.cta{width:calc(100% - 2 * var(--gutter));max-width:calc(var(--max) - 2 * var(--gutter));padding:56px}
html{scroll-padding-top:160px}
@media(max-width:1200px){:root{--gutter:40px}.nav-shell{grid-template-columns:118px minmax(0,1fr) auto;gap:18px;padding-inline:22px}.logo{width:118px;padding-right:18px}.brand-artwork{width:96px}.navigation{gap:18px;font-size:.875rem}.nav-cta{font-size:.8125rem;padding:12px 15px;gap:10px}.nav-cta .arrow{width:22px;height:22px;line-height:22px}}
@media(max-width:1050px){:root{--header-space:98px;--surface-inset:12px}.site-header{border-radius:24px;top:12px;margin-top:12px}.nav-shell{grid-template-columns:1fr auto;min-height:84px;padding:10px 22px;gap:0 20px}.logo{width:96px;height:62px;border:0;padding:0}.brand-artwork{width:92px}.mobile-toggle{display:block;justify-self:end;align-self:center;min-height:46px;padding:10px 18px;border-radius:30px}.nav-cta{display:none}.navigation{display:none;grid-column:1/-1;width:100%;flex-direction:column;align-items:stretch;justify-content:flex-start;margin:0;padding:16px 0 10px;border-top:1px solid var(--line);gap:0;max-height:65vh;overflow-y:auto;font-size:1rem}.navigation.open,body.no-js .navigation{display:flex}body.no-js .mobile-toggle{display:none}.navigation>a,.navgroup>summary{min-height:48px;padding:13px 4px}.navgroup{width:100%}.dropdown{position:static;padding:8px 0 12px;border:0;box-shadow:none;background:transparent}.dropgrid{grid-template-columns:1fr;gap:10px}.dropgrid a{padding:18px}.practice-card{display:flex}.practice-card .big-number{margin-bottom:28px}.practice-card h3{min-height:0}.sectiontop>p{padding-top:40px}html{scroll-padding-top:130px}}
@media(max-width:720px){:root{--gutter:24px;--surface-inset:12px;--header-space:90px}.site-header{width:calc(100% - 24px);margin-top:10px;top:10px;border-radius:22px}.nav-shell{min-height:78px;padding:10px 18px}.logo{width:90px;height:56px}.brand-artwork{width:86px}.navigation{font-size:1rem}.sectiontop>p{padding-top:0}.sectiontop{gap:24px}.orbit-card{display:grid;grid-template-columns:35px minmax(0,1fr);min-height:0}.orbit-card .orbit-number{align-self:center}.orbit-card p{margin:0}.orbit-card .orbit-action{padding-top:0;margin-top:10px}.entrybar a,.entrybar a:first-child{padding:22px 20px}.practice-card h3{min-height:0}.cta{padding:32px 24px;max-width:none;width:calc(100% - 2 * var(--gutter))}.hero{padding-top:48px}html{scroll-padding-top:120px}}
@media(max-width:380px){:root{--gutter:16px}.nav-shell{padding-inline:14px}.mobile-toggle{padding-inline:16px}.hero .actions{flex-direction:column;align-items:stretch}.hero .actions .button{width:100%;justify-content:center}.industry-row{padding:20px}.entrybar a,.entrybar a:first-child{padding:20px 16px}.cta{padding:28px 22px}}
@media print{.site-header{display:none}.fluid-hero{padding-top:0;margin-top:0}.sectiontop>p{padding-top:0}}

/* Separate adjoining coloured panels, including the GTM solutions-to-contact transition. */
.paper + .cta,.dark + .cta{margin-top:64px}
@media(max-width:720px){.paper + .cta,.dark + .cta{margin-top:40px}}

/* Revision 4: explicit contact spacing, compact brand and restrained corners. */
:root{--header-space:94px}
.site-header{border-radius:12px}
.nav-shell{grid-template-columns:96px minmax(0,1fr) auto;min-height:76px;padding-block:10px}
.logo{width:96px;height:54px;padding-right:20px}
.brand-artwork{width:72px}
.fluid-hero,.paper,.dark.section,.site-footer{border-radius:12px}
.practice-card,.card,.application,.engagement,.listbox,.orbit-card,.entrybar,.entrybar a:hover,.cta,.industry-row,.dropdown,.dropgrid a{border-radius:10px}
main>.cta,main>.paper+.cta,main>.dark+.cta{margin-top:96px;margin-bottom:80px;clear:both}
.cta{position:relative;isolation:isolate}
@media(max-width:1200px){.nav-shell{grid-template-columns:96px minmax(0,1fr) auto}.logo{width:96px}.brand-artwork{width:72px}}
@media(max-width:1050px){:root{--header-space:86px}.nav-shell{grid-template-columns:1fr auto;min-height:72px;padding-block:9px}.logo{width:72px;height:52px;padding:0}.brand-artwork{width:68px}.site-header{border-radius:12px}}
@media(max-width:720px){:root{--header-space:80px}.nav-shell{min-height:68px;padding-block:8px}.logo{width:68px;height:50px}.brand-artwork{width:64px}.site-header,.fluid-hero,.paper,.dark.section,.site-footer{border-radius:10px}main>.cta,main>.paper+.cta,main>.dark+.cta{margin-top:64px;margin-bottom:56px}.cta{border-radius:10px}}

/* Revision 5: buttons echo the menu panel; dark-section outline contrast. */
.button,.nav-cta,.mobile-toggle,.filter{border-radius:12px}
@media(max-width:720px){.button,.nav-cta,.mobile-toggle,.filter{border-radius:10px}}
.dark .button.outline{background:transparent;color:#fff;border-color:#a7bcae}
.dark .button.outline:hover,.dark .button.outline:focus-visible{background:#9eff1f;color:#111916;border-color:#9eff1f}
.dark .button.outline .arrow{background:#9eff1f;color:#111916}
.dark .button.outline:hover .arrow,.dark .button.outline:focus-visible .arrow{background:#111916;color:#fff}
/* Experience and evidence use the same restrained panels and readable metrics. */
.experience .metric,.metric{display:block;font-size:clamp(1.8rem,3.2vw,3rem);font-weight:500;line-height:1.2;letter-spacing:-.035em;margin-bottom:16px}.experience h2{margin-bottom:36px}.experience .engagement p{margin-top:20px}.illustration{padding:36px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.illustration>p{margin-top:20px}.illustration .footnote{max-width:100%}@media(max-width:720px){.illustration{padding:24px}.illustration .grid3{gap:24px}}
/* Small but readable qualification for illustrative efficiency figures. */
.illustration .efficiency-disclaimer{font-size:.75rem;line-height:1.6;color:#59625f;max-width:100%;margin-top:20px}

/* Headquarters and delivery locations */
.footer-offices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 64px;padding:32px 0;border-top:1px solid var(--line)}
.footer-offices h2{font-size:1rem;line-height:1.4;letter-spacing:0;margin-bottom:12px;font-weight:600}
.footer-offices address{font-style:normal;font-size:.9375rem;line-height:1.8;overflow-wrap:anywhere}
@media(max-width:720px){.footer-offices{grid-template-columns:1fr;gap:28px;padding:28px 0}}

/* Monochrome technology ecosystem, moving left to right. */
.ecosystem{overflow:hidden;padding-bottom:40px}.ecosystem .sectiontop{margin-bottom:0}.ecosystem-window{overflow:hidden;margin-top:28px;border-block:1px solid var(--line)}
.ecosystem-track{display:flex;width:max-content;animation:ecosystem-right 45s linear infinite;will-change:transform}
.ecosystem-group{display:flex;align-items:center;gap:64px;padding:32px;flex:none}
.ecosystem-logo{display:flex;align-items:center;gap:12px;white-space:nowrap;color:#69716d;font-size:1.4rem;font-weight:600;letter-spacing:-.03em}
.ecosystem-logo svg{width:38px;height:38px;flex:none}
.ecosystem-window:focus-within .ecosystem-track,.ecosystem-window:hover .ecosystem-track{animation-play-state:paused}
@keyframes ecosystem-right{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.ecosystem-track{animation:none;transform:none;width:100%;will-change:auto}.ecosystem-group{flex-wrap:wrap;justify-content:center;gap:24px 40px;width:100%;padding:28px 24px}.ecosystem-group[aria-hidden="true"]{display:none}}
.ecosystem-fivetran svg{width:150px;height:38px}.ecosystem-fivetran>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.ecosystem-logo svg{fill:currentColor}
.ecosystem-amazonaws svg{width:64px;height:42px}.ecosystem-amazonaws>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}

.ecosystem-window:focus-visible{outline:2px solid #477a06;outline-offset:-2px}

/* A single spacing interval below the homepage technology strip. */
.ecosystem.section{padding-bottom:0}
.ecosystem+.perspective{padding-top:64px}
@media(max-width:720px){.ecosystem+.perspective{padding-top:40px}}

/* Policy pages */
.footer-legal{display:flex;flex-wrap:wrap;gap:16px 28px;padding-top:24px;font-size:.875rem}.footer-legal a:hover,.legal-copy a:hover,.contact-privacy a:hover{color:#365e05}.footer-entity{font-size:.875rem;line-height:1.7;margin-bottom:12px}
.legal-hero{padding-bottom:32px}.legal-hero h1{font-size:clamp(2.4rem,5vw,4.5rem)}.legal-updated{font-size:.9375rem;margin-top:24px;color:var(--muted)}
.legal-layout{max-width:1120px;padding-bottom:88px}.legal-contents{border-block:1px solid var(--line);padding:20px 0;margin-bottom:36px}.legal-contents summary{cursor:pointer;font-weight:600}.legal-contents nav{display:grid;gap:12px;padding-top:20px}.legal-contents a{font-size:.9375rem;text-decoration:underline;text-underline-offset:4px}
.legal-copy{font-size:1rem;line-height:1.85;overflow-wrap:anywhere}.legal-copy p{max-width:none;margin-bottom:20px}.legal-copy h2{font-size:clamp(1.35rem,2.5vw,1.8rem);line-height:1.3;letter-spacing:-.025em;margin:44px 0 20px;scroll-margin-top:140px}.legal-copy a,.contact-privacy a{text-decoration:underline;text-underline-offset:3px}
.legal-table-scroll{overflow-x:auto;margin:28px 0;max-width:100%}.legal-copy table{border-collapse:collapse;min-width:680px;width:100%;font-size:.875rem;line-height:1.65}.legal-copy th,.legal-copy td{padding:16px;border:1px solid var(--line);vertical-align:top;text-align:left}.legal-copy th{background:#eef3f0;font-weight:600}.legal-copy td p,.legal-copy th p{margin:0}.legal-copy caption{text-align:left;padding-bottom:12px;font-weight:600}.contact-privacy{font-size:.875rem;line-height:1.7;margin-top:20px}
@media(max-width:720px){.legal-layout{padding-bottom:56px}.legal-copy h2{scroll-margin-top:110px}.footer-legal{gap:16px 24px}}
@media print{.legal-contents,.footer-legal{display:none}.legal-layout{max-width:none;padding:0}.legal-table-scroll{overflow:visible}.legal-copy table{min-width:0}.legal-copy h2{break-after:avoid}}
.legal-table-hint{display:none}@media(max-width:720px){.legal-copy .legal-table-hint{display:block;font-size:.8125rem;margin-bottom:8px}.legal-table-hint+.legal-table-scroll{margin-top:8px}}
.ecosystem-sap svg{width:64px;height:42px}.ecosystem-sap>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}

/* Balanced office panels in the global footer. */
.footer-offices{gap:24px;margin-top:40px;padding:0;border-top:0;align-items:stretch}
.footer-offices>section{min-width:0;padding:28px 32px;background:#ffffff99;border:1px solid #d9e2dc;border-radius:10px}
.footer-offices h2{font-size:.9375rem;line-height:1.5;margin:0 0 16px;padding-bottom:16px;border-bottom:1px solid #dfe7e2;color:#17251d}
.footer-offices address{font-size:.9375rem;line-height:1.85;color:#4d5f54}
.site-footer .footer-bottom{margin-top:32px}
@media(max-width:720px){.footer-offices{margin-top:32px;gap:16px}.footer-offices>section{padding:24px}.footer-offices h2{padding-bottom:12px;margin-bottom:14px}.site-footer .footer-bottom{margin-top:28px}}

/* Accelerator catalogue and detail pages. */
.accelerator-catalog{padding-top:0}.accelerator-start{padding-bottom:64px}.accelerator-start>p{font-size:.9375rem;color:var(--muted)}.accelerator-start .actions{margin-top:24px}
.accelerator-capabilities{gap:24px}.accelerator-capabilities .engagement p{margin-top:18px}.accelerator-flow{list-style:none;padding:0;margin:32px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.accelerator-flow li{padding:28px;border:1px solid var(--line);border-radius:10px;background:#eef3f0;min-width:0}.accelerator-step{display:block;font-size:.875rem;font-weight:600;color:#477a06;margin-bottom:24px}.accelerator-flow h3{font-size:1.3rem}.accelerator-flow p{font-size:.9375rem;margin-top:12px}.accelerator-process{padding-top:0}
@media(max-width:1100px){.accelerator-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1051px) and (max-width:1200px){.navigation{gap:12px}}
@media(max-width:720px){.accelerator-start{padding-bottom:40px}.accelerator-flow{grid-template-columns:1fr}.accelerator-flow li{padding:24px}.accelerator-step{margin-bottom:14px}}
.accelerator-grid .card>.eyebrow{min-height:2.8em}.accelerator-grid .card>h3{min-height:2.4em}@media(max-width:720px){.accelerator-grid .card>.eyebrow,.accelerator-grid .card>h3{min-height:0}}

/* Insights: editorial layouts using the existing brand system. */
.insights-catalog{padding-top:0}.insight-card{display:flex;flex-direction:column}.insight-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.insight-card-top .eyebrow{margin:0}.insight-card-top>span{font-size:.8125rem;color:#53695c}.insight-card h3{font-size:1.6rem}.insight-card .more{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:28px}.insight-read{margin-left:auto;white-space:nowrap;font-size:.8125rem;color:#53695c;font-weight:400}
.article-hero{max-width:1120px;padding-bottom:32px}.article-hero h1{font-size:clamp(2.35rem,4.7vw,4.3rem);line-height:1.1}.article-meta{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.875rem;color:#53695c;margin:28px 0 24px}.article-hero .lead{font-size:1.2rem;line-height:1.7;max-width:76ch}
.article-layout{max-width:1120px;padding-bottom:0}.article-copy{max-width:78ch;font-size:1.0625rem;line-height:1.85;margin:auto;overflow-wrap:anywhere}.article-copy h2{font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.3;letter-spacing:-.025em;margin:42px 0 20px;scroll-margin-top:130px}.article-copy p{margin-bottom:20px;max-width:none}.article-copy ul{padding-left:24px;margin:20px 0}.article-copy li{padding-left:6px;margin-bottom:12px}.article-copy a{text-decoration:underline;text-underline-offset:4px}.article-copy a:hover{color:#365e05}.article-contents{max-width:78ch;margin-inline:auto}.article-sources{border-top:1px solid var(--line);margin-top:36px;font-size:.9375rem}.article-sources h2{font-size:1.2rem}.article-next{background:#eef3f0;border-radius:10px;padding:28px;margin-top:36px}.article-next h2{margin-top:0;font-size:1.45rem}.article-offerings{display:grid;gap:16px}.article-offerings a{font-size:1rem;line-height:1.5}.article-faq .faq summary{font-size:1rem}.article-faq .faq p{font-size:1rem}
@media(min-width:1051px) and (max-width:1250px){.navigation{gap:10px;font-size:.8125rem}.nav-shell{gap:14px}.nav-cta{font-size:.75rem;padding:12px;gap:8px}}
@media(max-width:720px){.article-hero .lead{font-size:1.0625rem}.article-copy{font-size:1rem;line-height:1.8}.article-next{padding:24px}.article-meta{gap:8px 16px}.article-copy h2{scroll-margin-top:110px}.insight-card h3{font-size:1.45rem}}
@media print{.article-contents{display:none}.article-copy h2{break-after:avoid}.article-layout,.article-hero{max-width:none}}

/* File viewers may disable scripts: keep fallback navigation out of the content. */
body.no-js .site-header{position:relative;top:auto}
@media(max-width:1050px){
 body.no-js .navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;overflow:visible;gap:0 16px;padding-block:10px}
 body.no-js .navigation>a,body.no-js .navgroup>summary{white-space:normal;min-height:44px;padding:8px 4px;font-size:.875rem}
 body.no-js .navgroup{grid-column:1/-1}
 body.no-js .fluid-hero{margin-top:0;padding-top:0}
}
.preview-script-note{margin:20px auto;padding:16px 24px;max-width:900px;font-size:.875rem;line-height:1.6;background:var(--paper);border:1px solid var(--line);border-radius:10px}

/* Native disclosure keeps navigation collapsed when script execution is unavailable. */
.native-mobile-menu{display:none}
@media(max-width:1050px){
 body.no-js .navigation{display:none}
 body.no-js .native-mobile-menu{display:block;justify-self:end}
 .native-mobile-menu>summary{list-style:none;cursor:pointer;font-size:.875rem;line-height:24px;min-height:46px;padding:10px 16px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}
 .native-mobile-menu>summary::-webkit-details-marker{display:none}
 .native-mobile-menu .close-label{display:none}
 .native-mobile-menu[open] .menu-label{display:none}
 .native-mobile-menu[open] .close-label{display:inline}
 .native-mobile-menu>nav{position:absolute;top:calc(100% + 8px);left:0;right:0;display:flex;flex-direction:column;background:white;border:1px solid var(--line);border-radius:12px;padding:12px 18px;box-shadow:0 12px 30px #14211614;max-height:65vh;overflow-y:auto}
 .native-mobile-menu nav a{display:block;padding:10px 8px;min-height:44px;font-size:.9375rem}
}

.native-practices>summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;padding:10px 8px;min-height:44px;font-size:.9375rem}
.native-practices>summary::-webkit-details-marker{display:none}
.native-practices>summary::after{content:'+';font-size:1.125rem}
.native-practices[open]>summary::after{content:'−'}
.native-practices>div{margin:0 8px 8px;padding-left:12px;border-left:2px solid var(--lime)}

.footer-socials{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:24px;font-size:.875rem;align-items:flex-start}
.footer-socials>a{font-weight:600;text-decoration:underline;text-underline-offset:4px}
.footer-socials>span{color:var(--muted)}
.footer-socials small{display:block;font-size:.6875rem;line-height:1.5}

.office-email{display:inline-block;margin-top:12px;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}

.responsibility-note{font-size:.75rem;line-height:1.6;color:var(--muted);margin-top:24px;max-width:90ch}

.industry-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}
.industry-case{padding:32px;border:1px solid var(--line);border-radius:12px;background:#fff;scroll-margin-top:130px;min-width:0}
.industry-case h3{font-size:1.55rem}
.industry-case dl{margin:24px 0}.industry-case dt{font-weight:600;font-size:.875rem;margin-top:20px}.industry-case dd{margin:6px 0 0;font-size:1rem;line-height:1.7;color:var(--muted)}
.industry-case .textlink{display:inline-block;white-space:normal}.sector-context{padding-bottom:0}
@media(max-width:720px){.industry-case-grid{grid-template-columns:1fr}.industry-case{padding:24px}}

.industry-use-cases-action{margin-top:32px;display:flex;justify-content:flex-start}.industry-use-cases-action .button{max-width:100%;white-space:normal}

.contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.form button:disabled{cursor:wait;opacity:.65}#form-status{overflow-wrap:anywhere}.consent{display:grid!important;grid-template-columns:20px 1fr;gap:12px;align-items:start}.consent input{width:18px!important;height:18px;min-height:0!important;margin-top:3px;accent-color:#527b25}.consent label{font-weight:400!important;line-height:1.55;margin:0!important}.consent a{text-decoration:underline;text-underline-offset:3px}.status.is-pending{color:var(--muted)}.status.is-success{color:#285b2c;font-weight:600}.status.is-error{color:#9d2727;font-weight:600}

/* Cookie consent */
.cookie-banner[hidden]{display:none}.cookie-banner{position:fixed;z-index:1000;left:20px;right:20px;bottom:20px;opacity:0;transform:translateY(16px);transition:opacity .18s ease,transform .18s ease}.cookie-banner.is-visible{opacity:1;transform:translateY(0)}.cookie-banner__inner{width:min(1040px,100%);margin:0 auto;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:#101512;color:#fff;border:1px solid rgba(158,255,31,.45);border-radius:16px;box-shadow:0 18px 60px rgba(0,0,0,.3)}.cookie-banner__copy{max-width:650px}.cookie-banner__copy strong{display:block;margin-bottom:6px;font-size:1.05rem}.cookie-banner__copy p{margin:0 0 5px;color:#d9e0da;line-height:1.5}.cookie-banner__copy a{color:#b8ff62;text-decoration:underline;text-underline-offset:3px}.cookie-banner__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.cookie-banner .button{white-space:nowrap}.cookie-banner .button-secondary{background:transparent;color:#fff;border-color:#7b887d}.cookie-banner .button-secondary:hover,.cookie-banner .button-secondary:focus-visible{border-color:#b8ff62;color:#b8ff62}.cookie-settings-link{appearance:none;border:0;background:transparent;color:inherit;font:inherit;padding:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.cookie-settings-link:hover,.cookie-settings-link:focus-visible{color:var(--accent)}
@media (max-width:760px){.cookie-banner{left:12px;right:12px;bottom:12px}.cookie-banner__inner{align-items:stretch;flex-direction:column;padding:18px;gap:16px}.cookie-banner__actions{justify-content:stretch}.cookie-banner__actions .button{flex:1 1 100%;text-align:center}}

.human-image{margin-block:32px 56px}.human-image img{display:block;width:100%;height:clamp(240px,34vw,460px);object-fit:cover;object-position:50% 28%;filter:grayscale(1);border-radius:12px;background:var(--paper)}.human-image figcaption{font-size:.6875rem;line-height:1.5;color:var(--muted);margin-top:8px}.human-image+section{scroll-margin-top:120px}
@media(max-width:720px){.human-image{margin-block:20px 32px}.human-image img{height:auto;aspect-ratio:3/2;border-radius:10px}}

/* Preserve the complete photograph: no face cropping or portrait letterboxing. */
.stock-photo{width:min(calc(100% - 96px),960px);padding:0;margin:32px auto 56px}
.stock-photo img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;filter:grayscale(1);border-radius:12px}
.stock-photo figcaption{font-size:.6875rem;line-height:1.5;color:var(--muted);margin-top:8px}
.stock-photo--portrait{width:min(calc(100% - 96px),360px)}
@media(max-width:720px){
 .stock-photo{width:calc(100% - 48px);margin:24px auto 40px}
 .stock-photo img{height:auto;max-height:none;border-radius:10px}
 .stock-photo--portrait{width:min(calc(100% - 48px),320px)}
}

/* Keep adjacent technology and experience sections on a shared spacing rhythm. */
.technology-environments{padding-bottom:32px}
.technology-environments+.experience{padding-top:32px}
.team-background{padding-top:0}
.team-background .lead{max-width:850px}
.team-logo-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:0;list-style:none;margin:36px 0 0;padding:20px 0;border-block:1px solid var(--line)}
.team-logo{display:flex;align-items:center;justify-content:center;gap:12px;flex:0 0 25%;min-width:0;min-height:104px;padding:20px 24px;color:#222}
.team-logo img{display:block;width:100%;max-width:180px;height:56px;object-fit:contain;filter:grayscale(1) brightness(0)}
.team-logo span{font-size:1.125rem;font-weight:600;white-space:nowrap}
.team-logo--microsoft img,.team-logo--google img,.team-logo--barclays img{width:32px;height:32px;flex:0 0 32px}
.team-logo--ey img{max-width:64px}
.team-logo--jpmorgan img{height:64px}
@media(max-width:900px){.team-logo{flex-basis:33.333%;padding:18px 16px}}
@media(max-width:600px){.technology-environments{padding-bottom:24px}.technology-environments+.experience{padding-top:24px}.team-logo{flex-basis:50%;min-height:92px;padding:16px 12px}.team-logo img{max-width:148px;height:48px}.team-logo span{font-size:.9375rem}.team-logo--ey img{max-width:56px}.team-logo--jpmorgan{flex-basis:100%}.team-logo--microsoft img,.team-logo--google img,.team-logo--barclays img{width:26px;height:26px;flex-basis:26px}.team-logo-grid{margin-top:24px}}

.team-logo--deloitte img{max-width:150px}.team-logo--jpmorgan img{max-width:190px}
