:root{--red:#c7193b;--ink:#20201e;--paper:#f7f6f2;--line:#d7d6d1;--muted:#777772}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,summary{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:7px}.wrap{width:min(1440px,88%);margin:auto}.red{color:var(--red)}.muted{color:var(--muted)}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.6px;line-height:1.6}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--red);margin-right:8px}.skip{position:fixed;top:-100px;z-index:30;background:white;padding:14px}.skip:focus{top:0}header{padding:28px 6%;display:flex;justify-content:space-between;align-items:center;background:var(--paper);position:relative;z-index:10}.wordmark{font-weight:900;font-size:46px;letter-spacing:-4px;line-height:1}.wordmark span{font-size:12px;vertical-align:top;letter-spacing:0;display:inline-block;margin:4px 0 0 5px}nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:600}nav a{padding:8px 0}nav a:hover{color:var(--red)}.nav-contact{border-bottom:1px solid var(--red);margin-left:15px}.nav-contact span{margin-left:24px;color:var(--red)}#menu{display:none}.hero{padding-top:76px;padding-bottom:38px}.hero h1{font-size:clamp(50px,7.4vw,116px);letter-spacing:-.065em;line-height:.96;margin:29px 0 34px;font-weight:900}.hero-bottom{display:flex;justify-content:space-between;align-items:end}.hero-bottom p{font-size:14px;line-height:1.6;margin:0}.round-link{display:flex;gap:25px;align-items:center;font-size:13px;font-weight:bold}.circle{border:1px solid #96968e;border-radius:50%;width:54px;height:54px;display:grid;place-items:center;font-size:30px;transition:background .2s}.round-link:hover .circle{background:var(--red);color:white;border-color:var(--red)}.studio{margin:36px 3% 0;position:relative;height:min(53vw,650px);min-height:300px;overflow:hidden;background:#282522}.studio>img,.studio>video{width:100%;height:100%;object-fit:cover}.studio:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0009);pointer-events:none}.studio-caption{position:absolute;bottom:28px;left:3.2%;right:3.2%;display:flex;justify-content:space-between;color:white;z-index:1;font-size:11px;letter-spacing:.5px}.intro{padding:120px 0;display:grid;grid-template-columns:1fr 2fr;gap:40px}h2{font-size:clamp(34px,4.5vw,67px);letter-spacing:-.055em;line-height:1.03;margin:24px 0 35px;font-weight:800}.intro h2{margin-top:0}.intro-copy{display:grid;grid-template-columns:1fr 1fr;gap:30px;font-size:16px;line-height:1.65}.intro-copy p{margin:0 0 32px}.text-link{display:inline-flex;gap:30px;align-items:center;border-bottom:1px solid var(--ink);padding-bottom:10px;font-size:13px;font-weight:600}.text-link>span{color:var(--red);font-size:22px}.text-link:hover{color:var(--red)}.section-top{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:45px}.section-top h2{margin-bottom:0}.work{border-top:1px solid var(--line);padding:64px 0 110px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:50px 34px}.projects{padding-bottom:0}.project-image{position:relative;overflow:hidden;background:#e4e3df;aspect-ratio:1.43}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.project:hover img{transform:scale(1.04)}.project-arrow{position:absolute;right:18px;bottom:18px;width:45px;height:45px;border-radius:50%;background:var(--paper);display:grid;place-items:center;font-size:27px}.project:hover .project-arrow{background:var(--red);color:white}.project-label{display:flex;justify-content:space-between;align-items:center;padding-top:17px;gap:12px}.project-label h3{margin:0;font-size:21px;letter-spacing:-.5px}.project-label>span{font-size:9px;letter-spacing:1px}.process{background:var(--ink);color:var(--paper);padding:100px 0}.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.process h2{font-size:clamp(37px,4vw,59px)}.process-heading>p{font-size:16px;line-height:1.65;max-width:370px;margin-bottom:30px}.light{border-color:#777}.steps{padding-top:46px}details{border-top:1px solid #676762}details:last-child{border-bottom:1px solid #676762}summary{display:flex;align-items:center;gap:25px;list-style:none;padding:27px 0;font-size:35px;font-weight:600;letter-spacing:-1px}summary::-webkit-details-marker{display:none}.step-no{font-size:11px;align-self:start;padding-top:7px;color:#b9b9b1;letter-spacing:0}summary small{display:block;font-size:9px;letter-spacing:1.4px;font-weight:400;margin-top:7px;color:#b9b9b1}.plus{margin-left:auto;font-size:25px;color:var(--red)}details[open] .plus{transform:rotate(45deg)}details>p{padding:0 35px 26px 40px;color:#c5c5bf;font-size:15px;line-height:1.7;margin:0}.services{padding:110px 0}.section-description{max-width:310px;line-height:1.7;font-size:15px;margin-bottom:3px}.service-list{display:grid;grid-template-columns:1fr 1fr;column-gap:55px}.service-list details{border-color:var(--line)}.service-list summary{font-size:20px;font-weight:500;letter-spacing:-.4px;padding:23px 0;gap:16px}.service-list .step-no{color:#777}.service-list details p{color:#555;padding-left:30px;font-size:14px}.service-list details:nth-last-child(2){border-bottom:1px solid var(--line)}.resources{padding:65px 0 110px;border-top:1px solid var(--line)}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.resource-grid>a{padding:28px 0;border-top:1px solid var(--ink);display:flex;flex-direction:column;align-items:start}.resource-type{font-size:10px;letter-spacing:1.4px;color:var(--red);font-weight:700}.resource-grid h3{font-size:28px;letter-spacing:-1px;line-height:1.15;margin:30px 0 40px}.resource-grid .text-link{margin-top:auto;gap:18px}.contact{background:var(--red);color:var(--paper);padding:65px 0 45px}.contact-title{display:block;font-size:clamp(39px,6.2vw,94px);font-weight:900;line-height:.99;letter-spacing:-.06em;margin:35px 0 55px;position:relative;padding-right:90px}.contact-title>span{position:absolute;right:0;top:0;font-weight:400}.contact-bottom{border-top:1px solid #ffffff60;padding-top:25px;display:flex;justify-content:space-between;gap:20px;font-size:14px}.contact-bottom p{margin:0}.contact-bottom a{text-decoration:underline;text-underline-offset:6px}footer{padding-top:55px;padding-bottom:25px}.footer-top{display:flex;justify-content:space-between;align-items:start;gap:30px;padding-bottom:50px}.footer-top p{font-size:13px;line-height:1.6;margin:0}.socials{display:flex;gap:25px;font-size:11px}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px}button{font-family:inherit}@media(min-width:1500px){.hero{padding-top:100px}}@media(max-width:900px){nav{gap:20px;font-size:12px}.nav-contact{margin-left:0}.intro{grid-template-columns:1fr 2fr;gap:25px}.process-grid{gap:6%}.project-label>span{display:none}.socials{flex-direction:column;gap:12px}}@media(max-width:650px){.wrap{width:88%}header{padding:24px 6%}.wordmark{font-size:37px}#menu{display:flex;gap:15px;align-items:center;border:0;background:none;font-size:13px;padding:10px 0}#menu span{font-size:20px;color:var(--red)}nav{display:none;position:absolute;top:85px;left:0;right:0;background:var(--paper);padding:20px 6% 30px;border-bottom:1px solid var(--line);flex-direction:column;align-items:start;font-size:20px}nav.open{display:flex}.hero{padding-top:45px}.eyebrow{font-size:9px;letter-spacing:1.1px}.hero h1{font-size:clamp(40px,9.3vw,61px);margin:25px 0 30px;line-height:1}.hero-bottom{gap:20px;align-items:center}.hero-bottom p{font-size:11px}.round-link{gap:10px;font-size:10px}.circle{width:36px;height:36px;font-size:23px;flex-shrink:0}.studio{margin-top:12px;min-height:310px}.studio-caption{left:6%;bottom:20px;font-size:9px}.studio-caption span:last-child{display:none}.intro{grid-template-columns:1fr;padding:65px 0;gap:25px}.intro h2{font-size:40px}.intro-copy{grid-template-columns:1fr;gap:0;font-size:15px}.intro-copy p{margin-bottom:20px}.section-top{display:block}.section-top>.text-link{margin-top:25px}h2{font-size:39px}.work{padding:45px 0 65px}.projects{grid-template-columns:1fr;gap:32px;padding-bottom:0}.project.offset{transform:none}.project-label h3{font-size:19px}.project-label>span{display:block;font-size:8px}.process{padding:60px 0}.process-grid{grid-template-columns:1fr}.process h2{font-size:43px}.steps{padding-top:35px}summary{font-size:30px}.services{padding:60px 0}.section-description{margin-top:25px;max-width:100%}.service-list{grid-template-columns:1fr}.service-list details:nth-last-child(2){border-bottom:0}.service-list summary{font-size:19px}.resources{padding:45px 0 55px}.resource-grid{grid-template-columns:1fr;gap:8px}.resource-grid>a{padding:25px 0}.resource-grid h3{margin:20px 0 25px;font-size:29px}.contact{padding:45px 0 35px}.contact-title{font-size:10.1vw;padding-right:0;margin:30px 0}.contact-title>span{position:static;display:block;padding-top:15px}.contact-bottom{flex-direction:column;font-size:13px}.footer-top{flex-wrap:wrap;padding-bottom:30px}.footer-top p{font-size:12px}.socials{flex-direction:row;width:100%;gap:20px}.footer-bottom{flex-wrap:wrap;gap:18px;font-size:8px}.footer-bottom>span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

#video-toggle{position:absolute;right:3%;top:22px;z-index:2;border:1px solid #ffffff80;background:#0007;color:white;font-size:10px;padding:10px 14px;border-radius:24px}

.anniversary-logo{display:block;line-height:0}.anniversary-logo img{display:block;width:102px;height:76px;object-fit:contain;filter:brightness(0)}.round-link{border-bottom:1px solid var(--ink);padding-bottom:10px}.contact-title{padding-right:0}@media(max-width:650px){.anniversary-logo img{width:80px;height:60px}nav{top:108px}}

/* Six selected projects: three columns on desktop, two on tablet, one on phones. */
.projects{grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 26px}.project-label{align-items:start}.project-label h3{font-size:19px}.project-label>span{font-size:8px;line-height:1.6;white-space:nowrap}@media(min-width:651px) and (max-width:1050px){.projects{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.projects{grid-template-columns:1fr;gap:32px}}

/* A compact introduction to the specialist banking division. */
.banking{padding-bottom:90px}.banking-panel{display:grid;grid-template-columns:1fr 1.7fr;gap:55px;background:#eeede7;border-top:3px solid var(--red);padding:44px 42px}.banking-name{font-size:30px;font-weight:800;letter-spacing:-1.5px;margin:24px 0 12px}.banking-name span{font-weight:400;color:var(--red)}.banking-specialty{font-size:12px;line-height:1.6;color:#66665f}.banking-copy h2{font-size:clamp(28px,3vw,43px);margin:0 0 18px;line-height:1.12}.banking-copy>p{font-size:15px;line-height:1.7;margin:0 0 25px;max-width:610px}header nav{gap:24px}@media(min-width:651px) and (max-width:1050px){header nav{gap:15px;font-size:11px}.banking-panel{gap:30px;padding:35px 30px}.banking-name{font-size:27px}}@media(max-width:650px){.banking{padding-bottom:55px}.banking-panel{grid-template-columns:1fr;gap:30px;padding:30px 24px}.banking-copy h2{font-size:32px}.banking-copy>p{font-size:14px}.banking-name{margin-top:18px}.banking-specialty br{display:none}header nav{gap:20px}}

/* Readable supporting copy and link labels across the homepage. */
nav{font-size:16px}.eyebrow{font-size:12px}.hero-bottom p{font-size:18px;line-height:1.6}.round-link,.text-link{font-size:16px}.project-label>span{font-size:10px;letter-spacing:.6px}.studio-caption{font-size:13px}.step-no{font-size:13px}summary small{font-size:11px}.resource-type{font-size:12px}.banking-specialty{font-size:15px}.banking-copy>p{font-size:17px}.contact-bottom{font-size:16px}.footer-top p{font-size:15px}.socials{font-size:14px}.footer-bottom{font-size:11px;letter-spacing:.6px}#video-toggle{font-size:12px}header nav{gap:22px}
@media(min-width:651px) and (max-width:1050px){header nav{font-size:13px;gap:14px}.project-label{flex-direction:column;gap:6px}.project-label>span{display:block}}
@media(max-width:650px){nav,header nav{font-size:20px}.eyebrow{font-size:11px;letter-spacing:1px}.hero-bottom{flex-direction:column;align-items:flex-start;gap:24px}.hero-bottom p{font-size:16px}.round-link,.text-link{font-size:15px}.studio-caption{font-size:12px}.project-label{flex-wrap:wrap;gap:8px}.project-label>span{font-size:10px}.banking-specialty{font-size:14px}.banking-copy>p{font-size:16px}.contact-bottom{font-size:15px}.footer-top p{font-size:14px}.socials{font-size:13px}.footer-bottom{font-size:11px;line-height:1.6}#menu{font-size:15px}}

/* Anniversary mark fills the left column of the agency introduction. */
.intro-anniversary{display:block;width:85%;max-width:280px;height:auto;margin-top:40px;filter:brightness(0)}@media(max-width:650px){.intro-identity{display:flex;flex-direction:column;align-items:flex-start}.intro-anniversary{width:150px;margin-top:22px}}

/* Official supplied logos and a restrained banknote-inspired green panel. */
.footer-logo{display:block;flex:0 0 240px;max-width:240px;line-height:0}.footer-logo img{display:block;width:100%;height:auto;mix-blend-mode:multiply}.footer-top{align-items:center}.razor-logo{display:block;width:220px;max-width:65%;height:auto;margin:0 0 35px}.steps{padding-top:0}.steps details>p{padding-left:0}.service-list details p{padding-left:0}
.banking-panel{grid-template-columns:1fr 1fr;gap:0;padding:0;border:0;background:#eeede7;overflow:hidden}.banking-identity{position:relative;isolation:isolate;overflow:hidden;background:#204b40;color:#f4f5eb;padding:48px 42px;display:flex;flex-direction:column;justify-content:center;min-height:320px}.banking-identity:before{content:'';position:absolute;width:690px;height:690px;left:-340px;bottom:-560px;border-radius:50%;background:repeating-radial-gradient(ellipse at center,transparent 0 8px,rgba(209,223,173,.27) 9px 10px,transparent 11px 15px);transform:scaleX(1.8) rotate(-25deg);z-index:-1}.banking-identity:after{content:'';position:absolute;inset:15px;border:1px solid #dce9c326;z-index:-1;pointer-events:none}.banking-identity .eyebrow{color:#d0debd}.banking-name{font-size:clamp(30px,3.2vw,46px);margin:30px 0 18px;letter-spacing:-2px}.banking-name span{color:#c5d5a6}.banking-specialty{color:#e0e8d6;font-size:16px;line-height:1.65}.banking-copy{padding:45px 42px;align-self:center}.banking-copy h2{font-size:clamp(30px,3vw,43px);max-width:400px}.banking-copy h2 .muted{display:block;color:#546b5d}.banking-copy .text-link{color:#204b40;border-color:#204b40}.banking-copy .text-link:hover{color:#142e27}.banking-copy>p{margin-bottom:25px}
@media(min-width:651px) and (max-width:1050px){.banking-identity,.banking-copy{padding:35px 28px}.banking-name{font-size:31px}.banking-specialty{font-size:15px}.footer-logo{flex-basis:205px;max-width:205px}}
@media(max-width:650px){.footer-top{align-items:flex-start}.footer-logo{flex-basis:210px;max-width:210px}.razor-logo{width:190px;margin:0 0 30px}.banking-panel{grid-template-columns:1fr;gap:0;padding:0}.banking-identity{min-height:270px;padding:36px 28px}.banking-copy{padding:34px 28px}.banking-name{font-size:36px}.banking-copy h2{font-size:32px}.banking-specialty{font-size:15px}}

/* Keep the banking division name clear at every screen size. */
.banking-name span{display:block;font-size:.72em;letter-spacing:-1px;line-height:1.2;margin-top:8px}

/* Razor Branding interior page: reuses homepage type, colors, and section rhythm. */
nav a[aria-current="page"]{color:var(--red)}.rb-intro{border-top:1px solid var(--line);padding:90px 0 110px}.rb-intro>.eyebrow{padding-top:6px}
.rb-elements-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:55px}.rb-elements-top h2{margin-bottom:0}.rb-elements-top .razor-logo{margin:0;flex-shrink:0}
.rb-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px}.rb-grid li{border-top:1px solid #676762;padding-top:26px}.rb-question{font-size:11px;font-weight:700;letter-spacing:1.4px;color:#b9b9b1}.rb-grid h3{font-size:35px;font-weight:600;letter-spacing:-1px;margin:14px 0 18px}.rb-grid p{color:#c5c5bf;font-size:16px;line-height:1.7;margin:0}
.rb-conversation{display:grid;grid-template-columns:1fr 1.3fr;gap:8%;padding:110px 0}.rb-quote{font-size:clamp(34px,4vw,60px);font-weight:800;letter-spacing:-.05em;line-height:1.05;margin:24px 0 0}.rb-conversation-copy{font-size:17px;line-height:1.7}.rb-conversation-copy p{margin:0 0 24px}.rb-conversation-copy p:first-child{font-size:21px;line-height:1.5;letter-spacing:-.3px}
.rb-capabilities{border-top:1px solid var(--line);padding:64px 0 100px}.rb-capability-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:34px}.rb-capability-list li{border-top:1px solid var(--line);padding:17px 0;font-size:17px;font-weight:500;letter-spacing:-.2px}
.rb-assessment{padding-bottom:100px}.rb-assessment-panel{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;background:#eeede7;border-top:3px solid var(--red);padding:48px 42px}.rb-assessment h2{font-size:clamp(30px,3vw,43px);margin:18px 0 0;line-height:1.12}.rb-assessment-panel p{font-size:18px;line-height:1.6;margin:0 0 25px}
@media(min-width:651px) and (max-width:1050px){.rb-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 30px}.rb-capability-list{grid-template-columns:repeat(3,minmax(0,1fr))}.rb-conversation{gap:40px}}
@media(max-width:650px){.rb-intro{padding:55px 0 65px}.rb-elements-top{flex-direction:column-reverse;align-items:flex-start;gap:0;margin-bottom:35px}.rb-elements-top .razor-logo{margin-bottom:30px}.rb-grid{grid-template-columns:1fr;gap:30px}.rb-grid h3{font-size:30px}.rb-conversation{grid-template-columns:1fr;gap:30px;padding:60px 0}.rb-quote{font-size:38px}.rb-conversation-copy{font-size:16px}.rb-conversation-copy p:first-child{font-size:19px}.rb-capabilities{padding:45px 0 60px}.rb-capability-list{grid-template-columns:1fr 1fr;column-gap:20px}.rb-capability-list li{font-size:15px;padding:14px 0}.rb-assessment{padding-bottom:55px}.rb-assessment-panel{grid-template-columns:1fr;gap:20px;padding:32px 24px}.rb-assessment-panel p{font-size:16px}}
/* Razor Branding mark with element icons, and an icon above each element. */
.rb-lockup{display:block;width:85%;max-width:320px;height:auto;margin-top:40px}.rb-icon{display:block;width:76px;height:76px;margin-bottom:22px}
@media(max-width:650px){.rb-intro-identity{display:flex;flex-direction:column;align-items:flex-start}.rb-lockup{width:200px;margin:22px 0 10px}.rb-icon{width:64px;height:64px;margin-bottom:18px}}

/* Footer: social icons and memberships carried over from the current site. */
.socials{gap:12px;align-items:center}.social-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;transition:background .2s,border-color .2s,color .2s}.social-icon svg{width:19px;height:19px;fill:currentColor}.social-icon:hover{background:var(--red);border-color:var(--red);color:white}
.affiliations{border-top:1px solid var(--line);padding:38px 0 42px}.affiliations .eyebrow{color:var(--muted);margin-bottom:28px}.affiliation-logos{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:30px 40px}.affiliation-logos img{display:block;width:auto;filter:brightness(0);opacity:.72}.affiliation-logos .wide img{height:44px}.affiliation-logos .tall img{height:66px}
@media(min-width:651px) and (max-width:1050px){.affiliation-logos{justify-content:center;gap:28px 44px}.affiliation-logos .wide img{height:38px}.affiliation-logos .tall img{height:58px}}
@media(max-width:650px){.socials{flex-direction:row;gap:12px}.affiliations{padding:30px 0 34px}.affiliations .eyebrow{margin-bottom:22px}.affiliation-logos{display:grid;grid-template-columns:1fr 1fr;justify-items:center;gap:28px 20px}.affiliation-logos img{max-width:100%}.affiliation-logos .wide img{height:auto;max-height:34px}.affiliation-logos .tall img{height:56px}}
.socials{flex-direction:row}
.affiliation-logos{justify-content:center;gap:30px 36px}.affiliation-logos .wide img{height:40px}.affiliation-logos .tall img{height:60px}@media(min-width:1300px){.affiliation-logos{justify-content:space-between;flex-wrap:nowrap;gap:28px}}@media(min-width:651px) and (max-width:1050px){.affiliation-logos .wide img{height:36px}.affiliation-logos .tall img{height:56px}}@media(max-width:650px){.affiliation-logos .wide img{height:auto;max-height:34px}.affiliation-logos .tall img{height:56px}}
@media(min-width:651px) and (max-width:1299px){.affiliation-logos{display:grid;grid-template-columns:repeat(4,auto);justify-content:space-around;justify-items:center;gap:34px 30px}}

/* About page: story beside the anniversary mark, then a uniform team grid. */
nav a[aria-current="page"]{color:var(--red)}.ab-story{border-top:1px solid var(--line);padding:90px 0 110px}.ab-story .intro-copy{margin-bottom:8px}
.ab-team{border-top:1px solid var(--line);padding:64px 0 110px}.team-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:40px 24px}.team-grid img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;background:#e4e3df;filter:grayscale(1);transition:filter .4s}.team-grid li:hover img{filter:none}.team-grid h3{font-size:18px;letter-spacing:-.4px;margin:15px 0 0;font-weight:700}
@media(min-width:651px) and (max-width:1050px){.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 20px}}
@media(max-width:650px){.ab-story{padding:55px 0 65px}.ab-team{padding:45px 0 65px}.team-grid{grid-template-columns:1fr 1fr;gap:28px 16px}.team-grid h3{font-size:16px;margin-top:11px}}
@media(hover:none){.team-grid img{filter:none}}
.ab-story .intro-copy{grid-template-columns:1fr;max-width:680px;gap:0;font-size:17px}.ab-story .intro-copy p{margin-bottom:22px}@media(max-width:650px){.ab-story .intro-copy{font-size:15px}}

/* Team cards link to individual bio pages. */
nav a[aria-current="true"]{color:var(--red)}.team-grid a{display:block}.team-grid a:hover h3{color:var(--red)}.team-grid a:hover img{filter:none}.team-grid li>a>p{font-size:14px;line-height:1.45;color:var(--muted);margin:5px 0 0}
.bio{padding:50px 0 100px}.bio-back{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:600;border-bottom:1px solid var(--ink);padding-bottom:8px;margin-bottom:50px}.bio-back:before{content:'←';color:var(--red)}.bio-back:hover{color:var(--red)}
.bio-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:7%;align-items:start}.bio-photo img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;background:#e4e3df}.bio-copy h1{font-size:clamp(40px,4.8vw,72px);letter-spacing:-.055em;line-height:1;font-weight:800;margin:22px 0 14px}.bio-title{font-size:19px;font-weight:600;color:var(--red);margin:0 0 34px}.bio-text{font-size:17px;line-height:1.75;max-width:640px}.bio-text p{margin:0 0 22px}
.bio-pager{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:80px;padding-top:26px}.bio-pager a{display:flex;flex-direction:column;gap:6px;font-size:20px;font-weight:700;letter-spacing:-.4px}.bio-pager a:last-child{text-align:right}.bio-pager span{font-size:12px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted)}.bio-pager a:hover{color:var(--red)}
@media(max-width:650px){.team-grid li>a>p{font-size:13px}.bio{padding:30px 0 60px}.bio-back{margin-bottom:30px}.bio-grid{grid-template-columns:1fr;gap:30px}.bio-copy h1{font-size:40px;margin-top:16px}.bio-title{font-size:17px;margin-bottom:24px}.bio-text{font-size:16px}.bio-pager{margin-top:50px}.bio-pager a{font-size:17px}}
.bio-copy h1{font-size:clamp(28px,2.4vw,36px);letter-spacing:-.04em;line-height:1.1;margin:18px 0 10px}@media(max-width:650px){.bio-copy h1{font-size:24px;margin-top:14px}}

/* Our Work pages: B2B grid and community bank case rows. */
.green{color:#2f6b58}.dot-green{background:#2f6b58}
.work-switch{display:flex;gap:6px;padding:5px;border:1px solid var(--line);border-radius:999px;background:#fff6}.work-switch a{padding:11px 20px;border-radius:999px;font-size:15px;font-weight:600;white-space:nowrap}.work-switch a:hover{color:var(--red)}.work-switch a[aria-current="page"]{background:var(--ink);color:var(--paper)}.page-work .work-switch a[aria-current="page"]:hover{color:var(--paper)}
.work-page{padding:56px 0 100px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 34px}.work-grid .project-image{aspect-ratio:1.9}.work-grid .project-label h3{font-size:22px}
.bank-cases{border-top:1px solid var(--line);padding:20px 0 90px}.bank-case{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:6%;padding:56px 0;border-bottom:1px solid var(--line);align-items:start;scroll-margin-top:30px}.bank-logo{background:#fff;border:1px solid var(--line);aspect-ratio:1.6;display:grid;place-items:center;padding:12%}.bank-logo img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.bank-copy .eyebrow{color:#2f6b58}.bank-copy h2{font-size:clamp(28px,2.8vw,40px);letter-spacing:-.04em;line-height:1.08;margin:12px 0 10px}.bank-services{font-size:14px;font-weight:600;letter-spacing:.2px;color:var(--muted);margin:0 0 22px}.bank-copy>p{font-size:17px;line-height:1.7;margin:0 0 22px;max-width:680px}.bank-result{border-left:3px solid #2f6b58;background:#eeede7;padding:18px 22px;max-width:680px}.bank-result span{font-size:11px;font-weight:700;letter-spacing:1.4px;color:#2f6b58}.bank-result p{margin:6px 0 0;font-size:17px;line-height:1.55;font-weight:600}
.bank-case-link{margin-top:26px;color:#2f6b58;border-color:#2f6b58}
.banking-specialty a{text-decoration:underline;text-underline-offset:4px}
@media(min-width:651px) and (max-width:1050px){.work-grid{gap:36px 24px}.bank-case{gap:36px}}
@media(max-width:650px){.work-switch{width:100%}.work-switch a{flex:1;text-align:center;padding:11px 10px;font-size:14px}.work-page{padding:36px 0 60px}.work-grid{grid-template-columns:1fr;gap:32px}.work-grid .project-label h3{font-size:19px}.bank-cases{padding:0 0 50px}.bank-case{grid-template-columns:1fr;gap:24px;padding:40px 0}.bank-copy>p,.bank-result p{font-size:16px}}

/* Our work dropdown in the main navigation. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.nav-item{position:relative;display:flex;align-items:center}.submenu-toggle{display:grid;place-items:center;width:26px;height:30px;margin-left:2px;padding:0;border:0;background:none;color:inherit}.submenu-toggle:after{content:'';width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s}.submenu-toggle[aria-expanded="true"]:after{transform:translateY(2px) rotate(-135deg)}.submenu-toggle:hover{color:var(--red)}
.submenu{position:absolute;top:100%;left:-18px;z-index:20;min-width:220px;padding:10px 0;margin-top:6px;background:var(--paper);border:1px solid var(--line);box-shadow:0 14px 30px #0000001a;display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s,transform .15s,visibility .15s}.submenu:before{content:'';position:absolute;left:0;right:0;top:-12px;height:12px}.submenu a{padding:11px 18px;font-size:15px;white-space:nowrap}.submenu a:hover,.submenu a[aria-current="page"]{color:var(--red)}
.has-menu:hover .submenu,.has-menu.open .submenu{opacity:1;visibility:visible;transform:none}
@media(max-width:650px){.nav-item{flex-direction:column;align-items:flex-start}.submenu-toggle{display:none}.submenu{position:static;opacity:1;visibility:visible;transform:none;margin:2px 0 4px;padding:0 0 0 16px;border:0;border-left:2px solid var(--line);box-shadow:none;background:none;min-width:0}.submenu:before{display:none}.submenu a{padding:7px 0;font-size:17px;color:var(--muted)}}
@media(prefers-reduced-motion:reduce){.submenu{transition:none}}

/* Case study pages: story, work samples slider, testimonial. */
.cs-hero{padding:50px 0 0}.cs-hero .bio-back{display:inline-flex}.cs-hero .eyebrow{display:block}.cs-hero h1{font-size:clamp(44px,6vw,92px);letter-spacing:-.06em;line-height:.98;font-weight:900;margin:18px 0 40px}.cs-cover img{display:block;width:100%;height:auto;aspect-ratio:1.9;object-fit:cover;background:#e4e3df}
.cs-story{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding:90px 0}.cs-story-copy{font-size:18px;line-height:1.75;max-width:760px}.cs-story-copy p{margin:0 0 24px}.cs-story-copy>p:first-child{font-size:22px;line-height:1.5;letter-spacing:-.3px}
.cs-results{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:14px}.cs-results li{border-left:3px solid var(--red);background:#eeede7;padding:16px 20px;font-weight:600;font-size:17px;line-height:1.55}
.cs-work{background:var(--ink);color:var(--paper);padding:80px 0}.cs-work-top{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.cs-work h2{margin:14px 0 0;font-size:clamp(30px,3vw,46px)}
.slider-controls{display:flex;align-items:center;gap:16px}.slider-btn{width:52px;height:52px;border-radius:50%;border:1px solid #8a8a84;background:none;color:var(--paper);display:grid;place-items:center;transition:background .2s,border-color .2s}.slider-btn:after{content:'';width:10px;height:10px;border-top:2px solid currentColor;border-right:2px solid currentColor}.slider-btn.prev:after{transform:translateX(2px) rotate(-135deg)}.slider-btn.next:after{transform:translateX(-2px) rotate(45deg)}.slider-btn:hover:not(:disabled){background:var(--red);border-color:var(--red)}.slider-btn:disabled{opacity:.35;cursor:default}.slider-count{margin:0;font-size:15px;font-weight:600;min-width:64px;text-align:center;font-variant-numeric:tabular-nums}
.slider-track{list-style:none;margin:0;padding:0;display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;scrollbar-width:none}.slider-track::-webkit-scrollbar{display:none}.slider-track:focus-visible{outline:3px solid var(--red);outline-offset:6px}
.slide{flex:0 0 100%;scroll-snap-align:start;position:relative;background:#fff}.slide img{display:block;width:100%;height:auto;aspect-ratio:1536/833;object-fit:contain;background:#fff}.slide-video{position:absolute;left:24px;bottom:24px;display:inline-flex;align-items:center;gap:10px;background:var(--red);color:#fff;padding:14px 22px;border-radius:999px;font-weight:700;font-size:15px}.slide-video:before{content:'';border-left:11px solid currentColor;border-top:7px solid transparent;border-bottom:7px solid transparent}.slide-video:hover{background:#a3132f}
.cs-quote{padding:100px 0 70px}.cs-quote figure{margin:0;max-width:980px}.cs-quote blockquote{margin:0;position:relative;padding-top:64px;font-size:clamp(22px,2.2vw,30px);line-height:1.45;letter-spacing:-.4px;font-weight:600}.cs-quote.long blockquote{font-size:clamp(18px,1.6vw,22px);line-height:1.6;letter-spacing:-.2px}.cs-quote blockquote:before{content:'“';position:absolute;top:-18px;left:-4px;font-size:120px;line-height:1;color:var(--red);font-weight:900}.cs-quote blockquote p{margin:0 0 20px}.cs-quote figcaption{margin-top:26px;font-size:15px;font-weight:700;letter-spacing:.3px;color:var(--muted)}.cs-quote figcaption:before{content:'— '}
.cs-pager{margin:70px 0 90px}
@media(min-width:651px) and (max-width:1050px){.cs-story{gap:30px}}
@media(max-width:650px){.cs-hero{padding-top:30px}.cs-hero h1{font-size:44px;margin-bottom:28px}.cs-story{grid-template-columns:1fr;gap:20px;padding:55px 0}.cs-story-copy{font-size:16px}.cs-story-copy>p:first-child{font-size:19px}.cs-results li{font-size:15px}.cs-work{padding:55px 0}.cs-work-top{flex-direction:column;align-items:flex-start}.slider-btn{width:46px;height:46px}.slide-video{left:12px;bottom:12px;padding:10px 16px;font-size:13px}.cs-quote{padding:60px 0 40px}.cs-quote blockquote{font-size:20px;padding-top:54px}.cs-quote.long blockquote{font-size:17px}.cs-quote blockquote:before{font-size:96px}.cs-pager{margin:40px 0 60px}}
@media(prefers-reduced-motion:reduce){.slider-track{scroll-behavior:auto}}
.slide img{aspect-ratio:auto;height:min(calc(min(1440px,88vw)/1.844),72vh);min-height:180px}
.cs-quote.long blockquote{font-weight:500}
.cs-hero h1{font-size:clamp(24px,3vw,46px);letter-spacing:-.05em;line-height:1.05;margin:14px 0 26px}.cs-cover{width:25%;min-width:220px}@media(max-width:650px){.cs-hero h1{font-size:24px;margin-bottom:20px}}
.cs-hero h1{margin-bottom:0}.cs-story{padding-top:60px}.cs-story-side .cs-cover{width:100%;max-width:320px;min-width:0;margin-top:22px}@media(max-width:650px){.cs-story{padding-top:40px}.cs-story-side .cs-cover{max-width:220px;margin-top:16px}}
.cs-story-side .cs-cover{max-width:none}@media(max-width:650px){.cs-story-side .cs-cover{max-width:220px}}

/* Resources: hub, post lists, book page, sample article pages. */
.resource-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.resource-latest{font-size:14px;line-height:1.5;color:var(--muted);margin:-22px 0 28px}.resources-hub{border-top:1px solid var(--line);padding-top:50px}.posts-more{margin-top:44px}
.resource-switch{flex-wrap:wrap;border-radius:28px}
.posts{border-top:1px solid var(--line);padding:56px 0 100px}.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 30px}.post-card{display:flex;flex-direction:column}.post-image{aspect-ratio:1.9;overflow:hidden;background:#e4e3df}.post-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}.post-card:hover img{transform:scale(1.04)}.post-meta{font-size:12px;font-weight:700;letter-spacing:1.2px;color:var(--red);margin:18px 0 8px}.post-card h3{font-size:21px;line-height:1.25;letter-spacing:-.4px;margin:0 0 10px}.post-card:hover h3{color:var(--red)}.post-card p{font-size:15px;line-height:1.6;color:#55554f;margin:0}
.podcast-band{display:flex;justify-content:space-between;align-items:center;gap:24px;background:var(--ink);color:var(--paper);padding:26px 30px;margin-bottom:50px}.podcast-band p{margin:0;font-size:17px;line-height:1.5}.podcast-band .text-link{border-color:#888;white-space:nowrap}
.book-lede{max-width:620px;font-style:italic}.book-intro{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:6%;align-items:center;border-top:1px solid var(--line);padding:80px 0}.book-photo img{display:block;width:100%;height:auto}.book-intro-copy h2{font-size:clamp(28px,2.8vw,42px);margin:14px 0 22px;line-height:1.1}.book-intro-lead{font-size:20px;line-height:1.5;font-weight:600;letter-spacing:-.3px;margin:0 0 18px}.book-intro-copy>p{font-size:17px;line-height:1.7}.book-actions{display:flex;flex-wrap:wrap;align-items:center;gap:28px;margin-top:30px}.book-button{display:inline-block;background:var(--red);color:#fff;padding:16px 28px;border-radius:999px;font-weight:700;font-size:16px}.book-button:hover{background:#a3132f}
.book-authors{border-top:1px solid var(--line);padding:70px 0 90px}.book-author-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:30px}.book-author{display:grid;grid-template-columns:150px 1fr;gap:26px;align-items:start}.book-author img{width:150px;height:150px;object-fit:cover;display:block}.book-author h3{font-size:22px;margin:0 0 10px}.book-author h3 a:hover{color:var(--red)}.book-author p{font-size:16px;line-height:1.65;margin:0}
.book-praise{background:var(--ink);color:var(--paper);padding:90px 0}.book-praise h2{margin-top:14px}.book-praise-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 50px}.book-praise-item{margin:0;border-top:1px solid #676762;padding-top:26px}.book-praise-item blockquote{margin:0;font-size:16px;line-height:1.7;color:#d8d8d2}.book-praise-item blockquote p{margin:0}.book-praise-item blockquote p:before{content:'“'}.book-praise-item blockquote p:after{content:'”'}.book-praise-item figcaption{margin-top:16px;font-size:14px;font-weight:700;color:var(--paper)}.book-praise-item figcaption:before{content:'— '}
.article{padding:50px 0 90px;max-width:820px}.article-header h1{font-size:clamp(32px,3.6vw,54px);letter-spacing:-.045em;line-height:1.08;font-weight:800;margin:16px 0 34px}.article-image{margin:0 0 44px}.article-image img{display:block;width:100%;height:auto}.article-body{font-size:18px;line-height:1.75}.article-body p,.article-body ul,.article-body ol,.article-body figure{margin:0 0 24px}.article-body h2,.article-body h3,.article-body h4{font-size:24px;line-height:1.3;letter-spacing:-.4px;margin:44px 0 14px}.article-body a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.article-body img{display:block;max-width:100%;height:auto}.article-body iframe{display:block;width:100%;height:165px;border:0;margin:0 0 30px;background:#fff}.article-body blockquote{margin:0 0 24px;padding-left:22px;border-left:3px solid var(--red)}.article-source{border-top:1px solid var(--line);padding-top:20px;margin-top:50px;font-size:14px;color:var(--muted)}.article-source a{text-decoration:underline}
@media(min-width:651px) and (max-width:1050px){.resource-grid-4{grid-template-columns:1fr 1fr}.post-grid{grid-template-columns:1fr 1fr}.book-author-grid,.book-praise-grid{grid-template-columns:1fr}}
@media(max-width:650px){.resource-grid-4{grid-template-columns:1fr}.resource-latest{margin-top:-12px}.resource-switch a{flex:1 1 45%}.posts{padding:36px 0 60px}.post-grid{grid-template-columns:1fr;gap:36px}.podcast-band{flex-direction:column;align-items:flex-start;padding:22px}.book-intro{grid-template-columns:1fr;gap:30px;padding:50px 0}.book-intro-lead{font-size:18px}.book-authors{padding:50px 0 60px}.book-author-grid{grid-template-columns:1fr;gap:34px}.book-author{grid-template-columns:96px 1fr;gap:18px}.book-author img{width:96px;height:96px}.book-praise{padding:60px 0}.book-praise-grid{grid-template-columns:1fr}.article{padding:30px 0 60px}.article-header h1{font-size:30px}.article-body{font-size:16px}.article-body h2,.article-body h3,.article-body h4{font-size:20px}}
.article-body img.img-small{max-width:200px;margin:8px 0 18px}
/* Branding Articles: text-only list in three columns. */
.post-grid-text{gap:0 40px}.post-card-text{border-top:1px solid var(--line);padding:28px 0 34px}.post-card-text h3{font-size:22px;line-height:1.25;margin:0 0 12px}.post-card-text p{flex:1;margin-bottom:18px}.post-read{font-size:14px;font-weight:600;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:5px;align-self:flex-start}.post-card-text:hover .post-read{color:var(--red);border-color:var(--red)}
@media(max-width:650px){.post-grid-text{gap:0}.post-card-text{padding:22px 0 26px}.post-card-text h3{font-size:19px}}

/* Let's Talk page. */
.nav-contact[aria-current="page"]{color:var(--red)}.contact-lede{max-width:640px}
.contact-page{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:7%;border-top:1px solid var(--line);padding:70px 0 110px;align-items:start}.contact-form-wrap h2{font-size:clamp(28px,2.8vw,42px);margin:14px 0 30px}
.contact-form{display:grid;gap:22px}.field-row{border:0;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:16px}.field-row legend{font-size:15px;font-weight:700;margin-bottom:10px;padding:0}.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:15px;font-weight:700}.field-row .field label{font-size:13px;font-weight:600;color:var(--muted)}.req{color:var(--red)}
.field input,.field textarea{font:inherit;font-size:16px;color:var(--ink);background:#fff;border:1px solid #c9c8c2;border-radius:0;padding:14px 16px;width:100%}.field textarea{resize:vertical;min-height:150px}.field input:focus,.field textarea:focus{outline:2px solid var(--red);outline-offset:1px;border-color:var(--red)}
.field-check{display:flex;align-items:center;gap:12px;font-size:15px}.field-check input{width:20px;height:20px;accent-color:var(--red)}
.form-preview-note{background:#eeede7;border-left:3px solid var(--red);padding:16px 20px;font-size:15px;line-height:1.6}.form-preview-note a{text-decoration:underline;text-underline-offset:3px}.form-submit{justify-self:start;border:0;font-family:inherit;cursor:pointer}.form-submit:disabled{background:#b9b8b2;cursor:not-allowed}
.contact-details{display:grid;gap:18px}.contact-card{border-top:3px solid var(--ink);padding:24px 0 8px}.contact-card .eyebrow{color:var(--muted)}.contact-name{font-size:22px;font-weight:800;letter-spacing:-.4px;margin:12px 0 8px}.contact-name a:hover{color:var(--red)}.contact-card address{font-style:normal;font-size:17px;line-height:1.6}.contact-card p{font-size:16px;line-height:1.6;margin:0 0 14px}.contact-role{color:var(--muted)}.contact-phone,.contact-email{font-size:18px;font-weight:600}.contact-phone:hover,.contact-email:hover{color:var(--red)}.contact-card .text-link{margin-top:6px}.contact-assess{border-top-color:var(--red)}
@media(min-width:651px) and (max-width:1050px){.contact-page{grid-template-columns:1fr;gap:50px}.contact-details{grid-template-columns:1fr 1fr;gap:30px}.contact-assess{grid-column:1/-1}}
@media(max-width:650px){.contact-page{grid-template-columns:1fr;gap:44px;padding:44px 0 70px}.field-row{grid-template-columns:1fr}}
/* Let's Talk: plain contact blocks and a red Alignment Assessment box. */
.contact-card .contact-name{margin-top:4px}.contact-person .contact-name{margin-bottom:2px}.contact-person .contact-role{margin-bottom:10px}
.contact-assess{background:var(--red);color:#fff;padding:32px 30px 34px;margin-top:10px}.contact-assess .eyebrow{color:#ffd9df}.contact-assess-title{font-size:26px;font-weight:800;letter-spacing:-.6px;line-height:1.15;margin:12px 0 12px}.contact-assess p{font-size:17px;line-height:1.55;margin:0 0 22px}.contact-assess p.contact-assess-title{font-size:26px;margin:12px 0 12px}.assess-button{display:inline-block;background:#fff;color:var(--red);padding:14px 24px;border-radius:999px;font-weight:700;font-size:15px}.assess-button:hover{background:var(--ink);color:#fff}.contact-assess a:focus-visible{outline-color:#fff}
@media(min-width:651px) and (max-width:1050px){.contact-assess{grid-column:1/-1}}

/* Blog: newsletter and podcast subscribe band. */
.subscribe-band{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px;margin-bottom:60px}.subscribe-box{padding:34px 34px 36px}.subscribe-box h2{font-size:clamp(24px,2.2vw,32px);letter-spacing:-.04em;line-height:1.12;margin:12px 0 10px}.subscribe-box>p{font-size:16px;line-height:1.6;margin:0 0 22px}
.subscribe-newsletter{background:#eeede7;border-top:3px solid var(--red)}.subscribe-newsletter .eyebrow{color:var(--red)}.subscribe-form{display:grid;gap:16px}.subscribe-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.subscribe-email{grid-column:1/-1}.subscribe-form .field label{font-size:13px}.subscribe-note{margin:0;font-size:14px;color:#55554f}.subscribe-form .form-submit{padding:14px 26px}
.subscribe-podcast{background:var(--ink);color:var(--paper);display:flex;flex-direction:column}.subscribe-podcast .eyebrow{color:#b9b9b1}.subscribe-podcast>p{color:#d8d8d2}.subscribe-links{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-bottom:26px}.subscribe-podcast .assess-button{color:var(--ink)}.subscribe-podcast .assess-button:hover{background:var(--red);color:#fff}.subscribe-latest{margin-top:auto;font-size:15px;font-weight:600;color:#d8d8d2;text-decoration:underline;text-underline-offset:4px}.subscribe-latest:hover{color:#fff}
@media(min-width:651px) and (max-width:1050px){.subscribe-band{grid-template-columns:1fr}}
@media(max-width:650px){.subscribe-band{grid-template-columns:1fr;gap:18px;margin-bottom:44px}.subscribe-box{padding:26px 22px 28px}.subscribe-fields{grid-template-columns:1fr}}

/* Footer address (SEO: name, address and phone on every page) */
.footer-info{display:flex;flex-direction:column;gap:14px}
.footer-address{font-style:normal;font-size:13px;line-height:1.6;color:var(--muted)}
.footer-address a{color:inherit;text-decoration:none}
.footer-address a:hover{color:var(--red)}

/* Razor Branding: 5 Rs and FAQ */
.rb-rs{padding:90px 0;border-top:1px solid var(--line)}
.rb-rs-list{list-style:none;margin:50px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:30px}
.rb-rs-list li{border-top:1px solid var(--ink);padding-top:18px}
.rb-rs-list .rb-question{display:block;font-size:11px;letter-spacing:2px;color:var(--red);margin-bottom:10px}
.rb-rs-list h3{font-size:26px;margin:0 0 8px;letter-spacing:-.5px}
.rb-rs-list .rb-rs-line{font-weight:700;margin:0 0 10px}
.rb-rs-list p{font-size:15px;line-height:1.6;margin:0}
.faq{padding:90px 0;border-top:1px solid var(--line)}
.faq-list{margin-top:40px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary h3{font-size:22px;margin:0;letter-spacing:-.3px;font-weight:600}
.faq .plus{font-size:22px;transition:transform .3s;flex:none}
.faq details[open] .plus{transform:rotate(45deg)}
.faq details p{max-width:820px;font-size:17px;line-height:1.7;margin:0 0 26px}
@media (max-width:1000px){.rb-rs-list{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.rb-rs,.faq{padding:55px 0}.rb-rs-list{grid-template-columns:1fr;gap:24px}.faq summary h3{font-size:18px}.faq details p{font-size:16px}}

/* Case study at-a-glance summary */
.cs-glance dl{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.cs-glance dl>div{padding:22px 24px 24px 0}
.cs-glance dl>div+div{padding-left:24px;border-left:1px solid var(--line)}
.cs-glance dt{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--red);font-weight:700;margin-bottom:8px}
.cs-glance dd{margin:0;font-size:15px;line-height:1.55}
@media (max-width:900px){.cs-glance dl{grid-template-columns:1fr 1fr}.cs-glance dl>div:nth-child(3){padding-left:0;border-left:0}.cs-glance dl>div:nth-child(n+3){border-top:1px solid var(--line)}}
@media (max-width:560px){.cs-glance dl{grid-template-columns:1fr}.cs-glance dl>div,.cs-glance dl>div+div{padding:16px 0;border-left:0}.cs-glance dl>div+div{border-top:1px solid var(--line)}}

/* Post byline */
.article-byline{margin:18px 0 0;font-size:15px;color:var(--muted)}
.article-byline a{color:var(--ink);font-weight:700;text-decoration:none;border-bottom:1px solid var(--line)}
.article-byline a:hover{color:var(--red);border-color:var(--red)}

/* WebP images: the <picture> wrapper takes no space of its own */
picture{display:contents}
.faq details{border-top:0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq details>p{padding:0 35px 0 0;color:#555}

/* Insights: combined blog and podcast, topic hubs, guests */
.insights{padding:20px 0 100px}
.insights-top{display:grid;gap:26px;margin-bottom:46px;padding-bottom:30px;border-bottom:1px solid var(--line)}
.insight-filters{display:flex;gap:10px;flex-wrap:wrap}
.insight-filters button{font:inherit;font-size:14px;padding:9px 18px;border:1px solid var(--ink);border-radius:30px;background:none;color:var(--ink);cursor:pointer}
.insight-filters button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.insights-topics{display:flex;gap:16px 22px;align-items:baseline;flex-wrap:wrap}
.insights-topics .eyebrow{margin:0}
.topic-links{display:flex;flex-wrap:wrap;gap:10px 22px}
.topic-links a{font-size:15px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:2px}
.topic-links a:hover,.topic-links a[aria-current="page"]{color:var(--red);border-color:var(--red)}
.insight-card .post-topic{display:inline-block;margin-top:14px;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--red);font-weight:700}
.post-guest{font-size:14px;font-weight:700;margin:-4px 0 8px}
.insight-card[hidden]{display:none}
.topic-title{font-size:clamp(44px,6vw,92px)}
.topic-intro{max-width:620px;font-size:19px;line-height:1.6}
.topic-count{font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin:0}
.topic-more{margin-top:60px;padding-top:30px;border-top:1px solid var(--line)}
.this-week{margin-bottom:50px;grid-template-columns:repeat(2,1fr)}
.guests{padding:20px 0 100px}
.guest-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:40px 30px}
.guest-card{display:block;color:var(--ink);text-decoration:none}
.guest-image{aspect-ratio:1.6;overflow:hidden;background:#e4e3df;margin-bottom:16px}
.guest-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.guest-card:hover .guest-image img{transform:scale(1.04)}
.guest-card h3{font-size:22px;margin:0 0 6px;letter-spacing:-.3px}
.guest-role{font-size:14px;line-height:1.5;color:var(--muted);margin:0 0 10px}
.guest-episode{font-size:15px;line-height:1.5;margin:0 0 12px}
.guest-box{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:20px 0;margin:0 0 34px}
.guest-box .eyebrow{margin-bottom:8px}
.guest-name{font-size:22px;font-weight:700;margin:0 0 4px}
.guest-box .guest-role{margin-bottom:12px}
.transcript{margin:40px 0 10px;padding-top:30px;border-top:1px solid var(--line)}
.transcript h2{font-size:26px;margin:0 0 16px}
.related{padding:70px 0 90px;border-top:1px solid var(--line)}
.related h2{font-size:clamp(28px,3vw,40px)}
@media (max-width:1000px){.guest-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.guest-grid,.this-week{grid-template-columns:1fr}.insights,.guests{padding-bottom:60px}.related{padding:50px 0 60px}}
.guest-image{aspect-ratio:1.15}
.guest-image img{object-position:100% 35%}

/* Podcast page: about the show */
.podcast-about{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding:90px 0;border-bottom:1px solid var(--line)}
.podcast-about-copy>p:first-child{font-size:20px;line-height:1.6;margin:0 0 30px}
.podcast-hosts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:30px}
.podcast-host{display:flex;gap:16px;align-items:center;color:var(--ink);text-decoration:none}
.podcast-host img{width:80px;height:80px;object-fit:cover;filter:grayscale(1);flex:none}
.podcast-host:hover img{filter:none}
.podcast-host strong{display:block;font-size:18px;margin-bottom:4px}
.podcast-host span{font-size:14px;line-height:1.5;color:var(--muted)}
.podcast-listen{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-bottom:22px}
.podcast-more{display:flex;gap:24px;flex-wrap:wrap}
.insights-subscribe{padding-bottom:90px}
@media (max-width:800px){.podcast-about{grid-template-columns:1fr;gap:20px;padding:55px 0}.podcast-hosts{grid-template-columns:1fr}}
.podcast-host span strong{color:var(--ink)}

/* Razor Branding podcast logo */
.podcast-logo{display:block;height:auto}
.subscribe-podcast .podcast-logo{width:150px;margin:26px 0 4px}
.podcast-about .podcast-logo{width:min(250px,100%);margin-top:36px}
@media (max-width:800px){.podcast-about .podcast-logo{width:180px;margin-top:24px}}
.subscribe-podcast .podcast-logo{margin:26px 0 26px}
/* Podcast page: line "A new episode" up with the first line of the show description */
@media (min-width:801px){.podcast-about>div:first-child{margin-top:-47px}}
/* Keep a <picture>'s <source> out of grid and flex layouts */
picture>source{display:none}

/* Careers page */
.careers-intro{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:center;padding:40px 0 90px}
.careers-photo img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.careers-lead{font-size:21px;line-height:1.6;margin:24px 0 0;max-width:620px}
.careers-lists{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:80px 0;border-top:1px solid var(--line)}
.careers-list ul{list-style:none;margin:20px 0 0;padding:0;border-top:1px solid var(--ink)}
.careers-list li{padding:14px 0;border-bottom:1px solid var(--line);font-size:16px;line-height:1.5}
.careers-jobs{padding:90px 0;border-top:1px solid var(--line)}
.careers-job-groups{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:50px}
.careers-job-groups h3{font-size:22px;margin:0 0 16px;letter-spacing:-.3px}
.job-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.job-list a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:17px;font-weight:600}
.job-list .job-more{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-weight:700;white-space:nowrap}
.job-list a:hover,.job-list a:hover .job-more{color:var(--red)}
.careers-note{font-size:14px;line-height:1.6;color:var(--muted);margin:18px 0 0}
.careers-cta{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:60px;padding-top:30px;border-top:1px solid var(--line)}
.careers-cta p{font-size:22px;font-weight:700;margin:0}
@media (max-width:1000px){.careers-lists{grid-template-columns:1fr;gap:30px}}
@media (max-width:800px){.careers-intro,.careers-job-groups{grid-template-columns:1fr;gap:30px}.careers-intro{padding:20px 0 55px}.careers-lists,.careers-jobs{padding:55px 0}.careers-lead{font-size:18px}.job-list a{font-size:16px}.job-list .job-more{display:none}}

/* Careers: position pages */
.job .article-header{max-width:none}
.job-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:60px;align-items:start}
.job-layout .article-body h2{font-size:26px;margin:36px 0 14px}
.job-layout .article-body h3{font-size:20px;margin:28px 0 10px}
.job-layout .article-body h4{font-size:17px;margin:22px 0 8px}
.job-apply{position:sticky;top:110px;border-top:3px solid var(--red);padding-top:20px}
.job-apply p{font-size:16px;line-height:1.6;margin:10px 0 20px}
.job-others{padding-top:70px}
.job-others .job-list{margin-top:18px}
@media (max-width:900px){.job-layout{grid-template-columns:1fr;gap:30px}.job-apply{position:static}}
.article.job{max-width:1180px}
.form-trap{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}.form-status{margin:0;background:#eeede7;border-left:3px solid var(--red);padding:16px 20px;font-size:15px;line-height:1.6;color:var(--ink,#111)}.form-status:empty{display:none}.form-status a{text-decoration:underline;text-underline-offset:3px}.subscribe-newsletter .form-status{background:#fff}.form-status.is-error{border-left-color:#8a1c1c}
.insight-card[hidden],.post-card[hidden],.insights-more[hidden]{display:none}.insights-more{margin:48px 0 0;text-align:center}.insights-more .book-button{border:0;font-family:inherit;cursor:pointer}
.post-image-default{background:var(--ink);display:flex;align-items:center;justify-content:center}.post-card .post-image-default img,.post-image-default img{width:72%;height:auto;object-fit:contain;transform:none}
.field-choice{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 26px}.field-choice legend{font-size:15px;font-weight:700;line-height:1.5;margin-bottom:12px;padding:0}.field-choice label{display:flex;align-items:center;gap:10px;font-size:15px}.field-choice input{width:20px;height:20px;accent-color:var(--red)}.assess-page{grid-template-columns:minmax(0,1fr);max-width:820px}

/* Fade-in transitions (2026-11-10). Every page's H1 rises in on load; on the
   homepage (the page with #process), the hero lines follow it, and sections fade in as they scroll into
   view (script.js adds .reveal only to elements below the fold, then .is-in).
   Nothing moves for people who ask for reduced motion. */
@keyframes fade-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){
h1{animation:fade-rise .9s cubic-bezier(.2,.7,.2,1) both}
body:has(#process) .hero .eyebrow{animation:fade-rise .8s cubic-bezier(.2,.7,.2,1) both}
body:has(#process) .hero h1{animation-delay:.12s}
body:has(#process) .hero-bottom{animation:fade-rise .9s cubic-bezier(.2,.7,.2,1) .35s both}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0s)}
.reveal.is-in{opacity:1;transform:none}
}

/* Rounded corners and uncropped feed images (2026-11-10).
   Every image and video gets at least a 5px corner radius; frames that clip
   their image (and zoom it on hover) get the same radius so the zoom stays
   inside the rounded corners. Blog and podcast cards (and Guests) show the
   whole image, full width at its own height: never cropped, no empty space.
   The logo placeholder for posts without an image keeps its fixed frame. */
img,video{border-radius:5px}
.post-image,.project-image,.guest-image,.studio,.bank-logo,.cs-cover,.slide{border-radius:5px;overflow:hidden}
.post-image,.guest-image{aspect-ratio:auto;background:none}
.post-image img,.guest-image img{height:auto}
.post-image.post-image-default{aspect-ratio:1.9;background:var(--ink)}
