/* PROVE / 010 — a recurring illustrated world, not a single oversized mark. */
:root{--prove-ink:#141820;--prove-cream:#f8f7f2;--prove-blue:#234dd9;--prove-red:#f26449;--prove-mint:#b8e3d8}
body{background:var(--prove-cream);color:var(--prove-ink)}
::selection{background:#b9d0ff;color:#142454}
.scroll-progress{background:linear-gradient(90deg,#244edb 0 42%,#f26449 65%,#8acfc9 100%)}
.site-header{border:1px solid rgba(23,32,47,.13);background:rgba(251,250,246,.87);box-shadow:0 13px 40px rgba(19,29,62,.08);color:#111722}
.wordmark,.desktop-nav a{color:#111722}
.wordmark-dot{color:#f26449}
.desktop-nav a:last-child{border-color:#244edb;background:#244edb;color:#fff}
.language-switcher{border-color:#d5d9e0;background:#f1f3f5}
.language-switcher button{color:#57606f}
.language-switcher button.is-active{background:#fff;color:#16233b;box-shadow:0 1px 5px rgba(20,30,57,.12)}
.menu-toggle span{background:#152033}
.mobile-nav{border:1px solid #dfe3e9;background:#fff;box-shadow:0 20px 55px rgba(20,31,62,.16)}

/* The illustration communicates the agency's three disciplines immediately. */
.hero{grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);min-height:860px;padding-top:130px;background:#f8f7f2;color:#141820}
.hero:before{background:radial-gradient(circle at 83% 38%,rgba(133,169,245,.2),transparent 31%),radial-gradient(circle at 20% 96%,rgba(244,100,74,.06),transparent 36%),#f8f7f2}
.hero:after{background-image:radial-gradient(rgba(28,50,93,.11) .7px,transparent .7px);background-size:26px 26px;mask-image:linear-gradient(90deg,transparent 22%,#000 87%);opacity:.4}
.hero-atmosphere{opacity:1}
.hero-ring{top:-23vw;right:-14vw;border-color:rgba(40,83,189,.09);box-shadow:0 0 0 10vw rgba(58,103,203,.018),0 0 0 19vw rgba(58,103,203,.015)}
.hero-beam{display:none}.hero-backword{display:none}
.hero-content{max-width:750px}
.hero-eyebrow{color:#2549b9}
.hero-eyebrow:before{background:#2549b9}
.hero h1{color:#151923;font-size:clamp(66px,6.9vw,116px);font-weight:800}
.hero h1 em{color:#2350d5}
.hero-subtitle{max-width:595px;color:#505866;font-weight:500}
.button-white{border-color:#244edb;background:#244edb;color:#fff;box-shadow:0 13px 27px rgba(36,78,219,.18)}
.button-white:hover{box-shadow:0 20px 35px rgba(36,78,219,.24)}
.text-link{border-bottom-color:#4f5a6f;color:#172135}
.hero-ecosystem{border-color:#c9cfd8}
.ecosystem-label{color:#687383}
.ecosystem-brand,.ecosystem-brand strong{color:#1b2230}
.ecosystem-brand small{color:#707b89}
.ecosystem-brand+.ecosystem-brand:before{color:#9aa3ac}
.hero-world{position:relative;height:clamp(610px,53vw,750px);margin-left:-2%;overflow:visible}
.hero-world:before{display:none}
.hero-world-frame{position:absolute;inset:9% 3% 7% 6%;overflow:hidden;border:1px solid #c9d7f1;border-radius:28px;background:radial-gradient(circle at 79% 24%,#f8faf9,transparent 27%),radial-gradient(circle at 22% 75%,#c4d2ff,transparent 39%),linear-gradient(135deg,#e5edff 2%,#d5e1f6 58%,#e7ebe5 100%);box-shadow:0 28px 60px rgba(36,64,122,.1)}
.hero-world-frame:before{content:"";position:absolute;top:-27%;right:-20%;width:75%;aspect-ratio:1;border:1px solid rgba(33,70,152,.14);border-radius:50%;box-shadow:0 0 0 70px rgba(66,120,212,.035),0 0 0 150px rgba(66,120,212,.025)}
.hero-world-frame:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(58,89,152,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(58,89,152,.1) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(180deg,#000,transparent 80%)}
.hero-world>img{position:absolute;z-index:1;left:-9%;top:-4%;width:119%;height:104%;max-width:none;object-fit:contain;filter:drop-shadow(0 19px 20px rgba(24,38,76,.12));animation:none!important}
.world-chip{position:absolute;z-index:3;display:flex;align-items:center;gap:8px;min-width:143px;padding:12px 13px;border:1px solid #1a263e;border-radius:4px;background:#fff;color:#16213b;box-shadow:5px 6px 0 rgba(24,42,79,.11);font-size:10px;font-weight:800;letter-spacing:.1em;white-space:nowrap}
.world-chip span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#dfe8ff;color:#204bb9;font-size:9px}
.world-chip b{margin-left:auto;font-size:16px;font-weight:500;letter-spacing:0}
.world-chip-film{top:11%;left:-1%;transform:rotate(-6deg)}
.world-chip-app{top:49%;right:-3%;transform:rotate(6deg)}
.world-chip-product{bottom:13%;left:3%;transform:rotate(-3deg)}
.signal-caption{right:0;bottom:4%;left:auto;max-width:270px;border:1px solid #d8e2e9;background:rgba(255,255,255,.91);color:#24304a;box-shadow:0 11px 26px rgba(30,47,78,.08);font-size:11px}
.signal-caption-dot{background:#f26449;box-shadow:0 0 0 4px rgba(242,100,73,.14)}
.hero-bottom{border-top-color:#cdd2d9;color:#707987}

/* The three service illustrations share anatomy, materials, and accent colours. */
.capability-rail{border-color:#1e3eb7;background:#234dd9;color:#fff}
.capability-rail a{border-color:rgba(255,255,255,.24)}
.capability-rail a:before{background:#183db9}
.capability-rail a>span:first-child,.capability-rail a>span:last-child{color:#d5e6ff}
.services{padding-top:138px;background:#f6f7fa}
.services:before{background:radial-gradient(circle at 75% 12%,rgba(85,115,226,.1),transparent 40%),linear-gradient(90deg,transparent 98%,rgba(37,66,120,.05) 99%);background-size:auto,90px 90px}
.services .section-heading .section-kicker{color:#2654c2}
.services .section-heading .display-title{color:#151a25}
.services .section-heading .display-title em{color:#2c52c9}
.services .section-heading>p{color:#596371}
.service-stack{border-top-color:#cbd1dc}
.service-panel{border-bottom-color:#cbd1dc;background:#fff}
.service-panel:nth-child(2) .service-panel-copy,.service-panel:nth-child(3) .service-panel-copy{background:#fff}
.service-panel-copy{z-index:2}
.service-panel h3{color:#151b28}
.service-panel-description{color:#53606e}
.service-panel-media.character-stage{position:relative;isolation:isolate;display:block;min-height:600px;overflow:hidden}
.character-stage:after{content:"";position:absolute;z-index:0;inset:0;background-image:radial-gradient(rgba(20,39,72,.2) .8px,transparent .8px);background-size:27px 27px;mask-image:linear-gradient(180deg,transparent 20%,#000 100%);opacity:.18;pointer-events:none}
.character-stage-shape{position:absolute;z-index:0;top:6%;right:4%;width:75%;height:83%;border:1px solid rgba(18,31,54,.17);border-radius:50%;transform:rotate(-18deg)}
.character-stage-shape:before{content:"";position:absolute;inset:9%;border:1px solid rgba(18,31,54,.14);border-radius:50%}
.character-stage-shape:after{content:"";position:absolute;right:-17%;bottom:8%;width:37%;height:37%;border-radius:50%;background:rgba(255,255,255,.32)}
.character-stage .service-character{position:absolute;z-index:1;display:block;width:108%!important;height:107%!important;max-width:none;min-height:0;aspect-ratio:auto;object-fit:contain;object-position:center bottom;border:0!important;border-radius:0!important;box-shadow:none!important;filter:drop-shadow(0 20px 20px rgba(29,37,64,.13))}
.character-stage-tag{position:absolute;z-index:3;top:7%;left:6%;display:flex;flex-direction:column;gap:13px;padding:13px 15px;border:1px solid rgba(30,43,65,.72);border-radius:2px;background:rgba(255,255,255,.78);color:#18213b;box-shadow:5px 5px 0 rgba(30,43,65,.1);backdrop-filter:blur(5px)}
.character-stage-tag span{font-size:9px;font-weight:800;letter-spacing:.18em}
.character-stage-tag strong{font-size:clamp(24px,2.3vw,37px);font-weight:800;line-height:.91;letter-spacing:-.075em}
.character-stage-tag em{font-family:var(--serif);font-size:1.14em;font-weight:400;letter-spacing:-.04em}
.character-stage .stage-coordinate{z-index:4;right:19px;bottom:18px;padding:8px 10px;border:1px solid rgba(25,39,70,.25);border-radius:2px;background:rgba(255,255,255,.72);color:#24314a;font-size:9px;backdrop-filter:blur(5px)}
.film-stage.character-stage{background:radial-gradient(circle at 72% 25%,#ffe3d8,#f0c5ac 60%,#e7ad9a)}
.film-stage .character-stage-shape{top:0;right:-16%;width:92%;height:91%;border-color:rgba(174,62,41,.22);box-shadow:0 0 0 83px rgba(255,255,255,.075)}
.film-stage .service-character{left:3%;top:-2%;width:112%!important;height:109%!important;object-position:center bottom}
.film-stage .character-stage-tag{top:9%;left:5%}
.film-stage .character-stage-tag em{color:#e85843}
.mobile-stage.character-stage{background:radial-gradient(circle at 72% 23%,#f2f4ff,#ccd9ff 57%,#b5c9f6)}
.mobile-stage .character-stage-shape{top:8%;right:17%;width:58%;height:76%;border-radius:26px;background:rgba(255,255,255,.2);transform:rotate(15deg)}
.mobile-stage .service-character{left:-1%;top:-4%;width:106%!important;height:109%!important}
.mobile-stage .character-stage-tag{top:auto;bottom:10%;left:4%}
.mobile-stage .character-stage-tag em{color:#2354d5}
.platform-stage.character-stage{background:radial-gradient(circle at 27% 19%,#f3fcf5,#cfebe2 56%,#a9d6ce)}
.platform-stage .character-stage-shape{top:-11%;right:-9%;width:89%;height:98%;border-color:rgba(27,111,105,.21);box-shadow:0 0 0 89px rgba(255,255,255,.09)}
.platform-stage .service-character{left:-3%;top:-3%;width:111%!important;height:109%!important}
.platform-stage .character-stage-tag{top:7%;right:4%;left:auto}
.platform-stage .character-stage-tag em{color:#257f88}

/* A shift into real case studies gives the illustrations a purpose. */
.work-section{background:radial-gradient(circle at 82% 5%,rgba(40,77,156,.23),transparent 29%),#10172a}
.work-section:before{background-image:radial-gradient(rgba(196,220,255,.15) .8px,transparent .8px);background-size:25px 25px;mask-image:linear-gradient(#000,transparent 58%)}
.work-top .section-kicker{color:#a6baff}
.work-top .display-title em{color:#bfd0ff}
.concept-pill{border-color:rgba(194,207,251,.37);color:#d5dcff}
.approach{background:#f3f4ef;color:#142035}
.approach:before{background-image:linear-gradient(rgba(38,69,125,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(38,69,125,.055) 1px,transparent 1px)}
.approach:after{display:none}
.approach .section-kicker{color:#2957c6}
.approach-heading .display-title{color:#151c2a}
.approach-heading .display-title em{color:#2852c9}
.approach-heading>p{color:#566373}
.method-grid:before{background:linear-gradient(90deg,#2450d2,#f26449,#8ccfcb)}
.method-card{border-top-color:#bfc9d6;color:#172134}
.method-card:after{-webkit-text-stroke:1px rgba(44,77,156,.2)}
.method-copy>span,.method-card:nth-child(even) .method-copy>span{color:#2855c2}
.method-copy h3{color:#182136}
.method-copy p{color:#5d6877}
.expertise-network{background:#233eaa;color:#fff}
.expertise-network:before{border-color:rgba(210,227,255,.18);box-shadow:0 0 0 90px rgba(200,224,255,.03),0 0 0 180px rgba(200,224,255,.02)}
.expertise-heading .section-kicker{color:#d2dcff}
.expertise-heading .display-title{color:#fff}
.expertise-heading .display-title em{color:#d5e2ff}
.expertise-heading>p{color:#d6def5}
.expertise-map{border-color:rgba(237,244,255,.45);background:#20368f}
.expertise-hub{border-right-color:rgba(245,250,255,.35);background:#172b72}
.expertise-hub:before{border-color:#fff;background:#f26449;box-shadow:0 0 18px rgba(242,100,73,.49)}
.expertise-hub>strong{color:#d8e4ff}
.expertise-role,.expertise-role:nth-child(2),.expertise-role:nth-child(3),.expertise-role:nth-child(4),.expertise-role:nth-child(5),.expertise-role:nth-child(6),.expertise-role:nth-child(7){border-color:rgba(238,244,255,.17);color:#ecf1ff}
.expertise-role:hover{background:#3150c1}
.expertise-role:before{color:#f9b3a3}
.expertise-footnote{color:#c1cef4}
.collaborations{background:#f6f4ed}
.collaborations:before{border-color:rgba(55,79,137,.12)}
.collab-copy .display-title{color:#172031}
.collab-copy .display-title em{color:#2954ca}
.collab-copy>p{color:#5d6570}
.partner-card-vimeri{border-color:#c9cfda}
.partner-card-kadran{border-color:#1e43af;background:#254fca}
.closing{background:#111725}
.closing:before{background:radial-gradient(circle at 77% 25%,rgba(81,107,218,.25),transparent 35%),linear-gradient(127deg,#111725,#19284d)}
.closing h2 em{color:#c9d6ff}
.closing-service-line span{border-color:rgba(218,229,255,.43);color:#e0e8ff}
.brief-card{border-color:#dfe5ef;background:#fff;color:#14203a}
.brief-copy{background:#254fc9}
.brief-options button.is-selected{border-color:#2853cb;background:#2853cb}
.site-footer{background:#0d1320}

@media(max-width:1100px){
  .hero{min-height:790px}
  .hero-world{height:650px}
  .hero h1{font-size:clamp(60px,6.8vw,87px)}
  .world-chip{min-width:120px;padding:9px;font-size:8px}
  .character-stage-tag strong{font-size:28px}
}
@media(max-width:900px){
  .hero{min-height:0}
  .hero h1{font-size:clamp(64px,9.7vw,92px)}
  .hero-world{height:640px;margin:20px auto 0}
  .hero-world>img{left:-5%;width:110%}
  .service-panel-media.character-stage{min-height:560px}
  .character-stage .service-character{width:100%!important;height:105%!important}
}
@media(max-width:680px){
  .hero{padding:117px 18px 21px}
  .hero:after{background-size:20px 20px}
  .hero h1{font-size:clamp(48px,12.2vw,76px)}
  .hero-subtitle{color:#505a68}
  .hero-world{height:435px;margin:8px auto 0}
  .hero-world-frame{inset:9% 2% 10%;border-radius:15px}
  .hero-world>img{top:-1%;left:-13%;width:126%;height:103%}
  .world-chip{min-width:auto;gap:4px;padding:5px 7px;font-size:6px;box-shadow:3px 3px 0 rgba(24,42,79,.1)}
  .world-chip span{width:16px;height:16px;font-size:6px}.world-chip b{font-size:11px}
  .world-chip-film{top:10%;left:-1%}.world-chip-app{top:52%;right:-1%}.world-chip-product{bottom:15%;left:2%}
  .signal-caption{right:0;bottom:2%;max-width:190px;padding:7px;font-size:8px}
  .hero-bottom{color:#737d88}
  .capability-rail a{border-color:rgba(255,255,255,.2)}
  .service-panel-media.character-stage{min-height:400px}
  .character-stage .service-character{top:-2%;left:-4%;width:108%!important;height:107%!important}
  .character-stage-tag{top:6%;left:4%;gap:6px;padding:7px 9px}
  .character-stage-tag span{font-size:6px}.character-stage-tag strong{font-size:21px}
  .mobile-stage .character-stage-tag{bottom:8%}
  .platform-stage .character-stage-tag{right:4%}
  .character-stage .stage-coordinate{right:8px;bottom:7px;padding:5px;font-size:6px}
  .expertise-network{background:#233eaa}
  .expertise-hub{border-bottom-color:rgba(255,255,255,.3)}
}
@media(prefers-reduced-motion:reduce){
  .hero-world>img,.service-character,.world-chip{transition:none!important;animation:none!important}
}
