@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,400;0,450;0,500;0,550;0,600;1,300;1,600&family=Instrument+Serif:ital@0;1&display=swap');
:root{--black:#111210;--paper:#f8f8f4;--gray:#a3a59d;--line:#363831;--accent:#d6e2ba}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--black);color:var(--paper);font:16px/1.55 'DM Sans',Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button:hover,a:hover{opacity:.76}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:450;line-height:1.08;letter-spacing:-.045em}h2{font-size:clamp(36px,4.3vw,66px)}h3{font-size:24px;letter-spacing:-.025em}em{font-family:'Instrument Serif',Georgia,serif;font-weight:400}p{max-width:65ch}.eyebrow{font-size:12px;letter-spacing:.13em;line-height:1.5;font-weight:550}.muted{color:#8d9088}.section{padding:112px max(5.5vw,24px)}.textlink{display:inline-flex;gap:50px;border-bottom:1px solid currentColor;padding-bottom:7px;font-size:14px}.outline{border:1px solid currentColor;padding:10px 17px;font-size:14px}.skip{position:fixed;left:12px;top:-80px;background:white;color:black;z-index:100;padding:10px}.skip:focus{top:10px}header{position:absolute;z-index:5;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:28px 5.5vw;gap:25px}.brand{font-size:26px;letter-spacing:.13em;font-weight:450}nav{display:flex;gap:32px;font-size:14px}.menu{display:none}.hero{min-height:800px;height:94svh;position:relative;display:flex;align-items:flex-end;padding:100px 5.5vw 85px;background:#34392b;overflow:hidden}.hero-image{position:absolute;inset:0;background:linear-gradient(180deg,#0004,transparent 25%,#0008 90%),var(--hero-image);background-size:cover;background-position:center}.hero-copy{position:relative;width:100%;z-index:1}.hero h1{font-size:clamp(58px,7.3vw,112px);line-height:.98;font-weight:400;letter-spacing:-.055em;margin:24px 0 34px}.hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;max-width:1050px}.hero-bottom p{font-size:17px}.image-note{position:absolute;right:25px;top:50%;writing-mode:vertical-rl;font-size:11px;letter-spacing:.09em}.intro{display:grid;grid-template-columns:1fr 4fr;gap:50px}.intro h2{font-size:clamp(34px,4.2vw,62px);line-height:1.13}.intro-bottom{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:60px;color:#b6b8af}.thesis{padding-top:55px;padding-bottom:120px;text-align:center}.thesis h2{font-size:clamp(54px,7vw,110px);margin:25px auto}.thesis>p:not(.eyebrow){max-width:650px;margin:28px auto;color:#b6b8af}.thesis .textlink{margin-top:15px}.services{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.35fr;gap:75px}.services h2{font-size:clamp(36px,3.7vw,56px);margin:35px 0}.service-list article{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-bottom:50px}.service-list article:last-child{margin:0}.service-list h3{font-size:20px;line-height:1.4;letter-spacing:-.025em}.service-list button{padding:0;text-align:left;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#888b7e}.service-list ul{list-style:none;padding:0;margin:0;color:#9ea297;font-size:15px;line-height:1.8}.method{text-align:center;background:#0b0c0a}.method h2{margin:24px 0 64px}.phases{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;text-align:left}.phases article{border:1px solid #33362e;border-radius:5px;padding:26px 21px 28px}.phases h3{font-size:17.328px;letter-spacing:-.02em;display:flex;align-items:center;gap:10px}.phases b{font-size:12px;color:#111;background:#eee;padding:3px 5px;border-radius:3px}.phases p{font-size:15px;color:#aeb2a6;margin-top:23px;line-height:1.65}.method-note{margin:38px auto 90px;font-size:14px;color:#94998b}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:28px;text-align:left}.comparison article{border:1px solid #30332b;border-radius:6px;padding:40px}.comparison article+article{background:#20241d;border-color:#707a61}.comparison h3{font-size:32.832px;margin:15px 0 35px}.comparison .eyebrow{font-size:11px;color:#b8bfae}.comparison ul{list-style:none;padding:0;margin:0}.comparison li{padding:19px 0 19px 29px;position:relative;font-size:17px}.comparison li:before{content:'—';position:absolute;left:0;color:#858b7d}.industry{display:grid;grid-template-columns:1fr 2.3fr;gap:55px;background:#e5e8df;color:#191b17}.industry h2{margin-bottom:30px}.industry p:not(.eyebrow){max-width:640px}.pending{border-top:1px solid #b9beb0;margin-top:40px;padding-top:20px;color:#555b4d;font-size:14px}.pending span{display:block;font-size:11px;letter-spacing:.1em;margin-bottom:10px}.expertise{padding:75px 0;overflow:hidden}.expertise>.eyebrow{text-align:center;margin-bottom:35px;color:#a4aa9a}.expertise>div{white-space:nowrap;font-size:clamp(26px,3.5vw,52px);letter-spacing:-.045em;margin:20px -60px;word-spacing:7px}.expertise>div+div{margin-left:7vw}.expertise span{color:#818a74;margin:0 45px}.sectors{background:var(--paper);color:#1a1c16}.sectors>h2{margin:24px 0}.sector-intro{color:#62675a;max-width:630px;margin-bottom:60px}.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.sector-grid article{padding:32px;min-height:245px;background:#e8ebe2;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end}.sector-grid article:nth-child(2n){background:#dce2d4}.sector-grid span{margin-bottom:auto;font-size:12px;color:#5e6756}.sector-grid h3{font-size:27px;margin:25px 0 15px}.sector-grid p{font-size:14px;color:#5c6454}.triggers{display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.triggers h2{margin-top:28px;font-size:clamp(36px,3.8vw,57px)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;padding:24px 0;display:flex;justify-content:space-between;gap:25px;font-size:18px;line-height:1.4}summary::-webkit-details-marker{display:none}summary span{font-size:24px;transition:transform .2s}details[open] summary span{transform:rotate(45deg)}details p{padding:0 30px 27px 0;color:#a5ac9b;font-size:16px}.reviews{background:#fff;color:#20231b;text-align:center}.reviews h2{margin-top:25px}.review-status{margin:24px auto 45px;color:#6c7165;font-size:14px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:left}.review-grid article{border:1px solid #e3e5de;border-radius:5px;min-height:240px;padding:28px;display:flex;flex-direction:column}.review-grid span{font-size:11px;letter-spacing:.09em;color:#69715f}.review-grid p{font-size:20px;line-height:1.35;margin-top:24px}.review-grid small{font-size:12px;color:#808675;margin-top:auto;padding-top:25px}.perspectives{background:#f2f3ed;color:#191c15}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-head h2{font-size:42px;margin-top:20px}.carousel-controls{display:flex;gap:10px}.carousel-controls button{width:42px;height:42px;border:1px solid #bdc3b4}.articles{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}.article{flex:0 0 calc((100% - 48px)/3);text-align:left;padding:0 0 12px;scroll-snap-align:start}.article-art{height:285px;padding:26px;display:flex;align-items:flex-end;color:#eef1e6}.article-art span{font-size:44px;line-height:1;letter-spacing:-.05em}.art-one{background:#424c38}.art-two{background:#827158}.art-three{background:#b8c2a8;color:#252f1e}.article small{display:block;font-size:10px;letter-spacing:.07em;margin:18px 0 10px}.article h3{font-size:20.976px;line-height:1.15}.newsletter{margin-top:75px;border-top:1px solid #cbd0c2;padding-top:35px;display:flex;justify-content:space-between;align-items:center;gap:30px}.newsletter h3{font-size:27px}.newsletter p{font-size:14px;color:#68705d}.pill{font-size:11px;letter-spacing:.07em;border:1px solid #a3ac97;padding:8px 12px;white-space:nowrap}.faq{display:grid;grid-template-columns:1fr 1.6fr;gap:90px;background:white;color:#191c16}.faq h2{margin:25px 0;font-size:42px}.faq>div>p:not(.eyebrow){color:#727769}.faq .outline{margin-top:30px}.faq details{border-color:#e1e4da}.faq summary{font-size:16px}.faq details p{color:#636c56}.closing{padding:100px 5.5vw;background:#39422f;color:white;position:relative}.closing h2{font-size:clamp(50px,6vw,88px);margin:25px 0 40px}.closing .outline{background:#1113}footer{padding:65px 5.5vw 25px;overflow:hidden}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:30px}.footer-top p{font-size:23px;line-height:1.3}.footer-top>div{display:flex;flex-direction:column;align-items:flex-start;font-size:14px;gap:7px}.footer-top button{padding:0}.footer-top>span{font-size:10px;letter-spacing:.07em;color:#808775;text-align:right}.footer-brand{font-size:clamp(70px,17vw,260px);line-height:1;letter-spacing:-.065em;margin:65px 0 40px;font-weight:450}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;font-size:12px;color:#a4ab99;display:flex;justify-content:space-between}.footer-bottom button{padding:0}dialog{background:var(--paper);color:#20251b;max-width:720px;width:calc(100% - 35px);border:0;padding:65px;max-height:85vh;overflow:auto}dialog::backdrop{background:#000a;backdrop-filter:blur(5px)}.close{position:absolute;right:20px;top:12px;font-size:32px}dialog h2{font-size:44px;margin:20px 0}dialog p{margin:18px 0;color:#5f6756}dialog h3{font-size:22px;margin-top:30px}dialog ul{padding-left:20px;color:#5f6756}dialog .eyebrow{color:#59664a}dialog textarea{width:100%;min-height:130px;border:1px solid #aab29e;padding:14px;background:white;font:inherit;color:#252b1e}dialog .copy{background:#222c1c;color:white;padding:12px 20px;margin-top:16px}dialog small{display:block;margin:15px 0;color:#6a735f}.dialog-status{min-height:22px}
@media(min-width:1600px){.section{padding-left:calc((100vw - 1420px)/2);padding-right:calc((100vw - 1420px)/2)}}
@media(max-width:1000px){.section{padding:80px 5vw}.hero{min-height:700px}.intro{grid-template-columns:1fr;gap:25px}.services{gap:40px;grid-template-columns:1fr 1.5fr}.service-list article{grid-template-columns:1fr;gap:16px}.phases{grid-template-columns:repeat(2,1fr)}.industry{grid-template-columns:1fr 2fr}.sector-grid{grid-template-columns:repeat(2,1fr)}.triggers,.faq{gap:40px}.comparison article{padding:26px}.newsletter{flex-wrap:wrap}.article-art span{font-size:33px}.article-art{height:230px}.footer-top{grid-template-columns:1.5fr 1fr 1fr}.footer-top>span{display:none}}
@media(max-width:650px){header{padding:23px 6vw}.brand{font-size:23px}header>.contact{display:none}.menu{display:block;font-size:14px}nav{display:none;position:absolute;top:75px;left:0;width:100%;background:#111;padding:30px 6vw;flex-direction:column;font-size:20px}nav.open{display:flex}.hero{height:90svh;min-height:670px;padding:110px 6vw 55px}.hero h1{font-size:58px}.hero .eyebrow{font-size:10px}.hero-bottom{display:block}.hero-bottom p{font-size:15px}.hero .textlink{margin-top:30px}.image-note{display:none}.section{padding:68px 6vw}.intro-bottom{grid-template-columns:1fr;gap:25px;margin-top:30px}.thesis h2{font-size:70px}.services{grid-template-columns:1fr;gap:45px}.services h2 br{display:none}.service-list article{grid-template-columns:1fr 1fr;gap:20px}.service-list h3{font-size:18px}.service-list ul{font-size:14px}.phases{grid-template-columns:1fr}.phases article{padding:24px}.phases p{margin-top:17px}.method h2{margin-bottom:35px}.comparison{grid-template-columns:1fr}.method-note{margin-bottom:50px}.comparison h3{font-size:29.184px}.comparison li{font-size:16px;padding-top:14px;padding-bottom:14px}.industry{grid-template-columns:1fr;gap:24px}.expertise>div{font-size:29px}.sector-grid{grid-template-columns:1fr 1fr;gap:10px}.sector-grid article{padding:20px;min-height:230px}.sector-grid h3{font-size:22px}.sector-grid p{font-size:13px}.triggers,.faq{grid-template-columns:1fr;gap:35px}.triggers h2 br{display:none}.review-grid{display:flex;overflow-x:auto}.review-grid article{min-width:82%;min-height:235px}.article{flex-basis:85%}.article-art{height:300px}.article-art span{font-size:48px}.section-head h2{font-size:36px}.carousel-controls{align-self:flex-end}.newsletter{align-items:flex-start}.footer-top{grid-template-columns:1fr 1fr}.footer-top>p{grid-column:1/-1;margin-bottom:15px}.footer-brand{font-size:17vw;margin-top:45px;margin-bottom:30px}.closing{padding:70px 6vw}.closing h2{font-size:56px}dialog{padding:55px 25px 30px}dialog h2{font-size:35px}}
:root{--hero-image:url('hero.webp')}.closing{background:linear-gradient(90deg,#111c,#1112),url('garden.webp') center 55%/cover}.closing h2{font-size:clamp(42px,4.7vw,68px)}.article-art{background-size:cover;background-position:center}.art-one{background-image:linear-gradient(#0001,#0007),url('garden.webp')}.art-two{background-image:linear-gradient(#0001,#0007),url('culture.webp')}.art-three{background-image:linear-gradient(#0001,#0007),url('hero.webp');color:white}.article-art span{display:none}.sector-grid article:first-child{background:linear-gradient(#0002,#000a),url('garden.webp') center/cover;color:white}.sector-grid article:first-child p,.sector-grid article:first-child span,.sector-grid article:nth-child(5) p,.sector-grid article:nth-child(5) span{color:#ebeee3}.sector-grid article:nth-child(5){background:linear-gradient(#0002,#000b),url('culture.webp') center/cover;color:white}
/* Reference-led conversion revision */
:root{--paper:#fff;--black:#111;--accent:#cad6b7}body{background:#111;color:#fff}header{position:fixed;top:16px;left:3%;width:94%;padding:14px 25px;border:1px solid #ffffff18;border-radius:9px;background:#151515b8;backdrop-filter:blur(18px)}header .brand{font-size:23px}nav{gap:26px}.outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:12px 21px;border-color:#777;font-size:14px;line-height:1.25;min-height:44px}.primary{background:#dce7c9;border-color:#dce7c9;color:#16200d}.hero{padding-left:4%;padding-right:4%;padding-bottom:65px;min-height:820px;height:96svh}.hero-image{background-position:center 60%;background-image:linear-gradient(180deg,#0003 0%,#0000 30%,#111b 75%,#111 100%),var(--hero-image)}.hero h1{font-size:clamp(50px,6.4vw,90px);line-height:1.04;max-width:1000px;letter-spacing:-.055em;margin:20px 0 24px}.hero-bottom{display:block;max-width:650px}.hero-bottom p{font-size:18px;line-height:1.5}.hero-bottom small{display:block;font-size:13px;color:#d4d8ce;margin-top:18px}.actions{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}.section{padding:95px 4%}.intro{grid-template-columns:1fr 2.8fr}.intro .outline{margin-top:25px}.intro h2{font-size:clamp(30px,3.1vw,46px);line-height:1.22}.intro-bottom{margin-top:35px;gap:35px}.thesis{padding-top:0;text-align:left}.outcome-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:30px;border-top:1px solid #333;padding-top:35px}.outcome-grid h3{font-size:25px}.outcome-grid p{font-size:16px;color:#aaa;margin-top:16px}.services{display:block;background:white;color:#111;border:0}.services>h2{max-width:900px;font-size:clamp(33.6px,3.456vw,51.84px);margin:25px 0 50px}.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{display:flex;flex-direction:column;justify-content:space-between;text-align:left;padding:32px;border-radius:8px;min-height:520px;color:white;background-size:cover;background-position:center;overflow:hidden;transition:transform .25s}.service-card:hover,.sector-tile:hover{opacity:1}.service-strategy{background-image:linear-gradient(#07101a88,#07101af0),url('culture.webp')}.service-experience{background-image:linear-gradient(#28170b33,#28170be8),url('garden.webp')}.service-advisory{background-image:linear-gradient(#11190d66,#11190df0),url('hero.webp')}.service-card h3{font-size:34.656px;line-height:1.07;letter-spacing:-.045em}.tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:15px}.tags span{background:#ffffff24;border-radius:20px;padding:4px 9px;font-size:12px;line-height:1.3}.card-bottom>p{font-size:23.75px;letter-spacing:-.03em;line-height:1.2}.card-link{border-top:1px solid #ffffff30;margin-top:22px;padding-top:17px;font-size:14px;text-align:right;display:flex;justify-content:flex-end;gap:17px}.delivery-note{margin:27px 0 0;color:#6c6c6c;font-size:15px}.phases strong{display:block;font-size:13px;font-weight:500;color:#d7ddcf;margin-top:20px}.method .comparison{margin:65px 0 35px}.method>.outline{margin-top:15px}.industry{background:#181818;color:white;gap:40px;padding-top:60px;padding-bottom:60px}.industry h2{font-size:35px}.industry .pending{border-color:#444;color:#aaa}.expertise{padding:45px 0}.sectors{background:#111;color:white;text-align:center}.sectors h2{font-size:clamp(32.64px,3.552vw,51.84px);margin:20px auto 55px}.sector-grid{gap:24px;text-align:left}.sector-tile{display:flex;flex-direction:column;justify-content:space-between;min-height:404.8px;padding:28px;border-radius:8px;color:white;text-align:left;background:linear-gradient(#0002,#000c),var(--sector-image) center/cover;transition:transform .25s}.sector-tile h3{font-size:29.184px;line-height:1.08;letter-spacing:-.04em}.sector-tile .card-bottom>p{font-size:20.9px}.sector-tile .tags span{font-size:11px}.triggers{background:#191919}.trigger-intro{margin:24px 0;color:#aaa}.reviews{padding-bottom:85px}.review-grid{display:flex;overflow-x:auto;text-align:left;scroll-snap-type:x mandatory;padding-bottom:15px}.review-grid article{flex:0 0 32%;scroll-snap-align:start;min-height:250px}.review-grid article>span{font-size:12px}.perspectives{background:white}.faq{background:#fff}.faq details{border:1px solid #eee;border-radius:7px;margin-bottom:8px;padding:0 20px}.faq summary{font-size:16px;padding:19px 0}.faq details p{font-size:15px;padding-bottom:22px}.faq h2{font-size:38px}.closing{background:linear-gradient(90deg,#111e,#1116),url('garden.webp') center 58%/cover;padding:95px 4%}.closing h2{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(40px,4.5vw,64px);max-width:800px;line-height:1.09;margin-bottom:25px}.closing>p:not(.eyebrow){max-width:620px;font-size:17px}.entry-routes{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.enquiry-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:25px}.enquiry-form label{font-size:14px;display:flex;flex-direction:column;gap:7px}.enquiry-form input,.enquiry-form select{border:1px solid #bec4b6;border-radius:5px;background:white;padding:11px;font:inherit;min-width:0;color:#222}.enquiry-form .wide{grid-column:1/-1}.enquiry-form textarea{min-height:110px}.enquiry-form .copy{margin:0;justify-self:start}.enquiry-form small{margin:0}.field-note{font-size:12px;color:#747d69}.sector-detail-tags{font-size:14px;color:#6f7963}.modal-outcome{border-left:2px solid #65764f;padding-left:20px;margin:25px 0}
@media(max-width:1000px){header{padding:12px 18px}nav{gap:15px}header .contact{font-size:12px;padding:12px}.hero h1{font-size:66px}.service-card{padding:23px;min-height:475px}.service-card h3{font-size:28.272px}.card-bottom>p{font-size:19.95px}.sector-tile{min-height:368px}.review-grid article{flex-basis:45%}}
@media(max-width:650px){header{top:10px;left:4%;width:92%;padding:13px 18px}nav{top:62px;border-radius:8px}.hero{padding:125px 6% 50px;min-height:770px;height:94svh}.hero h1{font-size:49px}.hero h1 br{display:none}.hero-bottom p{font-size:16px}.hero .eyebrow{max-width:250px}.section{padding:65px 6%}.intro{display:block}.intro>div:first-child{margin-bottom:30px}.intro h2{font-size:32px}.outcome-grid{grid-template-columns:1fr;gap:28px}.services>h2{font-size:33.6px}.service-cards{grid-template-columns:1fr;gap:20px}.service-card{min-height:455px;padding:28px}.service-card h3{font-size:33.744px}.card-bottom>p{font-size:24.7px}.sector-grid{grid-template-columns:1fr}.sector-tile{min-height:395.6px;padding:27px}.sector-tile h3{font-size:31.008px}.sector-tile .card-bottom>p{font-size:23.75px}.industry{display:block}.industry>.eyebrow{margin-bottom:25px}.industry h2{font-size:32px}.review-grid article{flex-basis:85%;min-width:85%}.enquiry-form{grid-template-columns:1fr}.enquiry-form label{grid-column:1/-1}.closing{padding:65px 6%}.closing h2{font-size:43px}.entry-routes{flex-direction:column;align-items:flex-start}.faq h2{font-size:35px}.newsletter{gap:20px}.phases{gap:14px}header>.contact{display:none}}
/* Retention and ERC revision */
.brand img{display:block;width:164px;height:auto;max-height:40px;object-fit:contain}.hero h1{max-width:1200px;font-size:clamp(46px,6.1vw,88px)}
.problem{background:#eee8dc;color:#25231f;padding-top:105px;padding-bottom:100px}.problem-heading{display:grid;grid-template-columns:1.35fr 1fr;align-items:end;gap:8%;margin:45px 0 65px}.problem h2{font-size:clamp(44px,5vw,74px);line-height:1.06}.problem-heading>p{font-size:clamp(20px,2vw,28px);line-height:1.5;letter-spacing:-.025em}.problem-points{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid #c7c1b6;padding-top:30px}.problem-points span,.outcome-number{font-size:12px;letter-spacing:.12em;color:#867c6b}.problem-points h3{font-size:24px;line-height:1.2;margin:20px 0 16px}.problem-points p{color:#665f54;font-size:16px}
.erc{border-top:1px solid #393939;margin-top:45px;padding-top:30px}.erc h3{font-size:30px;margin:17px 0}.erc h3 span{display:inline-block;font-size:13px;letter-spacing:.08em;border:1px solid #666;padding:7px 10px;vertical-align:middle;margin-left:10px;border-radius:4px}.erc>p:last-child{color:#b7b7b7;max-width:70ch}
.thesis{text-align:left;padding-top:25px;padding-bottom:95px}.thesis h2{font-size:clamp(36px,4.1vw,60px);margin:25px 0 50px}.outcome-grid{border-top:0;gap:0;padding-top:0;margin:0}.outcome-grid article{padding:28px 35px 0 0;border-top:1px solid #444}.outcome-grid article+article{padding-left:35px;border-left:1px solid #333}.outcome-grid h3{font-size:27px;line-height:1.2;margin-top:32px}.outcome-grid p{line-height:1.65;color:#b4b4b4}.outcome-number{color:#a7ae9d}
.method{background:#080909;padding-top:100px}.method>h2{font-size:clamp(34.656px,3.8304vw,56.544px);line-height:1.02;margin:34px 0 90px}.phases{gap:18px}.phases article{padding:27px 23px;border-color:#333;border-radius:6px}.phases h3{font-size:17.328px}.phases p{font-size:16px;line-height:1.55;color:#a8a8a8;margin-top:22px}.method-note{margin:65px auto 80px;color:#999;font-size:14px}.method .comparison{margin:0 auto 40px;max-width:1180px;gap:35px}.comparison article{background:#121212;padding:27px;border:1px solid #2c2c2c;border-radius:6px}.comparison article+article{background:#222;border-color:#a1a4ae;box-shadow:0 0 0 2px #55596a44,inset 0 0 0 2px #ffffff05}.comparison h3{font-size:28.272px;margin:0 0 22px;letter-spacing:-.035em}.comparison li{font-size:16px;line-height:1.5;min-height:84px;display:flex;align-items:center;padding:13px 0 13px 31px}.comparison li:before{content:'↪';color:white;font-size:23px}
.expertise{padding:65px 0}.expertise .marquee{margin:18px 0;white-space:nowrap;font-size:clamp(30px,4.4vw,66px);overflow:hidden;word-spacing:normal}.marquee-track{display:flex;width:max-content;animation:marquee-flow 38s linear infinite}.marquee-group{display:flex;flex-shrink:0;align-items:center}.expertise .marquee span{margin:0;padding:0 42px;color:#eee}.expertise .marquee span:nth-child(2n){color:#838b78}.reverse .marquee-track{animation-direction:reverse;animation-duration:43s}.marquee:hover .marquee-track{animation-play-state:paused}@keyframes marquee-flow{to{transform:translateX(-50%)}}
.reviews{padding-left:0;padding-right:0;overflow:hidden}.reviews>.eyebrow{margin:auto;color:#7b7b7b}.reviews h2{font-size:clamp(32px,3.1vw,46px);line-height:1.12;margin:24px 20px 0}.reviews .review-status{margin:20px auto 45px}.review-wall{overflow:hidden}.review-row{display:flex;gap:12px;width:max-content;margin:12px 0;transform:translateX(-100px)}.review-row+ .review-row{transform:translateX(-245px)}.review-card{width:310px;min-height:300px;border:1px solid #e7e7e7;border-radius:5px;padding:25px 20px;text-align:left;display:flex;flex-direction:column}.review-logo{font-size:12px;letter-spacing:.13em;font-weight:600;min-height:25px}.review-placeholder{font-size:15px;line-height:1.55;margin-top:25px;color:#555}.review-person{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:40px}.avatar-placeholder{height:30px;width:30px;border-radius:50%;background:#e6e6e6}.review-person strong{display:block;font-size:12px;font-weight:500}.review-person small{display:block;font-size:12px;color:#888}.faq{grid-template-columns:1fr 1.7fr;gap:70px;align-items:start}.faq h2{font-size:36px;line-height:1.13}.faq details{border-color:#eee;border-radius:6px;padding:0 24px;margin-bottom:8px}.faq summary{min-height:67px;align-items:center;font-size:16px}.faq details p{color:#666;line-height:1.65}.footer-bottom{margin-top:55px}.article:focus-visible{outline-color:#333;outline-offset:-3px}
.brand img{filter:none;mix-blend-mode:normal}
.method>.eyebrow,.sectors>.eyebrow{display:block;max-width:none;width:100%;text-align:center;margin:0 auto 24px}
.erc{padding:32px 35px;background:#d8e1c9;color:#1d2518;border:1px solid #e5edd9;border-radius:8px;margin-top:42px}.erc .eyebrow{color:#4f5b42}.erc h3{font-size:clamp(27px,3vw,39px);line-height:1.15}.erc h3 span{border-color:#71815e;color:#26361b}.erc>p:last-child{color:#3d4934;font-size:17px}.erc h3 span{font-size:16px}
.expertise .marquee{font-size:clamp(24px,3vw,42px)}.expertise .marquee span{color:#a6a6a6}.expertise .marquee span:nth-child(2n){color:#797d75}
.sector-tile{background-image:linear-gradient(180deg,rgba(0,0,0,.57) 0%,rgba(0,0,0,.16) 32%,rgba(0,0,0,.78) 64%,rgba(0,0,0,.94) 100%),var(--sector-image);text-shadow:0 1px 8px #0008}.sector-tile .card-bottom>p{font-size:21.85px;line-height:1.3;font-weight:500;color:#fff}.sector-tile .tags span{background:#171717b8;color:#fff;font-size:12px;line-height:1.5;margin-bottom:0}.sector-tile h3{color:#fff;font-weight:550}.sector-tile .card-link span{color:#fff;font-size:18px;margin:0}.sector-tile .card-link{color:#fff;border-color:#ffffff65}
.review-card{width:330px;min-height:315px}.review-logo{font-weight:600;color:#202020}.review-quote{font-size:14px;line-height:1.55;margin-top:24px;color:#222}.review-monogram{font:20px Georgia,serif;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#eceae4;color:#7a7368}.review-person strong{font-weight:500}.review-row{transform:translateX(-95px)}.review-row+.review-row{transform:translateX(-245px)}
@media(max-width:650px){.erc{padding:26px}.sector-tile .card-bottom>p{font-size:22.8px}.review-card{width:290px}.expertise .marquee{font-size:26px}}
.sector-tile[data-sector="luxury"]{background-position:50% 70%}
/* Structural problem: editorial sequence on the site canvas */
.problem{background:#111;color:#f5f5f1;padding-top:105px;padding-bottom:80px}.problem-heading{grid-template-columns:1.4fr 1fr;align-items:center;gap:9%;margin:0 0 70px}.problem-heading h2{font-size:clamp(40px,4.7vw,70px);line-height:1.08;margin-top:28px;letter-spacing:-.045em}.problem .eyebrow{color:#a7ad9e}.problem-heading>.problem-quote{font-size:clamp(21px,2.1vw,29px);line-height:1.6;color:#adada8;border-left:1px solid #42453d;padding-left:30px}.problem-quote em{color:#e5e8dc;font-size:1.1em}.problem-sequence{border-top:1px solid #3c3e37}.problem-sequence>article{display:grid;grid-template-columns:.65fr 1.3fr 1.6fr;gap:40px;padding:46px 0;border-bottom:1px solid #32342e}.problem-label>span{font-size:14px;color:#72776a;display:block;margin-bottom:13px;font-variant-numeric:tabular-nums}.problem-label .eyebrow{font-size:12px;letter-spacing:.12em}.problem-sequence h3{font-size:clamp(26px,2.8vw,40px);line-height:1.15;color:#f2f2ed;letter-spacing:-.035em}.problem-detail>p{font-size:16px;line-height:1.75;color:#b3b5ad}.problem-detail>p+p{margin-top:17px;color:#92968b}.problem-signals{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.problem-signals span{font-size:12px;color:#b5bca9;border:1px solid #3b4034;padding:6px 10px;border-radius:3px}.impact-measures{margin-top:26px;display:grid;gap:14px}.impact-measures>div{border-left:2px solid #637053;padding-left:14px}.impact-measures strong,.impact-measures span{display:block;font-size:13px;line-height:1.6}.impact-measures strong{font-weight:500;color:#d4d9cb}.impact-measures span{color:#959d8c}.problem-close{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-top:35px}.problem-close>p{font-size:22px;line-height:1.4;letter-spacing:-.025em;color:#c5c9be}.problem-close .textlink{font-size:14px;white-space:nowrap}
.erc{position:relative;isolation:isolate;background:transparent;color:#f0f1ea;border:1px solid #3d4435;border-radius:8px;padding:34px 36px;overflow:hidden}.erc .eyebrow{color:#a9b29c}.erc h3{color:#f2f3ed}.erc h3 span{border-color:#556147;color:#cbd9b8}.erc>p:last-child{color:#afb5a6}.erc-border{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.erc-border rect{fill:none;stroke:#cedfb4;stroke-width:1.5px;vector-effect:non-scaling-stroke;stroke-dasharray:20 80;stroke-linecap:round;animation:erc-orbit 8s linear infinite}@keyframes erc-orbit{to{stroke-dashoffset:-100}}
@media(max-width:1000px){.problem-sequence>article{grid-template-columns:.55fr 1fr 1.5fr;gap:25px}.problem-heading{gap:5%}}
@media(max-width:650px){.problem-heading{grid-template-columns:1fr;margin-bottom:40px;gap:30px}.problem-heading h2{font-size:42px}.problem-heading>.problem-quote{font-size:22px;padding-left:22px}.problem-sequence>article{grid-template-columns:1fr;padding:32px 0;gap:20px}.problem-label{display:flex;align-items:center;gap:14px}.problem-label>span{margin:0}.problem-sequence h3{font-size:31px}.problem-close{align-items:flex-start;flex-direction:column;gap:23px}.erc{padding:27px}.problem{padding-top:65px;padding-bottom:65px}}
@media(prefers-reduced-motion:reduce){.erc-border rect{animation:none;stroke-dasharray:none}}
/* Editorial refinement */
:root{--accent:#aa8a6e;--button:#594237;--button-hover:#705447}.primary,.closing .outline.primary{background:var(--button);border-color:#806451;color:#fff7ef}.primary:hover,.closing .outline.primary:hover{background:var(--button-hover);border-color:#a4866d;opacity:1}dialog .copy{background:var(--button);color:#fff7ef}.outline:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline-color:#b89a7e}
.erc-statement{background:#111;padding:65px 6% 80px}.erc-statement>div{max-width:780px;margin:0 auto}.erc-statement h2{font-size:clamp(27px,3.1vw,43px);line-height:1.22;letter-spacing:-.03em;font-weight:550}.erc-statement h2 span{color:#b49a80}.erc-effect{font-size:13px;display:inline-block;margin-top:27px;padding:0;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#8d7762;color:#b7b1a9}.intro-bottom{margin-bottom:0}
.method .comparison{max-width:1100px;gap:36px;margin:0 auto 30px}.comparison article{padding:27px 25px 25px;border:1px solid #2c2c2c;background:#121212;border-radius:6px}.comparison article+article{background:#222;border-color:#9f9d99;box-shadow:0 0 0 2px #a28a7026,inset 0 0 0 2px #ffffff05}.comparison h3{font-size:clamp(22.8px,2.28vw,31.008px);font-weight:500;line-height:1.15;margin:0 0 16px}.comparison li{font-size:16px;line-height:1.5;padding:15px 0 15px 32px;min-height:86px;display:flex;align-items:center;color:#f4f4f4}.comparison li:before{content:'↪';font-size:24px;line-height:1;color:#f0eee9;left:0}
.impact{background:#111;padding-top:65px;padding-bottom:75px;border-bottom:1px solid #303030}.impact-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:15px 7%;align-items:end}.impact-heading>.eyebrow{grid-column:1/-1;color:#a8917c}.impact-heading h2{font-size:clamp(34px,3.8vw,54px);line-height:1.12}.impact-heading>p:last-child{font-size:16px;line-height:1.7;color:#a9a8a3}.impact-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:45px}.impact-grid article{border-top:1px solid #4d443c;padding:23px 25px 0 0}.impact-grid article+article{padding-left:25px;border-left:1px solid #33302d}.metric-direction{display:block;color:#ae937a;font-size:34px;line-height:1;margin-bottom:23px}.impact-grid h3{font-size:23px;line-height:1.18;margin-bottom:16px}.impact-grid p{font-size:15px;color:#b3b0a9;line-height:1.6;min-height:74px}.impact-grid small{display:block;margin-top:22px;color:#89877f;font-size:12px;line-height:1.5}.impact-note{font-size:12px;line-height:1.5;color:#8b8982;margin:35px 0 0;max-width:none}
.reviews{text-align:center;padding:80px 0 70px;overflow:hidden}.reviews h2{margin:0 auto;font-size:clamp(30px,3.2vw,46px);max-width:750px;padding:0 20px;line-height:1.12}.review-rating{display:flex;align-items:center;justify-content:center;gap:8px;margin:22px auto 48px}.review-rating>span{color:#F4C430;letter-spacing:2px;font-size:17px}.review-rating small{font-size:13px;color:#72706b}.review-wall{display:flex;flex-direction:column;align-items:center;gap:12px;overflow:visible}.review-row,.review-row+.review-row{display:flex;justify-content:center;gap:12px;width:max-content;max-width:none;transform:none;margin:0}.review-row+.review-row{padding:0 80px}.review-card{flex:0 0 310px;width:310px;min-height:298px;padding:24px 20px;border:1px solid #e6e6e6;border-radius:5px;display:flex;flex-direction:column;text-align:left;background:#fff}.review-logo{color:#171717;font-size:15px;letter-spacing:.12em;font-weight:550;line-height:1.3;min-height:31px}.review-logo-1{font-family:Georgia,serif;font-size:20px;letter-spacing:.04em}.review-logo-2{font-size:17px;letter-spacing:.025em}.review-logo-3{font-size:14px;letter-spacing:.2em}.review-quote{font-size:14px;line-height:1.55;margin-top:16px;color:#242424}.review-person{margin-top:auto;padding-top:30px;gap:10px}.review-person img{width:32px;height:32px;border-radius:50%;object-fit:cover;object-position:center 35%;flex-shrink:0}.review-person strong{font-size:12px;color:#222;font-weight:500}.review-person small{font-size:11px;color:#888;line-height:1.4}.triggers .eyebrow{color:#a68c74}.triggers h2{font-size:clamp(34px,3.7vw,53px)}
.industry-leaders{padding:58px 0 48px;border-bottom:1px solid #303030}.industry-leaders>.eyebrow{font-size:13px;letter-spacing:.11em;color:#aaa;text-align:center;max-width:none;margin:0 20px 38px}.industry-leaders .marquee{margin:13px 0}.industry-leaders .marquee-group{gap:0}.industry-leaders .marquee-group .brand-logo{display:flex;width:210px;height:90px;align-items:center;justify-content:center;padding:12px 35px;flex-shrink:0}.industry-leaders img{width:100%;height:60px;object-fit:contain;filter:grayscale(1) brightness(0) invert(1);opacity:.55}.industry-leaders a:hover img{opacity:.9}.industry-leaders .leader-note{text-align:center;font-size:12px;color:#74746f;margin:30px auto 0;max-width:680px;padding:0 20px}.industry-leaders .marquee-track{animation-duration:45s}.industry-leaders .reverse .marquee-track{animation-duration:49s}
@media(max-width:1000px){.impact-grid{grid-template-columns:repeat(2,1fr);gap:32px 0}.impact-grid article:nth-child(3){padding-left:0;border-left:0}.impact-heading{gap:20px 35px}.comparison li{font-size:15px;min-height:105px}.review-card{flex-basis:285px;width:285px}.industry-leaders .marquee-group .brand-logo{width:190px}}
@media(max-width:650px){.erc-statement{padding:25px 6% 65px}.erc-statement h2{font-size:29px}.impact{padding:55px 6%}.impact-heading{display:block}.impact-heading h2{margin:20px 0}.impact-grid{gap:30px 0;margin-top:30px}.impact-grid article{padding-right:16px}.impact-grid article+article{padding-left:16px}.impact-grid article:nth-child(3){padding-left:0}.impact-grid h3{font-size:21px}.impact-grid p{font-size:14px;min-height:90px}.impact-grid small{font-size:12px}.method .comparison{gap:22px}.comparison li{font-size:15px;min-height:85px}.reviews{padding:60px 0}.review-rating{flex-wrap:wrap;margin-bottom:30px}.review-wall{overflow-x:auto;align-items:flex-start;padding:0 6%;scrollbar-width:thin}.review-row,.review-row+.review-row{padding:0;justify-content:flex-start}.review-card{flex-basis:280px;width:280px}.industry-leaders>.eyebrow{font-size:12px}.industry-leaders .marquee-group .brand-logo{width:170px;height:74px;padding:10px 28px}}
.review-avatar{width:34px;height:34px;display:block;flex-shrink:0;border-radius:50%;background-image:url('review-portraits.webp');background-size:300% 200%;background-repeat:no-repeat}.avatar-1{background-position:0 0}.avatar-2{background-position:50% 0}.avatar-3{background-position:100% 0}.avatar-4{background-position:0 100%}.avatar-5{background-position:50% 100%}.avatar-6{background-position:100% 100%}
.industry-leaders .marquee-group{min-width:100vw;justify-content:space-around}.industry-leaders .marquee-group .brand-logo:focus-visible{outline-offset:-5px}.industry-leaders .marquee:focus-within .marquee-track{animation-play-state:paused}
.hero-bottom>p:first-child{font-size:clamp(23px,2.3vw,31px);line-height:1.25;letter-spacing:-.02em}.hero-bottom .hero-value{font-size:17px;line-height:1.5;color:#deded8;max-width:58ch;margin-top:13px}
@media(max-width:650px){.hero-bottom .hero-value{font-size:16px}.impact-heading h2 br:last-child{display:none}}
:root{--button:#241a16;--button-hover:#37261e}.primary,.closing .outline.primary{background:var(--button);border-color:#574236;color:#fff7ef}.primary:hover,.closing .outline.primary:hover{background:var(--button-hover);border-color:#755944}dialog .copy{background:var(--button)}
.hero-bottom>p.hero-value:first-child{font-size:18px;line-height:1.5;letter-spacing:0;margin-top:0;max-width:56ch}
.opening-insight{display:grid;grid-template-columns:1.25fr 1fr;gap:9%;align-items:center;background:#111;padding-top:75px;padding-bottom:75px;border-bottom:1px solid #2e2e2b}.opening-insight .eyebrow{color:#a99c8d;margin-bottom:24px}.opening-insight h2{font-size:clamp(36px,4vw,57px);line-height:1.13;max-width:640px}.opening-insight>p{font-size:clamp(21px,2vw,28px);line-height:1.6;color:#aaa9a3}.opening-insight>p em{color:#e0d5c8;font-size:1.07em}
.erc-statement{padding:20px 4% 70px}.erc-statement>div{max-width:660px;width:65%;margin:0 0 0 auto;text-align:left}.erc-statement h2{font-size:clamp(23px,2vw,29px);font-weight:450;line-height:1.35;letter-spacing:-.02em}.erc-statement h2 span{color:#ac9681}.erc-effect{margin-top:21px}
.method-note{font-size:clamp(27px,3vw,41px);line-height:1.2;color:#e9e7e0;margin:55px auto 45px;letter-spacing:-.03em}.method-note em{color:#b19a83}
.impact-heading h2{font-size:clamp(34px,3.5vw,50px)}.impact-heading>p:last-child{font-size:16px}.erc-indicators{display:grid;grid-template-columns:1fr 3fr;gap:30px;border-top:1px solid #494139;border-bottom:1px solid #35312c;padding:22px 0;margin:35px 0 0;align-items:center}.erc-indicators>.eyebrow{color:#b59e88;font-size:12px}.erc-indicators>p{font-size:14px;color:#c0b9ad;max-width:none;line-height:1.6}.impact-table-wrap{width:100%;overflow-x:auto}.impact-table{border-collapse:collapse;width:100%;text-align:left;font-size:15px;line-height:1.55}.impact-table thead th{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:#8f8d86;font-weight:500;padding:23px 20px 16px 0;border-bottom:1px solid #36332f}.impact-table tbody th,.impact-table td{border-bottom:1px solid #302e2a;padding:23px 25px 23px 0;vertical-align:top}.impact-table tbody th{width:25%;font-weight:500;font-size:17px;color:#eeeae2;letter-spacing:-.02em}.impact-table td:nth-child(2){width:35%;color:#c9c2b6}.impact-table td:last-child{width:40%;padding-right:0;color:#a5a39b}.impact-protocol{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:27px;font-size:13px;color:#939187;line-height:1.6}.impact-protocol strong{display:block;margin-bottom:8px;color:#b7ac9d;font-size:13px;font-weight:500}
@media(max-width:650px){.hero-bottom>p.hero-value:first-child{font-size:16px}.opening-insight{grid-template-columns:1fr;gap:28px;padding:55px 6%}.opening-insight h2{font-size:36px}.opening-insight>p{font-size:22px}.erc-statement{padding:0 6% 55px}.erc-statement>div{width:88%;max-width:none;margin-left:auto}.erc-statement h2{font-size:23px}.method-note{font-size:29px;margin:40px auto 30px}.erc-indicators{grid-template-columns:1fr;gap:12px;margin-top:25px}.impact-table{min-width:650px}.impact-table tbody th{font-size:15px}.impact-table td{font-size:14px}.impact-protocol{grid-template-columns:1fr;gap:17px}}
.industry-leaders .marquee-group .brand-logo:has(img[alt="Fondation Louis Vuitton"]){width:330px;padding-left:20px;padding-right:20px}
/* Continuous introduction */
:root{--button:#101c18;--button-hover:#192c24}.primary,.closing .outline.primary{background:var(--button);border-color:#344a3e;color:#f6f5ef}.primary:hover,.closing .outline.primary:hover{background:var(--button-hover);border-color:#4c6656}dialog .copy{background:var(--button)}
.opening-insight{display:block;border:0;background:#111;padding:85px 6% 65px}.opening-insight blockquote{margin:0 auto;max-width:980px;text-align:center;font-size:clamp(25px,3vw,43px);line-height:1.5;font-weight:400;letter-spacing:-.02em;color:#b9b9b2}.opening-insight blockquote em{color:#f0e9df;font-size:1.06em}
.narrative-about{display:block;padding-top:40px;padding-bottom:55px;max-width:1440px;margin:0 auto}.narrative-about>.eyebrow{color:#9a9f92;margin-bottom:24px}.narrative-about>h2{font-size:clamp(31px,3.3vw,47px);max-width:1050px;line-height:1.2}.narrative-about>.intro-bottom{grid-template-columns:1fr 1fr;gap:70px;margin-top:40px}.narrative-about .intro-bottom p{font-size:17px;line-height:1.75;color:#b6b9ae;max-width:60ch}.audience-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.audience-tags span{font-size:12px;line-height:1.4;padding:7px 11px;border:1px solid #3b4035;border-radius:20px;color:#b3bba8}.narrative-about .erc-effect{margin-top:22px;color:#aeb59f}
.thesis{max-width:1440px;margin:0 auto;padding-top:35px;padding-bottom:85px}.thesis>.eyebrow{margin-bottom:27px;color:#9a9f92}.thesis .outcome-grid{margin:0}.thesis .outcome-grid h3{font-size:27px;line-height:1.23;margin-top:25px}.thesis .outcome-grid article{padding-top:25px}.thesis .outcome-grid p{line-height:1.7}
@media(max-width:650px){.opening-insight{padding:55px 6% 40px}.opening-insight blockquote{font-size:27px;line-height:1.5}.narrative-about{padding:30px 6% 35px}.narrative-about>h2{font-size:32px}.narrative-about>.intro-bottom{grid-template-columns:1fr;gap:28px;margin-top:28px}.narrative-about .intro-bottom p{font-size:16px}.audience-tags{gap:7px;margin-top:20px}.thesis{padding:25px 6% 55px}.thesis .outcome-grid h3{font-size:26px}}
/* Reference About layout and neutral navigation */
:root{--button:#141414;--button-hover:#292929;--accent:#aaa}.primary,.closing .outline.primary{background:#141414;border-color:#555;color:#f5f5f3}.primary:hover,.closing .outline.primary:hover{background:#292929;border-color:#888}dialog .copy{background:#171717}.outline:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline-color:#bbb}
body>header{top:0;left:0;width:100%;min-height:62px;padding:9px 4%;border:0;border-bottom:1px solid #ffffff20;border-radius:0;background:#151515d9;gap:24px}body>header>.contact{padding:9px 18px;min-height:40px}body>header .brand img{width:155px;max-height:34px}.opening-insight{padding-top:65px;padding-bottom:50px}.opening-insight blockquote{max-width:900px;font:400 clamp(22px,2.1vw,30px)/1.6 'DM Sans',Arial,sans-serif;letter-spacing:-.02em}.opening-insight blockquote em{font-family:inherit;font-size:inherit;font-style:italic;color:#e3e3df}
.reference-about{display:grid;grid-template-columns:1fr 2.8fr;gap:50px;padding-top:40px;padding-bottom:85px}.reference-about .about-aside>.eyebrow{margin:0;color:#f2f2ed}.reference-about .about-aside>.outline{margin-top:30px}.reference-about h2{font-size:clamp(29.76px,3.024vw,46.08px);line-height:1.21}.reference-about .intro-bottom{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:48px;color:#b6b8af}.reference-about .intro-bottom p{font-size:16px;line-height:1.65;max-width:65ch}.framework-inline{border-top:1px solid #3b3b37;margin-top:40px;padding-top:32px}.framework-inline>.eyebrow{color:#f1f1eb;font-size:12px;letter-spacing:.11em}.framework-inline h3{font-size:clamp(26px,2.3vw,35px);margin:21px 0 20px;line-height:1.2}.framework-inline h3 button{font-family:'DM Sans',Arial,sans-serif;vertical-align:middle;font-size:12px;letter-spacing:.08em;border:1px solid #62625b;border-radius:3px;padding:7px 10px;margin-left:12px;min-height:34px}.framework-inline>p:last-child{font-size:16px;color:#b6b8af;line-height:1.65;max-width:78ch}.reference-about .audience-tags{margin-top:20px}.reference-about .audience-tags span{border-color:#42433e;color:#b8bab1}
@media(max-width:1000px){.reference-about{grid-template-columns:1fr 3fr;gap:30px}.reference-about .intro-bottom{gap:26px}body>header{padding:8px 3%;gap:15px}body>header>.contact{font-size:12px}.reference-about h2{font-size:32.64px}}
@media(max-width:650px){body>header{padding:9px 6%;min-height:58px;top:0;left:0;width:100%}body>header nav{top:58px;left:0;width:100%;border-radius:0;padding:24px 6%}body>header .brand img{width:145px}.opening-insight{padding:45px 6% 35px}.opening-insight blockquote{font-size:23px;line-height:1.6}.reference-about{display:block;padding:30px 6% 60px}.reference-about .about-aside{margin-bottom:30px}.reference-about .about-aside>.outline{margin-top:18px}.reference-about h2{font-size:29.76px}.reference-about .intro-bottom{grid-template-columns:1fr;gap:27px;margin-top:30px}.framework-inline{margin-top:30px;padding-top:26px}.framework-inline h3{font-size:26px}.framework-inline h3 button{margin-left:7px}.reference-about .intro-bottom p,.framework-inline>p:last-child{font-size:16px}}
.opening-insight{padding-top:80px;padding-bottom:65px}.opening-insight blockquote{max-width:1440px;font-size:clamp(20px,1.9vw,28px);line-height:1.7}.opening-insight blockquote>span{display:block}.opening-insight blockquote em{font-family:inherit;font-size:inherit;color:inherit}
.impact-editorial{text-align:center;background:#111;border:0;padding-top:80px;padding-bottom:85px}.impact-editorial>.eyebrow{max-width:none;color:#9d9e97;margin-bottom:25px}.impact-editorial>h2{font-size:clamp(35px,4.1vw,60px);line-height:1.14;max-width:1120px;margin:0 auto 55px}.impact-editorial>h2>span{color:#8e9188}.impact-pillars{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:auto;gap:0;text-align:left}.impact-pillars article{padding:26px 32px;border-top:1px solid #454640}.impact-pillars article+article{border-left:1px solid #34362f}.impact-symbol{display:block;font-size:12px;letter-spacing:.1em;color:#80857a;margin-bottom:27px}.impact-pillars h3{font-size:clamp(35px,3.7vw,52px);margin-bottom:17px}.impact-pillars p{font-size:16px;line-height:1.5;color:#b5b7af}.impact-pillars small{display:block;color:#7e8478;font-size:12px;margin-top:20px}
@media(max-width:650px){.opening-insight{padding-top:60px;padding-bottom:50px}.opening-insight blockquote{font-size:21px;line-height:1.65}.opening-insight blockquote>span+span{margin-top:8px}.impact-editorial{padding:60px 6%}.impact-editorial>h2{font-size:34px;margin-bottom:35px}.impact-pillars{grid-template-columns:1fr}.impact-pillars article{padding:23px 0}.impact-pillars article+article{border-left:0}.impact-symbol{margin-bottom:15px}.impact-pillars h3{font-size:37px}.impact-pillars small{margin-top:13px}}
.impact-evidence{background:#111;text-align:center;padding-top:78px;padding-bottom:70px;border:0}.impact-evidence>.eyebrow{color:#aaa;margin:0 auto 24px}.impact-evidence>h2{max-width:1080px;font-size:clamp(32px,3.5vw,51px);line-height:1.17;margin:0 auto 25px}.impact-evidence>h2 span{color:#929292}.impact-evidence>.impact-description{max-width:850px;margin:0 auto 44px;color:#b0b0b0;font-size:16px;line-height:1.65}.evidence-grid{display:grid;grid-template-columns:1.65fr 1fr 1fr;gap:16px;text-align:left;max-width:1440px;margin:auto}.evidence-card{display:flex;flex-direction:column;min-width:0;padding:30px 25px;border:1px solid #373737;border-radius:8px;background:#151515}.evidence-card .metric-label{font-size:12px;letter-spacing:.13em;color:#aaa;margin:0 0 28px}.evidence-card>p:not(.metric-label){color:#c0c0c0;font-size:16px;line-height:1.55;margin:19px 0 30px}.evidence-card>a{font-size:12px;color:#999;line-height:1.5;text-decoration:underline;text-underline-offset:4px;margin-top:auto}.evidence-card>a:hover{color:#fff}.evidence-number{display:block;font-weight:400;font-size:clamp(42px,4.5vw,70px);letter-spacing:-.055em;white-space:nowrap;line-height:1.1}.evidence-number>span{font-size:.66em;letter-spacing:-.02em}.concentration-visual{display:flex;align-items:center;gap:25px;margin:0 0 30px}.concentration-ring{width:145px;height:145px;flex-shrink:0;border-radius:50%;background:conic-gradient(#e7e7e5 0 45%,#333 45% 100%);position:relative;display:grid;place-items:center}.concentration-ring:before{content:"";position:absolute;inset:5px;background:#151515;border-radius:50%}.concentration-ring strong{position:relative;font-size:49px;font-weight:400;letter-spacing:-.05em}.concentration-ring strong span{font-size:28px}.concentration-visual h3{font-size:22px;line-height:1.24;margin:0 0 14px}.concentration-visual p{font-size:14px;line-height:1.55;color:#aaa;margin:0}.impact-evidence>.evidence-context{font-size:12px;color:#8d8d8d;margin:22px auto 0;line-height:1.6;max-width:none}@media(max-width:1100px){.evidence-grid{grid-template-columns:1fr 1fr}.evidence-concentration{grid-column:1/-1}.concentration-visual{max-width:650px}.evidence-number{font-size:60px}}@media(max-width:650px){.impact-evidence{padding:55px 6%}.impact-evidence>h2{font-size:31px}.impact-evidence>.impact-description{margin-bottom:30px}.evidence-grid{grid-template-columns:1fr}.evidence-concentration{grid-column:auto}.evidence-card{padding:25px}.concentration-visual{gap:19px;align-items:flex-start}.concentration-ring{width:105px;height:105px}.concentration-ring strong{font-size:38px}.concentration-ring strong span{font-size:23px}.concentration-visual h3{font-size:20px}.evidence-number{font-size:58px}}
.opening-insight blockquote{line-height:1.38}.opening-insight blockquote>span+span{margin-top:0}.opening-insight blockquote strong{color:#fff;font-weight:700}.opening-insight blockquote strong em{color:#fff;font-weight:700;font-style:italic}
.impact-reference{background:#fff;color:#20201e;text-align:left;padding-top:65px;padding-bottom:60px}.impact-reference>.eyebrow{color:#666;margin:0 0 40px}.impact-reference .evidence-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5vw;max-width:none}.impact-reference .evidence-card{border:0;background:none;padding:0;border-radius:0}.impact-reference .evidence-number{font-family:Georgia,'Times New Roman',serif;font-size:clamp(68px,9.5vw,145px);font-weight:400;letter-spacing:-.07em;color:#20201e;line-height:1}.impact-reference .evidence-number>span{font-size:.78em}.impact-reference .evidence-card>p{font-size:clamp(14px,1.3vw,19px);font-weight:600;line-height:1.35;color:#252523;margin:20px 0}.impact-reference .evidence-card>a{color:#747471;font-size:12px}.impact-reference-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:55px;margin-top:75px}.impact-reference-bottom>div{max-width:780px}.impact-reference-bottom h2{font-size:clamp(28px,3.1vw,45px);line-height:1.13;color:#20201e;text-transform:uppercase;letter-spacing:-.035em;margin:0 0 22px}.impact-reference-bottom p{font-size:16px;line-height:1.65;color:#666;max-width:760px}.impact-reference-bottom>button{flex-shrink:0;margin-bottom:5px}.impact-reference>.evidence-context{color:#777;margin:34px 0 0;text-align:left}.closing h2{max-width:1150px;margin-left:auto;margin-right:auto;font-size:clamp(36px,4.5vw,68px);line-height:1.14}
@media(max-width:650px){.impact-reference .evidence-grid{grid-template-columns:1fr;gap:35px}.impact-reference .evidence-card{padding-bottom:28px;border-bottom:1px solid #ddd}.impact-reference .evidence-number{font-size:92px}.impact-reference-bottom{display:block;margin-top:35px}.impact-reference-bottom>button{margin-top:25px}.impact-reference .evidence-card>p{font-size:16px}.closing h2{font-size:36px}.closing h2 br{display:none}}
.industry-leaders .marquee-group{min-width:100vw;justify-content:flex-start}.industry-leaders .marquee-group .brand-logo{width:max(160px,calc(100vw / 11));padding:10px 20px}.industry-leaders .marquee-group .brand-logo:has(img[alt="Fondation Louis Vuitton"]){width:220px;padding:10px 12px}.industry-leaders .marquee-track{animation-duration:65s}.industry-leaders .reverse .marquee-track{animation-duration:70s}
.impact-reference{background:#111;color:#f2f2ee;padding-top:65px;padding-bottom:65px}.impact-reference>.eyebrow{color:#aaa;text-align:center;margin-bottom:38px}.impact-reference .evidence-grid{gap:18px;max-width:1280px}.impact-reference .evidence-card{background:#151515;border:1px solid #353535;border-radius:8px;padding:30px 28px}.impact-reference .evidence-number{font-family:inherit;font-size:clamp(48px,5.1vw,76px);font-weight:400;letter-spacing:-.045em;line-height:1.1;color:#eee}.impact-reference .evidence-number>span{font-size:.65em}.impact-reference .evidence-card>p{font-size:16px;font-weight:400;line-height:1.5;color:#b5b5af;text-transform:none;margin:20px 0 24px}.impact-reference .evidence-card>a{color:#999}.impact-reference-bottom{max-width:1280px;margin:42px auto 0;gap:40px;align-items:center}.impact-reference-bottom h2{font-family:inherit;font-size:clamp(28px,3vw,42px);line-height:1.2;text-transform:none;letter-spacing:-.035em;color:#eee;margin-bottom:20px}.impact-reference-bottom p{color:#aaa;font-size:16px;line-height:1.65;max-width:720px}.impact-reference>.evidence-context{color:#888;font-size:12px;text-align:center;margin-top:28px}@media(max-width:650px){.impact-reference .evidence-grid{gap:14px}.impact-reference .evidence-card{padding:25px;border-color:#353535}.impact-reference .evidence-number{font-size:58px}.impact-reference-bottom{margin-top:30px}.impact-reference-bottom h2{font-size:30px}}
.closing h2{max-width:800px;margin:25px 0;font-size:clamp(40px,4.5vw,64px);line-height:1.09;text-align:left}@media(max-width:650px){.closing h2{font-size:43px}}
.relevance-renewed{grid-template-columns:1fr;gap:38px}.relevance-renewed .relevance-heading{max-width:1000px}.relevance-renewed .eyebrow{color:#aaa}.relevance-renewed h2{margin:24px 0 0;line-height:1.17}.relevance-renewed h2>span:not(.scroll-reveal-word){color:#999}.relevance-situations{width:100%}.relevance-situations details>p{max-width:950px;color:#aaa;line-height:1.65;font-size:16px}.relevance-closing{display:flex;align-items:center;justify-content:space-between;gap:40px}.relevance-closing>p{max-width:750px;font-size:16px;color:#aaa;line-height:1.65;margin:0}.relevance-closing>button{flex-shrink:0}@media(max-width:650px){.relevance-renewed{gap:28px}.relevance-closing{display:block}.relevance-closing>button{margin-top:24px}.relevance-renewed h2{font-size:34px}}
.triggers.relevance-renewed{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);column-gap:65px;row-gap:30px;align-items:start}.relevance-renewed .relevance-heading{grid-column:1;grid-row:1}.relevance-renewed .relevance-situations{grid-column:2;grid-row:1 / span 2}.relevance-renewed .relevance-closing{grid-column:1;grid-row:2;display:block}.relevance-renewed .relevance-closing>button{margin-top:25px}.relevance-renewed .relevance-situations details{border:0;margin-bottom:12px}.relevance-renewed .relevance-situations summary{padding:12px 0;font-size:18px}.relevance-renewed .relevance-situations details>p{padding:0 30px 14px 0}.industry-leaders{border-bottom:0}.sectors{border-top:0}@media(max-width:800px){.triggers.relevance-renewed{grid-template-columns:1fr;gap:28px}.relevance-renewed .relevance-heading,.relevance-renewed .relevance-situations,.relevance-renewed .relevance-closing{grid-column:1;grid-row:auto}}
.triggers.relevance-renewed{padding-top:110px;padding-bottom:110px;column-gap:80px;row-gap:38px}.relevance-renewed .relevance-situations details{margin-bottom:22px}.relevance-renewed .relevance-situations summary{padding:18px 0;align-items:center;line-height:1.5;letter-spacing:0;gap:24px;transition:color .2s}.relevance-renewed .relevance-situations details[open]>summary{color:#b19a83}.relevance-renewed .relevance-situations details>p{padding:12px 32px 24px 0;margin:0;line-height:1.85;letter-spacing:0}.relevance-chevron{flex-shrink:0;transition:transform .2s}.relevance-situations details[open] .relevance-chevron{transform:rotate(180deg)}@media(max-width:800px){.triggers.relevance-renewed{padding-top:75px;padding-bottom:75px;gap:38px}.relevance-renewed .relevance-situations details{margin-bottom:18px}.relevance-renewed .relevance-situations details>p{padding-right:16px}}
.triggers.relevance-renewed{grid-template-rows:min-content 1fr}.relevance-renewed .relevance-closing{align-self:start}.relevance-situations{min-height:var(--relevance-height,480px)}@media(max-width:800px){.triggers.relevance-renewed{grid-template-rows:auto}}
.marquee:hover .marquee-track{animation-play-state:running}
@media(min-width:1800px){.marquee-group{min-width:100vw;justify-content:space-around}}
@media(max-width:1000px){.problem-heading{gap:35px}.problem-points{gap:24px}.outcome-grid article{padding-right:23px}.outcome-grid article+article{padding-left:23px}.faq{gap:35px}.brand img{width:140px}nav{gap:14px}}
@media(max-width:650px){.problem-heading{grid-template-columns:1fr;margin:30px 0 40px}.problem h2{font-size:45px}.problem-heading>p{font-size:22px}.problem-points{grid-template-columns:1fr;gap:30px}.problem-points h3{margin-top:12px}.thesis h2{font-size:37px;margin:23px 0 35px}.outcome-grid article,.outcome-grid article+article{padding:27px 0;border-left:0}.outcome-grid h3{margin-top:19px}.method>h2{margin-bottom:45px}.method .comparison{gap:20px}.comparison article{padding:25px}.comparison li{min-height:80px}.method-note{margin:40px auto 55px}.faq{grid-template-columns:1fr}.faq summary{font-size:15px}.erc h3{font-size:26px}.hero h1{font-size:46px}.review-card{width:285px}.expertise .marquee span{padding:0 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.marquee-track{animation:none}.expertise .marquee{overflow-x:auto}}

.impact-reference .impact-reference-bottom{margin:0 auto 56px}.impact-reference .evidence-grid{gap:48px}.impact-reference .evidence-card{background:transparent;border:0;border-radius:0;padding:0}.industry-leaders .marquee-group .brand-logo{cursor:default}.industry-leaders .marquee:nth-of-type(3) .marquee-track{animation-duration:75s}@media(max-width:700px){.impact-reference .impact-reference-bottom{margin-bottom:40px}.impact-reference .evidence-grid{gap:38px}}
/* Approved centered Impact composition. */
#impact{background:linear-gradient(#0003,#0005),url('impact-garden.webp') center/cover;text-align:center;padding:100px 5% 110px}
#impact>.eyebrow{letter-spacing:.24em;margin:0 0 28px;color:#bbb}
#impact .impact-reference-bottom{display:block;max-width:900px;margin:0 auto 82px}
#impact .impact-reference-bottom>div{max-width:none}
#impact h2{font-size:clamp(32px,3.3vw,50px);font-weight:400;line-height:1.2;letter-spacing:-.035em;margin:0 auto 28px}
#impact .impact-reference-bottom p{max-width:820px;margin:0 auto;color:#b7b7b7;font-size:18px;line-height:1.6}
#impact .evidence-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;max-width:1180px;text-align:center}
#impact .evidence-card{padding:0;border:0;background:none}
#impact .evidence-number{font-size:clamp(49.4px,4.75vw,72.2px);font-weight:400}
#impact .evidence-number>span{font-size:1em}
#impact .evidence-card>p{font-size:18px;line-height:1.55;margin:20px 0 24px;color:#b7b7b7}
#impact .evidence-card>a{font-size:13px;color:#999;text-decoration:none}
@media(max-width:650px){#impact{padding:70px 6%}#impact .impact-reference-bottom{margin-bottom:48px}#impact .impact-reference-bottom p{font-size:16px}#impact .evidence-grid{grid-template-columns:1fr;gap:42px}#impact .evidence-card>p{font-size:16px;margin:14px 0}#impact .evidence-number{font-size:55.1px}}
/* Keep the Impact label above its centered content. */
#impact{display:block}
#impact>.eyebrow{display:block;width:100%;max-width:none;text-align:center}
#relevance{background:linear-gradient(90deg,rgba(10,10,10,.88),rgba(10,10,10,.92)),url('garden.webp') center/cover}
#enquiry{background:linear-gradient(90deg,rgba(8,10,8,.86),rgba(8,10,8,.48)),url('vineyard.webp') center 60%/cover}
#sectors{padding-bottom:48px}
#sectors .industry-leaders{padding:48px 0 0;border:0;margin:0 -4.35%}
#sectors .industry-leaders>.eyebrow{text-align:left;text-transform:none;letter-spacing:.02em;font-size:14px;font-weight:400;color:#999;margin:0 4% 24px;max-width:none}
@media(max-width:650px){#sectors .industry-leaders{padding-top:34px}#sectors .industry-leaders>.eyebrow{font-size:13px}}
#sectors .industry-leaders{background:#1b1b1b;margin-top:64px;padding:76px 0 70px}
#sectors .industry-leaders>.eyebrow{text-align:center;text-transform:uppercase;letter-spacing:.11em;font-size:13px;font-weight:500;color:#aaa;margin:0 24px 42px}
#sectors{padding-bottom:0}
@media(max-width:650px){#sectors .industry-leaders{margin-top:42px;padding:55px 0 48px}#sectors .industry-leaders>.eyebrow{font-size:12px;margin-bottom:30px}}
#impact{padding-bottom:64px}
#impact .industry-leaders{background:transparent;border:0;margin:88px -5.56% 0;padding:30px 0 0;text-align:center}
#impact .industry-leaders>.eyebrow{color:#aaa;text-align:center;font-size:13px;font-weight:500;letter-spacing:.11em;margin:0 24px 42px}
#sectors{padding-bottom:95px}
@media(max-width:650px){#impact{padding-bottom:48px}#impact .industry-leaders{margin:58px -6.82% 0;padding-top:20px}#impact .industry-leaders>.eyebrow{font-size:12px;margin-bottom:30px}#sectors{padding-bottom:65px}}

#impact .industry-leaders{padding-top:48px}#impact .industry-leaders>.eyebrow{margin-bottom:60px}@media(max-width:650px){#impact .industry-leaders{padding-top:34px}#impact .industry-leaders>.eyebrow{margin-bottom:44px}}

:root{--hero-image:url("hero-arches.webp")}
#perspectives{padding-top:60px;padding-bottom:60px}@media(max-width:650px){#perspectives{padding-top:42px;padding-bottom:42px}}

/* Four-part impact narrative and outcome variables */
#impact .evidence-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;max-width:1320px;align-items:start}
#impact .evidence-card>p{font-size:16px;line-height:1.55;margin:18px 0 0}
#impact .impact-tags{justify-content:center;gap:10px;max-width:1120px;margin:48px auto 0}
#impact .impact-tags span{color:#b8bab1;border-color:#42433e;font-size:13px;padding:8px 13px}
@media(max-width:1000px){#impact .evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 30px}}
@media(max-width:540px){#impact .evidence-grid{grid-template-columns:1fr;gap:36px}#impact .evidence-card{max-width:340px;margin:auto}#impact .impact-tags{margin-top:36px;gap:8px}}

/* Keep impact variables on one readable, scrollable row. */
#impact .impact-tags{display:flex;flex-wrap:nowrap;justify-content:flex-start;width:max-content;max-width:100%;overflow-x:auto;gap:10px;margin:48px auto 0;padding-bottom:8px;scrollbar-width:thin}
#impact .impact-tags span{flex:0 0 auto;white-space:nowrap}

/* Five sectors and an editorial closing panel. */
#sectors .sector-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
#sectors .sector-tile{min-height:450.8px}
#sectors .sector-tile .tags{display:flex;flex-wrap:wrap;gap:6px;white-space:normal}
#sectors .sector-tile .tags span{white-space:normal;font-size:12px;padding:5px 9px}
#sectors .sector-perspective{display:flex;flex-direction:column;justify-content:center;padding:36px;background:#191919;border-radius:8px;min-width:0}
#sectors .sector-perspective .sector-focus{font-size:clamp(21px,1.85vw,28px);line-height:1.3;letter-spacing:-.025em;color:#eee;margin:0 0 30px}
#sectors .sector-perspective>p:last-child{font-size:16px;line-height:1.65;color:#a5a59e;margin:0}
.sector-detail-tags{color:#bbb;line-height:1.7}
@media(max-width:1050px){#sectors .sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){#sectors .sector-grid{grid-template-columns:1fr}#sectors .sector-tile{min-height:441.6px}#sectors .sector-perspective{padding:32px 26px}}

/* Sector detail: dark editorial panel, separate audience and next step. */
dialog.sector-dialog{background:#141414;color:#f4f4ef;max-width:960px;padding:0;border:1px solid #363630;border-radius:12px;box-shadow:0 30px 120px #0009}
.sector-dialog .close{color:#ccc;right:22px;top:14px;z-index:2;line-height:1;width:36px;height:36px}
.sector-dialog .sector-modal-head{padding:56px 56px 38px;background:linear-gradient(125deg,#25251f,#171717)}
.sector-dialog .eyebrow{color:#b8a27a;font-size:12px;letter-spacing:.12em;margin:0 0 22px;line-height:1.6}
.sector-dialog h2{font-size:clamp(28px,3vw,42px);font-weight:500;line-height:1.16;letter-spacing:-.035em;margin:0;max-width:740px;color:#f4f4ef}
.sector-dialog .sector-modal-body{display:grid;grid-template-columns:1.15fr 1fr;gap:46px;padding:38px 56px 50px}
.sector-dialog .sector-people{display:flex;flex-wrap:wrap;gap:10px}
.sector-dialog .sector-people span{font-size:14px;line-height:1.5;border:1px solid #41413a;border-radius:30px;padding:8px 13px;color:#d6d6cd}
.sector-dialog .sector-modal-start>p:not(.eyebrow){font-size:16px;line-height:1.7;color:#aaa;margin:0 0 26px}
.sector-dialog .outline{font-size:15px;color:#f4f4ef;border-color:#68685e;padding:13px 20px;display:inline-flex;gap:20px;align-items:center}
@media(max-width:650px){.sector-dialog .sector-modal-head{padding:52px 26px 30px}.sector-dialog .sector-modal-body{grid-template-columns:1fr;padding:30px 26px 36px;gap:32px}.sector-dialog .eyebrow{margin-bottom:16px}}

/* Approved sector photography */
#sectors [data-sector="hospitality"]{background-position:center center}
#sectors [data-sector="luxury"]{background-position:70% center}

/* Preserve heading typography and layout while revealing words on scroll. */
section h2 .scroll-reveal-word{display:inline;font:inherit;color:inherit;letter-spacing:inherit}
@media(prefers-reduced-motion:reduce){section h2 .scroll-reveal-word{opacity:1!important}}

html.lenis,html.lenis body{height:auto}html.lenis.lenis-smooth{scroll-behavior:auto!important}
section h2 .scroll-reveal-word{transition:opacity 160ms linear}
@media(prefers-reduced-motion:reduce){section h2 .scroll-reveal-word{transition:none}}

/* Editorial serif for section overtitles. */
@font-face{font-family:'Vestige Labels';src:url('fonts/cormorant-garamond-latin-600-normal.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
.eyebrow,.hero .eyebrow{font-family:'Vestige Labels',Georgia,serif!important;font-size:14px!important;font-weight:600!important;letter-spacing:.18em!important}
@media(max-width:650px){.eyebrow,.hero .eyebrow{font-size:12px!important;letter-spacing:.13em!important}}


@font-face{font-family:'Cormorant Hero';src:url('fonts/cormorant-garamond-latin-400-normal.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}

@font-face{font-family:'Cormorant Hero';src:url('fonts/cormorant-garamond-latin-400-italic.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
.hero h1,.hero h1 em{font-family:'Cormorant Hero',Georgia,serif!important;font-weight:400!important}

@font-face{font-family:'Newsreader Hero';src:url('fonts/newsreader-normal.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:'Newsreader Hero';src:url('fonts/newsreader-italic.woff2') format('woff2');font-style:italic;font-weight:200 800;font-display:swap}
.hero h1,.hero h1 em{font-family:'Newsreader Hero',Georgia,serif!important;font-weight:300!important;font-optical-sizing:none;font-variation-settings:'opsz' 72}
.hero h1{font-size:clamp(34px,7vw,100px)!important;line-height:1.04!important;letter-spacing:-.035em!important;max-width:none}
.hero h1 .hero-line{display:block;white-space:nowrap}
.hero h1 em{font-style:italic;font-size:inherit;color:inherit}
@media(max-width:650px){.hero h1{font-size:8vw!important;line-height:1.1!important;letter-spacing:-.035em!important}}

/* Quieter legacy playbook and more restrained comparison headings. */
.comparison h3{font-size:clamp(21.66px,2.166vw,29.4576px)}
.comparison article:first-child{background:#0e0e0e;border-color:#202020;box-shadow:none}
.comparison article:first-child h3{color:#aaa}
.comparison article:first-child li{color:#999}
.comparison article:first-child li:before{color:#707070}


/* Scale the previous playbook proportions down together. */
.method .comparison{max-width:1012px;gap:33.12px}
.method .comparison article{padding:24.84px 23px 23px}
.method .comparison h3{font-size:clamp(19.9272px,1.99272vw,27.100992px);margin-bottom:14.72px}
.method .comparison li{font-size:14.72px;min-height:79.12px;padding:13.8px 0 13.8px 29.44px}
.method .comparison li:before{font-size:22.08px}
@media(max-width:650px){.method .comparison{gap:20px}.method .comparison article{padding:23px}.method .comparison li{font-size:14px;min-height:73.6px}}

dialog.service-dialog{padding:0;width:min(640px,92vw);max-height:90svh;background:#151515;color:#eee;border:1px solid #625747;border-radius:10px;box-shadow:0 30px 100px #0009}dialog.service-dialog::backdrop{background:#000b;backdrop-filter:blur(7px)}.service-dialog .close{position:absolute;top:16px;right:18px;z-index:2;color:#fff;background:#1119;border-radius:50%;width:38px;height:38px}.service-dialog-banner{padding:45px 40px 32px;background:linear-gradient(90deg,#111e,#1118),var(--service-photo) center/cover}.service-dialog-banner .eyebrow{color:#c4ab8e}.service-dialog-banner h2{font-size:34px;margin:20px 0}.service-dialog-banner p:last-child{font-size:16px;line-height:1.6;color:#dedbd4;max-width:640px}.service-dialog-body{padding:28px 40px 36px}.service-dialog-body h3{font-size:19px;color:#c4ab8e;margin:0 0 20px}.service-dialog-body ol{list-style:none;counter-reset:scope;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:22px 28px}.service-dialog-body li{counter-increment:scope;line-height:1.6;font-size:15px;color:#c8c8c3;padding:0}.service-dialog-body li:before{content:'0' counter(scope);display:block;color:#b99f81;font-size:13px;letter-spacing:.1em;margin-bottom:8px}.service-dialog .service-scope{font-size:13px;color:#999;line-height:1.6;margin:26px 0}.service-actions{display:flex;gap:14px;flex-wrap:wrap}.service-actions .outline{color:#eee;border-color:#85745f;font-size:15px;background:#090909}@media(max-width:600px){.service-dialog-banner{padding:40px 24px 25px}.service-dialog-body{padding:25px 24px}.service-dialog-body ol{grid-template-columns:1fr;gap:18px}.service-dialog-banner h2{font-size:32px}.service-actions .outline{width:100%;justify-content:center}}

.service-dialog-body ol{grid-template-columns:1fr;gap:0}.service-dialog-body li{display:flex;gap:18px;padding:14px 0;border-bottom:1px solid #ffffff12}.service-dialog-body li:before{flex:0 0 22px;margin:2px 0 0}.service-dialog-body li:last-child{border-bottom:0}

/* Reveal more of the Impact photograph without changing text opacity. */
#impact{position:relative;isolation:isolate;background:#101310}
#impact:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(#0001,#0002),url('impact-garden.webp') center/cover;filter:brightness(1.5);pointer-events:none}
.brand-selection{display:grid;gap:24px;width:100%;padding:0 5%}
.brand-selection-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:22px;align-items:center}
.industry-leaders .brand-selection .brand-logo{width:auto;min-width:0;height:78px;display:flex;align-items:center;justify-content:center}
.brand-selection .brand-logo img{max-width:100%;max-height:56px;object-fit:contain}
.brand-name{font-family:Georgia,serif;font-size:clamp(15px,1.45vw,21px);color:#eee;line-height:1.25;text-align:center}
@media(max-width:800px){.brand-selection{overflow-x:auto;padding:0 24px;gap:14px}.brand-selection-row{width:1120px;grid-template-columns:repeat(7,140px);gap:20px}.brand-name{font-size:18px}}

.brand-selection{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#7775 transparent;padding-bottom:14px}.brand-selection-row{width:max-content;grid-template-columns:repeat(24,145px);gap:22px}.brand-selection .brand-name{font-size:18px}@media(max-width:800px){.brand-selection-row{width:max-content;grid-template-columns:repeat(24,130px);gap:18px}}

/* Consistent optical footprint across brand marks. */
.industry-leaders .brand-selection .brand-logo{height:76px;padding:8px;display:flex;align-items:center;justify-content:center}
.industry-leaders .brand-selection .brand-logo img{display:block;width:128px;height:44px;max-width:100%;max-height:44px;object-fit:contain;object-position:center}
.industry-leaders .brand-selection .brand-name{display:flex;align-items:center;justify-content:center;width:128px;min-height:44px;font-size:17px;line-height:1.2;text-align:center}
.industry-leaders .brand-selection img[alt="Cartier"],.industry-leaders .brand-selection img[alt="Hennessy"]{width:120px;height:40px}

.brand-selection-row{display:flex;width:max-content;gap:22px}.industry-leaders .brand-selection .brand-logo{flex:0 0 145px;width:145px}.industry-leaders .brand-selection img{filter:brightness(0) invert(1);opacity:.85}.industry-leaders .brand-selection img:hover{opacity:1}

/* Slow moving brand rows; each mark appears once per row. */
.brand-selection{overflow:hidden}
.brand-selection-row{animation:brand-pan 70s linear infinite alternate;will-change:transform}
.brand-selection-row:nth-child(2){animation-direction:alternate-reverse;animation-duration:76s}
.brand-selection:hover .brand-selection-row,.brand-selection:focus-within .brand-selection-row{animation-play-state:paused}
@keyframes brand-pan{from{transform:translateX(0)}to{transform:translateX(calc(-100% + var(--brand-window, 90vw)))}}
@media(prefers-reduced-motion:reduce){.brand-selection{overflow-x:auto}.brand-selection-row{animation:none;transform:none;will-change:auto}}

/* Industry categories replace pills below the subtitle divider. */
#sectors .sector-tile{text-decoration:none}
#sectors .sector-categories{border-top:1px solid #ffffff65;margin-top:22px;padding-top:17px;font-size:13px;line-height:1.65;font-weight:400;letter-spacing:0;color:#e0e0dc}
#sectors .sector-contact{display:flex;justify-content:flex-end;gap:14px;margin-top:18px;font-size:13px;line-height:1.4;color:#fff}
#sectors .sector-tile:focus-visible{outline:2px solid #fff;outline-offset:5px}

/* Two faces share one fixed-size industry card. */
#sectors .sector-flip{display:block;padding:0;background:none;perspective:1200px;height:450.8px;min-height:450.8px;transition:none}
#sectors .sector-flip:hover{transform:none}
.sector-flip-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.22,.61,.36,1)}
.sector-flip.is-flipped .sector-flip-inner{transform:rotateY(180deg)}
.sector-face{position:absolute;inset:0;padding:28px;border-radius:8px;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;background:linear-gradient(180deg,#0008,#0003 32%,#000d 70%,#000f),var(--sector-image) center/cover}
.sector-back{transform:rotateY(180deg);background:linear-gradient(#101310eb,#101310f5),var(--sector-image) center/cover}
.sector-explore{width:100%;background:transparent;border:0;border-top:1px solid #ffffff65;border-radius:0;padding-bottom:0;color:white;cursor:pointer}
.sector-return{background:none;border:0;padding:0;margin-bottom:18px;color:#c4c4bf;font:inherit;font-size:12px;cursor:pointer}
.sector-back .eyebrow{margin:22px 0 10px;font-size:11px;color:#aaa}
.sector-subsectors{list-style:none;margin:0;padding:0}
.sector-subsectors li{font-size:15px;line-height:1.4;padding:5px 0;border-bottom:1px solid #ffffff16;color:#eee}
.sector-back>.outline{align-self:flex-start;margin-top:16px;font-size:13px}
.sector-face button:focus-visible,.sector-face a:focus-visible{outline:2px solid white;outline-offset:4px}
@media(max-width:650px){#sectors .sector-flip{height:441.6px;min-height:441.6px}.sector-face{padding:27px}}
@media(prefers-reduced-motion:reduce){.sector-flip-inner{transition:none}}

#sectors .sector-front .card-bottom>p{font-size:20px;font-style:italic;line-height:1.35}
@media(max-width:650px){#sectors .sector-front .card-bottom>p{font-size:21px}}

#sectors .sector-front .card-bottom>p{font-style:normal}
#sectors .sector-front{cursor:pointer}
#sectors .sector-explore{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;letter-spacing:.16em;font-size:15px;text-transform:uppercase}
#sectors .sector-back .eyebrow{font-size:15px;color:#eee;margin:20px 0 18px}
#sectors .sector-back>.outline{background:#000;color:#fff;border:1px solid #777;border-radius:0;padding:14px 22px;font-weight:500;box-shadow:0 4px 16px #0005}
#sectors .sector-back>.outline:hover{background:#181818;border-color:#fff}

/* Match both card actions and lift the front copy above the button. */
#sectors .sector-front .card-bottom{display:flex;flex-direction:column;align-items:flex-start;width:100%}
#sectors .sector-front .card-bottom>p{width:100%;padding-bottom:22px;border-bottom:1px solid #ffffff65;margin-bottom:26px}
#sectors .sector-explore{align-self:flex-end;width:auto;margin:0;background:#000;color:#fff;border:1px solid #777;border-radius:0;padding:14px 22px;font-family:'DM Sans',Arial,sans-serif;font-size:13px;font-weight:500;line-height:1.25;letter-spacing:normal;text-transform:none;box-shadow:0 4px 16px #0005;min-height:44px}
#sectors .sector-explore:hover{background:#181818;border-color:#fff}

/* Restore industry proportions and original subtitle size. */
#sectors .sector-front .card-bottom>p{font-size:21.85px;line-height:1.3}
@media(max-width:650px){#sectors .sector-front .card-bottom>p{font-size:22.8px}}

#sectors .sector-explore.eyebrow{line-height:1.5;text-transform:uppercase}

#sectors .sector-perspective>p:last-child{font-size:14px;line-height:1.6}

/* Reveal more of the existing Impact photograph. */
#impact:before{background:linear-gradient(#0000,#0001),url('impact-garden.webp') center/cover;filter:brightness(2.1)}

#impact .evidence-card{display:flex;flex-direction:column}
#impact .impact-leader-quote{margin:26px 0 0;padding:20px 0 0;border-top:1px solid #ffffff35;text-align:left}
#impact .impact-leader-quote p{font-family:'DM Sans',Arial,sans-serif;font-size:15px;font-weight:400;font-style:italic;line-height:1.65;letter-spacing:normal;color:#e8e7e2}
#impact .impact-leader-quote cite{display:block;margin-top:12px;font-size:12px;font-style:normal;line-height:1.5;color:#c4c3bb}
#impact .impact-leader-quote a{text-decoration:none}
#impact .impact-leader-quote a:hover{text-decoration:underline;text-underline-offset:3px}

/* Full-color landscape with the original dark overlay, no brightness filter. */
#impact:before{background:linear-gradient(#0003,#0005),url('impact-garden-color.webp') center/cover;filter:none}

/* Restore a deep overlay while retaining the landscape's natural colour. */
#impact:before{background:linear-gradient(rgba(0,0,0,.68),rgba(0,0,0,.76)),url('impact-coast.webp') center/cover;filter:none}


/* Static logo rows with inline quotes, preserving the original row spacing. */
.brand-selection{overflow-x:auto;scrollbar-width:thin;gap:24px}
.brand-selection-row,.brand-selection-row:nth-child(2){animation:none;transform:none;will-change:auto;align-items:center;gap:22px}
#impact .brand-inline-quote{flex:0 0 580px;width:580px;margin:0;padding:0;border:0;background:none;border-radius:0;text-align:left}
#impact .brand-inline-quote p{font-family:'DM Sans',Arial,sans-serif;font-size:15px;font-weight:400;font-style:italic;line-height:1.65;letter-spacing:normal;color:#e8e7e2;margin:0}
#impact .brand-inline-quote cite{font-family:'DM Sans',Arial,sans-serif;display:block;margin-top:12px;font-size:12px;font-style:normal;line-height:1.5;color:#c4c3bb}
@media(max-width:800px){.brand-selection{gap:14px}}

/* Compact quotes with the brand beside a plainly styled attribution. */
#impact .brand-inline-quote{flex:0 0 310px;width:310px}
#impact .brand-inline-quote p{font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.55;font-weight:400;letter-spacing:normal}
#impact .brand-quote-attribution{display:flex;align-items:center;gap:12px;margin-top:12px}
#impact .brand-selection .brand-quote-attribution img{flex:0 0 54px;width:54px;height:32px;max-width:54px;max-height:32px;object-fit:contain;margin:0}
#impact .brand-quote-attribution cite{display:block;margin:0;font-family:'DM Sans',Arial,sans-serif!important;font-size:12px!important;font-weight:400!important;font-style:normal!important;letter-spacing:normal!important;text-transform:none!important;line-height:1.45;color:#c4c3bb}

/* Approved compact reference layout: bounded copy and two-line attribution. */
#impact .brand-inline-quote{box-sizing:border-box;flex:0 0 300px;width:300px;max-width:300px;min-width:0;overflow:hidden;white-space:normal}
#impact .brand-inline-quote p{font:400 15px/1.55 'DM Sans',Arial,sans-serif!important;letter-spacing:normal!important;overflow-wrap:break-word}
#impact .brand-quote-attribution{display:flex;gap:12px;align-items:center;margin-top:18px;min-width:0}
#impact .brand-quote-attribution>div{min-width:0;flex:1}
#impact .brand-quote-attribution strong{display:block;font:500 13px/1.4 'DM Sans',Arial,sans-serif!important;letter-spacing:normal!important;color:#eee}
#impact .brand-quote-attribution cite{font:400 12px/1.4 'DM Sans',Arial,sans-serif!important;letter-spacing:normal!important;margin:3px 0 0!important;color:#aaa}
#impact .brand-selection .brand-quote-attribution img{flex:0 0 48px;width:48px;height:44px;object-fit:contain}

/* Restore logo-only rows and place approved references beneath the metrics. */
.brand-selection{overflow:hidden;gap:24px}
.brand-selection-row{animation:brand-pan 70s linear infinite alternate;will-change:transform}
.brand-selection-row:nth-child(2){animation:brand-pan 76s linear infinite alternate-reverse}
#impact .metric-reference{box-sizing:border-box;width:100%;max-width:100%;margin:24px 0 0;padding:20px 0 0}
#impact .metric-reference p{font:400 15px/1.55 'DM Sans',Arial,sans-serif;letter-spacing:normal;overflow-wrap:break-word}
#impact .metric-reference .brand-quote-attribution img{width:44px;height:40px;flex:0 0 44px;object-fit:contain;filter:brightness(0) invert(1)}
@media(prefers-reduced-motion:reduce){.brand-selection-row,.brand-selection-row:nth-child(2){animation:none}.brand-selection{overflow-x:auto}}

/* One metric and its reference travel together; brand rows stay still. */
#impact .impact-carousel{max-width:1000px;margin:0 auto 48px}
#impact .impact-viewport{overflow:hidden}
#impact .impact-track{display:flex;gap:0;max-width:none;transition:transform .65s cubic-bezier(.22,.68,.2,1);will-change:transform}
#impact .impact-track .evidence-card{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px;flex:0 0 100%;width:100%;max-width:none;margin:0;padding:10px 12px;box-sizing:border-box;text-align:left}
#impact .metric-summary{min-width:0}
#impact .metric-summary>p{font:400 16px/1.55 'DM Sans',Arial,sans-serif;color:#b7b7b7;margin:18px 0 0;max-width:350px}
#impact .impact-track .metric-reference{border:0;margin:0;padding:0;max-width:350px}
.brand-selection{overflow-x:auto;scrollbar-width:thin}
.brand-selection-row,.brand-selection-row:nth-child(2){animation:none;transform:none;will-change:auto}
@media(max-width:600px){#impact .impact-track .evidence-card{grid-template-columns:1fr;gap:24px;padding:8px 4px;align-content:start}#impact .impact-track .metric-reference{max-width:100%}#impact .metric-summary>p{max-width:none}}
@media(prefers-reduced-motion:reduce){#impact .impact-track{transition:none}}

#impact .impact-carousel{position:relative;margin-bottom:24px}
#impact .impact-track .metric-summary{padding-left:100px;text-align:center}
#impact .impact-next{position:absolute;right:-40px;top:50%;transform:translateY(-50%);padding:10px;background:none;border:0;color:#eee;font:300 28px/1 Arial,sans-serif;cursor:pointer}
#impact .industry-leaders{margin-top:36px;padding-top:12px}
@media(max-width:1100px){#impact .impact-next{right:-24px}#impact .impact-track .metric-summary{padding-left:60px}}
@media(max-width:600px){#impact .impact-track .metric-summary{padding-left:0}#impact .impact-next{right:-20px}#impact .impact-carousel{padding-right:12px}#impact .industry-leaders{margin-top:28px;padding-top:10px}}

#impact .impact-track .evidence-card:nth-child(1) .metric-summary>p,
#impact .impact-track .evidence-card:nth-child(3) .metric-summary>p,
#impact .impact-track .evidence-card:nth-child(5) .metric-summary>p{max-width:260px;margin-left:auto;margin-right:auto;text-wrap:balance}

#impact .impact-reference-bottom p{text-wrap:balance}

#impact .industry-leaders>.eyebrow{margin-bottom:28px}

#impact .brand-selection img,#impact .brand-selection img:hover{filter:brightness(0) invert(66.6667%);opacity:1}

/* Compact the logo rows and finish the section closer to its content. */
#impact .brand-selection{gap:6px;padding-bottom:4px}
#impact .brand-selection .brand-logo img{transform:scale(.95)}
#impact{padding-bottom:28px}
@media(max-width:650px){#impact{padding-bottom:24px}}

#impact .brand-selection .brand-logo img[alt="Cartier"],#impact .brand-selection .brand-logo img[alt="Dior"]{transform:scale(.78)}

/* Keep every pair in one stable slot, without a cloned-slide reset. */
#impact .impact-track{display:grid;grid-template-columns:minmax(0,1fr);transform:none;transition:none;will-change:auto}
#impact .impact-track .evidence-card{grid-area:1/1;opacity:0;visibility:hidden;pointer-events:none}
#impact .impact-track .evidence-card.is-active{opacity:1;visibility:visible;pointer-events:auto}

@media(min-width:900px){#impact .impact-reference-bottom{max-width:1200px}#impact .impact-reference-bottom p{max-width:1160px;font-size:clamp(14px,1.35vw,18px)}}

#impact .impact-track .metric-reference p{font-size:16px;line-height:1.55}

@media(min-width:700px){#impact .impact-track .evidence-card:nth-child(3) .metric-summary>p{width:360px;max-width:none;margin-left:50%;margin-right:0;transform:translateX(-50%);text-wrap:initial}#impact .impact-track .evidence-card:nth-child(3) .metric-summary>p>span{display:block;white-space:nowrap}}

/* Lock the existing relevance title type, independent of its copy. */
#relevance .relevance-heading h2{font-family:'DM Sans',Arial,sans-serif;font-weight:450;font-style:normal;font-size:clamp(34px,3.7vw,53px);line-height:1.17;letter-spacing:-.045em}
@media(max-width:650px){#relevance .relevance-heading h2{font-size:34px}}

#relevance .relevance-heading h2 .essential-emphasis{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-style:italic;color:#999}



/* Compact photographic situations; preserve the established heading typography. */
#relevance.relevance-compact{display:block;background:#111;padding-top:44px}
#relevance.relevance-compact .relevance-heading{max-width:1060px}
#relevance.relevance-compact h2{margin:0}
#relevance .relevance-intro{max-width:1060px;margin:14px 0 0;color:#aaa;font-size:17px;line-height:1.65}
.situation-accordion{display:flex;gap:12px;margin-top:58px}
.situation-card{position:relative;flex:1 1 0;min-width:0;height:460px;overflow:hidden;border-radius:4px;isolation:isolate;transition:flex-grow .65s cubic-bezier(.22,.61,.36,1)}
.situation-card.is-active{flex-grow:3}
.situation-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:filter .6s}
.situation-card.is-active .situation-photo{filter:grayscale(0)}
.situation-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12) 15%,rgba(0,0,0,.08) 30%,rgba(0,0,0,.88) 100%);z-index:1;pointer-events:none}
#relevance .situation-toggle{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;width:100%;padding:20px 18px;border:0;border-radius:4px;background:transparent;color:white;font-family:'DM Sans',Arial,sans-serif;font-weight:400;text-align:left;cursor:pointer}
#relevance .situation-toggle:focus-visible{outline:2px solid white;outline-offset:-4px}
.situation-index{font-size:24px;line-height:1}
.situation-label{font-size:16px;line-height:1.35;transition:opacity .15s}
.is-active .situation-label{opacity:0}
.situation-copy{position:absolute;z-index:2;bottom:42px;left:24px;right:24px;opacity:0;visibility:hidden;transition:opacity .15s}
.is-active .situation-copy{opacity:1;visibility:visible;transition:opacity .3s .45s}
#relevance .situation-copy h3{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(20px,1.7vw,26px);line-height:1.25;font-weight:450;letter-spacing:-.025em;margin:0 0 9px;color:#fff}
#relevance .situation-copy p{font-size:15px;line-height:1.5;margin:0;color:#bbb}
@media(min-width:801px) and (max-width:1100px){.situation-card{height:460px}.situation-card.is-active{flex-grow:4}.situation-copy{left:18px;right:18px}#relevance .situation-toggle{padding:18px 12px}}
@media(max-width:800px){.situation-accordion{flex-direction:column;margin-top:48px}.situation-card{flex:none;height:78px;transition:height .5s ease}.situation-card.is-active{flex:none;height:410px}.situation-photo{object-position:center 48%}#relevance .situation-toggle{padding:20px;flex-direction:row;align-items:flex-start}.situation-label{margin-left:auto}.situation-copy{left:20px;right:20px}#relevance .situation-copy h3{font-size:23px}#relevance .relevance-intro{font-size:16px}}
@media(max-width:400px){.situation-card.is-active{height:410px}}
@media(prefers-reduced-motion:reduce){.situation-card,.situation-photo,.situation-copy,.is-active .situation-copy,.situation-label{transition:none}}

@media(max-width:800px){#relevance.relevance-compact{padding-top:44px}}

@media(max-width:1100px){.situation-break{display:none}}

/* Remove the accumulated gap above the relevance heading. */
#sectors{padding-bottom:48px}

#relevance .relevance-heading>.eyebrow{margin:0 0 16px;color:#aaa}
@media(max-width:800px){.relevance-intro-break{display:none}}


/* ERC introduces the method before its four phases. */
.method > .framework-inline{margin-bottom:48px}

/* About layout study: value proposition, explanation, closing problem. */
.reference-about{padding-top:101px}
.reference-about .about-problem-quote{grid-column:1 / -1;margin:12px auto 0;padding:38px 0 0;border-top:0;max-width:1060px;width:100%;text-align:center}
.reference-about .about-problem-quote p{max-width:none;font-size:clamp(21px,2vw,29px);line-height:1.5;color:#b9b9b2;letter-spacing:-.02em}
.reference-about .about-problem-quote em{font-family:'DM Sans',Arial,sans-serif;font-style:italic;font-weight:300}
.reference-about .about-problem-quote strong{color:#f8f8f4;font-weight:600}
@media(max-width:650px){.reference-about{padding-top:71px}.reference-about .about-problem-quote{margin-top:38px;padding-top:28px}.reference-about .about-problem-quote p{font-size:21px}}

/* A little more breathing room after the About quotation. */
.reference-about{padding-bottom:101px}
@media(max-width:650px){.reference-about{padding-bottom:76px}}

/* Keep the quotation in two deliberate lines on desktop. */
.reference-about .about-problem-quote{max-width:none}
.reference-about .about-problem-quote p{font-size:clamp(20px,1.7vw,28px)}
.about-quote-line{display:block}
@media(max-width:650px){.reference-about .about-problem-quote p{font-size:21px}.about-quote-line + .about-quote-line{margin-top:8px}}

/* Give About Us a distinct title, explanation and closing-quote rhythm. */
.reference-about{padding-top:113px;padding-bottom:110px;row-gap:57px}
.reference-about .intro-bottom{margin-top:60px}
.reference-about .about-problem-quote{padding-top:31px}
@media(max-width:650px){
 .reference-about{padding-top:79px;padding-bottom:84px}
 .reference-about .intro-bottom{margin-top:37px}
 .reference-about .about-problem-quote{margin-top:38px;padding-top:25px}
}

/* Quiet translucent navigation, with no separator or shadow. */
body>header{background:rgba(17,17,17,.78);border:0;box-shadow:none;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
body>header::after{content:none}
@media(max-width:650px){body>header nav{background:rgba(17,17,17,.97);z-index:1}}

/* Compact service details: introduction and unnumbered capabilities. */
.service-dialog .service-dialog-body{padding-top:40px}
.service-dialog .service-capabilities-label{font-size:12px;line-height:1.5;text-transform:uppercase;letter-spacing:.1em;color:#b5a28c;margin:0 0 22px}
.service-dialog .service-capabilities{list-style:none;margin:0 0 32px;padding:0}
.service-dialog .service-capabilities li{display:block;padding:16px 0;border-bottom:1px solid #ffffff26;font-size:16px;line-height:1.5;color:#eeece7;letter-spacing:0}
.service-dialog .service-capabilities li::before{content:none}
.service-dialog .service-capabilities li:last-child{border-bottom:0}
@media(max-width:600px){.service-dialog .service-dialog-body{padding-top:30px}.service-dialog .service-capabilities li{padding:14px 0;font-size:16px}}

/* Compact uppercase navigation inspired by the supplied reference. */
body>header nav a,body>header>.contact,body>header>.menu{font-family:'DM Sans',Arial,sans-serif;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;line-height:1.5}

/* Approved serif navigation; retain the Contact button typography. */
body>header nav a,body>header>.menu{font-family:'Vestige Labels',Georgia,serif;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;line-height:1.5}

/* Compact newsletter editorial cards. */
#perspectives .section-head{align-items:center;margin-bottom:28px;gap:20px;flex-wrap:wrap}
#perspectives .newsletter-heading{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
#perspectives .newsletter-heading h2{margin:0;line-height:1.5}
#perspectives .newsletter-view-all{font-size:13px;color:#666;white-space:nowrap}
#perspectives .carousel-controls{gap:26px;align-self:center}
#perspectives .carousel-controls button{width:auto;height:auto;min-height:44px;padding:6px 0;border:0;font-size:13px}
#perspectives .carousel-controls button:disabled{opacity:.35;cursor:default}
#perspectives .articles{gap:20px;scrollbar-width:none}
#perspectives .articles::-webkit-scrollbar{display:none}
#perspectives .article{flex:0 0 calc((100% - 60px)/3.15)}
#perspectives .article-art{height:auto;aspect-ratio:4/3;border-radius:8px}
#perspectives .article small{font-size:11px;color:#777;margin:17px 0 10px}
#perspectives .article h3{font-size:18px;line-height:1.3;letter-spacing:-.025em}
#perspectives .article-description{font-size:15px;line-height:1.5;color:#545454;margin-top:10px}
@media(max-width:1000px){#perspectives .article{flex-basis:40%}}
@media(max-width:650px){#perspectives .article{flex-basis:82%}#perspectives .newsletter-heading{gap:14px}#perspectives .carousel-controls{gap:20px}}

/* Contact follows the sentence-case project CTA. */
body>header>.contact{font-family:'DM Sans',Arial,sans-serif;font-size:14px;font-weight:400;letter-spacing:0;text-transform:none;line-height:1.25}

#perspectives .art-four{background-image:linear-gradient(#0001,#0007),url('contact-lounge.webp')}


.faq .faq-book-call{background:#111;color:#fff;border-color:#111}

/* Three-phase method: neutral editorial layout with scroll-led copy. */
#method.method-three{background:#111;color:#f5f5f5;text-align:left;padding:90px 4% 35px}
#method .method-introduction{display:grid;grid-template-columns:1fr 2.8fr;gap:50px;margin-bottom:65px}
#method .method-introduction>.eyebrow{margin:0}
#method .method-erc{display:grid;grid-template-columns:1.15fr 1fr;column-gap:55px;align-items:start}
#method .method-kicker{grid-column:1/-1;color:#888;font-size:11px;letter-spacing:.12em;line-height:1.5;margin:0 0 20px}
#method .method-erc h2{font-size:clamp(30px,3vw,44px);font-weight:400;line-height:1.12;letter-spacing:-.04em;margin:0;color:#f5f5f5}
#method #erc-effect{display:inline-block;vertical-align:middle;border:1px solid #666;border-radius:30px;padding:6px 10px;color:#aaa;font:400 11px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:.08em;margin-left:8px}
#method .method-erc-copy{font-size:16px;line-height:1.65;color:#aaa;margin:0}
#method .method-scroll-journey{position:relative;height:1050px}
#method .method-sticky{position:sticky;top:80px;background:#111;padding:40px 0 70px}
#method .method-three-heading{font-size:clamp(30px,3vw,43px);font-weight:400;line-height:1.2;letter-spacing:-.04em;margin:0 0 70px;color:#f5f5f5;opacity:1}
#method .method-three-heading>span:not(.scroll-reveal-word){color:#888}
#method .method-three-heading .scroll-reveal-word{color:inherit}
#method .method-three-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:55px}
#method .method-phase{border:0;background:none;padding:0}
#method .method-phase-number{font-size:12px;line-height:1.5;letter-spacing:.1em;color:#aaa;margin:0 0 35px}
#method .method-phase h3{font-size:clamp(27px,2.7vw,39px);line-height:1.2;letter-spacing:-.035em;font-weight:400;color:#f5f5f5;margin:0 0 30px}
#method .method-phase-copy{font-size:16px;line-height:1.65;color:#aaa;margin:0;max-width:40ch;will-change:opacity,transform}
#method .method-progress{position:relative;height:1px;background:#353535;margin-top:65px}
#method .method-progress-fill{position:absolute;inset:0;background:#aaa;transform-origin:left}
#method .method-progress i{position:absolute;top:-6px;width:1px;height:13px;background:#999}
#method .method-progress i:after{content:'';position:absolute;top:6px;left:-5px;width:11px;height:1px;background:#999}
#method .method-progress i:nth-of-type(1){left:0}
#method .method-progress i:nth-of-type(2){left:33.333%}
#method .method-progress i:nth-of-type(3){left:66.666%}
#method .method-progress i:nth-of-type(4){right:0}
@media(max-width:1000px){#method .method-introduction{grid-template-columns:1fr;gap:30px}#method .method-three-grid{gap:28px}}
@media(max-width:750px){#method.method-three{padding:65px 6%}#method .method-erc{grid-template-columns:1fr;gap:20px}#method .method-kicker{margin:0}#method .method-introduction{margin-bottom:35px}#method .method-scroll-journey{height:auto}#method .method-sticky{position:static;padding:20px 0 0}#method .method-three-heading{margin-bottom:45px}#method .method-three-grid{grid-template-columns:1fr;gap:42px}#method .method-phase-number{margin-bottom:18px}#method .method-phase h3{margin-bottom:20px}#method .method-phase-copy{max-width:none;opacity:1!important;transform:none!important}#method .method-progress{margin-top:42px}}
@media(prefers-reduced-motion:reduce){#method .method-scroll-journey{height:auto}#method .method-sticky{position:static}#method .method-phase-copy{opacity:1!important;transform:none!important}}

/* Center the method introduction and keep the framework explanation together. */
#method .method-introduction{display:block;text-align:center}
#method .method-introduction>.eyebrow{margin:0 0 32px}
#method .method-erc{display:block;max-width:920px;margin:0 auto}
#method .method-erc h2{margin:0 0 24px}
#method .method-erc-copy{max-width:760px;margin:0 auto}

/* Center the full-width eyebrow; reveal each phase as a complete block. */
#method .method-introduction>.eyebrow{width:100%;max-width:none;text-align:center;margin:0 auto 32px}
#method .method-phase h3{font-size:clamp(23px,1.85vw,28px);margin-bottom:25px}
#method .method-phase{will-change:opacity,transform}
#method .method-progress{background:transparent}
#method .method-phase-copy{will-change:auto}
@media(max-width:750px){#method .method-phase{opacity:1!important;transform:none!important}#method .method-phase h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){#method .method-phase{opacity:1!important;transform:none!important}}

/* Bring the first phase into view as its heading enters the viewport. */
#method .method-erc{max-width:1240px}
#method .method-erc-copy{max-width:1240px}
#method .method-erc-copy>span{display:block}
#method .method-introduction{margin-bottom:45px}
#method .method-three-heading{margin-bottom:16px}
#method .method-three-subtitle{font-size:16px;line-height:1.5;color:#999;margin:0 0 42px}
#method .method-scroll-journey{height:auto}
#method .method-sticky{padding-bottom:40px}
@media(max-width:750px){#method .method-erc-copy>span{display:inline}#method .method-three-subtitle{margin-bottom:32px}#method .method-introduction{margin-bottom:30px}}

/* Hold the complete method scene until all three phases are revealed. */
#method.method-three{padding:0;position:relative}
#method .method-pinned-scene{padding:65px 4% 35px;min-height:calc(100svh - 62px);background:#111;box-sizing:border-box}
#method .method-sticky{position:static}
#method .method-scroll-journey{height:auto}
@media(max-width:750px){#method .method-pinned-scene{padding:65px 6%;min-height:0}}
@media(prefers-reduced-motion:reduce){#method .method-pinned-scene{position:static!important;min-height:0}#method.method-three{height:auto!important}}

/* Discreet superscript acronym beside the framework name. */
#method #erc-effect{vertical-align:super;border:0;border-radius:0;background:none;padding:0;margin:0 0 0 5px;font:400 .32em/1 Arial,sans-serif;letter-spacing:0;color:inherit;text-decoration:none;cursor:pointer}
#method #erc-effect:focus-visible{outline:1px solid #aaa;outline-offset:4px}

/* Keep scrolling available without a visible scrollbar. */
html,body,*{scrollbar-width:none}
*::-webkit-scrollbar{display:none;width:0;height:0}
#method #erc-effect{position:relative;vertical-align:baseline;top:-1.65em;margin-left:2px;font:400 .2em/1 'DM Sans',Arial,sans-serif;letter-spacing:.015em}
.about-quote-line{will-change:opacity,transform}

#relevance .relevance-closing-quote{max-width:1100px;margin:70px auto 0;padding:0;border:0;text-align:center}#relevance .relevance-closing-quote p{max-width:none;margin:0;font-size:clamp(21px,1.7vw,28px);line-height:1.5;font-style:italic;font-weight:300;letter-spacing:-.02em;color:#aaa}@media(max-width:650px){#relevance .relevance-closing-quote{margin-top:45px}}

.reference-about .about-problem-quote p{font-size:clamp(19px,1.55vw,25px)}
@media(max-width:650px){.reference-about .about-problem-quote p{font-size:19px}}

#relevance .relevance-heading h2{font-size:clamp(32px,3.5vw,50px)}
@media(max-width:650px){#relevance .relevance-heading h2{font-size:32px}}

#perspectives .newsletter-intro{margin-bottom:44px}#perspectives .newsletter-intro h2{font-size:clamp(32px,3.5vw,50px);line-height:1.15;font-weight:400;letter-spacing:-.04em;margin:0 0 18px;color:#171717}#perspectives .newsletter-intro h2>span:not(.scroll-reveal-word){color:#858585}#perspectives .newsletter-intro p{font-size:17px;line-height:1.5;color:#666;margin:0;max-width:none}@media(max-width:650px){#perspectives .newsletter-intro{margin-bottom:32px}#perspectives .newsletter-intro p{font-size:16px}}

#perspectives .newsletter-intro{margin-bottom:24px}
@media(max-width:650px){#perspectives .newsletter-intro{margin-bottom:20px}}

#perspectives{padding-top:40px;padding-bottom:40px}
#perspectives .newsletter-intro{margin-bottom:12px}
#perspectives .newsletter-intro h2{margin-bottom:10px}
#perspectives .section-head{margin-bottom:16px}
@media(max-width:650px){#perspectives{padding-top:30px;padding-bottom:30px}#perspectives .newsletter-intro{margin-bottom:10px}}

/* Fixed selection: ten marks per row, no horizontal scrolling. */
#impact .brand-selection{overflow:clip;padding-bottom:0}
#impact .brand-selection-row{display:grid;width:100%;grid-template-columns:repeat(10,minmax(0,1fr));gap:14px;animation:none;transform:none}
#impact .brand-selection .brand-logo{width:auto;min-width:0;max-width:100%;flex:auto;padding:4px}
#impact .brand-selection-row>.brand-logo:nth-child(n+11){display:none}
#impact .impact-dots{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:18px}
#impact .impact-dot{width:4px;height:4px;border-radius:50%;background:#777;opacity:.35;transition:opacity .45s}
#impact .impact-dot.is-active{opacity:1;background:#aaa}
.sector-back{cursor:pointer}
@media(max-width:750px){#impact .brand-selection-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}}
@media(max-width:420px){#impact .brand-selection-row{grid-template-columns:repeat(3,minmax(0,1fr))}}

#sectors .sector-explore:focus-visible,#sectors .sector-return:focus-visible{outline:none;text-decoration:underline;text-underline-offset:5px}

#impact .brand-selection{padding-left:24px;padding-right:0;overflow:clip}
#impact .brand-selection-row{display:flex;width:max-content;gap:22px}
#impact .brand-selection .brand-logo{display:flex;flex:0 0 clamp(130px,9vw,180px);width:clamp(130px,9vw,180px);max-width:none}
#impact .brand-selection-row>.brand-logo:nth-child(n+11){display:flex}

#perspectives .newsletter-signup{display:flex;gap:10px;max-width:590px;margin:20px 0 24px;padding:6px;border-radius:12px;background:#f5f5f5}
#perspectives .signup-email-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#perspectives .newsletter-signup input{flex:1;min-width:0;border:1px solid #dedede;border-radius:9px;background:#fff;padding:15px 18px;font:400 16px/1.4 'DM Sans',Arial,sans-serif;color:#171717}
#perspectives .newsletter-signup input::placeholder{color:#797d86}
#perspectives .newsletter-signup button{flex:0 0 42%;border-radius:9px;background:#171717;color:#f8f8f4;padding:13px 20px;font:400 23px/1.2 'Instrument Serif',Georgia,serif;white-space:nowrap}
#perspectives .newsletter-signup-status{font-size:14px;color:#666;margin:-12px 0 20px}
@media(max-width:480px){#perspectives .newsletter-signup{gap:6px}#perspectives .newsletter-signup input{padding:13px 10px}#perspectives .newsletter-signup button{font-size:20px;padding:13px 10px}}

/* Match the supplied two-row brand composition across the viewport. */
#impact .industry-leaders{width:100vw;margin-left:calc(50% - 50vw);margin-right:0}
#impact .brand-selection{padding:0 20px;gap:6px}
#impact .brand-selection-row{display:grid;width:100%;grid-template-columns:repeat(10,minmax(0,1fr));gap:22px}
#impact .brand-selection .brand-logo{width:auto;min-width:0;max-width:100%;flex:auto}
#impact .brand-selection-row>.brand-logo:nth-child(n+11){display:none}
@media(max-width:750px){#impact .brand-selection-row{width:1500px;grid-template-columns:repeat(10,minmax(0,1fr));gap:22px}}

/* Align logo rows within Impact without negative viewport offsets. */
#impact{padding-left:0;padding-right:0}
#impact .impact-reference-bottom,#impact .impact-carousel{width:90%;margin-left:auto;margin-right:auto}
#impact .industry-leaders{width:100%;max-width:100%;margin-left:0;margin-right:0}
#impact .brand-selection{width:100%;max-width:100%;padding-left:24px;padding-right:24px;grid-template-columns:minmax(0,1fr)}
#impact .brand-selection-row{margin-left:0;translate:none;transform:none;justify-self:start}

#impact .brand-selection{margin:0;white-space:normal;font-size:16px;letter-spacing:normal;word-spacing:normal}
#perspectives .newsletter-signup{width:430px;max-width:100%;height:56px;gap:10px;padding:5px;margin:16px 0 20px;border-radius:10px;align-items:stretch}
#perspectives .newsletter-signup input{width:0;flex:1 1 0;height:46px;padding:0 14px;border-radius:8px;font-size:15px;line-height:normal}
#perspectives .newsletter-signup button{flex:0 0 43%;height:46px;padding:0 12px;border-radius:8px;font-size:20px;line-height:1;background:#211a13}
@media(max-width:480px){#perspectives .newsletter-signup{gap:8px}#perspectives .newsletter-signup input{font-size:14px;padding:0 10px}#perspectives .newsletter-signup button{font-size:18px}}

/* Compact subscription beside the editorial introduction. */
#perspectives .newsletter-intro{display:grid;grid-template-columns:minmax(0,1fr) 360px;column-gap:28px;row-gap:12px;align-items:center;margin-bottom:24px}
#perspectives .newsletter-intro h2{grid-column:1 / -1;margin-bottom:0}
#perspectives .newsletter-intro>p:not(.newsletter-signup-status){grid-column:1;grid-row:2}
#perspectives .newsletter-signup{grid-column:2;grid-row:2;width:360px;height:48px;max-width:100%;margin:0;padding:4px;gap:10px;border-radius:10px}
#perspectives .newsletter-signup input{height:40px;padding:0 12px;font:400 14px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:normal}
#perspectives .newsletter-signup button{display:flex;align-items:center;justify-content:center;flex:0 0 42%;height:40px;padding:0 10px;font:400 18px/1.2 'Vestige Labels',Georgia,serif;letter-spacing:normal;text-transform:none;transform:none;border-radius:8px}
#perspectives .newsletter-intro .newsletter-signup-status{grid-column:2;font-size:13px;margin:0}
#perspectives .article-description{font-size:13px;line-height:1.55}
@media(max-width:900px){#perspectives .newsletter-intro{grid-template-columns:minmax(0,1fr);gap:12px}#perspectives .newsletter-signup{grid-column:1;grid-row:3}#perspectives .newsletter-intro .newsletter-signup-status{grid-column:1}}

#perspectives .newsletter-intro{display:block;margin-bottom:24px}
#perspectives .newsletter-intro h2{margin-bottom:10px}

/* Let expanded challenge copy fit naturally on narrow screens. */
@media(max-width:750px){#relevance .situation-card.is-active{height:auto;min-height:410px}#relevance .is-active .situation-copy{position:relative;inset:auto;margin:120px 20px 40px}}

#method .method-scroll-hint{max-width:none;margin:22px 0 0;text-align:center;font:400 11px/1.4 "DM Sans",Arial,sans-serif;letter-spacing:.03em;color:#777}

/* Homepage links use the same editorial typography and alignment as About. */
body>header.home-editorial-nav nav{margin-left:auto;gap:28px;align-items:center}
body>header.home-editorial-nav nav a,body>header.home-editorial-nav>.menu{font-family:'Cormorant Hero',Georgia,serif;font-size:15px;font-weight:400;letter-spacing:0;text-transform:none;color:#f8f8f4;line-height:1.5}
body>header.home-editorial-nav .brand{flex-shrink:0}
@media(max-width:650px){body>header.home-editorial-nav>.menu{margin-left:auto}body>header.home-editorial-nav nav{align-items:flex-start}body>header.home-editorial-nav nav a{font-size:18px}}

/* Homepage navigation: clear over the hero, translucent over the page. */
body>header.home-editorial-nav{position:fixed;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:1px solid transparent;transition:background-color .2s ease,border-color .2s ease}
body>header.home-editorial-nav.past-hero{background:rgba(17,17,17,.78);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom-color:rgba(255,255,255,.12)}
@media(prefers-reduced-motion:reduce){body>header.home-editorial-nav{transition:none}}

/* Align the visible logo edge with the hero copy, including its transparent inset. */
body>header.home-editorial-nav{padding-left:4%}
body>header.home-editorial-nav .brand img{transform:translateX(-12.19512%)}
@media(max-width:650px){body>header.home-editorial-nav{padding-left:6%}}

@media(min-width:651px){body>header.home-editorial-nav nav a,body>header.home-editorial-nav>.menu{font-size:16px}}

/* Let FAQ answers use their card width and keep expanding cards stable. */
#faq details p{max-width:none;width:100%}
#faq{overflow-anchor:none}

/* Preserve the small dots with a comfortable transparent hit area. */
#impact button.impact-dot{position:relative;padding:0;border:0;cursor:pointer;transition:opacity .28s}
#impact button.impact-dot:before{content:"";position:absolute;inset:-9px -3px}
#impact button.impact-dot:focus-visible{outline:1px solid #eee;outline-offset:5px}

/* Keep editorial cards stable on hover; preserve horizontal browsing. */
#perspectives .article:hover{opacity:1}

/* Homepage mobile controls; desktop declarations unchanged. */
@media(max-width:650px){
  body>header.home-editorial-nav>.menu{min-width:44px;min-height:44px;padding:0 8px}
  body>header.home-editorial-nav nav{top:100%;max-height:calc(100svh - 70px);overflow-y:auto;overscroll-behavior-y:contain;gap:4px;padding-top:12px;padding-bottom:20px;background:#111}
  body>header.home-editorial-nav nav a{display:flex;align-items:center;min-height:44px;width:100%;padding:8px 0}
  body:has(>header.home-editorial-nav) .hero h1 .hero-line{white-space:normal}
  #impact .brand-selection{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain}
  #impact .impact-dots{gap:0}
  #impact button.impact-dot{flex:0 0 44px;width:44px;height:44px;border-radius:0;background:transparent}
  #impact button.impact-dot:before{inset:20px;border-radius:50%;background:#777}
  #impact button.impact-dot.is-active:before{background:#aaa}
  #faq summary{gap:12px}
  #faq summary span{flex:0 0 24px;text-align:center}
  #faq details p{padding-right:0;font-size:16px;line-height:1.6}
}

/* Mobile corrections after on-device review. */
@media(max-width:650px){
  body>header.home-editorial-nav{position:fixed;top:0;left:0;right:0;width:100%;min-height:60px;padding:8px 6%;margin:0;transform:none;translate:none;animation:none;z-index:100;background:#111;backdrop-filter:none;-webkit-backdrop-filter:none}
  body>header.home-editorial-nav.past-hero{background:#111;backdrop-filter:none;-webkit-backdrop-filter:none}
  body:has(>header.home-editorial-nav) .hero{height:auto;min-height:100svh;align-items:center;padding:112px 6% 52px}
  body:has(>header.home-editorial-nav) .hero-copy{min-width:0}
  body:has(>header.home-editorial-nav) .hero h1{font-size:clamp(38px,11.3vw,54px)!important;line-height:1.06!important;margin:22px 0 26px}
  body:has(>header.home-editorial-nav) .hero h1 .hero-line{white-space:normal}
  body:has(>header.home-editorial-nav) .hero .eyebrow{font-size:11px;max-width:none}
  body:has(>header.home-editorial-nav) .hero-bottom>p.hero-value:first-child{font-size:16px;line-height:1.55}
  body:has(>header.home-editorial-nav) .hero .actions{display:grid;grid-template-columns:1fr;gap:12px;margin-top:26px;max-width:340px}
  body:has(>header.home-editorial-nav) .hero .actions .outline{min-height:48px}
  body:has(>header.home-editorial-nav){font-variant-emoji:text}
  dialog.service-dialog{position:fixed;inset:76px 0 auto;width:calc(100% - 32px);height:auto;max-height:calc(100svh - 96px);max-height:calc(100dvh - 96px);margin:0 auto;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}
  .service-dialog .service-dialog-banner{padding:52px 22px 24px}
  .service-dialog .service-dialog-body{padding:24px 22px max(28px,env(safe-area-inset-bottom))}
  .service-dialog .service-capabilities{margin-bottom:24px}
  .service-dialog .service-capabilities li{padding:12px 0}
  .service-dialog .service-actions{padding-bottom:4px}
  .service-dialog .service-actions .outline{width:100%;min-height:48px}
  .service-dialog .close{width:44px;height:44px;top:8px;right:8px}
  #method .method-pinned-scene{padding:52px 6%}
  #method .method-introduction{text-align:left;margin-bottom:36px}
  #method .method-introduction>.eyebrow{text-align:left;margin-bottom:20px}
  #method .method-erc h2{font-size:32px;margin-bottom:18px}
  #method .method-sticky{padding:0}
  #method .method-three-heading{font-size:30px;margin-bottom:14px}
  #method .method-three-subtitle{margin-bottom:30px}
  #method .method-three-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
  #method .method-phase{min-width:0;text-align:left}
  #method .method-phase-number{margin-bottom:10px}
  #method .method-phase h3{font-size:26px;margin-bottom:12px}
  #method .method-phase-copy{max-width:none;font-size:16px;line-height:1.6}
  #method .method-progress,#method .method-scroll-hint{display:none}
  #impact .impact-dots{gap:0;margin-top:8px}
  #impact button.impact-dot,#impact button.impact-dot.is-active{appearance:none;-webkit-appearance:none;box-shadow:none;background:transparent;border:0;border-radius:0;padding:0;min-width:0;min-height:0;width:44px;height:44px;flex:0 0 44px;opacity:1}
  #impact button.impact-dot:before{content:"";position:absolute;inset:auto;top:50%;left:50%;width:4px;height:4px;transform:translate(-50%,-50%);border-radius:50%;background:#777;opacity:.45;pointer-events:none}
  #impact button.impact-dot.is-active:before{background:#aaa;opacity:1}
}

/* Mobile editorial refinements and native swipeable phase cards. */
@media(max-width:650px){
  body:has(>header.home-editorial-nav) .hero-copy{position:relative;top:24px}
  #services>h2 br{display:block}
  #method .method-three-heading>span:not(.scroll-reveal-word){display:block}
  #method .method-three-subtitle{font-size:14px;line-height:1.5;margin-bottom:24px}
  #method .method-three-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:92%;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;align-items:stretch;padding-bottom:4px}
  #method .method-phase{background:#191919;border-radius:8px;padding:28px 24px;scroll-snap-align:start;scroll-snap-stop:always}
  #method .method-phase-number{margin-bottom:16px}
  #method .method-phase h3{margin-bottom:18px}
  #impact button.impact-dot,#impact button.impact-dot.is-active{width:24px;flex-basis:24px}
  #impact .impact-track .metric-reference{text-align:center;margin-left:auto;margin-right:auto}
  #impact .impact-track .metric-reference p{text-align:center}
  #impact .metric-reference .brand-quote-attribution{justify-content:center;text-align:center}
  #impact .metric-reference .brand-quote-attribution>div{flex:0 1 auto}
}

/* Mobile refinement from the latest phone screenshots. */
@media(max-width:650px){
  body:has(>header.home-editorial-nav) .hero-copy{top:48px}
  body:has(>header.home-editorial-nav) .hero{padding-bottom:76px}
  body:has(>header.home-editorial-nav) .hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 8%,rgba(0,0,0,.32) 32%,rgba(0,0,0,.32) 70%,transparent 100%);pointer-events:none}
  #services>h2 br{display:none}
  #impact .impact-carousel{padding-right:0;margin-bottom:8px}
  #impact .impact-track .evidence-card{gap:16px;padding:0;align-items:start}
  #impact .impact-track .metric-reference p{font-size:14px;line-height:1.5}
  #impact .metric-reference .brand-quote-attribution{margin-top:12px}
  #impact .impact-dots{margin-top:0;gap:0}
  #impact button.impact-dot,#impact button.impact-dot.is-active{width:16px;height:28px;flex-basis:16px}
  #impact button.impact-dot:before{width:3px;height:3px}
  #impact .industry-leaders{margin-top:8px;padding-top:6px}
  #impact .industry-leaders>.eyebrow{margin-bottom:12px}
  #impact .brand-selection{padding-left:6%;padding-right:6%;gap:2px}
  #impact .brand-selection-row{width:max-content;grid-template-columns:repeat(10,88px);gap:12px}
  #impact .brand-selection .brand-logo{height:48px;padding:5px}
  #impact .brand-selection .brand-logo img{width:78px;height:28px;max-height:28px;object-fit:contain}
}

/* Mobile review: compact service popup and section spacing. */
@media(max-width:650px){
  dialog.service-dialog{inset:0;margin:auto;height:fit-content;max-height:calc(100svh - 32px);max-height:calc(100dvh - 32px);overflow:hidden}
  .service-dialog .close{background:none;border:0;border-radius:0;box-shadow:none;outline:none;font-size:30px;line-height:1;padding:0}
  .service-dialog .close:focus-visible{text-decoration:underline;text-underline-offset:4px}
  .service-dialog .service-dialog-banner{padding:38px 22px 18px}
  .service-dialog .service-dialog-banner h2{font-size:28px;margin:12px 0}
  .service-dialog .service-dialog-banner p:last-child{font-size:15px;line-height:1.45;margin:0}
  .service-dialog .service-dialog-body{padding:18px 22px}
  .service-dialog .service-capabilities-label{margin-bottom:10px;font-size:11px}
  .service-dialog .service-capabilities{margin-bottom:16px}
  .service-dialog .service-capabilities li{font-size:15px;line-height:1.4;padding:9px 0}
  .service-dialog .service-actions{padding:0}
  .service-dialog .service-actions .outline{min-height:44px;padding:10px 16px}
  #impact .brand-selection{padding-left:8px;padding-right:8px}
  #faq{padding-top:28px}
  #perspectives{padding-bottom:18px}
}
@media(max-width:650px) and (max-height:560px){
  .service-dialog .service-dialog-banner{padding:28px 18px 12px}
  .service-dialog .service-dialog-banner h2{font-size:24px;margin:8px 0}
  .service-dialog .service-dialog-banner p:last-child{font-size:14px;line-height:1.35}
  .service-dialog .service-dialog-body{padding:12px 18px}
  .service-dialog .service-capabilities li{font-size:14px;padding:6px 0}
  .service-dialog .service-capabilities{margin-bottom:10px}
}

/* Mobile: lower the hero copy and keep the emphasized quote phrases intact. */
@media(max-width:650px){
  body:has(>header.home-editorial-nav) .hero-copy{top:68px}
  .reference-about .about-problem-quote p{font-size:17px;line-height:1.55;text-wrap:balance}
  .reference-about .about-problem-quote strong{white-space:nowrap}
}

/* Mobile hero and closing actions share the Improve programme fill. */
@media(max-width:650px){
  .hero .actions .outline,.closing .entry-routes .outline{background:#141414}
  .hero .actions .outline:hover,.closing .entry-routes .outline:hover{background:#292929}
}

/* Tighten the mobile gap between the newsletter subtitle and its label. */
@media(max-width:650px){
  #perspectives .newsletter-intro{margin-bottom:12px}
}


/* Keep each footer phrase on its own mobile line. */
@media(max-width:650px){
  .footer-top>p{font-size:clamp(14px,4.1vw,18px);line-height:1.6}
  .footer-top>p>.footer-copy-line{display:block}
  .footer-top>p:has(>.footer-copy-line)>br{display:none}
}

/* Mobile reviews: one continuous swipeable row with the next card visible. */
@media(max-width:650px){
  .reviews .review-wall{display:grid;grid-auto-flow:column;grid-auto-columns:88%;align-items:stretch;gap:20px;padding:0 6%;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:6vw;scrollbar-width:none}
  .reviews .review-wall::-webkit-scrollbar{display:none}
  .reviews .review-row,.reviews .review-row+.review-row{display:contents}
  .reviews .review-card{width:auto;min-width:0;scroll-snap-align:start;overflow-wrap:break-word}
}

/* Mobile review heading and the transition into the newsletter. */
@media(max-width:650px){
  .reviews h2 .review-title-opening{display:block}
  .reviews{padding-bottom:44px}
  #perspectives{padding-top:20px}
}

/* Give the approved hero supporting sentence its full desktop width. */
@media(min-width:901px){body:has(>header.home-editorial-nav) .hero-bottom{max-width:900px}body:has(>header.home-editorial-nav) .hero-bottom>p.hero-value:first-child{max-width:none}}

/* Compact phase headings and keyword summaries. */
#method .method-phase-number{margin-bottom:20px}
#method .method-phase h3{font-size:clamp(27px,2.3vw,34px);margin-bottom:14px}
#method .method-phase-copy{font-size:15px}
#method .method-progress{margin-top:36px}
@media(max-width:750px){
  #method .method-phase-number{margin-bottom:10px}
  #method .method-phase h3{font-size:29px;margin-bottom:12px}
  #method .method-progress{margin-top:28px}
}

/* A soft surface follows the phase selected by the progress line. */
@media(min-width:751px){
  #method .method-phase{position:relative;isolation:isolate}
  #method .method-phase::before{content:"";position:absolute;inset:-16px -18px;border-radius:0;background:rgba(255,255,255,.045);border:0;opacity:0;transition:opacity 420ms ease;pointer-events:none;z-index:-1}
  #method .method-phase.is-method-active::before{opacity:1}
}
@media(min-width:751px) and (max-width:1000px){
  #method .method-phase::before{left:-10px;right:-10px}
}
@media(prefers-reduced-motion:reduce){
  #method .method-phase::before{display:none;transition:none}
}

/* Keep the Spanish written metric unit proportional to the figure. */
#impact .evidence-number>span.metric-unit-word{font-size:.35em;letter-spacing:0}

/* Industry cards: centered titles with the explore action at the foot. */
#sectors .sector-front{justify-content:flex-end}
#sectors .sector-front>h3{position:absolute;top:50%;left:28px;right:28px;transform:translateY(-50%);margin:0;text-align:center}
@media(max-width:650px){#sectors .sector-front>h3{left:27px;right:27px}}

/* Proportional industry-card size trial: 85% of the preceding layout. */
#sectors .sector-grid{width:85%;margin-inline:auto;gap:20.4px}
#sectors .sector-flip{zoom:.85}

/* Balance industry titles and match the closing card to the five image cards. */
#sectors .sector-front>h3{font-size:32px}
#sectors .sector-perspective{zoom:.85;height:450.8px;min-height:450.8px}
@media(max-width:650px){#sectors .sector-front>h3{font-size:34px}#sectors .sector-perspective{height:441.6px;min-height:441.6px}}

/* Numbered dimensions in the impact FAQ. */
#faq .impact-measurement-list{margin:0;padding-left:1.5em;color:#666}
#faq .impact-measurement-list li{padding-left:.25em}
#faq .impact-measurement-list li::marker{font-weight:700}

/* Temporarily hide newsletter content while retaining its navigation link. */
.section.perspectives[hidden]{display:none}
/* Four genuine testimonials; preserve each card’s existing interior. */
@media(min-width:769px){.reviews .review-row{flex-wrap:wrap;max-width:calc(100vw - 80px)}}

/* Supplied testimonial logos retain their original aspect ratios. */
.review-logo-image{height:90px;display:flex;align-items:center}
.review-logo-image img{display:block;width:auto;height:auto;max-width:100%;max-height:90px;object-fit:contain}

.review-logo-image img[src$="embassy-spain-denmark-v2.png"]{max-width:80%;max-height:72px}

.review-logo-image img[src$="bosque-de-matasnos.png"]{max-width:68%;max-height:61px}
/* Compensate for the white margin embedded in the supplied Haps image. */
.review-logo-image img[src$="haps.jpg"]{transform:translateX(-20px)}

/* Real testimonial portraits, framed within the existing circular avatars. */
.review-avatar.portrait-anne{background-image:url("review-portraits/anne.png");background-size:cover;background-position:center 35%}
.review-avatar.portrait-francis{background-image:url("review-portraits/francis.webp");background-size:cover;background-position:center 35%}
.review-avatar.portrait-carlota{background-image:url("review-portraits/carlota.jpg");background-size:cover;background-position:center 35%}
.review-avatar.portrait-pernille{background-image:url("review-portraits/pernille.webp");background-size:cover;background-position:center 35%}
.review-avatar.portrait-jaime{background-image:url("review-portraits/jaime.webp");background-size:cover;background-position:center 35%}
.review-avatar.portrait-anne{background-size:200% auto;background-position:50% 25%}
.review-avatar.portrait-pernille{background-size:250% auto;background-position:47% 7%}

/* Mobile service hierarchy and phase labels. */
@media(max-width:650px){
  #services .service-card h3{font-size:31px}
  #services .service-card .card-bottom>p{font-size:19px;line-height:1.45}
}
@media(max-width:750px){
  #method .method-phase-number{font-weight:700}
}
/* Match the mobile swipe order without changing desktop rows. */
@media(max-width:768px){
  .reviews .review-card:has(.portrait-carlota){order:1}
  .reviews .review-card:has(.portrait-francis){order:2}
  .reviews .review-card:has(.portrait-pernille){order:3}
  .reviews .review-card:has(.portrait-jaime){order:4}
  .reviews .review-card:has(.portrait-anne){order:5}
}

/* Keep copy and photo geometry stable throughout mobile expansion. */
@media(max-width:800px){
  #relevance .situation-card{height:78px;min-height:0;transition:height .85s cubic-bezier(.22,.61,.36,1)}
  #relevance .situation-card.is-active{height:var(--situation-expanded-height,410px);min-height:0}
  #relevance .situation-card .situation-copy{position:absolute;top:120px;bottom:auto;left:20px;right:20px;margin:0;transition:opacity .18s ease,visibility 0s .18s}
  #relevance .situation-card.is-active .situation-copy{transition:opacity .4s ease .3s,visibility 0s}
  #relevance .situation-photo{height:var(--situation-expanded-height,410px);max-height:none;object-position:center 48%;transition:filter .85s ease}
}
@media(max-width:800px) and (prefers-reduced-motion:reduce){
  #relevance .situation-card,#relevance .situation-card .situation-copy,#relevance .situation-card.is-active .situation-copy,#relevance .situation-photo{transition:none}
}

/* Compact mobile FAQ heading-to-action spacing. */
@media(max-width:650px){
  #faq>div:first-child>h2{margin-bottom:18px}
  #faq .faq-book-call{margin-top:0}
}

/* Services share the Industries turn at every viewport. */
 #services .mobile-service-flip{min-width:0;perspective:1200px}
 #services .mobile-service-inner{position:relative;display:block;height:520px;min-height:520px;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.22,.61,.36,1)}
 #services .mobile-service-flip.is-flipped .mobile-service-inner{transform:rotateY(180deg)}
 #services .mobile-service-front,#services .mobile-service-back{position:absolute;inset:0;min-width:0;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:8px}
 #services .mobile-service-front{transform:rotateY(0deg);transition:none}
 #services .mobile-service-back{transform:rotateY(180deg);display:flex;flex-direction:column;padding:0;color:#fff;background:#151515;text-align:left;overflow-wrap:break-word;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;cursor:pointer}
 #services .mobile-service-banner{flex-shrink:0;padding:12px 20px 18px;background:linear-gradient(rgba(0,0,0,.65),rgba(0,0,0,.65)),var(--service-back-photo) center/cover}
 #services .mobile-service-body{display:flex;flex-direction:column;align-items:flex-start;flex:1 0 auto;min-height:min-content;padding:18px 20px 20px;background:#151515}
 #services .mobile-service-return{min-height:44px;min-width:44px;padding:0;margin:-10px 0 -2px;font-size:20px;color:#fff;text-align:left}
 #services .mobile-service-back h3{font-size:24px;line-height:1.15;margin:0 0 10px}
 #services .mobile-service-intro{font-size:14px;line-height:1.4;margin:0;color:#fff}
 #services .mobile-service-label{font-size:11px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px}
 #services .mobile-service-back ul{display:flex;flex-direction:column;flex:1;list-style:none;margin:0 0 18px;padding:0;width:100%}
 #services .mobile-service-back li{display:flex;align-items:center;flex:1;font-size:14px;line-height:1.4;padding:7px 0;border-bottom:1px solid #ffffff40}
 #services .mobile-service-body>.outline{margin-top:auto;min-height:44px;padding:8px 14px;font-size:12px;line-height:1.25;border-color:#ffffffa0;background:#1118;color:#fff}
@media(max-width:1000px){#services .mobile-service-inner{height:475px;min-height:475px}}
@media(max-width:650px){#services .mobile-service-inner{height:455px;min-height:455px}}
@media(prefers-reduced-motion:reduce){#services .mobile-service-inner{transition:none}}
