@import url("https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,300;0,400;0,500;0,600;0,700;0,900;1,400&family=Merriweather:ital,wght@1,400&display=swap");
:root{--ink:#1d1d1f;--paper:#fff;--muted:#52606b;--line:#d7dcdf;--accent:#72d8ba;--accent-dark:#72d8ba;--soft:#f5f5f5;--max:1400px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Inter',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}p{line-height:1.6}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.wrap{max-width:var(--max);margin:auto;padding-inline:64px}.skip{position:fixed;top:-80px;left:20px;z-index:100;background:white;padding:15px}.skip:focus{top:15px}.masthead{display:flex;align-items:center;justify-content:space-between;min-height:116px;gap:24px}.brand{font-size:25px;letter-spacing:-1.2px;font-weight:900;white-space:nowrap}.brand span{display:block;font-size:10px;letter-spacing:3.45px;margin-top:6px}.mast-note{font-size:14px;line-height:1.5;margin-left:auto;margin-right:36px}.button{display:inline-flex;border-radius:999px;align-items:center;justify-content:center;min-height:52px;padding:16px 25px;font-size:14px;font-weight:700;transition:background .2s,color .2s;border:1px solid transparent}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#333335}.button-accent{background:var(--accent);color:#000000}.button-accent:hover{background:var(--accent-dark);filter:brightness(.94)}.hero{display:grid;grid-template-columns:1.08fr 1fr;max-width:1600px;margin:auto;background:var(--ink);color:white;min-height:660px}.hero-copy{padding:64px 36px 32px max(64px,calc((100vw - 1272px)/2));position:relative}.eyebrow{text-transform:uppercase;letter-spacing:2.2px;font-size:12px;font-weight:700;line-height:1.5;margin:0 0 28px}.hero .eyebrow{color:#c7cfd5}h1{font-size:clamp(58px,6.4vw,100px);line-height:.99;letter-spacing:-5px;font-weight:700;margin:0 0 32px}h1 span{color:inherit}.hero-description{font-size:17px;color:#d3dbe0;max-width:410px;margin:0 0 30px}.hero-bottom{margin-top:44px;font-size:12px;color:#a6b4bf;letter-spacing:.4px}.hero-visual{position:relative;background:#1d1d1f;min-height:580px;background-size:cover;background-position:center}.image-caption{position:absolute;bottom:32px;left:32px;font-size:12px;line-height:1.6;letter-spacing:1.4px;font-weight:700}.section-nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:80px}.nav-brand{font-size:15px;font-weight:900;letter-spacing:-.5px;white-space:nowrap}.anchor-links{display:flex;gap:30px;align-items:center}.anchor-links a{font-size:14px;padding-block:29px;white-space:nowrap;border-bottom:2px solid transparent}.anchor-links a:hover,.anchor-links a[aria-current]{border-color:var(--accent-dark);color:var(--ink)}.section{padding-block:108px;scroll-margin-top:0}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:60px}.section-label{display:flex;gap:15px;align-items:baseline;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700}.section-label span{color:#818e97;font-size:12px}.section h2{font-size:clamp(36px,4vw,58px);line-height:1.05;letter-spacing:-2.4px;font-weight:500;margin:0 0 28px}.section h2 em{font-family:inherit;font-weight:400}.lead{font-size:21px;line-height:1.5;margin:0 0 24px;max-width:740px}.body-copy{font-size:17px;color:var(--muted);max-width:690px}.text-link{display:inline-block;margin-top:16px;font-size:15px;font-weight:700;border-bottom:1px solid;padding-bottom:7px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:62px;padding-top:32px;border-top:1px solid var(--line)}.principles h3{font-size:20px;letter-spacing:-.5px;margin:0 0 12px}.principles p{font-size:16px;color:var(--muted);margin:0;max-width:340px}.dark{background:var(--ink);color:white}.dark .section-label{color:#bfcbd4}.dark .body-copy{color:#bcc8d0}.sectors-intro{display:flex;justify-content:space-between;gap:60px;margin-top:34px}.sectors-intro h2{max-width:650px}.sectors-intro p{max-width:340px;margin-top:0;font-size:17px}.sector-list{margin-top:36px}.sector{border-top:1px solid #3b4851}.sector:last-child{border-bottom:1px solid #3b4851}.sector summary{list-style:none;display:grid;grid-template-columns:55px 1.3fr 1fr 30px;align-items:center;gap:20px;padding:28px 0;cursor:pointer}.sector summary::-webkit-details-marker{display:none}.sector-number{font-size:12px;color:var(--accent)}.sector h3{font-size:clamp(24px,3vw,38px);font-weight:400;letter-spacing:-1px;margin:0}.sector-short{font-size:14px;line-height:1.5;color:#bcc8d0}.plus{font-size:28px;font-weight:300;text-align:center;color:var(--accent)}.sector[open] .plus{transform:rotate(45deg)}.sector-content{padding:0 50px 30px 75px;max-width:830px;font-size:16px;color:#c7d1d8;line-height:1.65}.sector-content p{margin-top:0}.sector-content strong{color:white;font-weight:500}.sector-foot{font-size:14px;color:#a7b5be;margin:26px 0 0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:65px}.step{border-top:1px solid var(--line);padding-top:24px}.step-number{color:var(--ink);font-size:14px}.step h3{font-size:24px;letter-spacing:-.8px;font-weight:500;margin:25px 0 16px}.step p{font-size:16px;color:var(--muted);margin:0}.engagement{margin-top:58px;padding:28px 32px;background:var(--soft);display:grid;grid-template-columns:1fr 2fr;gap:40px}.engagement h3{margin:0;font-size:19px;font-weight:500;letter-spacing:-.3px}.engagement p{margin:0;color:var(--muted);font-size:16px}.about{background:var(--soft)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.about h2{margin-top:38px}.about .body-copy{margin:0 0 20px}.heritage{padding-top:35px;border-top:1px solid #bec7cd;margin-top:42px;font-size:15px;line-height:1.6}.heritage strong{font-size:36px;letter-spacing:-1.5px;font-weight:500;display:block;margin-bottom:6px}.quote{font-size:clamp(28px,3vw,43px);line-height:1.25;letter-spacing:-1.3px;margin:0 0 38px}.contact{background:var(--ink);color:#ffffff;padding-block:96px}.contact .section-label{color:#c7d1d8}.contact-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;margin-top:38px}.contact h2{font-size:clamp(44px,5.6vw,80px);max-width:700px;letter-spacing:-3.5px}.contact p{font-size:18px;max-width:530px}.contact-actions{padding-top:8px}.contact-actions .button{margin-top:14px}.phone{display:block;font-size:clamp(22px,2.6vw,34px);letter-spacing:-1px;font-weight:500;margin:26px 0 10px}.contact-small{font-size:14px!important;line-height:1.6}.footer{padding-block:34px;display:flex;align-items:center;justify-content:space-between;gap:25px}.footer .brand{font-size:20px}.footer-note{font-size:12px;color:var(--muted)}.footer-links{display:flex;gap:24px;font-size:13px}.top-link{border-bottom:1px solid var(--line)}@media(min-width:1600px){.hero-copy{padding-left:100px}}@media(max-width:1100px){.wrap{padding-inline:36px}.hero-copy{padding:48px 30px 30px 36px}h1{letter-spacing:-3px}.anchor-links{gap:20px}.section-heading{grid-template-columns:1fr 2fr;gap:35px}.steps{gap:22px}.about-grid{gap:45px}.contact-layout{gap:40px}.nav-brand{display:none}}@media(max-width:760px){.wrap{padding-inline:24px}.masthead{min-height:92px;gap:16px}.brand{font-size:21px}.brand span{font-size:8px;letter-spacing:3px}.mast-note{display:none}.masthead .button{font-size:12px;padding:12px;min-height:44px}.hero{grid-template-columns:1fr}.hero-copy{padding:44px 24px 30px}.hero h1{font-size:clamp(58px,12vw,86px);letter-spacing:-3.8px;line-height:1.01}.hero-description{max-width:470px}.hero-bottom{margin-top:30px}.hero-visual{min-height:340px;background-position:50% 45%}.nav-inner{padding-inline:0;min-height:65px}.anchor-links{width:100%;gap:25px;overflow-x:auto;padding-inline:24px;scrollbar-width:thin}.anchor-links a{font-size:13px;padding-block:24px}.section{padding-block:66px}.section-heading{display:block}.section-label{margin-bottom:32px}.section h2{letter-spacing:-1.7px}.lead{font-size:20px}.principles{grid-template-columns:1fr;gap:28px;margin-top:38px;padding-top:28px}.principles p{max-width:none}.sectors-intro{display:block;margin-top:0}.sectors-intro p{max-width:100%}.sector summary{grid-template-columns:25px 1fr 24px;gap:12px;padding:24px 0}.sector-short{display:none}.sector-content{padding:0 35px 24px 37px}.steps{grid-template-columns:1fr 1fr;gap:35px 24px;margin-top:35px}.step h3{font-size:23px;margin-top:20px}.engagement{display:block;margin-top:38px;padding:24px}.engagement h3{margin-bottom:15px}.about-grid{grid-template-columns:1fr;gap:38px}.about h2{margin-top:0}.heritage{margin-top:25px;padding-top:20px}.contact-layout{grid-template-columns:1fr;gap:20px;margin-top:0}.contact h2{letter-spacing:-2.5px}.contact-actions{padding:0}.contact-actions p:first-child{margin-top:0}.footer{align-items:flex-start;flex-wrap:wrap}.footer-note{order:3;width:100%}.footer-links{font-size:12px;gap:15px}html{scroll-padding-top:90px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.hero-visual{overflow:hidden}.hero-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(29,29,31,.06) 50%,rgba(29,29,31,.65))}.image-caption{z-index:1}

.contact .section-label span{color:#a6b4bf}.contact a:focus-visible{outline-color:#ffffff}.step-number{border-left:3px solid var(--line);padding-left:10px}

.leadership-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.leadership .section-label{margin-bottom:32px}.leadership h2{font-size:clamp(48px,5.3vw,78px);font-weight:700;line-height:1.02;letter-spacing:-3.4px}.leadership-copy .lead{font-size:clamp(21px,2.1vw,28px);line-height:1.48;letter-spacing:-.5px;margin-top:0}.leadership-facts{display:flex;gap:65px;margin:40px 0 22px}.leadership-facts div{display:flex;flex-direction:column-reverse;gap:12px}.leadership-facts dt{font-size:12px;line-height:1.5;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted)}.leadership-facts dd{font-size:clamp(60px,6.5vw,96px);font-weight:700;line-height:1;letter-spacing:-4px;margin:0}.leadership-facts dd span{font-size:.7em}.leadership-image{margin:72px 0 0}.leadership-image img{display:block;width:100%;height:auto;aspect-ratio:2.3/1;object-fit:cover;object-position:center}.leadership-image figcaption{font-size:12px;letter-spacing:.8px;color:var(--muted);margin-top:15px;line-height:1.7}.anchor-links{min-width:0;overflow-x:auto}.anchor-links a{flex-shrink:0}@media(max-width:1100px){.leadership-grid{gap:40px}.leadership-facts{gap:40px}}@media(max-width:760px){.leadership-grid{grid-template-columns:1fr;gap:22px}.leadership h2{font-size:clamp(44px,10vw,66px);letter-spacing:-2px}.leadership h2 br:last-child{display:none}.leadership-facts{gap:40px;margin-top:32px}.leadership-facts dd{font-size:64px;letter-spacing:-3px}.leadership-facts dt{max-width:155px}.leadership-image{margin-top:40px}.leadership-image img{aspect-ratio:1.45/1}}

button,input,select,textarea{font-family:inherit}

.text-link{color:var(--ink);border-bottom:3px solid var(--accent)}.text-link:hover{color:var(--ink);text-decoration:underline;text-underline-offset:5px}.contact p{color:#d3dbe0}.contact .phone:hover{text-decoration:underline;text-underline-offset:6px}.button-accent:focus-visible{outline-offset:5px}

.hero a:focus-visible,.dark a:focus-visible,.dark summary:focus-visible{outline-color:#ffffff}

.mast-actions{display:flex;align-items:center;gap:14px}.button-jobs{color:var(--accent);background:transparent;border:1px solid var(--accent)}.button-jobs[href]:hover{color:white;background:var(--accent)}.button-jobs[aria-disabled="true"]{color:#66666b;border-color:#aaaab0;background:#f5f5f5;cursor:not-allowed}.footer-links{align-items:center}.footer .button-jobs{min-height:44px;padding:12px 22px;white-space:nowrap}@media(max-width:1100px){.mast-note{display:none}.mast-actions{margin-left:auto}}@media(max-width:760px){.masthead{flex-wrap:wrap;padding-block:20px;gap:18px}.mast-actions{width:100%;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.footer-links{flex-wrap:wrap;row-gap:18px}}

.brand-statement{border-top:1px solid var(--line);margin:32px 0 0;padding-top:28px;font-size:clamp(24px,2.4vw,34px);line-height:1.35;letter-spacing:-.8px}.brand-statement strong{font-weight:700}.sector h3{font-size:clamp(24px,2.6vw,36px)}

.button{gap:14px}.button-arrow{flex-shrink:0}.button-accent{border:0}.masthead .button,.footer .button{gap:10px}@media(max-width:760px){.masthead .button-arrow{width:18px;height:18px}.masthead .button{gap:8px}}

.masthead-shell{background:#000000;color:#ffffff}.masthead-shell .brand,.masthead-shell .mast-note{color:#ffffff}.masthead-shell .button-jobs[aria-disabled="true"]{background:#1d1d1f;color:#bfc0c4;border-color:#666666}.nav-inner{justify-content:flex-start}.anchor-links{justify-content:flex-start}.quote,blockquote{border-left:4px solid var(--accent);padding-left:30px}.quote{font-weight:600}.button-jobs[href]{color:var(--ink);border-color:var(--accent)}.masthead .button-jobs[href]{color:#ffffff}.button-jobs[href]:hover{color:#000000}.hero a:focus-visible,.dark a:focus-visible,.dark summary:focus-visible,.contact a:focus-visible,.masthead a:focus-visible{outline-color:var(--accent)}@media(max-width:760px){.quote,blockquote{padding-left:20px}}

.footer{flex-wrap:wrap}.footer-legal{flex-basis:100%;display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:20px 32px;padding-top:25px;border-top:1px solid var(--line);font-size:14px;line-height:1.6}.footer-legal a:hover{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:5px}@media(max-width:760px){.footer-legal{order:4;justify-content:flex-start;gap:16px 24px;font-size:13px}}

/* Compact masthead with the supplied white transparent logo. */
.masthead{min-height:78px;gap:24px;flex-wrap:nowrap;padding-block:16px}.masthead .brand-logo{display:flex;align-items:center;flex-shrink:0;line-height:1}.brand-logo img{display:block;width:190px;height:auto;max-width:100%}.mast-actions{margin-left:auto;gap:24px;width:auto;display:flex}.masthead .button{min-height:44px;padding:12px 22px;font-size:13px;line-height:1.4;font-weight:600;gap:12px;white-space:nowrap}.masthead .button-arrow{width:18px;height:18px}.masthead-shell .button-jobs[aria-disabled="true"],.masthead-shell .button-jobs[href]{border:0;background:transparent;padding-inline:0;color:#bfc0c4}.masthead-shell .button-jobs[href]:hover{color:var(--accent);background:transparent}@media(max-width:760px){.masthead{min-height:72px;padding-block:14px;gap:18px}.brand-logo img{width:165px}.mast-actions{gap:18px}.masthead .button{font-size:12px;padding:11px 16px;gap:8px}}@media(max-width:560px){.masthead{flex-wrap:wrap;gap:16px;padding-block:18px}.brand-logo img{width:155px}.mast-actions{width:100%;justify-content:space-between;gap:16px}.masthead .button-jobs{justify-content:flex-start}.masthead .button-accent{min-width:190px}}

.about .quote{font-size:clamp(20px,1.8vw,26px);font-weight:400;line-height:1.5;letter-spacing:-.35px;padding-left:24px;margin-bottom:28px}@media(max-width:760px){.about .quote{font-size:20px;padding-left:20px}}

/* Clear service heading and discovery-call content. */
.hero h1{font-size:clamp(42px,4.7vw,72px);line-height:1.06;letter-spacing:-2.8px}.hero-description{max-width:480px}.role-examples{margin:30px 0 20px;padding-top:24px;border-top:1px solid var(--line)}.role-examples h3{font-size:16px;font-weight:600}.role-examples ul{padding-left:20px;color:var(--muted);font-size:16px;line-height:1.65}.role-examples li+li{margin-top:9px}.call-hero{padding-block:36px 90px}.call-back{display:inline-block;font-size:14px;margin-bottom:64px;color:#d3dbe0}.call-back:hover{text-decoration:underline}.call-hero h1{font-size:clamp(44px,6.3vw,88px);line-height:1.06;letter-spacing:-3px}.call-hero .lead{max-width:700px;color:#d3dbe0;margin-bottom:32px}.call-hero .eyebrow{color:var(--accent)}@media(max-width:760px){.hero h1{font-size:clamp(38px,7.5vw,56px);letter-spacing:-1.8px}.call-hero{padding-bottom:60px}.call-hero h1{letter-spacing:-1.8px}.call-back{margin-bottom:42px}}

/* Replace portrait-placeholder.svg with the approved portrait when ready. */
.company-profile-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.35fr);gap:clamp(40px,6vw,96px);align-items:start}.profile-portrait{margin:0;max-width:420px}.profile-portrait img{display:block;width:100%;height:auto;aspect-ratio:8/9;object-fit:cover}.profile-portrait figcaption{display:flex;flex-direction:column;gap:8px;margin-top:20px;font-size:15px;color:var(--muted);line-height:1.5}.profile-portrait figcaption strong{font-size:21px;color:var(--ink);font-weight:600}.profile-portrait .portrait-note{font-size:12px;margin-bottom:10px}.company-profile-copy .section-label{margin-bottom:30px}.company-profile-copy h2{margin-top:0;font-size:clamp(32px,3.2vw,48px);line-height:1.12}.company-profile-copy .body-copy{font-size:18px;line-height:1.7}.company-profile-copy .text-link{line-height:1.6}@media(max-width:760px){.company-profile-grid{grid-template-columns:1fr;gap:38px}.profile-portrait{width:100%;max-width:360px}.company-profile-copy .body-copy{font-size:17px}.company-profile-copy .section-label{margin-bottom:24px}}

.call-faqs{margin-top:36px}.call-faq{border-top:1px solid var(--line)}.call-faq:last-child{border-bottom:1px solid var(--line)}.call-faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;list-style:none;font-size:18px;font-weight:500;line-height:1.5;padding:23px 0}.call-faq summary::-webkit-details-marker{display:none}.call-faq .plus{flex:0 0 28px}.call-faq[open] .plus{transform:rotate(45deg)}.call-faq p{font-size:16px;line-height:1.7;color:var(--muted);margin:0;padding:0 40px 24px 0}@media(max-width:760px){.call-faq summary{font-size:17px;gap:16px}.call-faq p{padding-right:0}.discovery-page .call-hero h1{font-size:clamp(36px,7.5vw,56px)}}

/* Sticky masthead and coordinated anchor navigation. */
:root{--masthead-height:78px;--section-nav-height:80px}html{scroll-padding-top:calc(var(--masthead-height) + var(--section-nav-height) + 16px)}.masthead-shell{position:sticky;top:0;z-index:50;background:#000;color:#fff;transition:background-color .22s,color .22s,box-shadow .22s}.masthead-shell .brand-logo{position:relative}.masthead-shell .logo-light{opacity:1;transition:opacity .2s}.masthead-shell .logo-dark{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .2s}.masthead-shell.is-scrolled{background:#fff;color:#000;box-shadow:0 1px 0 rgba(0,0,0,.1)}.masthead-shell.is-scrolled .brand,.masthead-shell.is-scrolled .mast-note,.masthead-shell.is-scrolled .compare-original,.masthead-shell.is-scrolled .button-jobs[aria-disabled="true"],.masthead-shell.is-scrolled .button-jobs[href]{color:#000}.masthead-shell.is-scrolled .logo-light{opacity:0}.masthead-shell.is-scrolled .logo-dark{opacity:1}.masthead-shell .button-accent{color:#000}.section-nav{top:var(--masthead-height);z-index:40}.skip{z-index:100}.masthead-shell.is-scrolled a:focus-visible{outline-color:#1d1d1f}

/* Dedicated discovery-call form beside the introduction. */
.call-opening-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(48px,7vw,100px);align-items:start}.call-opening-copy{padding-top:36px}.call-opening-copy h1{font-size:clamp(42px,4.5vw,64px);line-height:1.12;letter-spacing:-2px}.call-opening-copy .lead{font-size:20px;line-height:1.7}.call-intro-detail{font-size:17px;color:#d3dbe0;max-width:440px;margin-top:36px}.call-form-card{background:#fff;color:#1d1d1f;padding:40px;scroll-margin-top:20px}.call-form-card .eyebrow{color:#52606b;font-size:11px;margin-bottom:16px}.call-form-card h2{font-size:34px;line-height:1.12;font-weight:500;letter-spacing:-1px;margin:0 0 16px}.call-form-intro{color:#52606b;font-size:15px;line-height:1.6;margin-bottom:24px}.call-form-status{font-size:13px;padding:12px 14px;background:#f5f5f5;color:#52606b;line-height:1.5}.call-form-card fieldset{border:0;margin:0;padding:0;min-width:0}.call-form-card label{display:block;font-size:13px;font-weight:500;line-height:1.5;margin-bottom:18px}.call-form-card label span{color:#666;font-weight:400}.call-form-card input,.call-form-card textarea{display:block;width:100%;border:1px solid #b9bec1;background:#fff;border-radius:4px;margin-top:7px;padding:12px 13px;min-height:46px;font-size:16px;line-height:1.4;color:#1d1d1f;box-sizing:border-box}.call-form-card input:disabled,.call-form-card textarea:disabled{background:#f8f8f8;color:#666;opacity:1}.call-form-card input:focus-visible,.call-form-card textarea:focus-visible{outline:2px solid #1d1d1f;outline-offset:2px}.call-form-card textarea{resize:vertical}.call-form-name{display:grid;grid-template-columns:1fr 1fr;gap:16px}.call-form-card .button{width:100%;margin-top:5px;cursor:pointer}.call-form-card .button:disabled{cursor:not-allowed;opacity:.65}.call-form-privacy,.call-form-confirmation{font-size:12px;color:#52606b;line-height:1.6;margin:18px 0 0}.call-form-privacy a{text-decoration:underline;text-underline-offset:3px}.call-form-confirmation{margin-top:8px}@media(max-width:1000px){.call-opening-grid{gap:36px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.call-form-card{padding:28px}.call-opening-copy h1{font-size:42px}}@media(max-width:760px){.call-opening-grid{grid-template-columns:1fr;gap:44px}.call-opening-copy{padding-top:0}.call-opening-copy h1{font-size:clamp(38px,8vw,58px)}.call-opening-copy .lead{font-size:18px}.call-form-card{padding:28px 24px}.call-form-card h2{font-size:30px}.call-hero .call-back{margin-bottom:36px}}@media(max-width:380px){.call-form-name{grid-template-columns:1fr;gap:0}.call-form-card{padding:24px 20px}}

.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.call-thanks{min-height:65vh;padding-block:110px}.call-thanks h1{font-size:clamp(42px,6vw,76px);line-height:1.1;letter-spacing:-2px}.call-thanks .lead{max-width:680px}.call-thanks .button{margin-top:24px}

.footer-logo{display:inline-flex;align-items:center;flex-shrink:0;line-height:1}.footer-logo img{display:block;width:190px;max-width:100%;height:auto}@media(max-width:760px){.footer-logo img{width:165px}}

/* Keep longer, explicit headings within the established type hierarchy. */
.leadership h2{font-size:clamp(36px,4vw,58px);line-height:1.12;letter-spacing:-1.8px}.contact #contact-title{font-size:clamp(36px,4.6vw,64px);line-height:1.12;letter-spacing:-2px}.steps .step h3{line-height:1.2}@media(max-width:760px){.leadership h2 br:last-child{display:initial}.leadership h2{font-size:clamp(34px,8.5vw,48px);letter-spacing:-1.4px}.contact #contact-title{font-size:clamp(34px,8.5vw,48px);letter-spacing:-1.4px}}


/* Assessment detail stays within the existing evaluation column. */
.assessment-detail{margin-top:20px}.assessment-detail summary{list-style:none;display:flex;align-items:baseline;gap:10px;width:fit-content;font-size:14px;line-height:1.5;font-weight:500;cursor:pointer;border-bottom:2px solid var(--accent);padding-bottom:5px}.assessment-detail summary::-webkit-details-marker{display:none}.assessment-detail summary span{color:var(--accent);font-size:20px;font-weight:400;flex-shrink:0}.assessment-detail[open] summary span{transform:rotate(45deg)}.assessment-detail-copy{padding-top:18px}.steps .assessment-detail-copy p{font-size:15px;line-height:1.65;margin:0 0 16px}.steps .assessment-detail-copy p:last-child{margin-bottom:0}

/* Visible assessment summary replaces the former mandate panel. */
.assessment-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:40px;margin-top:58px;padding:28px 32px;background:var(--soft);align-items:start}.assessment-row-label{font-size:11px;font-weight:500;letter-spacing:.6px;color:var(--muted);line-height:1.5;margin:0 0 12px}.assessment-row h3{font-size:22px;font-weight:500;line-height:1.25;letter-spacing:-.4px;margin:0}.assessment-row-content>p{font-size:16px;line-height:1.65;color:var(--muted);margin:0;max-width:760px}.assessment-row .assessment-detail{margin-top:15px}.assessment-row .assessment-detail-copy{max-width:760px}.assessment-row .assessment-detail-copy p{font-size:15px;line-height:1.65;color:var(--muted);margin:0 0 14px}.assessment-row .assessment-detail-copy p:last-child{margin-bottom:0}@media(max-width:760px){.assessment-row{grid-template-columns:1fr;gap:20px;padding:24px;margin-top:38px}.assessment-row h3{font-size:22px}.assessment-row h3 br{display:none}.assessment-row h3 br:after{content:' '}}

/* Shared CTA arrow motion, preserving button and label positions. */
.button .button-arrow{display:inline-block;transform:translateX(0);transition:transform 220ms ease-out}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.button:not(:disabled):not([aria-disabled="true"]):hover .button-arrow{transform:translateX(5px)}}
@media(prefers-reduced-motion:no-preference){.button:not(:disabled):not([aria-disabled="true"]):focus-visible .button-arrow{transform:translateX(5px)}}
@media(prefers-reduced-motion:reduce){.button .button-arrow{transition:none;transform:none}}

/* View jobs retains its visual hover treatment before a destination is supplied. */
@media(hover:hover) and (prefers-reduced-motion:no-preference){.button-jobs:hover .button-arrow{transform:translateX(5px)}}
@media(prefers-reduced-motion:no-preference){.button-jobs:focus-visible .button-arrow{transform:translateX(5px)}}

/* Contact: a clear primary action and a quieter direct-call option. */
.contact-priority .contact-actions{max-width:390px;width:100%;align-self:center}
.contact-priority .contact-actions .button{margin-top:0}
.contact-priority .contact-reassurance{margin:14px 0 0;max-width:none;font-size:13px!important;line-height:1.65;color:#b9c0c4}
.contact-priority .contact-direct{margin-top:30px;padding-top:26px;border-top:1px solid rgba(255,255,255,.18)}
.contact-priority .contact-direct>p:first-child{margin:0;font-size:14px;color:#b9c0c4}
.contact-priority .contact-direct .phone{font-size:clamp(21px,1.65vw,25px);margin:8px 0 14px;letter-spacing:-.35px;font-weight:500}
.contact-priority .contact-direct .contact-small{margin:0;font-size:12px!important;line-height:1.8;color:#b9c0c4}
@media(max-width:600px){.contact-priority .contact-actions{padding-top:12px}.contact-priority .contact-direct{margin-top:26px;padding-top:24px}}

/* Stacked titles reserve space without layout shifts. */

.leadership-rotator .hire-next{display:block;margin-bottom:12px}
.leadership-rotator .role-rotator{display:grid}
.leadership-rotator .rotating-role{grid-area:1/1;opacity:0;transform:translateY(-8px);transition:opacity 1.55s ease,transform 1.75s cubic-bezier(.22,1,.36,1);overflow-wrap:normal;pointer-events:none}
.leadership-rotator .rotating-role.is-active{opacity:1;transform:translateY(0);transition-delay:.3s}
.leadership-rotator .role-pause{margin-top:26px;padding:8px 0;background:none;border:0;border-bottom:1px solid #72d8ba;color:#59656d;font:inherit;font-size:12px;cursor:pointer}
.leadership-rotator .role-pause[hidden]{display:none}
.leadership-rotator .role-pause:focus-visible{outline:2px solid #1d1d1f;outline-offset:5px}
.leadership-rotator .leadership-copy .text-link{margin-top:18px}
@media(prefers-reduced-motion:reduce){.leadership-rotator .rotating-role{transition:none;transform:none}}

.leadership-rotator .leadership-copy .lead{font-weight:600}

/* Page rhythm: white leadership, soft-grey approach, white profile, dark contact. */
.approach-band{background:var(--soft)}
.approach-band .assessment-row{background:var(--paper)}
.about.company-profile{background:var(--paper)}

/* Assessment bullets: title first, explanation below. */
.assessment-benefits{margin:24px 0;padding-left:20px;list-style:disc}
.assessment-benefits li{padding-left:6px;margin-bottom:24px}
.assessment-benefits li::marker{color:var(--accent)}
.assessment-benefits strong{display:block;font-size:16px;font-weight:600;line-height:1.5;color:var(--ink);margin-bottom:7px}
.assessment-row .assessment-benefits li p{margin:0;font-size:15px;line-height:1.65}


.compare-original{font-size:13px;color:#d3d3d6;white-space:nowrap}.compare-original:hover{text-decoration:underline;text-underline-offset:5px}
.cinema-hero{position:relative;isolation:isolate;background:#1d1d1f;color:white;min-height:820px;min-height:max(780px,calc(100svh - 78px));overflow:hidden}.cinema-media,.cinema-shade{position:absolute;inset:0;z-index:-1}.cinema-media img,.cinema-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 50%}.cinema-media video{opacity:0;transition:opacity .4s}.cinema-media video.is-playing{opacity:1}.cinema-shade{background:linear-gradient(90deg,rgba(10,15,18,.86) 0%,rgba(10,15,18,.67) 45%,rgba(10,15,18,.22) 100%),linear-gradient(0deg,rgba(10,15,18,.56),transparent 40%)}.cinema-inner{max-width:1600px;min-height:inherit;margin:auto;display:flex;flex-direction:column;justify-content:center;padding:110px clamp(24px,7vw,112px) 35px}.cinema-copy{padding-block:35px 100px;max-width:920px}.cinema-copy .eyebrow{color:#fff;margin-bottom:38px;letter-spacing:3px;font-weight:500}.cinema-copy h1{font-size:clamp(66px,7.5vw,116px);font-weight:500;line-height:1.04;letter-spacing:-4px;margin:0 0 38px}.cinema-description{max-width:510px;font-size:19px;line-height:1.75;color:#f1f2f2;margin:0 0 38px}.cinema-copy .button{padding:19px 30px;min-height:60px}.cinema-bottom{display:flex;align-items:flex-end;gap:30px;margin-top:auto}.cinema-bottom p{font-size:12px;line-height:1.7;margin:0;color:#e1e3e3}.cinema-explore{margin-left:auto;font-size:13px;display:flex;align-items:center;gap:24px;min-height:44px}.cinema-explore span{font-size:22px;color:#72d8ba}.video-preview-note{font-size:11px;color:#e1e3e3;align-self:center}.video-toggle{background:#1d1d1f;color:white;border:0;border-radius:999px;min-height:44px;padding:12px 20px;cursor:pointer;font-size:13px}.video-toggle[hidden]{display:none}.cinema-hero a:focus-visible,.cinema-hero button:focus-visible{outline-color:#72d8ba}.video-concept .section-nav{background:#fff}
@media(min-width:1800px){.cinema-inner{padding-block:140px 44px}}
@media(max-width:900px){.video-concept .mast-actions{gap:16px}.video-concept .masthead .button-jobs{display:none}.cinema-hero{min-height:800px}.cinema-inner{padding-top:85px}.cinema-copy{padding-bottom:85px}.cinema-copy h1{font-size:clamp(64px,9.5vw,90px)}.cinema-bottom{flex-wrap:wrap}.video-preview-note{flex-basis:100%}}
@media(max-width:560px){.video-concept .masthead{gap:16px}.video-concept .mast-actions{justify-content:space-between}.cinema-hero{min-height:780px}.cinema-inner{padding:64px 24px 28px}.cinema-copy{padding:20px 0 75px}.cinema-copy h1{font-size:clamp(48px,12vw,66px);letter-spacing:-2px;line-height:1.08}.cinema-copy .eyebrow{margin-bottom:30px}.cinema-description{font-size:17px;line-height:1.7;max-width:390px}.cinema-copy .button{padding:17px 24px;font-size:14px}.cinema-bottom{gap:20px}.cinema-explore{gap:12px;font-size:12px}.cinema-media img,.cinema-media video{object-position:65% center}.cinema-shade{background:linear-gradient(90deg,rgba(10,15,18,.84),rgba(10,15,18,.54))}}
@media(prefers-reduced-motion:reduce){.cinema-media video{transition:none}}

/* Longer approved hero message: generous width and responsive line lengths. */
.cinema-copy{max-width:1120px}.cinema-copy h1{max-width:1080px;font-size:clamp(46px,5.1vw,78px);line-height:1.1;letter-spacing:-2.5px;text-wrap:balance}.cinema-copy h1 span{display:block}.cinema-description{max-width:650px;font-size:18px;line-height:1.75}@media(max-width:900px){.cinema-copy h1{font-size:clamp(42px,6.3vw,58px);letter-spacing:-1.7px}}@media(max-width:560px){.cinema-copy h1{font-size:clamp(34px,8.3vw,46px);line-height:1.15;letter-spacing:-1.1px}.cinema-description{font-size:17px;line-height:1.7}}

.cinema-copy .hero-reassurance{font-size:13px;line-height:1.6;color:#e0e3e3;margin:14px 0 0;letter-spacing:0;max-width:380px}@media(max-width:560px){.cinema-copy .hero-reassurance{font-size:12px}}

/* Compact regional reference immediately above the sectors heading. */
.sector-geography{margin:34px 0 18px;color:#fff;font-size:12px;line-height:24px;font-weight:400;letter-spacing:1.8px;text-transform:uppercase}
.sector-geography .geography-statement{color:#fff;font-weight:600}.sector-geography .geography-regions{color:rgba(255,255,255,.5);font-weight:400}.sector-geography .geography-slash{display:inline-block;margin:0 14px;color:rgba(255,255,255,.2);font-weight:400;letter-spacing:0}
#sectors .sector-geography+.sectors-intro{margin-top:0}
@media(max-width:600px){.sector-geography{font-size:11px;line-height:22px;letter-spacing:1.4px;margin-top:28px}}

.cinema-copy .hero-scope strong{font-weight:600;color:#fff}.cinema-copy .hero-scope-slash{display:inline-block;margin:0 14px;color:rgba(255,255,255,.2);letter-spacing:0;font-weight:400}.cinema-copy .hero-scope-worldwide{color:rgba(255,255,255,.5);font-weight:400}

.cinema-copy h1 .hero-emphasis{color:var(--accent)}

/* Keep the section links left and the jobs action at the far right. */
body.cn-site .section-nav .anchor-links{flex:1;min-width:0;overflow-x:auto}
body.cn-site .section-nav .button-jobs{flex:0 0 auto;margin-left:auto;background:#000;border:1px solid #000;color:#fff;padding:12px 22px;min-height:48px;font-size:14px;line-height:22px;font-weight:600;gap:12px;white-space:nowrap}
body.cn-site .section-nav .button-jobs:hover{background:#252525;border-color:#252525;color:#fff}
body.cn-site .section-nav .button-jobs .button-arrow{width:18px;height:18px}
@media(max-width:760px){body.cn-site .section-nav .nav-inner{padding-inline:24px;gap:20px}body.cn-site .section-nav .anchor-links{width:auto;padding-inline:0}body.cn-site .section-nav .button-jobs{font-size:13px;gap:8px;padding:10px 16px;min-height:44px}}

/* Shared body typography, matched to the supplied reference. */
:root{--body-copy-size:22px;--body-copy-leading:31px;--body-copy-colour:#1d1d1f}
main p:not(.eyebrow,.section-label,.assessment-row-label,.contact-small,.hero-reassurance,.call-form-status,.call-form-privacy,.call-form-confirmation,.video-preview-note),
main li{font-family:Inter,sans-serif!important;font-size:var(--body-copy-size)!important;line-height:var(--body-copy-leading)!important;font-weight:400!important;letter-spacing:normal!important}
main p,main li{color:var(--body-copy-colour)!important}
main :is(.dark,.contact,.hero,.cinema-hero) :is(p,li){color:#f5f5f5!important}
main .call-form-card :is(p,li){color:var(--body-copy-colour)!important}
main .leadership-rotator .leadership-copy .lead{font-weight:600!important}
main .assessment-benefits strong{font-size:22px;line-height:31px}
main .assessment-benefits li{margin-bottom:28px}
main .assessment-detail-copy>p{margin-bottom:22px}

/* Heading hierarchy balanced against 22px body copy. */
body main .section h2,
body main .contact #contact-title{font-size:clamp(40px,4.4vw,64px);line-height:1.1;letter-spacing:-1.8px;font-weight:600}
body main .leadership-rotator h2{font-weight:700}
body main .principles h3,
body main .steps .step h3,
body main .assessment-row h3{font-size:28px;line-height:1.2;letter-spacing:-.5px;font-weight:600}
body main .principles h3{margin-bottom:18px}
body main .steps .step h3{margin-bottom:18px}
body main .sector h3{font-size:clamp(30px,3vw,42px);line-height:1.2;font-weight:500;letter-spacing:-.7px}
body main .call-form-card h2{font-size:38px;line-height:1.12;font-weight:600;letter-spacing:-1px}
body main .call-faq summary{font-size:24px;line-height:1.35;font-weight:600}
body main .assessment-detail summary{font-size:20px;line-height:1.4;font-weight:600}
body main .assessment-benefits strong{font-size:24px;line-height:32px;font-weight:600}
@media(max-width:700px){
 body main .section h2,body main .contact #contact-title{font-size:clamp(36px,8.5vw,48px);letter-spacing:-1.2px}
 body main .principles h3,body main .steps .step h3,body main .assessment-row h3{font-size:26px}
 body main .sector h3{font-size:28px}
 body main .call-form-card h2{font-size:34px}
 body main .call-faq summary{font-size:23px}
}

/* Supporting text uses a consistent 18 / 16 / 14px scale. */
body .text-link{font-size:18px;line-height:26px;font-weight:600}
body .button{font-size:18px;line-height:26px;font-weight:600}
body .masthead .button{font-size:14px;line-height:20px}
body .anchor-links a,body .mast-note{font-size:14px;line-height:22px}
body .section-label,body .section-label span,body .eyebrow,body .call-form-card .eyebrow,body .step-number,body .sector-number{font-size:14px;line-height:22px}
body main p.assessment-row-label{font-size:14px;line-height:22px;font-weight:500}
body main p.contact-small,
body main .contact-priority .contact-direct p.contact-small,
body main .contact-priority p.contact-reassurance,
body main p.hero-reassurance,
body main p.call-form-status,
body main p.call-form-privacy,
body main p.call-form-confirmation,
body main p.sector-foot{font-size:16px!important;line-height:24px!important;font-weight:400!important;letter-spacing:normal!important}
body main .contact-priority .contact-direct>p:first-child{font-size:18px!important;line-height:26px!important}
body .leadership-image figcaption,body .profile-portrait figcaption,body .image-caption{font-size:16px;line-height:24px;letter-spacing:normal}
body .profile-portrait figcaption strong{font-size:22px;line-height:31px;font-weight:600}
body .profile-portrait .portrait-note{font-size:14px;line-height:22px}
body .sector-short{font-size:18px;line-height:26px}
body .call-form-card label{font-size:16px;line-height:24px}
body .call-back,body .footer-note,body .footer-links,body .footer-legal{font-size:16px;line-height:24px}
body .leadership-rotator .role-pause{font-size:14px;line-height:22px}
body .footer-note,body .footer-links,body .footer-legal,body .profile-portrait figcaption,body .leadership-image figcaption{color:#1d1d1f}
@media(max-width:600px){body .masthead .button{padding-inline:12px;gap:8px}}

/* Expanded sector descriptions are supporting copy. */
body main .sector-content p{font-size:18px!important;line-height:28px!important}

/* Detail copy supports the main narrative instead of competing with it. */
body main :is(.principles,.steps,.assessment-detail-copy,.call-faq) p,
body main .assessment-detail-copy li,
body main p.call-form-intro,
body main p.call-intro-detail{font-size:18px!important;line-height:28px!important}
body main .assessment-benefits strong{font-size:20px;line-height:28px}
body main .assessment-benefits li{margin-bottom:24px}
body main .call-faq summary{font-size:22px;line-height:30px}
body main .assessment-detail summary{font-size:18px;line-height:26px}
body main .assessment-detail-copy>p{margin-bottom:20px}
body main .phone,body main .contact-priority .contact-direct .phone{font-size:26px;line-height:34px;letter-spacing:-.4px}
body main .sector-content p{margin-top:8px}
body main :is(.principles,.steps,.leadership-grid,.company-profile-grid)>*{min-width:0}
@media(min-width:701px) and (max-width:1100px){body main .steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px}}
@media(max-width:700px){
 :root{--body-copy-size:20px;--body-copy-leading:30px}
 body main .call-faq summary{font-size:21px;line-height:29px}
 body main .phone,body main .contact-priority .contact-direct .phone{font-size:23px;line-height:32px}
}
@media(max-width:560px){
 body main .steps{grid-template-columns:minmax(0,1fr);gap:32px}
 body main .button{max-width:100%;gap:14px;padding-inline:22px;font-size:16px;line-height:24px}
 body main .button-arrow{flex-shrink:0}
}

/* Compact alternative to the discovery form. */
body main .call-phone-strip{padding-block:54px;text-align:center}
body main .call-phone-strip #call-phone-title{font-size:24px;line-height:32px;font-weight:500;letter-spacing:-.3px;max-width:none;margin:0 0 14px}
body main .call-phone-strip .phone{font-size:30px;line-height:38px;margin:0 0 16px}
body main .call-phone-strip .contact-small{max-width:none;margin:0}
@media(max-width:600px){body main .call-phone-strip{padding-block:40px}body main .call-phone-strip .phone{font-size:24px;line-height:32px}}

/* Shared legal page shell, ready for approved content. */
.legal-main{min-height:65vh;padding-top:36px;padding-bottom:96px}
.legal-content{max-width:900px;padding-top:70px}
.legal-content h1{font-size:clamp(40px,4.5vw,56px);line-height:1.12;letter-spacing:-1.5px;font-weight:600;margin:0 0 32px}
@media(max-width:600px){.legal-main{padding-bottom:64px}.legal-content{padding-top:48px}}

/* Legal copy follows the supporting-text scale. */
body main .legal-prose p,body main .legal-prose li{font-size:18px!important;line-height:28px!important}
body main .legal-prose h2{font-size:28px;line-height:36px;font-weight:600;letter-spacing:-.4px;margin:40px 0 16px}
.legal-prose p{margin:0 0 20px}
.legal-prose ul{padding-left:24px;margin:0 0 24px}
.legal-prose li{margin-bottom:10px}
.legal-prose a{text-decoration:underline;text-underline-offset:4px}
.legal-prose .legal-company{list-style:none;padding-left:0}
@media(max-width:600px){body main .legal-prose h2{font-size:25px;line-height:32px}}

body main .legal-prose h3{font-size:22px;line-height:30px;font-weight:600;letter-spacing:-.2px;margin:28px 0 12px}

/* Legal typography: consistent emphasis, including imported source headings. */
.legal-content :is(h1,h2,h3) :is(strong,b){font-weight:inherit}
.legal-prose :is(strong,b){font-weight:600}
.legal-content > .eyebrow{font-size:14px;line-height:22px;font-weight:600;margin-bottom:24px}
@media(max-width:600px){
 .legal-content h1{font-size:40px;letter-spacing:-1px}
 body main .legal-prose h3{font-size:21px;line-height:29px}
}

/* Serif emphasis for the sectors heading. */
body main #sectors-title em{font-family:Inter,sans-serif;font-style:italic;font-weight:400}

/* Shared divider above the footer logo, aligned with the footer content. */
body.cn-site footer.footer{flex-wrap:wrap!important}
body.cn-site footer.footer::before{content:"";display:block;flex:0 0 100%;width:100%;height:1px;background:var(--line);order:-1;margin-bottom:7px}
/* Compact footer actions and a shared copyright/legal row. */
body .footer .button-jobs{font-size:14px;line-height:20px;min-height:40px;padding:9px 16px;gap:9px}
body .footer .button-jobs .button-arrow{width:18px;height:18px}
.footer-bottom{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:25px;border-top:1px solid var(--line)}
body .footer-bottom .footer-note{width:auto;order:initial;flex-shrink:0}
body .footer-bottom .footer-legal{flex-basis:auto;padding-top:0;border-top:0}
@media(max-width:760px){.footer-bottom{flex-wrap:wrap;gap:16px}body .footer-bottom .footer-legal{order:initial;justify-content:flex-start}}

/* Concise description beneath the shared footer logo. */
.footer-brand{max-width:420px}
body .footer-description{margin:16px 0 0;font-family:Inter,sans-serif;font-size:14px;line-height:22px;font-weight:400;color:#1d1d1f}

/* Blog-style founder portrait on the discovery-call introduction. */
.call-founder{display:flex;align-items:center;gap:16px;margin:30px 0 24px;color:#fff}
.call-founder img{display:block;width:72px;height:72px;flex-shrink:0;border-radius:50%;object-fit:cover;object-position:50% 30%}
.call-founder strong{display:block;font-size:18px;line-height:26px;font-weight:600}
.call-founder span{display:block;margin-top:2px;font-size:14px;line-height:22px;color:rgba(255,255,255,.75)}
@media(max-width:600px){.call-founder img{width:64px;height:64px}.call-founder{gap:14px}}

/* Broad, soft depth beneath the homepage editorial photos. */
body main .leadership-image img,body main .profile-portrait img,body main .contact-image img{box-shadow:0 22px 46px -10px rgba(15,23,31,.24),0 8px 20px -8px rgba(15,23,31,.12)}
/* Match every CTA to the image shadow, including native form submit controls. */
body.cn-site{--cn-cta-shadow:0 22px 46px -10px rgba(15,23,31,.24),0 8px 20px -8px rgba(15,23,31,.12)}
html body.cn-site :is(.button,.gform_button,.awsm-job-more,button[type=submit],input[type=submit]){box-shadow:var(--cn-cta-shadow)!important}
@media(max-width:600px){body.cn-site{--cn-cta-shadow:0 16px 32px -8px rgba(15,23,31,.22),0 6px 14px -6px rgba(15,23,31,.1)}}

@media(max-width:600px){body main .leadership-image img,body main .profile-portrait img,body main .contact-image img{box-shadow:0 16px 32px -8px rgba(15,23,31,.22),0 6px 14px -6px rgba(15,23,31,.1)}}

/* One shared Back to home treatment, based on the discovery page. */
body a.back-home{display:inline-block;font-family:Inter,sans-serif;font-size:16px;line-height:24px;font-weight:400;letter-spacing:normal;border:0;padding:0;color:#1d1d1f;text-decoration:none}
body .dark a.back-home{color:#d3dbe0}
body a.back-home:hover{text-decoration:underline;text-underline-offset:4px}

/* Quiet, single-column contact layout. */
.contact-main{padding-top:36px;padding-bottom:100px}
.contact-back{display:inline-block;font-size:16px;line-height:24px}
.contact-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(48px,7vw,100px);margin:76px 0 0;align-items:start}.contact-editorial,.contact-form{min-width:0}
body main .contact-column h1{font-size:clamp(44px,5vw,72px);font-weight:600;line-height:1.12;letter-spacing:-1.5px;margin:0 0 24px}
body main p.contact-intro{font-size:22px!important;line-height:31px!important;margin:0 0 28px}
body main p.contact-redirect{font-size:16px!important;line-height:26px!important;margin:0 0 38px}
.contact-redirect .text-link{margin-top:5px;font-size:16px;padding-bottom:4px}
.contact-redirect .text-link span{display:inline-block;transition:transform .2s}
.contact-redirect .text-link:hover span,.contact-redirect .text-link:focus-visible span{transform:translateX(5px)}
body main p.contact-preview-note{font-size:14px!important;line-height:22px!important;margin:0 0 24px;color:#666}
.contact-form{border-top:2px solid #72d8ba;padding-top:24px}.contact-form fieldset{border:0;margin:0;padding:0;min-width:0}
.contact-form label{display:block;font-size:16px;line-height:24px;font-weight:500;margin-bottom:24px}
.contact-form label span{font-weight:400;color:#666}
.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:8px;border:1px solid #b9bec1;border-radius:4px;background:#fafafa;padding:12px 14px;min-height:50px;font:400 16px/24px Inter,sans-serif;color:#1d1d1f;opacity:1;box-sizing:border-box}
.contact-form textarea{resize:vertical}
.contact-form .call-form-name{gap:24px}
.captcha-preview{padding:18px;border:1px dashed #b9bec1;border-radius:4px;margin:4px 0 22px;font-size:14px;line-height:22px;color:#666;max-width:330px}
body main p.contact-privacy{font-size:14px!important;line-height:22px!important;margin:0 0 24px}
.contact-privacy a{text-decoration:underline;text-underline-offset:3px}
.contact-form button:disabled{opacity:.65;cursor:not-allowed}
.sr-contact{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:600px){.contact-column{margin-top:44px}.contact-main{padding-bottom:64px}body main p.contact-intro{font-size:20px!important;line-height:30px!important}.contact-form .call-form-name{grid-template-columns:1fr;gap:0}}
@media(prefers-reduced-motion:reduce){.contact-redirect .text-link span{transition:none}}

.contact-editorial .eyebrow{font-size:14px;line-height:22px;letter-spacing:2px;font-weight:600;margin:0 0 24px}
.contact-image{margin:42px 0 0}
.contact-image img{display:block;width:100%;height:clamp(300px,32vw,460px);object-fit:cover;object-position:center}
.contact-image figcaption{font-size:14px;line-height:22px;color:#52606b;margin-top:14px;max-width:400px}
body main .contact-redirect .text-link{font-size:18px;line-height:26px}
@media(max-width:850px){.contact-column{grid-template-columns:1fr;gap:44px}.contact-image img{height:280px}.contact-editorial{max-width:680px}.contact-form{max-width:680px;width:100%}.contact-image{margin-top:30px}}
@media(max-width:600px){.contact-image img{height:220px}.contact-image figcaption{font-size:13px;line-height:20px}}

/* Separate the introduction from the image and form for a calmer page rhythm. */
.contact-main{padding-top:44px;padding-bottom:140px}
.contact-column{display:block;margin-top:96px}
.contact-editorial{max-width:740px}
.contact-editorial .eyebrow{margin-bottom:28px}
body main .contact-column h1{margin-bottom:32px}
body main p.contact-intro{max-width:650px;margin-bottom:36px}
body main p.contact-redirect{margin-bottom:0}
.contact-redirect .text-link{margin-top:10px}
.contact-workspace{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(64px,8vw,120px);align-items:start;margin-top:88px}
.contact-image{margin:0;min-width:0}
.contact-image img{height:clamp(380px,40vw,560px)}
.contact-image figcaption{margin-top:20px;line-height:24px}
.contact-form{padding-top:32px}
body main p.contact-preview-note{margin-bottom:36px}
.contact-form label{margin-bottom:32px}
.contact-form input,.contact-form select,.contact-form textarea{margin-top:12px;min-height:56px;padding:15px 16px}
.contact-form .call-form-name{gap:28px}
.captcha-preview{margin:12px 0 28px;padding:22px}
body main p.contact-privacy{margin-bottom:30px}
@media(max-width:1000px){.contact-workspace{gap:48px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}
@media(max-width:850px){.contact-column{margin-top:64px}.contact-workspace{grid-template-columns:1fr;gap:64px;margin-top:60px}.contact-image img{height:340px}.contact-image{max-width:none}.contact-form{max-width:none}.contact-main{padding-bottom:96px}}
@media(max-width:600px){.contact-main{padding-top:28px;padding-bottom:72px}.contact-column{margin-top:52px}.contact-workspace{margin-top:48px;gap:48px}.contact-image img{height:260px}.contact-form label{margin-bottom:28px}.contact-form .call-form-name{gap:0}}

/* Divi import wrapper and Gravity Forms integration. */
.cn-import-section,.cn-import-row,.cn-import-code,.cn-import-row>.et_pb_column{padding:0!important;margin:0!important;width:100%!important;max-width:none!important;background:transparent!important}
body.cn-site h1,body.cn-site h2,body.cn-site h3,body.cn-site h4{padding-bottom:0;color:inherit}
body.cn-site p{padding-bottom:0}body.cn-site .et_pb_code_inner{font-size:inherit;line-height:inherit}
body.cn-site .gform_wrapper{font-family:Inter,sans-serif;--gf-font-family:Inter,sans-serif;--gf-color-primary:#72d8ba;--gf-color-in-ctrl:#1d1d1f;--gf-color-in-ctrl-bg:#f8f8f8;--gf-ctrl-radius:4px}
body.cn-site .gform_fields{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}
body.cn-site .gfield{grid-column:1/-1;min-width:0}body.cn-site .gfield.cn-half{grid-column:span 6}
body.cn-site .gfield_label{display:block;font-size:16px;font-weight:500;line-height:1.5;margin-bottom:8px}
body.cn-site .gform_wrapper input:not([type=checkbox],[type=radio],[type=submit],[type=hidden]),body.cn-site .gform_wrapper select,body.cn-site .gform_wrapper textarea{width:100%;min-height:48px;font:400 16px/1.5 Inter,sans-serif;padding:12px;border:1px solid #bac2c7;border-radius:4px;background:#f8f8f8;color:#1d1d1f}
body.cn-site .gform_wrapper input:focus,body.cn-site .gform_wrapper select:focus,body.cn-site .gform_wrapper textarea:focus{outline:2px solid #368970;outline-offset:2px}
body.cn-site .gform_button{border:0;border-radius:999px;background:#72d8ba;color:#111;padding:16px 24px;font:600 16px/1.5 Inter,sans-serif;cursor:pointer;min-height:48px;max-width:100%;white-space:normal}
body.cn-site .gform_footer{margin-top:24px}body.cn-site .gfield_validation_message,body.cn-site .gform_validation_errors{color:#9b1c1c;background:#fff1f1;padding:12px;margin:12px 0;border:1px solid #df9a9a;font-size:16px;line-height:1.5}
body.cn-site .gform_confirmation_message{color:#184d3e;background:#e8faf4;padding:24px;font-size:18px;line-height:1.5}
/* Preserve the original hero spacing against Divi paragraph resets. */
body.cn-site .cinema-copy p.cinema-description{margin:0 0 38px!important;padding-bottom:0}
/* Account for the WordPress toolbar when positioning sticky navigation and anchors. */
html:has(body.cn-site){scroll-padding-top:calc(var(--cn-adminbar-height,0px) + var(--masthead-height,0px) + var(--section-nav-height,0px) + 16px)!important}
body.cn-site .masthead-shell{top:var(--cn-adminbar-height,0px)!important;border-bottom:1px solid var(--line)!important}
body.cn-site .section-nav{top:calc(var(--cn-adminbar-height,0px) + var(--masthead-height,0px))!important}
body.cn-site .section{scroll-margin-top:0!important}
/* Footer anchors have their own type scale; do not inherit global link sizes. */
body.cn-site .footer .footer-links a,
body.cn-site .footer .footer-legal a{font-family:Inter,sans-serif!important;font-size:16px!important;line-height:24px!important;font-weight:400!important;letter-spacing:normal!important}
body.cn-site .footer .footer-links a.button-jobs{font-size:14px!important;line-height:20px!important;font-weight:600!important}
body.cn-site .footer .footer-note{font-size:16px!important;line-height:24px!important;font-weight:400!important}
body.cn-site .footer .footer-description{font-size:14px!important;line-height:22px!important;font-weight:400!important}

/* Frosted header; retain the existing navigation and CTA behaviour. */
html body.cn-site .masthead-shell{background:rgba(0,0,0,.22);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.2)!important}
html body.cn-site:not(.home) .masthead-shell:not(.is-scrolled){background:#000;-webkit-backdrop-filter:none;backdrop-filter:none}
html body.cn-site .masthead-shell.is-scrolled{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom-color:var(--line)!important}
body.cn-site.home .cn-photo-hero{margin-top:calc(0px - var(--masthead-height));padding-top:var(--masthead-height);box-sizing:content-box}
/* Outline discovery CTA in the black header; keep the existing arrow motion. */
html body.cn-site .masthead-shell:not(.is-scrolled) .masthead .button-accent{background:transparent!important;color:var(--accent)!important;border:2px solid var(--accent)!important;transition:background-color 220ms ease,color 220ms ease,box-shadow 220ms ease}
html body.cn-site .masthead-shell:not(.is-scrolled) .masthead .button-accent:is(:hover,:focus-visible){background:var(--accent)!important;color:#000!important}
/* Hide the header discovery CTA at the same scroll state as the white header. */
body.cn-site .masthead-shell.is-scrolled .masthead .button-accent{display:none!important}
/* Compact mobile header and an accessible, fully visible navigation menu. */
body.cn-site .cn-mobile-menu-toggle{display:none}
@media(max-width:760px){
  body.cn-site .masthead-shell.is-scrolled .mast-actions{display:none!important}
  body.cn-site .masthead-shell.is-scrolled .masthead{min-height:64px;padding-block:14px;gap:0}
  body.cn-site .section-nav.cn-mobile-nav{overflow:visible!important;background:#fff}
  body.cn-site .cn-mobile-nav .nav-inner{display:grid!important;grid-template-columns:1fr auto;align-items:center;gap:16px;position:relative;padding-block:12px;overflow:visible!important}
  body.cn-site .cn-mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;width:auto;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:10px 14px;background:#fff;color:var(--ink);font:500 16px/24px Inter,sans-serif;cursor:pointer}
  body.cn-site .cn-mobile-menu-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
  body.cn-site .cn-menu-icon{font-size:20px;line-height:1}
  body.cn-site .cn-mobile-nav .anchor-links{display:none!important;position:absolute;left:0;right:0;top:100%;width:100%;max-height:calc(100dvh - var(--masthead-height) - var(--section-nav-height) - 16px);overflow:auto!important;background:#fff;padding:8px 24px 16px;border-bottom:1px solid var(--line);box-shadow:0 16px 24px rgba(0,0,0,.08);gap:0}
  body.cn-site .cn-mobile-nav.is-menu-open .anchor-links{display:flex!important;flex-direction:column;align-items:stretch}
  body.cn-site .cn-mobile-nav .anchor-links a{display:block!important;white-space:normal;padding:12px 0;min-height:44px;font-size:16px!important;line-height:24px!important;color:var(--ink)}
  body.cn-site .cn-mobile-nav .button-jobs{min-height:44px;padding:10px 16px!important;white-space:nowrap}
}
body.cn-site .gfield_required{color:#9b1c1c;margin-left:4px}body.cn-site .gfield_visibility_hidden,body.cn-site .gform_validation_container{display:none!important}
@media(max-width:600px){body.cn-site .gfield.cn-half{grid-column:1/-1}body.cn-site .gform_fields{gap:20px}body.cn-site .footer-legal{flex-wrap:wrap}body.cn-site .hero-scope{font-size:11px;letter-spacing:1.5px}body.cn-site .masthead .button{font-size:13px;line-height:1.4;padding:12px 16px}body.cn-site .masthead{flex-wrap:wrap}}
