/* Cinematic motion system — progressive enhancement */
html.motion-ready{--hero-shift:0px}
html.motion-ready .hero{background-image:none!important;background-color:#02070c;will-change:auto}
.hero-photo-motion{position:absolute;inset:-7%;z-index:-1;pointer-events:none;overflow:hidden;transform:translate3d(-1.8%,var(--hero-shift),0) scale(1.08);transform-origin:center;will-change:transform;animation:hero-photo-drift 18s cubic-bezier(.45,0,.55,1) infinite alternate}
.hero-photo-motion::after{content:"";position:absolute;inset:0;z-index:4;background:linear-gradient(90deg,rgba(2,7,12,.95) 0%,rgba(2,8,14,.78) 43%,rgba(3,10,17,.25) 72%,rgba(3,9,15,.52) 100%),linear-gradient(0deg,rgba(2,7,12,.88),transparent 50%)}
.hero::before,body.persona-consultants .hero::before{content:""!important;position:absolute!important;inset:auto 0 0!important;width:auto!important;height:58%!important;opacity:1!important;background:linear-gradient(0deg,rgba(2,7,12,.78),transparent)!important;background-size:auto!important;mask-image:none!important;pointer-events:none!important}
.hero .wrap{z-index:5!important}
.hero p,#hero-sub{color:rgba(255,255,255,.94)!important;font-weight:500;text-shadow:0 2px 10px rgba(0,0,0,.92),0 8px 28px rgba(0,0,0,.72)}
.hero h1{text-shadow:0 3px 16px rgba(0,0,0,.88),0 18px 45px rgba(0,0,0,.55)!important}
.panel-wrap{overflow:hidden}
.panel-wrap::before{left:50%!important;right:auto!important;width:100%!important;text-align:center!important;transform:translateX(-50%)!important;letter-spacing:-.055em!important;white-space:nowrap}
.hero-scene{position:absolute;inset:0;opacity:0;background-position:center;background-size:cover;background-repeat:no-repeat;animation:hero-scene-cycle 16s ease-in-out infinite;will-change:opacity,transform}
.scene-night{background-image:url('../images/hero-belgitium-cinematic.png');animation-delay:0s}
.scene-bluehour{background-image:url('../images/hero-belgitium-bluehour.png');animation-delay:8s}
html.motion-ready .hero .eyebrow,html.motion-ready .hero h1,html.motion-ready .hero p,html.motion-ready .hero-actions,html.motion-ready .hero-scroll{opacity:0;transform:translateY(30px);filter:blur(8px)}
html.motion-ready .hero.hero-loaded .eyebrow{animation:cinema-in .75s cubic-bezier(.2,.8,.2,1) .12s forwards}
html.motion-ready .hero.hero-loaded h1{animation:cinema-title 1.05s cubic-bezier(.16,1,.3,1) .28s forwards}
html.motion-ready .hero.hero-loaded p{animation:cinema-in .85s cubic-bezier(.2,.8,.2,1) .56s forwards}
html.motion-ready .hero.hero-loaded .hero-actions{animation:cinema-in .8s cubic-bezier(.2,.8,.2,1) .76s forwards}
html.motion-ready .hero.hero-loaded .hero-scroll{animation:cinema-in .8s cubic-bezier(.2,.8,.2,1) 1s forwards}
html.motion-ready .reveal-item{opacity:0;transform:translateY(46px);filter:blur(5px);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.16,1,.3,1),filter .8s ease;transition-delay:var(--reveal-delay,0ms)}
html.motion-ready .reveal-item.is-visible{opacity:1;transform:translateY(0);filter:blur(0)}
html.motion-ready .service-card.reveal-item{transform:translateY(58px) scale(.975)}
html.motion-ready .service-card.reveal-item.is-visible{transform:translateY(0) scale(1)}
header{transition:background .35s ease,border-color .35s ease,box-shadow .35s ease,transform .35s ease}
header.is-scrolled{position:fixed!important;background:rgba(4,12,21,.92);border-bottom:1px solid rgba(255,255,255,.12);box-shadow:0 16px 42px rgba(0,0,0,.22);backdrop-filter:blur(18px)}
.chapter-progress{position:fixed;right:24px;top:50%;z-index:90;display:flex;flex-direction:column;gap:15px;transform:translateY(-50%);opacity:0;pointer-events:none;transition:opacity .3s ease}.chapter-progress.is-visible{opacity:1}.chapter-dot{width:7px;height:7px;padding:0;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:rgba(7,16,27,.22);box-shadow:0 0 0 4px rgba(7,16,27,.14);transition:height .3s ease,border-radius .3s ease,background .3s ease,border-color .3s ease}.chapter-dot.active{height:28px;border-radius:9px;background:var(--gold);border-color:var(--gold)}
.scroll-progress{position:fixed;top:0;left:0;z-index:130;width:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-hot));box-shadow:0 0 16px rgba(225,180,95,.5);transition:width .08s linear}
.hero-cta span{display:inline-block;transition:transform .25s ease}.hero-cta:hover span{transform:translateX(7px)}
@keyframes cinema-in{from{opacity:0;transform:translateY(30px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes cinema-title{from{opacity:0;transform:translateY(55px);filter:blur(12px);clip-path:inset(100% 0 0)}to{opacity:1;transform:translateY(0);filter:blur(0);clip-path:inset(0 0 0)}}
@keyframes hero-photo-drift{0%{transform:translate3d(-1.8%,var(--hero-shift),0) scale(1.08)}50%{transform:translate3d(.6%,calc(var(--hero-shift) - 1.2%),0) scale(1.125)}100%{transform:translate3d(1.8%,var(--hero-shift),0) scale(1.1)}}
@keyframes hero-scene-cycle{0%,42%{opacity:1;transform:scale(1)}58%,100%{opacity:0;transform:scale(1.035)}}
@media(max-width:900px){.chapter-progress{display:none}.hero-photo-motion{animation-duration:22s}.hero-scene{background-position:62% center}}
@media(prefers-reduced-motion:reduce){html.motion-ready .hero .eyebrow,html.motion-ready .hero h1,html.motion-ready .hero p,html.motion-ready .hero-actions,html.motion-ready .hero-scroll,html.motion-ready .reveal-item{opacity:1!important;transform:none!important;filter:none!important;animation:none!important;transition:none!important}.hero-photo-motion{animation:none!important;transform:scale(1.04)!important}.hero-scene{animation:none!important;opacity:0!important}.scene-night{opacity:1!important}.chapter-progress,.scroll-progress{display:none!important}}

.legal-dialog{width:min(760px,calc(100% - 36px));max-height:86vh;margin:auto;padding:0;border:1px solid rgba(255,255,255,.16);border-radius:0;background:#0b1724;color:#f5f2ea;box-shadow:0 40px 100px rgba(0,0,0,.5);overflow:auto}.legal-dialog::backdrop{background:rgba(2,7,12,.82);backdrop-filter:blur(8px)}.legal-dialog-content{padding:58px 64px 64px}.legal-dialog h2{margin:14px 0 38px;font:400 clamp(2.4rem,6vw,4.4rem)/1 'Manrope',sans-serif;letter-spacing:-.055em}.legal-dialog h3{margin:27px 0 8px;color:#e1b45f;font:700 .69rem/1.3 'IBM Plex Mono',monospace;letter-spacing:.1em;text-transform:uppercase}.legal-dialog p{margin:0;color:rgba(255,255,255,.7);font-size:.92rem;line-height:1.75}.legal-dialog a{color:#fff}.legal-close{position:sticky;z-index:2;float:right;top:16px;right:16px;width:42px;height:42px;margin:16px;border:1px solid rgba(255,255,255,.25);background:#101f2f;color:#fff;font-size:1.6rem;line-height:1}.legal-close:hover{border-color:#e1b45f;color:#e1b45f}@media(max-width:560px){.legal-dialog-content{padding:28px 24px 42px}.legal-dialog h2{margin-bottom:28px}.legal-close{top:8px;right:8px;margin:8px}}

/* Cinematic choreography for corporate information */
.profile-section{position:relative}.profile-section::before{content:"";position:absolute;left:50%;top:0;width:0;height:1px;background:linear-gradient(90deg,transparent,#c7953e,transparent);transform:translateX(-50%);transition:width 1.35s cubic-bezier(.16,1,.3,1)}.profile-section:has(.is-visible)::before{width:100%}.profile-heading{position:relative;overflow:hidden}.profile-heading::after{content:"";position:absolute;left:118px;bottom:-22px;width:0;height:2px;background:linear-gradient(90deg,#c7953e,transparent);transition:width 1.1s cubic-bezier(.16,1,.3,1) .25s}.profile-heading.is-visible::after{width:min(520px,65%)}html.motion-ready .profile-heading.reveal-item{transform:translateY(62px);clip-path:inset(0 0 100% 0);transition:opacity .85s ease,transform 1.05s cubic-bezier(.16,1,.3,1),filter .85s ease,clip-path 1.05s cubic-bezier(.16,1,.3,1)}html.motion-ready .profile-heading.reveal-item.is-visible{transform:translateY(0);clip-path:inset(0 0 0 0)}html.motion-ready .about-grid>h2.reveal-item{transform:translateX(-75px);clip-path:inset(0 100% 0 0)}html.motion-ready .about-grid>div.reveal-item{transform:translateX(75px)}html.motion-ready .about-grid>h2.reveal-item.is-visible,html.motion-ready .about-grid>div.reveal-item.is-visible{transform:translateX(0);clip-path:inset(0)}html.motion-ready .position-strip>div.reveal-item{transform:translateY(34px) scale(.96);transition-duration:.75s}.position-strip>div{transition:background .35s ease,color .35s ease,transform .35s ease}.position-strip>div:hover{background:#0c1927;color:#fff;transform:translateY(-5px)}.position-strip>div:hover span{color:rgba(255,255,255,.62)}html.motion-ready .sector-list>span.reveal-item{transform:translateY(25px) scale(.88);filter:blur(4px)}html.motion-ready .sector-list>span.reveal-item.is-visible{transform:translateY(0) scale(1);filter:none}.sector-list>span{transition:color .3s ease,background .3s ease,border-color .3s ease,transform .3s ease}.sector-list>span:hover{color:#fff;background:#0c1927;border-color:#0c1927;transform:translateY(-4px)}html.motion-ready .method-grid>article.reveal-item{transform:perspective(900px) translateY(75px) rotateX(9deg);transform-origin:bottom;filter:blur(6px)}html.motion-ready .method-grid>article.reveal-item.is-visible{transform:perspective(900px) translateY(0) rotateX(0);filter:none}.method-grid article{transition:background .4s ease,color .4s ease,transform .4s ease}.method-grid article:hover{background:#0c1927;color:#fff;transform:translateY(-8px)}.method-grid article:hover p{color:rgba(255,255,255,.62)}html.motion-ready .commitment-grid>article.reveal-item:nth-child(odd){transform:translateX(-65px)}html.motion-ready .commitment-grid>article.reveal-item:nth-child(even){transform:translateX(65px)}html.motion-ready .commitment-grid>article.reveal-item.is-visible{transform:translateX(0)}.commitment-grid article{position:relative;overflow:hidden}.commitment-grid article::after{content:"";position:absolute;left:0;bottom:0;width:0;height:3px;background:#c7953e;transition:width .65s cubic-bezier(.16,1,.3,1)}.commitment-grid article:hover::after{width:100%}html.motion-ready .case-grid>article.reveal-item{transform:translateY(80px) scale(.94);filter:blur(7px)}html.motion-ready .case-grid>article.reveal-item.is-visible{transform:translateY(0) scale(1);filter:none}.case-grid article{position:relative;overflow:hidden;transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .45s ease}.case-grid article::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 100% 0,rgba(225,180,95,.22),transparent 48%);opacity:0;transition:opacity .45s ease}.case-grid article>*{position:relative}.case-grid article:hover{transform:translateY(-10px);box-shadow:0 28px 55px rgba(7,16,27,.2)}.case-grid article:hover::before{opacity:1}html.motion-ready .faq-list>details.reveal-item{transform:translateX(55px);filter:blur(4px)}html.motion-ready .faq-list>details.reveal-item.is-visible{transform:translateX(0);filter:none}.faq-list details{transition:background .3s ease,padding .3s ease}.faq-list details[open]{padding-left:20px;background:rgba(199,149,62,.055)}@media(max-width:900px){.profile-heading::after{left:54px}html.motion-ready .commitment-grid>article.reveal-item:nth-child(n){transform:translateY(45px)}html.motion-ready .commitment-grid>article.reveal-item.is-visible{transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.profile-section::before,.profile-heading::after{transition:none!important;width:100%!important}.profile-heading,.about-grid>*,.position-strip>div,.sector-list>span,.method-grid>article,.commitment-grid>article,.case-grid>article,.faq-list>details{clip-path:none!important}}

/* Corporate profile, credibility and information architecture */
.company-profile{background:#f2f0e9;color:#101820;border-top:1px solid #d7d5cd}.profile-wrap{width:min(1180px,calc(100% - 64px));margin:auto}.about-block,.profile-section{padding:110px 0;border-bottom:1px solid #d4d3cc}.profile-kicker{color:#996b24;font:700 .68rem/1.2 'IBM Plex Mono',monospace;letter-spacing:.17em;text-transform:uppercase}.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;margin-top:24px}.about-grid h2,.profile-heading h2{font:400 clamp(2.5rem,4.7vw,4.8rem)/1.02 'Manrope',sans-serif;letter-spacing:-.055em}.about-grid p{margin:0 0 20px;color:#596169;font-size:1rem;line-height:1.8}.position-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:75px;border-top:1px solid #c9c8c1;border-bottom:1px solid #c9c8c1}.position-strip div{padding:26px 22px;border-right:1px solid #c9c8c1}.position-strip div:last-child{border:0}.position-strip b,.position-strip span{display:block}.position-strip b{font:650 1rem/1.3 'Manrope',sans-serif}.position-strip span{margin-top:7px;color:#767c81;font-size:.76rem}.profile-heading{display:grid;grid-template-columns:90px 1fr;gap:28px;align-items:start;margin-bottom:60px}.profile-heading>span{padding-top:7px;color:#9b702b;font:600 .76rem/1 'IBM Plex Mono',monospace}.profile-heading h2{max-width:850px;margin-top:14px;font-size:clamp(2.35rem,4.2vw,4.2rem)}.sector-list{display:flex;flex-wrap:wrap;gap:10px;padding-left:118px}.sector-list span{padding:13px 19px;border:1px solid #c9c8c1;background:#faf9f5;font:650 .78rem/1 'Manrope',sans-serif}.method-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #c9c8c1;border-bottom:1px solid #c9c8c1}.method-grid article{min-height:250px;padding:28px 22px;border-right:1px solid #c9c8c1}.method-grid article:last-child{border:0}.method-grid b{color:#a5762b;font:600 .7rem/1 'IBM Plex Mono',monospace}.method-grid h3,.commitment-grid h3,.case-grid h3{margin:45px 0 12px;font:600 1.16rem/1.25 'Manrope',sans-serif}.method-grid p,.commitment-grid p,.case-grid p{margin:0;color:#666d73;font-size:.85rem;line-height:1.7}.commitment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:#d1d0c9}.commitment-grid article{min-height:210px;padding:34px;background:#faf9f5}.commitment-grid h3{margin:0 0 14px;font-size:1.3rem}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.case-grid article{min-height:285px;padding:30px;background:#0c1927;color:#fff}.case-grid article>span{color:#dcb25e;font:600 .65rem/1 'IBM Plex Mono',monospace;letter-spacing:.1em;text-transform:uppercase}.case-grid h3{margin:55px 0 14px;font-size:1.35rem}.case-grid p{color:rgba(255,255,255,.65)}.references-note{max-width:760px;margin:28px 0 0;color:#767c81;font-size:.8rem;line-height:1.6}.faq-list{max-width:900px;margin-left:118px;border-top:1px solid #c9c8c1}.faq-list details{border-bottom:1px solid #c9c8c1}.faq-list summary{position:relative;padding:25px 48px 25px 0;cursor:pointer;list-style:none;font:650 1rem/1.4 'Manrope',sans-serif}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"+";position:absolute;right:10px;top:20px;color:#a5762b;font:300 1.7rem/1 'Manrope',sans-serif}.faq-list details[open] summary::after{content:"−"}.faq-list details p{max-width:720px;margin:0;padding:0 0 25px;color:#666d73;line-height:1.7}.legal-links{display:flex;gap:18px}.legal-links a{color:#8f8870;text-decoration:none}.legal-links a:hover{color:#e1b45f}
@media(max-width:900px){.profile-wrap{width:calc(100% - 36px)}.about-block,.profile-section{padding:75px 0}.about-grid{grid-template-columns:1fr;gap:28px}.position-strip{grid-template-columns:repeat(2,1fr);margin-top:45px}.position-strip div:nth-child(2){border-right:0}.position-strip div:nth-child(-n+2){border-bottom:1px solid #c9c8c1}.profile-heading{grid-template-columns:42px 1fr;gap:12px;margin-bottom:38px}.sector-list,.faq-list{padding-left:0;margin-left:0}.method-grid{grid-template-columns:1fr}.method-grid article{min-height:0;border-right:0;border-bottom:1px solid #c9c8c1}.method-grid article:last-child{border-bottom:0}.method-grid h3{margin-top:20px}.case-grid{grid-template-columns:1fr}.case-grid article{min-height:230px}.commitment-grid{grid-template-columns:1fr}}
@media(max-width:560px){.position-strip{grid-template-columns:1fr}.position-strip div{border-right:0!important;border-bottom:1px solid #c9c8c1!important}.position-strip div:last-child{border-bottom:0!important}.commitment-grid article{padding:27px}.legal-links{width:100%;flex-wrap:wrap}}
