/* ===== Custom overrides (static build) ===== */

/* --- New typeface system: Google Sans for body copy, Stack Sans Headline for headings --- */
*{font-family:"Google Sans","Plus Jakarta Sans","Helvetica Neue",Helvetica,Arial,sans-serif!important;}
h1,h2,h3,h4,h5,h6,
.display,.sec-head,.kicker,
.bhero-h1,.hero-h1,.cs-h1,.cs-h1-sub,
.intro-statement,.imc-big,.imc-lab,.imc-script em,.imc-script b,
.stat-num,.cstage-title,.cstage-client,.cstage-sector,
.n-title,.n-cat,
.award-name,
.value .v-name,
.units-head h2,.mu-name,.mu-tag,
.foot-col h4,.mega-col h5,.mm-group,
.nc-t,.nc-s,.hub-card h3,.blog-title,.blog-cat,
.al-meta b,.al-class,.brand-txt b,
.logos-lead h2,
.careers-body h2,
.about-statement,
.intro-combined .intro-statement,
.imc-tile-cap,
.route h3,
.s-name,
.ms-no,.ms-name,
.al-card .al-meta,
.svc .s-name,
.edu-name,.lead-name,.exec-name,
.btn,.btn-solid,.btn-ghost,.imc-btn,.route-go,.go,.cv-opt,.cv-q,.bd-save
{font-family:"Stack Sans Headline","Graphik","Plus Jakarta Sans","Helvetica Neue",Helvetica,Arial,sans-serif!important;}

/* Balanced headings / tidy paragraphs */
h1,h2,h3,h4,.display,.sec-head,.hero-h1,.bhero-h1{text-wrap:balance;}
p,li,.lead-p{text-wrap:pretty;}
.logos-lead,.logos-lead h2{max-width:none;}

/* --- Group mega menu: single column now --- */
.mega-panel[data-panel="group"] .mega-cols{grid-template-columns:minmax(0,340px);}

/* --- Header: no CTA, keep toggle right --- */
.nav-right:empty{display:none;}

/* --- Hero slider (home) --- */
.hero.hero-slider{position:relative;display:block;height:76vh;min-height:540px;max-height:860px;padding:0;overflow:hidden;background:#050505;}
.hs-track{position:absolute;inset:0;}
.hs-slide{position:absolute;inset:0;display:flex;align-items:flex-end;padding:104px 0 clamp(92px,12vh,110px);opacity:0;visibility:hidden;transition:opacity .9s ease,visibility 0s linear .9s;}
.hs-slide.is-active{opacity:1;visibility:visible;transition:opacity .9s ease;z-index:2;}
.hs-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.06);transition:transform 7s ease-out;}
.hs-slide.is-active .hs-bg{transform:scale(1);}
.hs-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.9) 0%,rgba(5,5,5,.62) 55%,rgba(5,5,5,.35) 100%),linear-gradient(0deg,rgba(5,5,5,.75) 0%,rgba(5,5,5,0) 45%);}
.hs-slide .wrap{position:relative;z-index:2;width:100%;}
.hs-kicker{display:inline-block;font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;}
.hs-slide .hero-h1{max-width:20ch;font-size:clamp(2.2rem,4.6vw,4.6rem);}
.hero-tagline{font-size:clamp(1rem,1.6vw,1.25rem);color:#fff;opacity:.9;margin:0 0 10px;font-weight:500;letter-spacing:.01em;}
.hs-bg-video{position:absolute;inset:0;overflow:hidden;}
.hs-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hs-bg-video .hs-bg{position:absolute;inset:0;z-index:-1;}
.hs-slide .hero-right{align-self:end;}
.hs-slide .hero-left,.hs-slide .hero-right{opacity:0;transform:translateY(22px);transition:opacity .8s ease .25s,transform .8s ease .25s;}
.hs-slide.is-active .hero-left,.hs-slide.is-active .hero-right{opacity:1;transform:none;}
.hs-slide .hero-right{transition-delay:.4s;}
.hero-slider .hs-controls{position:absolute;left:0;right:0;bottom:clamp(22px,3.4vh,34px);z-index:5;display:flex;align-items:center;gap:16px;margin:0 auto;}
.hs-arrow{width:40px;height:40px;border:1px solid rgba(255,255,255,.35);color:#fff;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(5,5,5,.35);transition:background .3s,border-color .3s;}
.hs-arrow:hover{background:var(--accent);border-color:var(--accent);color:#050505;}
.hs-dots{display:flex;gap:10px;}
.hs-dot{width:34px;height:3px;background:rgba(255,255,255,.3);border:0;padding:0;position:relative;overflow:hidden;}
.hs-dot::after{content:"";position:absolute;inset:0;background:var(--accent);transform:scaleX(0);transform-origin:left;}
.hs-dot.is-active::after{transform:scaleX(1);transition:transform 6.5s linear;}
.hs-paused .hs-dot.is-active::after{transition:none;}
.btn .arr-down{animation:arrBounce 1.6s ease-in-out infinite;}
@keyframes arrBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(3px)}}

/* Business units visible on arrival */
.units{padding-top:clamp(20px,2.6vh,28px);}
.units-head{margin-bottom:clamp(12px,1.8vh,18px);align-items:center;}
.units-head h2{margin:0;}
.sublogos-grid{grid-template-columns:repeat(4,1fr);}
.slogo{padding-top:clamp(26px,3vw,46px);padding-bottom:clamp(26px,3vw,46px);}

/* Client logos: 16, 8 per row, bare */
.logo-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:clamp(18px,2.4vw,40px) clamp(14px,2vw,32px);align-items:center;}
.logo-item{display:flex;align-items:center;justify-content:center;height:clamp(44px,5vw,72px);background:none;border:0;padding:0;}
.logo-item img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;opacity:.85;transition:opacity .3s;}
.logo-item:hover img{opacity:1;}
.logo-rows::before,.logo-rows::after{display:none;}

/* Team photos in black & white */
.member-portrait img,.member img,.team-grid img,.about-grid > div:first-child > img,img[src*="ph-avatar"]{filter:grayscale(1);}

/* Footer text: white */
.footer,.footer *,.footer a,.footer p,.footer span,.footer b,.footer h4,.foot-col .lead-p,.foot-fine,.foot-fine a{color:#fff!important;}
.footer a:hover{color:var(--accent-bright)!important;}

/* Contact page: detail columns after removing the address block */
.dgrid,.details-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));}

/* --- Outdoor: Bulk discounts (bento) + partnership --- */
.bulk{border-top:1px solid var(--line);background:var(--bg-2);}
.bulk-sub{color:var(--bone-2);max-width:54ch;margin-top:14px;}
.bd-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,minmax(190px,1fr));gap:clamp(12px,1.4vw,20px);margin-top:clamp(30px,3.4vw,50px);}
.bd-card{position:relative;overflow:hidden;text-align:left;display:flex;flex-direction:column;justify-content:space-between;gap:24px;padding:clamp(22px,2.4vw,34px);border:1px solid var(--line-2);border-radius:14px;color:var(--bone);background:var(--panel);cursor:pointer;transition:transform .4s var(--ease),border-color .4s,background .4s;}
.bd-card:hover{transform:translateY(-4px);border-color:var(--accent);}
.bd-a{grid-column:1 / span 2;grid-row:1 / span 2;background:radial-gradient(120% 90% at 100% 0%,rgba(255,107,0,.28),transparent 60%),linear-gradient(160deg,var(--panel-2),var(--panel));}
.bd-b{background:linear-gradient(135deg,var(--panel-2),var(--panel));}
.bd-c{background:radial-gradient(90% 90% at 0% 100%,rgba(255,107,0,.18),transparent 60%),var(--panel);}
.bd-num{position:absolute;right:clamp(18px,2vw,30px);top:clamp(10px,1.2vw,18px);font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;font-size:clamp(3rem,6vw,6.5rem);line-height:1;color:rgba(255,255,255,.06);}
.bd-tag{align-self:flex-start;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);padding:5px 12px;border-radius:99px;}
.bd-body{display:flex;flex-direction:column;gap:10px;}
.bd-title{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;letter-spacing:-.02em;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.15;}
.bd-a .bd-title{font-size:clamp(1.9rem,3.4vw,3rem);max-width:14ch;}
.bd-text{color:var(--bone-2);font-size:.98rem;max-width:40ch;}
.bd-go{display:inline-flex;align-items:center;gap:10px;font-size:.9rem;font-weight:500;color:var(--bone);}
.bd-card:hover .bd-go{color:var(--accent-bright);}
.partner{border-top:1px solid var(--line);}
.partner-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:clamp(34px,4vw,68px);align-items:center;}
.partner h2{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;letter-spacing:-.025em;font-size:clamp(2rem,4.4vw,3.6rem);line-height:1.05;}
.partner p{color:var(--bone-2);font-size:1.05rem;margin-top:18px;max-width:52ch;}
.partner-actions{display:flex;flex-direction:column;gap:14px;align-items:flex-start;}

/* modal */
.bd-modal[hidden]{display:none;}
.bd-modal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;}
.bd-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(4px);}
.bd-dialog{position:relative;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;background:var(--bg-2);border:1px solid var(--line-2);border-radius:16px;padding:clamp(24px,3vw,38px);}
.bd-dialog h3{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;font-size:1.7rem;letter-spacing:-.02em;margin:8px 0 6px;}
.bd-offer{color:var(--bone-2);margin-bottom:20px;}
.bd-close{position:absolute;top:12px;right:16px;font-size:2rem;line-height:1;color:var(--bone);}
.bd-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.bd-form label{display:flex;flex-direction:column;gap:6px;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);}
.bd-form input,.bd-form textarea{font:inherit;font-size:1rem;letter-spacing:0;text-transform:none;color:var(--bone);background:var(--panel);border:1px solid var(--line-2);border-radius:8px;padding:12px 14px;}
.bd-form input:focus,.bd-form textarea:focus{outline:none;border-color:var(--accent);}
.bd-wide{grid-column:1 / -1;}
.bd-note{font-size:.8rem;color:var(--mute);margin:0!important;}

@media (max-width:1024px){
  .hs-slide .hero-split{grid-template-columns:1fr;gap:20px;}
  .logo-grid{grid-template-columns:repeat(4,1fr);}
  .bd-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto;}
  .bd-a{grid-column:1 / -1;grid-row:auto;min-height:280px;}
  .partner-grid{grid-template-columns:1fr;}
}
@media (max-width:900px){
  .sublogos-grid{grid-template-columns:1fr 1fr;}
  .slogo{border-right:1px solid var(--line)!important;}
  .slogo:nth-child(even){border-right:none!important;}
  .slogo:nth-child(n+3){border-top:1px solid var(--line);}
}
@media (max-width:640px){
  .hero.hero-slider{height:auto;min-height:88vh;}
  .hs-slide{padding-top:96px;}
  .hs-slide .hero-lede{font-size:1rem;}
  .bd-grid{grid-template-columns:1fr;}
  .bd-form{grid-template-columns:1fr;}
}
@media (prefers-reduced-motion:reduce){.hs-slide,.hs-bg,.hs-slide .hero-left,.hs-slide .hero-right{transition:none;}.btn .arr-down{animation:none;}}

/* spacing under the case-file heading */
#vault .sec-head{margin-bottom:clamp(20px,2.4vw,34px);}
#why .intro-statement > b:first-child{display:block;margin-bottom:.5em;}

/* Headline accent words: keep flush with the first line (was inline-block + left margin) */
.accent-text,.hero-h1 .accent-text,.bhero-h1 .accent-text,h1 .accent-text,h2 .accent-text,h3 .accent-text{display:inline!important;margin-left:0!important;padding-left:0!important;}

/* --- Business mega menu: 4 units fill the panel --- */
.mega-units{grid-template-columns:repeat(4,1fr);}
.mega-unit{min-height:200px;}

/* --- Homepage client logos: animated lanes, bare (no box) --- */
.logo-rows::before,.logo-rows::after{display:block;}
.logo-rows{gap:clamp(18px,2vw,30px);}
.logo-cell{background:none!important;border:0!important;border-radius:0;padding:0 10px;width:clamp(140px,14vw,190px);height:clamp(48px,5vw,72px);}
.logo-cell:hover{background:none!important;transform:none;}
.logo-cell img{opacity:.85;transition:opacity .3s;}
.logo-cell:hover img{opacity:1;}
@media (max-width:640px){.logo-cell{width:38vw;height:52px;}}


/* --- Careers: submit your CV --- */
.cvsec{border-top:1px solid var(--line);background:var(--bg-2);}
.cvsec h2{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;letter-spacing:-.025em;font-size:clamp(2rem,4.4vw,3.6rem);line-height:1.05;}
.cvsec p{color:var(--bone-2);font-size:1.05rem;margin-top:16px;max-width:48ch;}
.cv-dialog{width:min(70vw,100%);max-width:1100px;}
.cv-steps{list-style:none;display:flex;gap:8px;margin:14px 0 22px;padding:0;counter-reset:s;}
.cv-steps li{flex:1;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);border-top:3px solid var(--line-2);padding-top:8px;counter-increment:s;}
.cv-steps li::before{content:counter(s) ". ";}
.cv-steps li.on{color:var(--accent);border-top-color:var(--accent);}
.cv-q{color:var(--bone);font-size:1.05rem;margin:0 0 14px!important;}
.cv-opts{display:grid;gap:10px;}
.cv-opt{display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left;font:inherit;font-size:1rem;color:var(--bone);background:var(--panel);border:1px solid var(--line-2);border-radius:10px;padding:16px 18px;cursor:pointer;transition:border-color .25s,background .25s;}
.cv-opt:hover{border-color:var(--accent);background:var(--panel-2);}
.cv-opt i{font-style:normal;color:var(--accent);}
.cv-back{background:none;border:0;color:var(--bone-2);font:inherit;font-size:.9rem;margin-top:14px;padding:0;cursor:pointer;text-decoration:underline;}
.cv-pick{color:var(--bone-2);margin:0 0 16px!important;font-size:.95rem!important;}
.cv-pick .cv-back{margin:0 0 0 8px;}
.cv-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.cv-fields label{display:flex;flex-direction:column;gap:6px;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);}
.cv-fields input:not([type=checkbox]),.cv-fields select,.cv-fields textarea{font:inherit;font-size:1rem;letter-spacing:0;text-transform:none;color:var(--bone);background:var(--panel);border:1px solid var(--line-2);border-radius:8px;padding:11px 13px;width:100%;}
.cv-fields input:focus,.cv-fields select:focus,.cv-fields textarea:focus{outline:none;border-color:var(--accent);}
.cv-wide{grid-column:1 / -1;}
.cv-check{flex-direction:row!important;align-items:flex-start;gap:10px!important;text-transform:none!important;letter-spacing:0!important;font-size:.85rem!important;}
.cv-error{color:#ff8f40;font-size:.9rem;margin:12px 0 0!important;}
.cv-form .btn[type=submit]{margin-top:18px;}
.cv-done h4{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-size:1.6rem;margin:10px 0 8px;}
.cv-done p{color:var(--bone-2);}
@media (max-width:640px){.cv-fields{grid-template-columns:1fr;}}


/* ===== Round 5 refinements ===== */
/* tighter vertical rhythm site-wide */
.section-pad{padding:clamp(44px,5vw,84px) 0;}
.logos-sec{padding:clamp(40px,4.4vw,68px) 0;}
.logo-grid-static{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,2.4vw,32px);align-items:center;justify-items:center;margin-top:clamp(24px,3vw,40px);}
.logo-grid-static .logo-cell{display:flex;align-items:center;justify-content:center;width:100%;height:clamp(52px,6vw,76px);padding:0 10px;}
.logo-grid-static .logo-cell img{max-width:100%;max-height:100%;object-fit:contain;opacity:.9;transition:opacity .3s;}
.logo-grid-static .logo-cell:hover img{opacity:1;}
#clients .logo-grid-static .logo-cell img{filter:none!important;opacity:.9;}
@media (max-width:860px){.logo-grid-static{grid-template-columns:repeat(2,1fr);}}
.footer{background:radial-gradient(60% 120% at 88% 115%,rgba(255,107,0,.20),transparent 62%),#000!important;}

/* single wide intro column when the right column was empty */
.intro-solo{grid-template-columns:1fr!important;}
.intro-solo .intro-statement{max-width:none;}
.one-line{max-width:none!important;white-space:nowrap;}
@media (max-width:760px){.one-line{white-space:normal;}}
.bulk-sub{max-width:none;}
@media (min-width:1100px){.bulk-sub{white-space:nowrap;}}
a.scroll-cue{display:inline-block;cursor:pointer;}
a.scroll-cue:hover .dn{transform:translateY(4px);}
.scroll-cue .dn{transition:transform .3s;}

/* About: philosophy statement, then the two paragraphs beneath */
#philosophy .about-grid{grid-template-columns:1fr;gap:clamp(22px,2.6vw,36px);}
#philosophy .about-statement{max-width:none;}
#philosophy .about-right{display:grid;grid-template-columns:1fr 1fr;gap:18px clamp(28px,4vw,64px);}
#philosophy .about-right .about-visual{grid-column:1 / -1;}
@media (max-width:760px){#philosophy .about-right{grid-template-columns:1fr;}}

/* Partnership: orange band */
.partner{background:#ff6b00;border-top:0;}
.partner .kicker,.partner h2,.partner p,.partner .accent-text{color:#fff!important;}
.partner .eyebrow-row .ln{background:rgba(255,255,255,.45);}
.partner .btn-solid{background:#fff;color:#ff6b00;}
.partner .btn-solid:hover{background:#0a0a0a;color:#fff;}
.partner .btn-ghost{border-color:#fff;color:#fff;background:transparent;}
.partner .btn-ghost:hover{background:#fff;color:#ff6b00;}

/* Alumni voices: 4 x 2 */
.alumni{border-top:1px solid var(--line);padding-top:clamp(44px,5vw,84px);}
.alumni-sub{color:var(--bone-2);max-width:none;margin:12px 0 clamp(24px,2.6vw,38px);}
.al-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:1fr 1fr;height:100vh;min-height:640px;}
.al-card{position:relative;overflow:hidden;border:1px solid var(--line);background:#111;outline:none;cursor:default;}
.al-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:transform 1s var(--ease);}
.al-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,5,5,.75),rgba(5,5,5,0) 55%);transition:opacity .3s;}
.al-quote{position:absolute;inset:0;z-index:2;background:#ff6b00;display:flex;align-items:flex-start;justify-content:flex-start;padding:clamp(20px,2vw,30px);padding-bottom:5.5rem;opacity:0;transition:opacity .35s ease;}
.al-quote p{color:#0a0a0a;text-align:left;font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:500;font-size:clamp(1rem,1.3vw,1.3rem);line-height:1.3;letter-spacing:-.01em;margin:0;max-width:none;transform:translateY(12px);transition:transform .45s var(--ease);}
.al-meta{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:2px;padding:clamp(20px,2vw,30px);color:#fff;transition:color .3s;}
.al-meta b{font-weight:700;font-size:clamp(1rem,1.2vw,1.2rem);}
.al-meta .al-class{font-size:.9rem;letter-spacing:.04em;}
.al-card:hover .al-quote,.al-card:focus-visible .al-quote,.al-card.is-open .al-quote{opacity:1;}
.al-card:hover .al-quote p,.al-card:focus-visible .al-quote p,.al-card.is-open .al-quote p{transform:none;}
.al-card:hover::after,.al-card:focus-visible::after,.al-card.is-open::after{opacity:0;}
.al-card:hover .al-meta,.al-card:focus-visible .al-meta,.al-card.is-open .al-meta{color:#0a0a0a;}
@media (max-width:1100px){.al-grid{grid-template-columns:1fr 1fr;grid-template-rows:repeat(4,46vh);height:auto;}}
@media (max-width:600px){.al-grid{grid-template-columns:1fr;grid-template-rows:repeat(8,52vh);}}

/* Submit your CV */
.cv-grid{display:block;}
.cvsec p{max-width:60ch;}
.cvsec .btn{margin-top:6px;}
.cv-fields{grid-template-columns:1fr 1fr;}

/* careers intro: first line, then bold statement */
#why .intro-grid{grid-template-columns:1.5fr .5fr;}
#why .intro-statement{font-size:clamp(1.5rem,2.5vw,2.3rem);}
#why .intro-statement .l1{display:block;white-space:nowrap;}
@media (max-width:1100px){#why .intro-grid{grid-template-columns:1fr;}#why .intro-statement .l1{white-space:normal;}}
/* inner-page heroes: less dead space */
.hero[style*="min-height:72vh"]{min-height:54vh!important;}
.case-carousel-sec .sec-head{margin-bottom:clamp(20px,2.4vw,34px);}

/* ===== Round 6 ===== */
/* Home: business units on very dark gold */


/* Contact */
.btn-send{letter-spacing:.14em;}
@media (min-width:900px){.brief-actions{flex-wrap:nowrap;align-items:center;}.brief-note{white-space:nowrap;}}

/* Outdoor: partner block spread out, CTAs below side by side */
.partner-grid{grid-template-columns:1fr!important;gap:22px;}
.partner h2{max-width:none;}
@media (min-width:1000px){.partner h2{white-space:nowrap;}}
.partner p{max-width:none!important;}
.partner-actions{flex-direction:row!important;flex-wrap:wrap;align-items:center;gap:14px;margin-top:6px;}

/* CV modal: white, orange headers, black text */
.cv-dialog{background:#fff!important;color:#0a0a0a;border-color:#eee!important;}
.cv-dialog h3,.cv-dialog h4,.cv-dialog .kicker{color:#ff6b00!important;}
.cv-dialog p,.cv-dialog .cv-q,.cv-dialog .cv-pick,.cv-dialog .cv-done p,.cv-dialog b{color:#0a0a0a!important;}
.cv-dialog .bd-close{color:#0a0a0a;}
.cv-dialog .cv-steps li{color:#8a8a8a;border-top-color:#e2e2e2;}
.cv-dialog .cv-steps li.on{color:#ff6b00;border-top-color:#ff6b00;}
.cv-dialog .cv-opt{background:#fff;color:#0a0a0a;border-color:#dcdcdc;}
.cv-dialog .cv-opt:hover{background:#fff7f0;border-color:#ff6b00;}
.cv-dialog .cv-back{color:#444;}
.cv-dialog .cv-fields label{color:#333;}
.cv-dialog .cv-fields input:not([type=checkbox]),.cv-dialog .cv-fields select,.cv-dialog .cv-fields textarea{background:#fff;color:#0a0a0a;border-color:#cfcfcf;}
.cv-dialog .cv-fields input:focus{border-color:#ff6b00;}
.cv-dialog .btn-solid{background:#0a0a0a;color:#fff;}
.cv-dialog .btn-solid:hover{background:#ff6b00;color:#fff;}
.cv-dialog .cv-error{color:#d63c00;}

/* Team section on each business page */
.ut{border-top:1px solid var(--line);}
.ut-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.8vw,26px);margin-top:clamp(24px,3vw,44px);}
.ut-card h3{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-size:1.15rem;margin:14px 0 2px;}
.ut-card span{color:var(--accent);font-size:.85rem;letter-spacing:.06em;}
.ut-ph{aspect-ratio:4/5;overflow:hidden;background:#111;}
.ut-ph img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);}
@media (max-width:900px){.ut-grid{grid-template-columns:1fr 1fr;}}

/* ===== IMC (Marketing Communications) page ===== */
.imc-band{position:relative;overflow:hidden;min-height:clamp(240px,28vw,360px);display:flex;align-items:flex-end;padding:clamp(36px,4vw,64px) 0;border-top:1px solid var(--line);background:#0a0a0a;}
.imc-band::before{content:"";position:absolute;left:-70px;top:-20px;bottom:-20px;width:clamp(320px,40vw,600px);background:url(../images/imc-gear.svg) no-repeat left center/contain;}
.imc-band .wrap{position:relative;width:100%;display:flex;justify-content:flex-end;}
.imc-tag{max-width:38ch;text-align:right;font-size:clamp(1.15rem,1.9vw,1.8rem);font-weight:300;line-height:1.3;color:var(--bone);}
.imc-sec{padding:clamp(40px,5vw,84px) 0;border-top:1px solid var(--line);}
.imc-sec h2{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:500;letter-spacing:-.02em;font-size:clamp(1.8rem,3.2vw,3rem);margin:0 0 14px;}
.imc-sec p{color:var(--bone-2);font-size:1.02rem;line-height:1.6;max-width:70ch;margin:0 0 14px;}
.imc-sec p b,.imc-strong{color:var(--bone);font-weight:600;}
.imc-sub{font-style:italic;color:var(--accent)!important;font-weight:500;}
.imc-btn{background:var(--accent);color:#111;font-weight:600;border-radius:0;padding:14px 34px;}
.imc-btn:hover{background:var(--accent-bright);transform:translateY(-2px);}
.imc-two{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,5vw,80px);align-items:center;}
.imc-circle{aspect-ratio:1;border-radius:50%;overflow:hidden;border:1px solid var(--line-2);max-width:520px;justify-self:end;width:100%;}
.imc-circle img{width:100%;height:100%;object-fit:cover;}
.imc-h3{font-size:1.15rem;font-weight:600;margin:34px 0 10px;color:var(--bone);}
.imc-quote{margin:0;padding:18px 22px;background:var(--panel);border-left:3px solid var(--accent);}
.imc-quote span{font-size:2.6rem;line-height:.6;color:var(--accent);display:block;}
.imc-quote cite{color:var(--mute);font-size:.85rem;font-style:normal;}
.imc-culture{margin-top:clamp(36px,4vw,64px);}
.imc-culture p{max-width:none;}
.imc-chars{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(12px,2vw,28px);margin-top:clamp(24px,3vw,40px);align-items:end;}
.imc-char{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;}
.imc-fig{width:min(120px,80%);height:auto;}
.imc-char span{font-size:1.05rem;color:var(--bone);}
.imc-row{display:grid;grid-template-columns:.9fr 2.1fr;gap:clamp(24px,4vw,64px);padding:clamp(18px,2.2vw,30px) 0;align-items:start;}
.imc-lab{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;color:var(--bone);font-size:1.05rem;}
.imc-big{font-size:clamp(1.8rem,3vw,2.8rem);font-weight:400;letter-spacing:-.02em;}
.imc-svc{display:grid;grid-template-columns:repeat(4,1fr);}
.imc-svc-i{display:flex;flex-direction:column;align-items:center;gap:14px;padding:6px 10px;border-right:1px solid var(--line-2);color:var(--bone);}
.imc-svc-i:last-child{border-right:0;}
.imc-ic{width:clamp(96px,11vw,150px);aspect-ratio:1;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;transition:transform .4s;}
.imc-ic svg{width:56%;}
.imc-svc-i:hover .imc-ic{transform:scale(1.06);}
.imc-vals{background:#111;}
.imc-valgrid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,3vw,48px) clamp(28px,4vw,64px);}
.imc-valgrid h4{font-size:1.05rem;font-weight:600;margin:0 0 12px;color:var(--accent);}
.imc-valgrid p{font-size:.95rem;}
.imc-table{width:100%;border-collapse:collapse;margin-top:14px;font-size:.95rem;}
.imc-table th{text-align:left;font-weight:500;color:var(--bone);padding:0 0 10px;border-bottom:1px solid var(--line-3);}
.imc-table td{padding:10px 12px 10px 0;color:var(--mute);vertical-align:top;}
.imc-link{color:var(--accent);text-decoration:underline;}
.imc-logos{display:flex;align-items:center;gap:10px;margin-top:8px;}
.imc-lg-track{display:flex;gap:18px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;flex:1;}
.imc-lg-track::-webkit-scrollbar{display:none;}
.imc-lg{flex:0 0 calc((100% - 54px)/4);height:96px;display:flex;align-items:center;justify-content:center;}
.imc-lg img{max-width:80%;max-height:70%;opacity:.85;}
.imc-arr{font-size:2rem;color:var(--bone);background:none;border:0;cursor:pointer;padding:0 8px;}
.imc-arr:hover{color:var(--accent);}
.imc-partner{display:flex;align-items:center;gap:22px;}
.imc-partner img{width:160px;}
.imc-partner b{display:block;font-size:1.3rem;color:var(--bone);}
.imc-partner span{color:var(--mute);letter-spacing:.14em;font-size:.8rem;}
.imc-tabs{display:grid;grid-template-columns:repeat(4,1fr);background:#5b6472;text-align:center;}
.imc-tabs a{padding:20px 10px;color:#fff;letter-spacing:.12em;text-transform:uppercase;font-size:.9rem;transition:background .3s;}
.imc-tabs a:hover{background:var(--accent);color:#111;}
.imc-svcrow{border-top:1px solid var(--line-2);padding:clamp(24px,3vw,44px) 0;}
.imc-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px clamp(24px,4vw,60px);}
.imc-list li{color:var(--bone-2);font-size:.98rem;}
.imc-list li::before{content:"— ";color:var(--accent);}
.imc-hero{display:flex;align-items:center;justify-content:center;gap:clamp(24px,4vw,64px);padding:clamp(20px,3vw,50px) 0;flex-wrap:wrap;}
.imc-script{display:flex;flex-direction:column;align-items:center;line-height:1;}
.imc-script em{font-family:"Brush Script MT","Segoe Script","Snell Roundhand",cursive;font-size:clamp(3.4rem,9vw,8rem);color:var(--bone);font-weight:700;}
.imc-script b{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-size:clamp(1.4rem,3vw,2.4rem);letter-spacing:.02em;margin-top:-6px;color:var(--bone);}
.imc-more{display:flex;align-items:center;gap:16px;color:var(--bone);}
.imc-more i{display:block;width:clamp(50px,7vw,110px);height:2px;background:var(--accent);}
.imc-down{text-align:center;font-size:1.8rem;color:var(--bone);margin-bottom:22px;}
.imc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.imc-tile{display:block;overflow:hidden;aspect-ratio:16/9;background:#111;}
.imc-tile img{width:100%;height:100%;object-fit:cover;transition:transform .8s;}
.imc-tile:hover img{transform:scale(1.04);}
.imc-w{grid-column:span 2;}.imc-n{grid-column:span 1;}
.imc-n{aspect-ratio:auto;}
.imc-seemore{display:flex;align-items:center;justify-content:center;background:var(--accent);color:#111;font-size:clamp(1.3rem,2vw,1.9rem);font-weight:500;aspect-ratio:auto;grid-column:span 1;}
.imc-seemore{grid-column:3;}
.imc-grid .imc-seemore{order:99;}
@media (max-width:900px){.imc-two,.imc-row{grid-template-columns:1fr;}.imc-circle{justify-self:center;max-width:380px;}.imc-chars{grid-template-columns:repeat(2,1fr);}.imc-svc{grid-template-columns:1fr 1fr;row-gap:20px;}.imc-valgrid,.imc-list{grid-template-columns:1fr;}.imc-tabs{grid-template-columns:1fr 1fr;}.imc-tag{text-align:left;}.imc-band .wrap{justify-content:flex-start;}.imc-lg{flex-basis:calc((100% - 18px)/2);}.imc-grid{grid-template-columns:1fr;}.imc-w,.imc-n,.imc-seemore{grid-column:auto;}.imc-tile{aspect-ratio:16/10;}.imc-seemore{padding:40px 0;}}
.imc-tile{position:relative;}
.imc-tile img{position:absolute;inset:0;}
.imc-tile-cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:18px clamp(16px,2.2vw,26px) 20px;background:linear-gradient(to top,rgba(0,0,0,.82),rgba(0,0,0,0));color:#fff;display:flex;flex-direction:column;gap:4px;}
.imc-tile-title{font-weight:700;font-size:clamp(1.15rem,1.9vw,1.55rem);letter-spacing:-.01em;line-height:1.12;}
.imc-tile-sub{font-weight:400;font-size:clamp(.8rem,1.05vw,.92rem);line-height:1.3;color:rgba(255,255,255,.82);max-width:46ch;}
.imc-n{min-height:0;}


/* ---- awards accordion (moved from home) ---- */
.awards{border-top:1px solid var(--line);}
.awards-head{text-align:center;max-width:none;margin:0 auto clamp(44px,5vw,72px);}
.awards-head h2{font-size:clamp(2rem,5vw,4.2rem);white-space:nowrap;}
.awards-head p{color:var(--bone-2);font-size:1.05rem;margin-top:18px;white-space:nowrap;}
@media (max-width:760px){.awards-head h2{white-space:normal;font-size:clamp(1.8rem,8vw,2.6rem);}.awards-head p{white-space:normal;font-size:.95rem;}}
.awards-list{border-top:1px solid var(--line);}
.award-acc{border-bottom:1px solid var(--line);position:relative;}
.award-acc-btn{width:100%;display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;padding:clamp(22px,2.6vw,36px) 4px;background:none;border:none;color:inherit;cursor:pointer;text-align:left;position:relative;transition:background .4s var(--ease);}
.award-acc-btn::before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:rgba(255,107,0,.07);transition:width .5s var(--ease);}
.award-acc-btn:hover{background:var(--panel);}
.award-acc-btn:hover::before{width:100%;}
.award-acc-btn:hover .award-acc-name{transform:translateX(6px);}
.award-acc-name{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;font-size:clamp(1.15rem,1.8vw,1.6rem);letter-spacing:-.02em;position:relative;transition:transform .5s var(--ease);}
.award-acc-icon{width:36px;height:36px;border:1px solid var(--line-2);border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none;transition:transform .45s var(--ease),border-color .35s var(--ease);position:relative;}
.award-acc-icon svg{transition:transform .45s var(--ease);}
.award-acc[open] .award-acc-icon{border-color:var(--accent);}
.award-acc[open] .award-acc-icon svg{transform:rotate(45deg);}
.award-acc-body{overflow:hidden;max-height:0;transition:max-height .55s var(--ease),padding .45s var(--ease);}
.award-acc[open] .award-acc-body{max-height:600px;}
.award-acc-inner{padding:0 4px clamp(22px,2.4vw,34px);}
.award-row{display:grid;grid-template-columns:80px 1fr;gap:clamp(14px,2vw,28px);align-items:baseline;padding:clamp(14px,1.6vw,20px) 0;border-bottom:1px solid var(--line);}
.award-row:last-child{border-bottom:none;}
.award-yr{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-size:.88rem;color:var(--accent);letter-spacing:.06em;font-weight:500;}
.award-cat{color:var(--bone-2);font-size:.96rem;line-height:1.45;}
@media (max-width:600px){
  .award-row{grid-template-columns:60px 1fr;gap:10px;}
  .award-acc-name{font-size:1.1rem;}
}
@media (max-width:1080px){
  .award-row{grid-template-columns:1fr;gap:6px 0;}
}
.awards .awards-list,
.awards .award-acc,
.awards .award-acc-btn{
  width:100%!important;
  max-width:none!important;
}
.awards .award-acc-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  text-align:left!important;
  direction:ltr!important;
  margin:0!important;
}
.awards .award-acc-name{
  display:block!important;
  flex:1 1 auto!important;
  justify-self:start!important;
  text-align:left!important;
  margin:0!important;
  transform:none;
}
.awards .award-acc-icon{
  flex:0 0 36px!important;
  margin-left:auto!important;
  justify-self:end!important;
}/* ===== Colour tones: orange / white / deep yellow / gold ===== */
.tone-white,.tone-cream,.tone-orange{--line:rgba(0,0,0,.12);--line-2:rgba(0,0,0,.18);--line-3:rgba(0,0,0,.3);}
.tone-white{--bg:#fff;--bg-2:#faf6ee;--bone:#111;--bone-2:#3a3a3a;--mute:#666;--mute-2:#777;--panel:#f5f0e6;--panel-2:#ece5d6;--panel-3:#e2d9c6;--accent:#e85d00;--accent-bright:#ff6b00;background:#fff!important;color:#111;}
.tone-cream{--bg:#f3efe7;--bg-2:#f3efe7;--bone:#111;--bone-2:#3a3a3a;--mute:#6a6a6a;--mute-2:#7a7a7a;--panel:#fff;--panel-2:#faf7f1;--panel-3:#efe9dc;--accent:#e85d00;--accent-bright:#ff6b00;background:#f3efe7!important;color:#111;}
.tone-orange{--bg:#ff6b00;--bg-2:#ff6b00;--bone:#0d0600;--bone-2:#221000;--mute:#3d1c00;--mute-2:#4a2300;--panel:#ff8126;--panel-2:#ff9440;--panel-3:#ffa65c;--accent:#fff;--accent-bright:#fff;background:#ff6b00!important;color:#0d0600;}.tone-white h1,.tone-white h2,.tone-white h3,.tone-white h4,.tone-cream h1,.tone-cream h2,.tone-cream h3,.tone-cream h4,.tone-orange h1,.tone-orange h2,.tone-orange h3,.tone-orange h4{color:var(--bone);}.tone-white .btn-solid,.tone-cream .btn-solid,.tone-orange .btn-solid{background:#111;color:#fff;}.tone-white .btn-solid:hover,.tone-cream .btn-solid:hover{background:#ff6b00;color:#fff;}
.tone-orange .btn-solid:hover{background:#fff;color:#111;}.tone-white .btn-ghost,.tone-cream .btn-ghost,.tone-orange .btn-ghost{color:var(--bone);border-color:var(--line-3);}.tone-white .slogo .logo-slot img,.tone-cream .slogo .logo-slot img,.tone-orange .slogo .logo-slot img,
.tone-white .logo-cell img,.tone-cream .logo-cell img,.tone-orange .logo-cell img{filter:brightness(0);opacity:.85;}
.tone-white .logo-rows::before,.tone-white .logo-rows::after{background:none;}
.tone-cream .imc-ic,.tone-white .imc-ic{background:#ff6b00;}.tone-cream .imc-ic svg,.tone-white .imc-ic svg{stroke:#111;}
.tone-orange .imc-ic{background:#0d0600;}.tone-orange .imc-ic svg{stroke:#ff6b00;}
.tone-cream .imc-seemore,.tone-white .imc-seemore{background:#ff6b00;color:#111;}.tone-cream .ut-ph{background:rgba(0,0,0,.12);}.tone-white .cstage,.tone-cream .cstage,.tone-orange .cstage{color:#fff;}.tone-white .al-grid{color:#fff;}

/* IMC layout bits that depended on the old block */
.imc-light{background:#fff;position:relative;}
.imc-hero-l{position:relative;overflow:hidden;padding:clamp(120px,13vw,170px) 0 0;}
.imc-hero-l::before{content:"";position:absolute;left:-90px;top:0;bottom:0;width:clamp(340px,42vw,640px);background:url(../images/imc-gear-light.svg) no-repeat left center/contain;}
.imc-hero-l .wrap{position:relative;}
.imc-mantra{width:clamp(240px,29vw,420px);height:auto;}
.imc-light .imc-hero{padding:clamp(10px,2vw,30px) 0;}
.imc-light .imc-more{font-size:.95rem;color:#111;}
.imc-light .imc-more i{background:#ff6b00;}
.imc-light .imc-down{color:#111;margin:clamp(10px,3vw,40px) 0 0;}
.imc-light .imc-tag{color:#111;margin:clamp(20px,3vw,44px) 0 clamp(36px,4vw,64px) auto;}
.imc-light .imc-sec{border-top:0;}
.imc-intro{max-width:70ch;margin:14px 0 26px;color:var(--bone-2);font-size:1.05rem;line-height:1.6;}
.imc-lab{margin:8px 0 14px;color:var(--bone);}
.imc-valgrid{grid-template-columns:repeat(4,1fr);margin-top:clamp(24px,3vw,44px);}
.imc-valgrid h4{color:var(--bone);}
.imc-valgrid p{color:var(--bone-2);}
.imc-svc-i{color:var(--bone);border-right-color:var(--line-2);}
.imc-tabs{background:#111;}
.imc-tabs a{color:#fff;}
.imc-tabs a:hover{background:#ff6b00;color:#fff;}
.imc-list li{color:var(--bone-2);}
.imc-list li::before{color:var(--accent);}
.imc-svcrow{border-top:1px solid var(--line-2);}
.imc-link{color:var(--bone);text-decoration:underline;}
.imc-partner b{color:var(--bone);}.imc-partner span{color:var(--mute);}
@media (max-width:900px){.imc-valgrid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.imc-valgrid{grid-template-columns:1fr;}}
.awards{border-top:0;}
.award-acc-btn,.award-acc-name{color:var(--bone);}
.award-cat{color:var(--bone-2);}
.award-yr{color:var(--accent);}

/* ===== Motion: loading, scrolling, hover ===== */
@keyframes wipeUp{to{transform:translateY(-101%);visibility:hidden;}}
@keyframes riseIn{from{opacity:0;transform:translateY(26px);}to{opacity:1;transform:none;}}
@keyframes popIn{from{opacity:0;transform:scale(.92);}to{opacity:1;transform:none;}}
body::before{content:"Give us a second. We're thinking.";position:fixed;inset:0;z-index:99999;background:#ff6b00;color:#fff;pointer-events:none;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 24px;font-family:"Graphik","Plus Jakarta Sans","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:clamp(1rem,2.2vw,1.4rem);font-weight:500;letter-spacing:.01em;animation:wipeUp .85s cubic-bezier(.77,0,.18,1) .65s forwards;}
@media (prefers-reduced-motion:reduce){body::before{content:"";}}
.bhero-fg>*,.imc-hero-l .wrap>*,.hero .wrap>*{animation:riseIn .9s cubic-bezier(.2,.7,.2,1) both;}
.bhero-fg>*:nth-child(2),.imc-hero-l .wrap>*:nth-child(2){animation-delay:.15s}.bhero-fg>*:nth-child(3){animation-delay:.3s}.bhero-fg>*:nth-child(4){animation-delay:.45s}
.imc-mantra{animation:popIn 1s cubic-bezier(.2,.7,.2,1) .9s both;}
.js .rv{opacity:0;transform:translateY(30px) scale(.97);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0ms);}
.js .rv.rv-in{opacity:1;transform:none;}.tone-orange .eyebrow-row .ln,.tone-cream .eyebrow-row .ln,.tone-white .eyebrow-row .ln{background:var(--line-3);}/* section colour "wipe" as a section enters view */
.js .tone-white.sec-wipe,.js .tone-cream.sec-wipe,.js .tone-orange.sec-wipe{clip-path:inset(0 0 8% 0);transition:clip-path 1s cubic-bezier(.2,.7,.2,1);}
.js .sec-wipe.sec-in{clip-path:inset(0 0 0 0);}
/* hover */
.btn{position:relative;overflow:hidden;isolation:isolate;transition:transform .35s var(--ease),background .35s,color .35s;}
.btn::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s;z-index:-1;}
.btn:hover::after{transform:translateX(120%);}
.btn:active{transform:scale(.97);}
.svc,.bd-card,.ut-card,.route,.wcard,.slogo,.imc-svc-i,.stat-cell,.member,.value,.step,.stp{transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,background .35s;}
.svc:hover,.ut-card:hover,.route:hover,.member:hover,.value:hover,.stp:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(0,0,0,.22);}
.imc-svc-i:hover{transform:translateY(-6px);}
.imc-ic{transition:transform .5s cubic-bezier(.3,1.6,.5,1);}
.imc-svc-i:hover .imc-ic{transform:rotate(-10deg) scale(1.1);}
.ut-ph img,.member-portrait img{transition:transform .8s cubic-bezier(.2,.7,.2,1);}
.ut-card:hover .ut-ph img,.member:hover .member-portrait img{transform:scale(1.07);}
.imc-tile{transition:transform .5s,box-shadow .5s;}.imc-tile:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.25);}
.imc-seemore{transition:letter-spacing .4s,background .3s,transform .5s;}.imc-seemore:hover{letter-spacing:.08em;}
.foot-col a{position:relative;}
.foot-col a::after{content:"";position:absolute;left:0;bottom:-2px;height:1px;width:0;background:currentColor;transition:width .35s;}
.foot-col a:hover::after{width:100%;}
.award-acc-btn{transition:padding .35s,color .3s;}.award-acc-btn:hover{padding-left:14px;}
.sec-head .accent-text{background:none!important;}
.fx.in .accent-text,.sec-in .accent-text{background-size:0 0!important;}
.sel-work-white .accent-text{text-decoration:none!important;}

/* Remove eyebrow/kicker labels above section headings site-wide (e.g. "OUR VALUES", "OUR TEAM") */
.eyebrow-row{display:none!important;}
@media (prefers-reduced-motion:reduce){body::before{display:none;}.js .rv{opacity:1;transform:none;transition:none;}.js .sec-wipe{clip-path:none!important;}.bhero-fg>*,.imc-hero-l .wrap>*,.imc-mantra{animation:none;}.btn::after{display:none;}}/* keep dark-card content readable on coloured sections */
.tone-white .cstage,.tone-cream .cstage,.tone-orange .cstage,
.tone-white .al-card,.tone-cream .al-card,.tone-orange .al-card{--bone:#f6f1e7;--bone-2:#ddd5c6;--mute:#a59d90;--mute-2:#8f887c;--accent:#ff8a3a;--accent-bright:#ffa05c;--line:rgba(255,255,255,.14);--line-2:rgba(255,255,255,.22);--panel:#141414;color:#fff;}.tone-white .cstage h3,.tone-cream .cstage h3,.tone-orange .cstage h3{color:#fff;}.tone-white .carousel-foot,.tone-cream .carousel-foot,.tone-orange .carousel-foot{--bone:#120b00;}

.tone-orange .imc-seemore{background:#0d0600;color:#ff6b00;}


/* ===== Colour system v2 (from the inspirations) =====
   Base: white + warm cream, bold orange blocks, black for contrast.
   Deep yellow is reserved for SECONDARY calls-to-action only. */
.btn-solid{background:#ff6b00;color:#111;}
.btn-solid:hover{background:#fff;color:#111;}
.btn-ghost,
.tone-white .btn-ghost,.tone-cream .btn-ghost,.tone-orange .btn-ghost,.partner .btn-ghost,.cta .btn-ghost{background:#f5b800;color:#111;border-color:#f5b800;}
.btn-ghost:hover,
.tone-white .btn-ghost:hover,.tone-cream .btn-ghost:hover,.tone-orange .btn-ghost:hover,.partner .btn-ghost:hover,.cta .btn-ghost:hover{background:#ffc933;color:#111;border-color:#ffc933;}
.tone-orange .btn-solid{background:#111;color:#fff;}
.tone-orange .btn-solid:hover{background:#fff;color:#111;}
.tone-white .btn-solid,.tone-cream .btn-solid{background:#111;color:#fff;}
.tone-white .btn-solid:hover,.tone-cream .btn-solid:hover{background:#ff6b00;color:#111;}
.partner .btn-solid{background:#fff;color:#111;}
.partner .btn-solid:hover{background:#111;color:#fff;}
/* white cards on cream, like the reference bento layouts */
.tone-cream .svc,.tone-cream .bd-card,.tone-cream .route,.tone-cream .step,.tone-cream .stp,.tone-cream .value{background:#fff;}

/* ===== Round: refinements ===== */
/* stray <br> from the old editor was breaking flex alignment in arrow links */
a > br,.cta-actions > br,.route-go br{display:none;}
a:has(> .box){display:inline-flex;align-items:center;gap:14px;}
a > .box{flex:none;display:inline-flex;align-items:center;justify-content:center;}
.cta-actions{gap:12px;}
/* case cards: shorter, no CASE 0X label */
.cstage-num{display:none!important;}
#vault .cstage{min-height:clamp(380px,34vw,480px)!important;}
.case-carousel-sec .cstage{min-height:clamp(380px,36vw,500px);}
@media (min-width:1025px){.case-carousel-sec .cstage{min-height:clamp(320px,26vw,400px)!important;}}
/* home About: supporting paragraph under the statement; orange link card */
.about-left .about-support{margin-top:clamp(18px,2vw,28px);color:var(--bone-2);font-size:1.05rem;line-height:1.6;max-width:56ch;}
.about-card,.tone-white .about-card{background:#ff6b00;border-color:#ff6b00;color:#111;}
.about-card .big,.about-card .sm{color:#111;}
.about-card:hover{background:#e85d00;border-color:#e85d00;}
/* contact: route cards get left padding; direct section text white */
.route{padding-left:clamp(20px,2.2vw,34px);}
#direct,#direct h2,#direct h3,#direct p,#direct a,#direct small,#direct span,#direct .kicker,#direct li{color:#fff!important;}
#direct a{border-bottom-color:rgba(255,255,255,.6)!important;}
#direct .eyebrow-row .ln{background:rgba(255,255,255,.45);}
/* alumni hover: white card, black text */
.al-quote{background:#fff;}
.al-quote p{color:#0a0a0a;}

/* ===== Outdoor pricing: 3 equal plan cards ===== */
.bd-grid{grid-template-columns:repeat(3,1fr)!important;grid-template-rows:auto!important;align-items:stretch;}
.bd-plan{grid-column:auto!important;grid-row:auto!important;min-height:0!important;gap:22px;padding:clamp(24px,2.6vw,38px);border-radius:16px;background:#faf6ee;border:1px solid rgba(0,0,0,.12);color:#111;}
.bd-plan:hover{border-color:#111;box-shadow:0 20px 44px rgba(0,0,0,.14);}
.bd-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;}
.bd-plan-name{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;font-size:1.25rem;letter-spacing:-.01em;}
.bd-plan .bd-tag{align-self:auto;color:#111;border-color:#111;font-size:.68rem;}
.bd-pricebox{display:flex;flex-direction:column;gap:6px;}
.bd-was{font-size:1.05rem;color:#777;min-height:1.4em;}
.bd-was s{text-decoration-thickness:2px;}
.bd-price{display:flex;align-items:baseline;gap:10px;}
.bd-price b{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;font-size:clamp(2.6rem,4.4vw,4rem);letter-spacing:-.03em;line-height:1;}
.bd-price i{font-style:normal;color:#555;font-size:1rem;}
.bd-save{align-self:flex-start;background:#111;color:#fff;font-size:.82rem;font-weight:600;letter-spacing:.04em;padding:6px 12px;border-radius:99px;min-height:1.9em;}
.bd-save-empty{background:none;}
.bd-plan .bd-text{color:#444;max-width:none;flex:1;}
.bd-plan .bd-go{color:#111;}
.bd-plan:hover .bd-go{color:#e85d00;}
/* featured annual plan */
.bd-plan-a{background:#ff6b00;border-color:#ff6b00;}
.bd-plan-a .bd-was,.bd-plan-a .bd-price i,.bd-plan-a .bd-text{color:#1a0d02;}
.bd-plan-a .bd-tag{background:#111;color:#fff;border-color:#111;}
.bd-plan-a .bd-save{background:#fff;color:#111;}
.bd-plan-a:hover{border-color:#111;}
.bd-plan-a:hover .bd-go{color:#111;}
@media (max-width:900px){.bd-grid{grid-template-columns:1fr!important;}}

/* ===== Outdoor: MM2 USP feature ===== */
.mm2{background:#0b0b0b;}
.mm2-sub{color:#d8d1c4;max-width:none;margin:12px 0 clamp(28px,3vw,44px);font-size:1.05rem;}
.mm2-card{display:grid;grid-template-columns:repeat(12,1fr);align-items:stretch;min-height:clamp(420px,36vw,520px);border-radius:22px;overflow:hidden;background:#141414;position:relative;}
.mm2-photo{grid-column:1 / span 8;grid-row:1;background-size:cover;background-position:center;}
.mm2-stat{grid-column:8 / span 5;grid-row:1;z-index:2;margin:clamp(18px,2.6vw,36px);margin-left:0;background:#fff;color:#0a0a0a;border-radius:20px;padding:clamp(24px,3vw,44px);display:flex;flex-direction:column;box-shadow:0 24px 60px rgba(0,0,0,.35);}
.mm2-pill{align-self:flex-start;background:#ff6b00;color:#111;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:6px 14px;border-radius:99px;}
.mm2-num{margin-top:auto;text-align:center;font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;font-size:clamp(3.6rem,8vw,7.6rem);letter-spacing:-.04em;line-height:1;}
.mm2-unit{text-align:center;font-size:clamp(1rem,1.5vw,1.3rem);letter-spacing:.2em;font-weight:600;margin:6px 0 clamp(26px,3vw,44px);}
.mm2-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;}
.mm2-loc{font-size:1.15rem;font-weight:500;}
.mm2-loc span{text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;color:#666;margin-right:6px;}
.mm2 .btn-solid{background:#111;color:#fff;}.mm2 .btn-solid:hover{background:#ff6b00;color:#111;}
@media (max-width:900px){
  .mm2-card{display:flex;flex-direction:column;}
  .mm2-photo{min-height:260px;}
  .mm2-stat{margin:-40px 16px 16px;}
}

/* Outdoor: CTA button under the paragraph */
.cta-solo{grid-template-columns:1fr!important;}
.cta-solo p{max-width:none;}
.cta-btn-row{margin-top:clamp(18px,2vw,28px)!important;}
/* Memberships & affiliations */
.mem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.8vw,26px);margin-top:clamp(24px,3vw,40px);}
.mem-box{display:flex;flex-direction:column;justify-content:space-between;gap:34px;min-height:clamp(160px,15vw,210px);padding:clamp(22px,2.4vw,34px);background:#fff;border:2px solid #ff6b00;border-radius:16px;color:#111;transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s,background .3s;}
.mem-box:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(255,107,0,.22);background:#fff7f0;}
.mem-label{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;font-size:clamp(1.5rem,2.4vw,2.2rem);letter-spacing:-.02em;}
.mem-value{color:#6a6a6a;font-size:.98rem;letter-spacing:.02em;}
@media (max-width:820px){.mem-grid{grid-template-columns:1fr;}}

/* ===== MM2 card v2: orange stat card with reach rings ===== */
.mm2-stat{position:relative;overflow:hidden;background:#ff6b00!important;color:#0a0a0a;border-radius:22px;padding:clamp(24px,2.8vw,40px);display:flex;flex-direction:column;isolation:isolate;}
.mm2-top{display:flex;align-items:center;gap:14px;position:relative;z-index:3;}
.mm2-pill{background:#0a0a0a!important;color:#fff!important;}
.mm2-hair{flex:1;height:1px;background:rgba(0,0,0,.55);}
.mm2-cap-top{font-size:.9rem;letter-spacing:.04em;}
.mm2-num{position:relative;z-index:3;margin-top:clamp(28px,4vw,56px);text-align:left;font-size:clamp(4rem,9.4vw,9rem);line-height:.9;letter-spacing:-.05em;color:#0a0a0a;}
.mm2-unit{position:relative;z-index:3;text-align:left;font-weight:300;letter-spacing:0;font-size:clamp(1.5rem,2.6vw,2.4rem);margin:8px 0 6px;color:#0a0a0a;}
.mm2-line{position:relative;z-index:3;font-size:1rem;max-width:26ch;margin:0 0 auto;color:#1a0d02;}
.mm2-foot{position:relative;z-index:3;display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-top:clamp(26px,3vw,44px);}
.mm2-loc{font-size:1.05rem;font-weight:500;color:#0a0a0a;}
.mm2-loc span{color:#3a1a00;}
.mm2 .btn-solid{background:#0a0a0a;color:#fff;}
.mm2 .btn-solid:hover{background:#fff;color:#0a0a0a;}
/* nested reach rings, bottom right */
.mm2-rings{position:absolute;right:clamp(-150px,-9vw,-70px);bottom:clamp(-150px,-9vw,-70px);width:clamp(260px,26vw,380px);aspect-ratio:1;z-index:1;transition:transform .8s cubic-bezier(.2,.7,.2,1);}
.mm2-stat:hover .mm2-rings{transform:scale(1.08);}
.ring{position:absolute;border-radius:50%;}
.ring-a{inset:0;background:rgba(255,255,255,.26);}
.ring-b{width:52%;aspect-ratio:1;left:24%;top:24%;background:#7a2c00;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
.ring-b b{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-size:clamp(1.3rem,2.4vw,2.2rem);letter-spacing:-.02em;line-height:1;}
.ring-b small{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;opacity:.85;margin-top:4px;}
.ping{position:absolute;left:50%;top:50%;width:52%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;border:2px solid rgba(255,255,255,.7);animation:mm2ping 3s ease-out infinite;}
@keyframes mm2ping{0%{transform:translate(-50%,-50%) scale(1);opacity:.9;}100%{transform:translate(-50%,-50%) scale(1.95);opacity:0;}}
@media (prefers-reduced-motion:reduce){.ping{animation:none;opacity:0;}}
@media (max-width:900px){.mm2-stat{margin:-40px 16px 16px!important;}.mm2-num{font-size:clamp(3.6rem,17vw,6rem);}}

/* ===================================================================
   Round 7: gap fixes, colour corrections, IMC restructure, blog modal
   =================================================================== */

/* 1. Kill the seam between adjacent coloured sections */
section[class*="tone-"]{border-top:0!important;}
.careers,.bulk{border-top:0!important;}

/* Home Hub carousel: no caption line, no dots (already hidden inline via style,
   this keeps layout tidy if inline style is stripped by an editor later) */
#vault .cstage-acts{display:none!important;}
#vault .car-dots{display:none!important;}

/* Home Careers block: proper button, no top margin on the photo */
.careers-img{margin-top:0!important;}
.careers-body h2{margin-top:0;}
.careers-go{display:inline-flex;align-items:center;gap:14px;background:#111;color:#fff!important;padding:14px 26px;border-radius:999px;font-weight:600;margin-top:18px;transition:background .35s,transform .35s;}
.careers-go:hover{background:#ff6b00;transform:translateY(-2px);}
.careers-go .box{background:#fff;color:#111;width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;}
.careers-go .box svg path{stroke:#111;}

/* Home About card: white text on the orange card */
.about-card .big,.about-card .sm{color:#fff!important;}
.about-left{display:flex;flex-direction:column;}

/* Careers page hero photo: fill the frame, no letterboxing */
.bg-careers .bhero-bg{background-size:cover!important;background-position:center 30%!important;}
.bg-careers .bhero-bg img,.bhero-bg.has-img img{width:100%;height:100%;object-fit:cover;object-position:center 25%;position:absolute;inset:0;}
.bg-careers .bhero-bg .placeholder-art{display:none;}

/* Contact SEND button: white text, rest and hover */
.btn-send-white,.btn-send-white:hover{color:#fff!important;}
.btn-send-white{background:#111!important;}
.btn-send-white:hover{background:#ff6b00!important;}

/* About page: Corporate Philosophy as two equal columns */
.phil-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,80px);align-items:center;}
.phil-left .about-statement{font-size:clamp(1.5rem,2.6vw,2.2rem);line-height:1.3;margin:16px 0 20px;color:var(--bone);}
.phil-support{color:var(--bone-2);font-size:1.02rem;line-height:1.6;margin:0 0 12px;max-width:52ch;}
.phil-right .about-visual{aspect-ratio:4/3;border-radius:14px;overflow:hidden;}
.phil-right .about-visual img{width:100%;height:100%;object-fit:cover;}
@media (max-width:900px){.phil-grid{grid-template-columns:1fr;}}

/* one-line headings */
.one-line{white-space:nowrap;max-width:none!important;}
@media (max-width:760px){.one-line{white-space:normal;}}

/* Methodology ("From signal to return.") — white text on the orange band.
   Scoped narrowly (not all .tone-orange) via the imc-vals class added to this section. */
#methodology.imc-vals{--bone:#fff;--bone-2:#ffe6cf;--mute:#ffd2a8;}
#methodology .ms-no{color:#ffd2a8;}
#methodology .ms-name{color:#fff;}
#methodology .ms-desc{color:#ffe6cf;}

/* Values ("Six truths…") already cream — no change needed there.
   The orange "values" band on About/Methodology + IMC "Our values" reuse .imc-vals: force white */
.imc-vals{--bone:#fff!important;--bone-2:#ffe6cf!important;--mute:#ffd2a8!important;}
.imc-vals h2,.imc-vals h4,.imc-vals p,.imc-vals .imc-lab{color:#fff!important;}
.imc-valgrid p{color:#ffe6cf!important;}

/* Outdoor: MM2 — remove glow rings, all text white */
.mm2-stat{background:#ff6b00!important;}
.mm2-pill{background:#111!important;color:#fff!important;}
.mm2-hair{background:rgba(255,255,255,.55)!important;}
.mm2-cap-top,.mm2-num,.mm2-unit,.mm2-line,.mm2-loc,.mm2-loc span{color:#fff!important;}
.mm2 .btn-solid{background:#111!important;color:#fff!important;}
.mm2 .btn-solid:hover{background:#fff!important;color:#111!important;}

/* Outdoor + IMC team cards: left padding on name/role */
.ut-card{padding-left:4px;}
.ut-card h3,.ut-card span{padding-left:4px;}

/* Outdoor memberships: logos instead of text label, no section heading */
.mem-grid{align-items:stretch;}
.mem-box{align-items:flex-start;justify-content:space-between;gap:16px;min-height:150px;}
.mem-logo{width:150px;max-width:70%;height:auto;object-fit:contain;opacity:.82;}
.mem-value{color:#6a6a6a;}

/* Experiential: drop the gallery link + whiten "Selected work" (orange section) */
.sel-work-white{color:#fff!important;}
.sel-work-white .accent-text{color:#fff!important;text-decoration:underline;text-decoration-color:rgba(255,255,255,.6);}

/* Inner-page case-study carousels: hide the business-unit sector badge
   (kept visible on the homepage Hub, #vault, which is untouched) */
.case-carousel-sec .cstage-sector{display:none!important;}

/* Work / Awards sections: bigger header only, no small eyebrow line above it
   (HTML already strips the eyebrow row; this just tidies the top spacing) */
#work .sec-head,#awards .sec-head{margin-top:0;}

/* IMC "See more work" tile as an image with an orange-bordered overlay label */
.imc-seemore{position:relative;background:#0a0a0a;border:2px solid #ff6b00;color:#ff6b00;overflow:hidden;}
.imc-seemore img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.35;transition:opacity .4s,transform .6s;}
.imc-seemore span{position:relative;z-index:2;font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;font-size:clamp(1.3rem,2vw,1.9rem);}
.imc-seemore:hover img{opacity:.5;transform:scale(1.05);}

/* Combined Expertise & Services on IMC — plain list rows, no tab bar, no icon circles */
.imc-svcrows{margin-top:clamp(20px,2.6vw,34px);}
.imc-svcrows .imc-svcrow:first-child{border-top:1px solid var(--line-2);}

/* ===== IMC Blog / Journal ===== */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.2vw,30px);margin-top:clamp(26px,3vw,44px);}
.blog-card{display:flex;flex-direction:column;background:#0a0a0a;border:2px solid #ff6b00;border-radius:16px;overflow:hidden;color:#fff;transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s;}
.blog-card:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(0,0,0,.25);}
.blog-media{aspect-ratio:4/3;overflow:hidden;}
.blog-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s;}
.blog-card:hover .blog-media img{transform:scale(1.06);}
.blog-body{padding:clamp(18px,2vw,26px);display:flex;flex-direction:column;gap:8px;flex:1;}
.blog-cat{color:#ff8f40;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;}
.blog-date{color:#9a9a9a;font-size:.82rem;}
.blog-title{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;font-size:1.2rem;line-height:1.3;letter-spacing:-.01em;margin:2px 0 4px;}
.blog-body .blog-excerpt{color:#fff!important;font-size:.95rem;line-height:1.55;flex:1;max-width:none;}
.blog-read{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;background:none;border:0;color:#ff6b00;font-weight:600;font-size:.95rem;margin-top:8px;cursor:pointer;}
.blog-read:hover{color:#ff8f40;}
@media (max-width:900px){.blog-grid{grid-template-columns:1fr;}}

/* Article popup */
.blog-modal[hidden]{display:none;}
.blog-modal{position:fixed;inset:0;z-index:3000;}
.blog-modal-backdrop{position:absolute;inset:0;background:rgba(5,5,5,.78);backdrop-filter:blur(6px);opacity:0;transition:opacity .35s ease;}
.blog-modal.is-open .blog-modal-backdrop{opacity:1;}
.blog-modal-panel{position:absolute;top:3vh;left:50%;transform:translate(-50%,18px);width:min(880px,92vw);max-height:94vh;background:#0e0e0e;color:#f2ede4;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;opacity:0;transition:opacity .38s ease,transform .38s cubic-bezier(.2,.7,.2,1);box-shadow:0 40px 100px rgba(0,0,0,.5);}
.blog-modal.is-open .blog-modal-panel{opacity:1;transform:translate(-50%,0);}
.blog-modal-scroll{overflow-y:auto;-webkit-overflow-scrolling:touch;}
.blog-modal-x{position:sticky;top:14px;margin:14px 14px 0 auto;display:flex;justify-self:flex-end;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:1.6rem;line-height:1;align-items:center;justify-content:center;z-index:5;float:right;}
.blog-modal-x:hover{background:#ff6b00;color:#111;}
.blog-article{display:block;}
.blog-article[hidden]{display:none!important;}
.blog-article-media{width:100%;aspect-ratio:16/8;overflow:hidden;}
.blog-article-media img{width:100%;height:100%;object-fit:cover;}
.blog-article-body{padding:clamp(24px,4vw,48px);clear:both;}
.blog-article-body time{color:#ff8f40;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;}
.blog-article-body h2{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:600;font-size:clamp(1.5rem,3vw,2.3rem);line-height:1.2;margin:10px 0 20px;letter-spacing:-.02em;}
.blog-article-content p{color:#d6d0c6;font-size:1.05rem;line-height:1.7;margin:0 0 16px;}
.blog-share{margin-top:clamp(26px,3vw,40px);padding-top:20px;border-top:1px solid rgba(255,255,255,.14);display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.blog-share span{color:#9a9a9a;font-size:.9rem;}
.blog-share-btns{display:flex;gap:10px;}
.blog-share-btns button{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;display:flex;align-items:center;justify-content:center;transition:background .3s,color .3s;}
.blog-share-btns button:hover{background:#ff6b00;color:#111;}
.blog-close-inline{display:none;}
@media (max-width:640px){
  .blog-modal-panel{top:0;left:0;transform:translateY(18px);width:100vw;height:100vh;max-height:100vh;border-radius:0;}
  .blog-modal.is-open .blog-modal-panel{transform:translateY(0);}
  .blog-modal-x{position:fixed;top:14px;right:14px;margin:0;}
  .blog-article-body{padding-top:56px;}
}
@media (prefers-reduced-motion:reduce){.blog-modal-backdrop,.blog-modal-panel{transition:none;}}

/* ===== Homepage Careers block: refine ===== */
.careers-grid{border-color:#fff!important;}
.careers-img img,.careers-img .replace-img-tag{object-fit:cover;object-position:center 30%;}
.careers-go{align-self:flex-start;padding:12px 22px;font-size:.95rem;}
.careers-go .box{width:26px;height:26px;}
.careers-body h2,.careers-body p{color:#111!important;}

/* ===== Main navigation: always white text ===== */
.nav-trigger,.nav-right a:not(.btn),.mega-panel a,.mobile-menu a,.sub-nav-links a{color:#fff!important;}
.nav-trigger:hover,.mega-panel a:hover,.sub-nav-links a:hover{color:#ffd2a8!important;}

/* Homepage client-logo strip: black background, white text (to suit the logos) */
#clients{background:#0a0a0a!important;}
#clients h2,#clients .sec-head,#clients p{color:#fff!important;}
#clients .logo-cell img{filter:none!important;opacity:.9;}
#clients .logo-cell:hover img{opacity:1;}

/* Careers image: fill the box now that the broken wrapper tags are gone */
.careers-img img.replace-img-tag{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
/* 30px of breathing room at the bottom of the careers block */
#careers .careers-grid{margin-bottom:30px;}

/* Reduce homepage "Founded in 2025..." About statement text size */
#about .about-statement{font-size:clamp(1.19rem,2.3vw,2.1rem);}
/* Reduce hero slider large headline (hero-h1) size by 30% */
.hs-slide .hero-h1{font-size:clamp(1.54rem,3.22vw,3.22rem);}

/* Creative mixed typography for the Marketing Communications hero headline */
.mc-hero-h1{font-weight:400;}
.mc-hero-h1 .hw-strong{font-weight:800;letter-spacing:-.01em;}
.mc-hero-h1 .hw-serif{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;color:inherit;opacity:.92;}
.mc-hero-h1 .accent-text.hw-strong{font-weight:800;}

/* "Four Ways In" business-unit taglines + closing CTA */
.sl-need{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-size:1rem;font-weight:600;color:var(--bone);text-align:center;margin:14px 0 4px;}
.units-all{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:28px;padding-top:28px;border-top:1px solid var(--line);}
.units-all-q{font-size:1.1rem;font-weight:600;color:var(--bone);margin:0;}

/* Leadership card: breathing room for name & role (bio matches the same left padding) */
.member-details{padding-left:18px;}
.member-bio{padding-left:18px;}

/* Careers & Outdoor hero lede: white text */
.page-template-template-careers .bhero-lede,
.page-template-template-subsidiary-outdoor .bhero-lede{color:#fff!important;}
.profile-right{padding-left:18px;}
@media (max-width:760px){.profile-right{padding-left:20px;padding-right:20px;}}

/* IMC Toolkit: 5-column grid, matching the homepage "Four Ways In" row layout */
.imc-valgrid-5{grid-template-columns:repeat(5,1fr);}
@media (max-width:1100px){.imc-valgrid-5{grid-template-columns:repeat(3,1fr);}}
@media (max-width:900px){.imc-valgrid-5{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.imc-valgrid-5{grid-template-columns:1fr;}}

/* Case study hero subtitle */
.cs-h1-sub{font-family:"Graphik","Plus Jakarta Sans",sans-serif;font-weight:500;font-size:clamp(1rem,1.6vw,1.3rem);color:var(--mute,#8a8478);margin-top:14px;max-width:40ch;}

/* Toolkit sections: numbered bordered-card layout (shared across IMC/Outdoor/Experiential/Impact/ILA) */
#toolkit .s-name,#what-we-do .s-name{color:#111;}
#toolkit .s-desc,#what-we-do .s-desc{color:#333;}
/* when a toolkit grid has an odd item count, let the last card span the full row instead of leaving a gap */
.svcs-grid .svc:last-child:nth-child(odd){grid-column:1/-1;border-right:none;}
/* Agency "What we do": row 1 = Brand Strategy / Creative Advertising as 2 equal
   halves, row 2 = Campaign Development / Digital & Social / Content as 3 equal
   thirds (overrides the shared 2-col base grid and the odd-last-item full-width
   rule above, which would otherwise make item 5 span the whole row). */
.page-template-template-subsidiary-agency #toolkit .svcs-grid{grid-template-columns:repeat(6,1fr);}
.page-template-template-subsidiary-agency #toolkit .svcs-grid .svc{grid-column:span 2;}
.page-template-template-subsidiary-agency #toolkit .svcs-grid .svc:nth-child(1),
.page-template-template-subsidiary-agency #toolkit .svcs-grid .svc:nth-child(2){grid-column:span 3;}
.page-template-template-subsidiary-agency #toolkit .svcs-grid .svc:last-child:nth-child(odd){grid-column:span 2;border-right:1px solid var(--line);}
@media (max-width:900px){
.page-template-template-subsidiary-agency #toolkit .svcs-grid,
.page-template-template-subsidiary-agency #toolkit .svcs-grid .svc,
.page-template-template-subsidiary-agency #toolkit .svcs-grid .svc:nth-child(1),
.page-template-template-subsidiary-agency #toolkit .svcs-grid .svc:nth-child(2){grid-template-columns:1fr;grid-column:1/-1;}
}
.imc-cta-inline{margin-top:30px;}
.ut-card h3 a{color:inherit;text-decoration:none;transition:color .3s;}
.ut-card h3 a:hover{color:var(--accent);}
.imo-loc-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:clamp(26px,3vw,40px);}
.imo-loc-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:1px solid var(--line-2);border-radius:99px;font-size:.92rem;color:var(--mute);letter-spacing:.01em;}
.imo-loc-pill.imo-loc-live{color:var(--bone);border-color:var(--accent);}
.imo-loc-pill.imo-loc-live::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);}
.ut-grid-3{grid-template-columns:repeat(3,1fr);}
@media (max-width:900px){.ut-grid-3{grid-template-columns:1fr 1fr;}}

/* --- 15px rounded corners on content & case-study boxes (homepage slider excluded) --- */
.cs-hero-bg,
.cs-hero-bg img,
.img-case-gallery-item,
.img-case-gallery-item img,
.cs-nc,
.cs-nc .placeholder-art,
.cs-nc img,
.hub-card,
.hub-card-media,
.hub-card-media img,
.imc-tile,
.imc-tile img,
.svc,
.al-card,
.al-card img,
.ut-card,
.ut-ph,
.ut-ph img,
.route,
.value,
.blog-card,
.blog-media,
.blog-media img,
.blog-article-media,
.blog-article-media img,
.stat-cell,
.bd-card,
.bd-dialog,
.award-logo,
.wcard,
.intro-right,
.cv-dialog,
.about-visual,
.about-card,
.careers-img,
.feed-card,
.feed-video,
.feed-insight,
.feed-case,
.logo-grid-static .logo-cell,
.bhero-bg img,
.hero-motif img,
.placeholder-art img,
.carousel-media,.carousel-media img
{border-radius:15px!important;overflow:hidden;}

/* keep the homepage case-study slider square-edged */
.carousel-slide,.cstage,.cstage-bg,.cstage-bg img,.cstage-inner,.cstage-link,.cstage *{border-radius:0!important;}

/* "What We Believe" has 5 truths: row 1 = 3 equal tiles, row 2 = items 4/5
   spread out to equally cover the full row width (6-col grid, 1-3 span 2,
   4-5 span 3), so there's no leftover empty cell exposing the gray
   gap-line background. */
#values .values{grid-template-columns:repeat(6,1fr);}
#values .value{grid-column:span 2;}
#values .value:nth-child(4),#values .value:nth-child(5){grid-column:span 3;}

/* Outdoor page: hide "Meet the team" and the memberships (3 logo columns)
   sections for now, per request. */
.page-template-template-subsidiary-outdoor #team,
.page-template-template-subsidiary-outdoor #memberships{display:none;}

/* Xperiential page hero: video background (reusing the homepage's Xperiential
   hero clip) instead of a static image. */
.bhero.has-video-hero .bhero-bg{display:block;position:absolute;inset:0;z-index:-1;overflow:hidden;}
.bhero.has-video-hero .bhero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.bhero.has-video-hero .bhero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(5,5,5,.58) 0%,rgba(5,5,5,.22) 32%,rgba(5,5,5,.84) 76%,rgba(5,5,5,.98) 100%);z-index:2;}

/* Xperiential page: hide "Meet the team" section for now, per request. */
.page-template-template-subsidiary-experiential #team{display:none;}

/* Careers page: hide "Once an Imaginarian" alumni voices section for now, per request. */
.page-template-template-careers #alumni{display:none;}