/* 2050 Expert / Revenue Explorer. Brand-derived pixels, emerald and acid lime. */
:root{--paper:#f6f8f3;--green:#073d2b;--ink:#123c2c;--lime:#deff4d;--night:#050c09;--emerald:#00b77c;--line:#d3dfd2}
header{background:var(--night);color:#fff}header .wrap{height:102px;border-bottom-color:#ffffff20}.brand img{width:147px;height:auto;mix-blend-mode:screen}.nav{color:#d4dfd6}.nav .btn{background:var(--lime);color:var(--night);border-radius:0}.menu-toggle{color:#fff;border-color:#50715e}.btn{border-radius:0;transition:background .18s,transform .18s,box-shadow .18s}.btn:hover{box-shadow:4px 4px 0 #00ac7040}.btn-lime:hover{box-shadow:4px 4px 0 #fff3}.eyebrow{font-family:Consolas,'Courier New',monospace;letter-spacing:1.7px}.skip{color:var(--night)}
.revenue-stage{color:#fff;background:var(--night);position:relative;overflow:hidden;isolation:isolate}.revenue-stage:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 77% 35%,#006d384a,transparent 53%);z-index:-1}.stage-grid{display:grid;grid-template-columns:1fr 1.06fr;align-items:center;gap:30px;padding-top:42px;padding-bottom:27px;position:relative}.stage-copy{z-index:2}.stage-copy .eyebrow{color:#9fb5a5;font-size:10px}.live-dot{display:inline-block;width:6px;height:6px;background:var(--lime);margin-right:9px;box-shadow:0 0 14px #ddff4d80}.stage-copy h1{font-size:clamp(60px,6.9vw,97px);font-weight:600;letter-spacing:-5.7px;line-height:.96;margin:25px 0 24px}.stage-copy h1 em{font-style:normal;color:var(--lime);font-weight:600}.stage-copy .proposition{font-size:17px;line-height:1.6;color:#b7cbbe;max-width:500px}.stage-copy .proposition strong{color:#fff;font-weight:400}.stage-copy .hero-actions{margin-top:26px;gap:22px}.stage-copy .textlink{color:#d6e5d8;font-size:12px;border-color:#78977c}.stage-copy .btn{font-size:13px;gap:30px;padding:16px 20px}
.field{height:490px;min-width:0;position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center}.field canvas{position:absolute;inset:0;width:100%;height:100%;opacity:1;pointer-events:none}.field:before{content:'';position:absolute;inset:15px;background-image:radial-gradient(#9bd5ae24 .7px,transparent .8px);background-size:24px 24px;mask-image:radial-gradient(ellipse,#000 20%,transparent 70%)}.field-label{position:absolute;top:14px;left:10px;right:10px;display:flex;justify-content:space-between;font:9px Consolas,monospace;letter-spacing:1px;color:#7f9b88}.field-center{width:190px;text-align:center;position:relative;pointer-events:none;z-index:1;text-shadow:0 2px 20px #021608}.field-center small{font:9px Consolas,monospace;letter-spacing:2px;display:block;color:#a8cbb0;margin-bottom:10px}.field-center strong{font-size:29px;font-weight:500;line-height:1.05;letter-spacing:-1px;display:block}.field-center span{display:block;font-size:10px;letter-spacing:2px;color:var(--lime);margin-top:13px}.field-footer{position:absolute;bottom:10px;left:10px;right:10px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#88a892;font:9px Consolas,monospace;letter-spacing:.6px}.motion-button{color:#b5ccbc;border:1px solid #47624b;background:#06190e;padding:8px 10px;min-height:32px;font:10px Consolas,monospace}.motion-button:hover{color:#fff;border-color:#dfff4d}.field-fallback{position:absolute;width:72%;aspect-ratio:1;border:1px solid #5fff5960;border-radius:50%;transform:rotateX(55deg) rotateZ(-30deg);box-shadow:0 0 60px #45ef3740,inset 0 0 45px #45ef3720}.field[data-canvas="ready"] .field-fallback{display:none}
.route-intro{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff25;padding:21px 0 16px;gap:18px}.route-intro p{font-size:12px;color:#b2c6b8}.route-intro span{font:9px Consolas,monospace;letter-spacing:1px;color:#84a290}.routes{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.route-button{position:relative;overflow:hidden;padding:19px 21px 18px;text-align:left;border:1px solid #3c5541;color:#eef7ef;background:#0d1d13;min-height:119px;transition:background .2s,border-color .2s,transform .2s}.route-button:before{content:'';position:absolute;width:180px;height:180px;left:var(--mx,50%);top:var(--my,50%);transform:translate(-50%,-50%);background:radial-gradient(circle,#80ff6930,transparent 65%);pointer-events:none;opacity:0;transition:opacity .18s}.route-button:hover:before{opacity:1}.route-button[aria-pressed="true"]{background:#deff4d;color:#0b2111;border-color:#deff4d}.route-button:hover{transform:translateY(-3px);border-color:#b7f794}.route-number{font:9px Consolas,monospace;opacity:.65;display:block;letter-spacing:1px;margin-bottom:9px}.route-button strong{font-weight:500;font-size:23px;letter-spacing:-.7px;display:block}.route-button .route-short{display:block;font-size:11px;opacity:.75;margin-top:8px;padding-right:24px}.route-arrow{position:absolute;right:18px;top:20px;font-size:23px;transition:transform .2s}.route-button:hover .route-arrow{transform:translate(3px,-3px)}.route-details{display:flex;justify-content:space-between;gap:25px;padding:21px 0 29px;min-height:86px}.route-details h2{font-size:18px;font-weight:500;letter-spacing:-.3px;max-width:380px}.route-details p{font-size:12px;color:#a8c3af;line-height:1.65;max-width:530px}.routes .route-button:focus-visible{outline-color:#fff}.revenue-stage a:focus-visible,.motion-button:focus-visible{outline-color:#deff4d}
.clients{border-top:0;padding:32px 0 34px}.client-row>p{font-size:10px}.wordmark{transition:opacity .2s,transform .2s}.wordmark:hover{transform:translateY(-3px)}
.scenario{background:#ebf0e6;padding:70px 0 75px;border-top:1px solid #d7e0d2}.scenario-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:37px}.scenario-heading h2{font-size:45px;line-height:1.06;font-weight:500;letter-spacing:-2px;margin-top:15px}.scenario-heading>p{font-size:14px;line-height:1.6;color:#526954;max-width:290px}.scenario-shell{display:grid;grid-template-columns:1.05fr 1fr;background:#fafff7;border:1px solid #ccd9c4}.scenario-controls{padding:32px}.scenario-controls-top{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:27px}.scenario-mode{font:10px Consolas,monospace;letter-spacing:1px;display:inline-block;border:1px solid #b2c6a7;padding:8px 9px}.reset-scenario{background:none;border:0;border-bottom:1px solid #8ba67c;padding:5px 0;font-size:11px;color:#526b48}.control{margin-top:24px}.control-top{display:flex;justify-content:space-between;gap:20px;align-items:center}.control label{font-size:13px;font-weight:600}.number-wrap{display:flex;align-items:center;gap:5px;font-size:14px}.number-input{width:82px;padding:7px 5px;text-align:right;font-weight:600;font-size:17px;border:0;border-bottom:1px solid #91aa84;background:transparent;color:var(--ink);border-radius:0}.control input[type=range]{width:100%;margin:18px 0 5px;height:5px;accent-color:#007449;cursor:pointer}.range-ends{display:flex;justify-content:space-between;font:9px Consolas,monospace;color:#6b7f62}.scenario-results{background:#073d2b;padding:34px;color:#efffee;position:relative;overflow:hidden}.scenario-results:before{position:absolute;content:'';width:220px;height:220px;border:1px solid #91ea6a25;right:-100px;top:-90px;transform:rotate(45deg)}.scenario-results .eyebrow{font-size:9px;color:#abc8af}.revenue-total{font-size:64px;line-height:1.1;letter-spacing:-3px;margin:15px 0 7px;display:block;color:var(--lime);font-variant-numeric:tabular-nums}.result-description{font-size:12px;color:#c6d8c5}.profit-row{border-top:1px solid #5c876741;margin-top:25px;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:#c6d8c5}.profit-row output{color:#fff;font-size:28px;letter-spacing:-1px;font-variant-numeric:tabular-nums}.scenario-formula{font:10px Consolas,monospace;color:#a4c1a5;line-height:1.6;margin-top:13px}.scenario-results .btn{margin-top:24px;width:100%;padding:14px 18px;font-size:12px}.scenario-note{font-size:10px;color:#afc8ae;line-height:1.6;margin-top:16px;max-width:420px}.scenario-caption{font-size:11px;line-height:1.6;color:#5d7055;margin-top:15px}
.about{padding-top:75px}.portrait>img{border-radius:0}.portrait-label{border-radius:0;background:#062f25ec}.portrait-label>span{color:var(--lime)}.about h2{font-weight:500}.team-disciplines span{transition:background .18s,color .18s;padding:7px 8px;background:#e8eee2}.team-disciplines span:hover{background:#dfff4d;color:#10351f}.quote-card{transition:transform .2s}.quote-card:hover{transform:translateY(-5px)}.contact{background:var(--night)}.contact h2 em{font-family:Arial,Helvetica,sans-serif;font-style:normal;font-weight:500}.contact-inner{position:relative}.contact-action .btn{border-radius:0}footer{background:var(--night)}footer .wrap{border-color:#334b3c}.footer-logo-image{width:102px;height:auto;mix-blend-mode:screen}
@media(min-width:1600px){.stage-copy h1{font-size:97px}}@media(max-width:1100px){.stage-grid{gap:15px;grid-template-columns:1.05fr 1fr}.stage-copy h1{font-size:77px;letter-spacing:-4.5px}.stage-copy .proposition{font-size:16px}.field{height:475px}.field-center strong{font-size:25px}.route-button{padding:18px 17px}.route-button strong{font-size:21px}.scenario-controls,.scenario-results{padding:27px}.revenue-total{font-size:57px}.scenario-heading h2{font-size:40px}}
@media(max-width:760px){header .wrap{height:86px}.brand img{width:125px}.nav{top:86px;background:var(--night)}.stage-grid{display:flex;flex-direction:column;align-items:stretch;padding-top:30px;gap:10px;padding-bottom:15px}.stage-copy h1{font-size:clamp(62px,12vw,86px);letter-spacing:-4px;line-height:.97;margin:23px 0}.stage-copy h1 br:nth-of-type(2){display:none}.stage-copy .proposition{font-size:16px;max-width:550px}.stage-copy .hero-actions{margin-top:25px;gap:20px}.field{height:330px;margin-top:15px}.field-center strong{font-size:25px}.field-label{top:0}.field-footer{bottom:0}.route-intro{padding-top:18px}.route-intro span{display:none}.routes{gap:8px}.route-button{padding:14px 10px;min-height:95px}.route-button strong{font-size:17px;letter-spacing:-.4px}.route-number{font-size:8px;margin-bottom:10px}.route-arrow{font-size:16px;right:9px;top:9px}.route-button .route-short{display:none}.route-details{display:block;padding:20px 0 27px;min-height:134px}.route-details h2{font-size:20px;margin-bottom:8px}.route-details p{font-size:12px}.clients{padding:25px 0 28px}.wordmarks{row-gap:25px}.scenario{padding:48px 0}.scenario-heading{display:block;margin-bottom:25px}.scenario-heading h2{font-size:37px;letter-spacing:-1.5px}.scenario-heading>p{margin-top:16px;max-width:480px}.scenario-shell{grid-template-columns:1fr}.scenario-controls,.scenario-results{padding:25px}.scenario-controls-top{margin-bottom:15px}.control{margin-top:23px}.revenue-total{font-size:62px}.about{padding-top:52px}.contact h2{font-size:43px}.team-disciplines{gap:8px}.scenario-mode{font-size:9px}.stage-copy .textlink{font-size:11px}.contact h2 em{color:var(--lime)}}
@media(max-width:380px){.stage-copy h1{font-size:58px}.stage-copy .hero-actions{gap:16px}.stage-copy .btn{padding:15px}.route-button strong{font-size:15px}.scenario-controls,.scenario-results{padding:21px}.revenue-total{font-size:53px}.scenario-heading h2{font-size:33px}}
@media(prefers-reduced-motion:reduce){.route-button:hover,.quote-card:hover,.wordmark:hover{transform:none}.field-fallback{transform:none}}

/* Supplied client and career assets: retain brand colours and proportions. */
.wordmarks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;min-width:0}
.wordmark{display:flex;align-items:center;justify-content:center;min-width:0;min-height:76px;padding:12px 8px}
.wordmark img{display:block;width:100%;height:auto;max-width:160px;max-height:46px;object-fit:contain}
.wordmark.logo-vnccii{background:var(--night);padding:16px}
.experience-logos{display:flex;flex-wrap:wrap;gap:28px;align-items:center}
.experience-logos img{display:block;height:auto;object-fit:contain;max-width:100%}
.career-disney{width:94px}.career-accenture{width:118px}.career-itv{width:66px}
.portrait{width:100%;max-width:420px}.portrait>img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;object-position:center}
@media(max-width:760px){.wordmarks{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.portrait{margin-inline:auto}.experience-logos{gap:24px}}
@media(max-width:360px){.portrait-label{left:10px;right:10px;bottom:10px;padding:12px}.portrait-label strong{font-size:14px}.portrait-label span{font-size:9px}.experience-logos{gap:18px}.career-disney{width:80px}.career-accenture{width:100px}.career-itv{width:57px}}

.career-virgin{width:65px}@media(max-width:360px){.career-virgin{width:57px}}

/* Client destinations, LinkedIn profile and company footer. */
a.wordmark,.portrait-label{text-decoration:none}
a.wordmark:focus-visible,.portrait-label:focus-visible{outline:3px solid #00b77c;outline-offset:5px}
.portrait-label:hover{background:#064b38}.portrait-label:focus-visible{outline-color:#deff4d}
.contact-location{margin-top:24px;font-size:12px;line-height:1.6;color:#c6d9cc}
footer .wrap{align-items:flex-start;gap:36px}footer .footer-right{display:block;max-width:780px;font-size:11px;line-height:1.8}footer .footer-right p+p{margin-top:9px}
@media(max-width:760px){footer .wrap{gap:22px}.contact-location{margin-top:19px}}

.quote-card{display:flex;flex-direction:column}.quote-card blockquote{margin:0 0 24px}.quote-card blockquote p{font-size:17px;line-height:1.65}.quote-card .quote-credit{margin-top:auto;line-height:1.7}
.analytics-banner[hidden],.analytics-settings[hidden]{display:none!important}.analytics-banner{position:fixed;z-index:100;left:20px;right:20px;bottom:20px;max-width:1000px;margin:auto;background:#f6f8f3;color:#19372c;border:1px solid #9cae9f;box-shadow:0 8px 45px #0004;padding:24px;display:grid;grid-template-columns:1fr auto;gap:24px;max-height:80vh;overflow:auto}.analytics-banner h2{font-size:20px;line-height:1.3;margin-bottom:10px}.analytics-banner p{font-size:13px;line-height:1.6}.analytics-banner details{margin-top:10px;font-size:12px}.analytics-banner summary{cursor:pointer;text-decoration:underline}.analytics-banner details p{margin-top:8px}.analytics-banner a{color:#153d30;text-decoration:underline}.analytics-status{margin-top:8px;font-weight:600}.analytics-actions{display:flex;flex-direction:column;gap:10px;justify-content:center}.analytics-actions button{background:#153d30;color:#fff;border:1px solid #153d30;padding:13px 18px;font-size:13px;min-height:44px;cursor:pointer}.analytics-actions button:hover{background:#24553f}.analytics-actions button:focus-visible,.analytics-settings:focus-visible{outline:3px solid #00b77c;outline-offset:3px}.analytics-settings{background:none;border:0;color:inherit;text-decoration:underline;font:inherit;padding:8px 0;cursor:pointer}
@media(max-width:600px){.analytics-banner{left:12px;right:12px;bottom:12px;padding:18px;grid-template-columns:1fr;gap:14px}.analytics-actions{flex-direction:row}.analytics-actions button{flex:1;padding:12px 8px}.quote-card blockquote p{font-size:16px}}
