:root{--color-blue-50:#fff9f3;--color-blue-100:#fbf4eb;--color-blue-200:#f3e2d2;--color-blue-300:#ecd3aa;--color-blue-400:#e1b84d;--color-blue-500:#d4a017;--color-blue-600:#b43a2c;--color-blue-700:#990b10;--color-blue-800:#770b10;--color-blue-950:#45080b;--color-gray-50:#fcfaf8;--color-gray-100:#f4efeb;--color-gray-200:#e9e2de;--color-gray-300:#cec4bf;--color-gray-400:#a99d97;--color-gray-500:#8b7e77;--color-gray-600:#786c66;--color-gray-700:#5e514b;--color-gray-800:#453a35;--color-gray-900:#2b2020;--color-gray-950:#21191a;--burgundy:#990b10;--gold:#d4a017;--ink:#21191a}
html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;color:var(--ink);background:#210b0e;font-family:'GT Walsheim Pro',sans-serif}a,button{-webkit-tap-highlight-color:transparent}button,a,summary,input,textarea,select{outline-offset:5px}button{cursor:pointer}img{max-width:100%}.page-surface{position:relative;z-index:1;background:#fff}.pill{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;border-radius:100px;background:var(--burgundy);color:#fff;font-size:16px;line-height:24px;font-weight:500;transition:background .2s,transform .2s,box-shadow .2s;text-decoration:none;border:1px solid transparent;white-space:nowrap}.pill:hover{background:#770b10;box-shadow:0 6px 20px #45080b22}.pill:active{transform:scale(.97)}.pill-secondary{background:transparent;color:var(--burgundy);border-color:#990b1040}.pill-secondary:hover{background:#fbf4eb}.site-nav{box-shadow:0 0 20px #0000000c;gap:26px}#navbar-fixed.navbar-hidden{transform:translateY(-110%)}#mobile-menu-toggle{display:none;font-size:26px;width:40px;height:40px}#mobile-menu{position:fixed;background:#fff;left:0;right:0;bottom:0;overflow-y:auto;padding:24px}#mobile-menu summary{padding:18px 0;font-size:18px}#mobile-menu details a{display:block;padding:12px 16px}#mobile-menu>a{display:block;margin-top:24px}.eyebrow{font-size:12px;line-height:20px;letter-spacing:.14em;font-weight:700;display:block;margin-bottom:22px;color:var(--burgundy)}
.hero-fade-up{opacity:0;animation:heroFadeUp .7s ease-out forwards}
@keyframes heroFadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
#expertises>h2{max-width:650px}#expertises>p{max-width:680px;letter-spacing:0}.bento-card{position:relative}.bento-card p{font-size:16px;line-height:24px}.bento-card a{font-size:15px;padding-bottom:2px}.bento-card svg path[fill="#2A3FFF"]{fill:var(--burgundy)}.bento-0 .md\:col-span-6.relative{align-self:stretch;min-height:400px}.bento-photo{width:100%;object-fit:cover;border-radius:8px}.photo-0{height:100%;min-height:425px;border-radius:0;object-position:44% center}.photo-2{height:240px;margin-bottom:26px;object-position:54% center}.photo-5{height:320px;margin-top:28px;border-radius:10px 10px 0 0;object-position:80% center}.deliverable-list{margin:25px 0 30px}.deliverable-list span{display:flex;gap:16px;color:#dfb851;padding:15px 0;border-top:1px solid #ffffff25;font-size:14px}.deliverable-list b{color:#fff;font-size:16px;font-weight:400}.inline-stages{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.inline-stages span{font-size:13px;color:#e8c775;border:1px solid #e8c77555;border-radius:100px;padding:5px 9px}.proof-strip{max-width:none;margin:0;padding:44px max(32px,calc((100vw - 1216px)/2)) 62px;border-top:1px solid #e9dfd7;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;text-align:center}.proof-strip strong{font-size:28px;display:block;line-height:36px}.proof-strip span{font-size:14px;color:#786c66;display:block;margin-top:7px}.feature-band{background:#fbf4eb;padding:70px 32px}.feature-split{max-width:1152px;margin:auto;display:grid;grid-template-columns:1fr 1fr;background:#fff;border-radius:14px;overflow:hidden}.feature-copy{padding:48px}.feature-copy h2{font-size:45px;line-height:50px;font-weight:700;letter-spacing:-.025em;margin-bottom:24px}.feature-copy p{font-size:16px;line-height:26px;margin-bottom:20px}.feature-copy .pill{margin-top:12px}.feature-media img{object-position:62% center}#services-section{background:#fff}.service-number{display:block;font-size:23px;font-weight:500;color:var(--burgundy);margin-bottom:20px;line-height:40px;border-bottom:2px solid #d4a017;width:45px}#services-section article{position:relative}#services-section article h3{font-size:26px}#services-section article p{font-size:16px;line-height:24px}.section-link{text-align:center;margin-top:42px}.trust-photo{width:48%;min-width:0;border-radius:10px;align-self:stretch}#section-security>div{gap:42px}#section-security p{font-size:16px;line-height:25px}#section-security h3{font-size:23px}#section-testimonials h2{max-width:660px}#section-testimonials article{min-height:330px;display:flex;flex-direction:column}#section-testimonials article h3{font-size:20px;line-height:27px}#section-testimonials article p{font-size:16px;line-height:24px}.outcome-number{font-size:40px;font-weight:700;line-height:1;color:#990b10;margin-bottom:28px}.deliverable-tag{margin-top:auto;padding-top:30px;font-size:12px;letter-spacing:.12em;color:#990b10}.testimonials-slider::-webkit-scrollbar{display:none}#testimonials-track{scrollbar-width:none}.site-footer{position:relative;z-index:2;background:#2b2020;color:#fff;padding:76px max(32px,calc((100vw - 1280px)/2));border-radius:0 0 40px 40px}.footer-cta{text-align:center;margin-bottom:90px}.footer-cta h2{font-size:45px;line-height:52px;font-weight:700;letter-spacing:-.02em;margin-bottom:30px}.footer-cta .pill{background:#d4a017;color:#21191a}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:34px}.footer-grid h3{font-size:15px;font-weight:700;margin-bottom:22px}.footer-grid a{display:block;font-size:14px;line-height:22px;margin-bottom:14px;color:#f2e8e2}.footer-grid a:hover{color:#e7bd50}.footer-grid p{font-size:14px;line-height:24px;color:#cfc0b8;margin-top:20px}.footer-note{font-size:13px;line-height:22px;color:#ad9d96;border-top:1px solid #ffffff1c;margin-top:50px;padding-top:25px;max-width:900px}.wordmark-spacer{height:44vw;max-height:620px;min-height:240px;pointer-events:none;background:transparent}#footer-reveal-wordmark{position:fixed;inset:0;z-index:0;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;pointer-events:none;will-change:transform;background:#210b0e;padding-bottom:5vh}#footer-reveal-wordmark span{font-size:27vw;font-weight:700;letter-spacing:-.075em;line-height:1;color:#f2e6d6}.page-surface{background:transparent}.page-surface>section,.page-surface>main{position:relative;background-color:#fff}.page-surface>#hero{background:#30251f}.page-surface>.feature-band,.page-surface>#section-testimonials{background:#fbf4eb}.copyright{position:relative;background:#210b0e!important;color:#ecded4;display:flex;justify-content:space-between;padding:24px max(24px,calc((100vw - 1280px)/2));font-size:13px;gap:20px}.inner-page{padding-top:128px;background:#fff}.inner-hero{max-width:1280px;margin:auto;padding:60px 32px 80px;display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:60px}.inner-hero h1,.contact-main h1{font-size:57px;line-height:1.05;letter-spacing:-.035em;font-weight:700;margin-bottom:25px}.inner-hero p,.contact-main>section>p{font-size:18px;line-height:28px;color:#6c5d58;margin-bottom:30px}.inner-hero-media{height:540px;width:100%;border-radius:14px}.detail-section,.process-section{max-width:1216px;margin:auto;padding:55px 32px 85px}.detail-section>h2,.process-section h2,.method-band h2{font-size:40px;line-height:47px;font-weight:700;max-width:620px;margin-bottom:45px;letter-spacing:-.02em}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.detail-grid article{padding:32px;border:1px solid #eadfd6;border-radius:12px;background:#fbf4eb}.detail-grid h3{font-size:25px;line-height:32px;font-weight:700;margin-bottom:16px}.detail-grid p{font-size:16px;line-height:25px;color:#665852}.process-section ol{display:grid;grid-template-columns:repeat(5,1fr);margin:30px 0;gap:20px}.process-section li{position:relative;padding-top:32px}.process-section li span{display:block;color:var(--burgundy);margin-bottom:20px}.process-section li strong{font-size:20px}.process-section>p{max-width:640px;color:#786c66;font-size:16px;line-height:25px}.method-band{padding:60px max(32px,calc((100vw - 1152px)/2));background:#fbf4eb}.method-band h2{margin-bottom:20px}.method-band p{max-width:720px;font-size:18px;line-height:28px}.contact-main{max-width:1216px;margin:auto;padding:60px 32px 100px;display:grid;grid-template-columns:1fr 1fr;gap:85px}.contact-email{font-size:23px;color:var(--burgundy);border-bottom:1px solid #990b1060;display:inline-block;margin:10px 0 24px}.contact-locations{font-size:16px;line-height:25px;color:#786c66;margin:10px 0 30px}#contact-form{background:#fbf4eb;border:1px solid #eadfd6;border-radius:14px;padding:32px}#contact-form h2{font-size:28px;font-weight:700;margin-bottom:25px}#contact-form label{font-size:14px;display:block;margin-bottom:17px}#contact-form input,#contact-form textarea,#contact-form select{display:block;width:100%;background:#fff;border:1px solid #cfc2b9;border-radius:8px;padding:12px;font-size:16px;color:#21191a;margin-top:7px}#contact-form .pill{width:100%;margin-top:6px}.form-note,#form-status{font-size:13px;line-height:20px;color:#786c66;margin-top:14px}.not-found{padding:100px 24px;text-align:center}.not-found h1{font-size:45px;font-weight:700}.not-found p{margin:24px}
@media(min-width:768px){#expertises .container{padding-left:32px;padding-right:32px}.bento-0{min-height:445px}}
@media(min-width:1344px){#expertises .container{padding-left:0;padding-right:0}}
@media(max-width:1100px){.site-nav{gap:20px}.nav-contact .pill{padding:12px 18px}.feature-copy{padding:32px}.footer-grid{grid-template-columns:repeat(2,1fr)}.trust-photo{width:43%}}
@media(max-width:1023px){#mobile-menu-toggle{display:block}.site-nav{justify-content:space-between}.inner-hero{gap:30px}.inner-hero h1,.contact-main h1{font-size:45px}.detail-grid{grid-template-columns:repeat(2,1fr)}.contact-main{gap:30px}.process-section ol{grid-template-columns:repeat(3,1fr)}}
@media(max-width:767px){html{scroll-padding-top:90px}.bento-0 .md\:col-span-6.relative{min-height:0}.photo-0{height:300px;min-height:0;object-position:center}.photo-2{height:240px}.photo-5{height:300px}.proof-strip{grid-template-columns:1fr;padding:35px 24px;gap:28px}.proof-strip>div+div{border-top:1px solid #eadfd6;padding-top:25px}.proof-strip strong{font-size:25px}.feature-band{padding:32px 16px}.feature-split{grid-template-columns:1fr}.feature-copy{padding:28px}.feature-copy h2{font-size:32px;line-height:37px}.feature-media{height:320px}.feature-copy .pill{font-size:14px;padding:12px 18px}#section-security>div{gap:12px}.trust-photo{width:100%;height:300px;margin-top:10px}#section-security h2{font-size:30px;line-height:36px}#section-security h3{font-size:22px}#section-testimonials article{min-height:340px}.site-footer{padding:50px 24px;border-radius:0 0 24px 24px}.footer-cta{margin-bottom:55px}.footer-cta h2{font-size:32px;line-height:38px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 24px}.footer-note{margin-top:30px}.copyright{font-size:12px;flex-wrap:wrap;padding:24px;gap:12px}.copyright span:nth-child(2){display:none}.wordmark-spacer{min-height:220px}#footer-reveal-wordmark{padding-bottom:50px}.inner-page{padding-top:72px}.inner-hero{padding:50px 24px;grid-template-columns:1fr;gap:35px}.inner-hero h1,.contact-main h1{font-size:38px;line-height:1.08}.inner-hero-media{height:320px}.detail-section,.process-section{padding:30px 24px 50px}.detail-section>h2,.process-section h2,.method-band h2{font-size:30px;line-height:36px;margin-bottom:30px}.detail-grid{grid-template-columns:1fr;gap:18px}.detail-grid article{padding:26px}.process-section ol{grid-template-columns:1fr;gap:24px}.process-section li{display:flex;align-items:center;gap:25px}.process-section li span{margin:0}.method-band{padding:45px 24px}.contact-main{grid-template-columns:1fr;padding:45px 24px;gap:40px}#contact-form{padding:24px}.contact-email{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-fade-up{opacity:1;animation:none}#navbar-fixed{transition:none}}
/* Keep the footer reveal transparent on interior pages as on the home page. */
.inner-page{padding-top:0;background:transparent}.inner-page>main{padding-top:128px}.inner-page>.contact-main{padding-top:188px}.inner-page>.not-found{padding-top:188px}
@media(max-width:767px){.inner-page>main{padding-top:72px}.inner-page>.contact-main{padding-top:122px}.inner-page>.not-found{padding-top:122px}}

/* Original transparent artwork: natural proportions, no clipping or offsets. */
.brand-window{display:flex;align-items:center;flex-shrink:0}
.brand-window img{display:block;width:100%;height:auto;object-fit:contain}
.brand-voonov{width:190px}.brand-cies{width:250px}
.feature-copy .brand-window{margin-bottom:30px}
.footer-brands .brand-window{width:245px;padding:10px;background:#fff9f3;border-radius:5px;box-sizing:border-box}
.contact-main .brand-window{margin:12px 0}
@media(max-width:1100px){.site-nav .brand-voonov{width:160px}}
@media(max-width:1023px){.site-nav .brand-voonov{width:180px}}
@media(max-width:767px){.feature-copy .brand-cies{width:245px}.footer-brands{grid-column:1/-1}}

/* Navigation proportions and dropdown placement matched to the Djamo reference. */
.site-nav{gap:56px}
.desktop-nav{display:flex;align-items:center;gap:12px;flex:1}
.desktop-nav>a{font-size:16px;white-space:nowrap;border-left:1px solid #cec4bf;padding:16px 0 16px 24px}
.nav-group{position:relative}
.nav-group>button{display:flex;align-items:center;justify-content:center;gap:4px;height:32px;padding:0 12px;border-radius:100px;font-size:16px;line-height:24px;font-weight:500;white-space:nowrap;transition:background .2s}
.nav-group>button:hover,.nav-group>button[aria-expanded="true"]{background:#fbf4eb}
.chevron{display:block;flex-shrink:0;width:20px;height:20px;margin:0;color:#21191a}
.megamenu-panel{position:absolute;top:calc(100% + 32px);left:-16px;z-index:40;width:452px;max-width:calc(100vw - 48px);padding:16px;border-radius:12px;background:#fff;border:1px solid #f3e2d2;box-shadow:0 0 20px #0000000d}
.megamenu-panel:before{content:'';position:absolute;left:0;right:0;top:-32px;height:32px}
.menu-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
#menu-cies{width:760px}
#menu-cies .menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,auto);grid-auto-flow:column;column-gap:16px}
.megamenu-panel a{display:flex;align-items:center;gap:16px;padding:8px;border-radius:8px;min-width:0;transition:background .2s}
.megamenu-panel a:hover,.megamenu-panel a:focus-visible{background:#fbf4eb}
.menu-icon{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;border-radius:12px;background:#fbf4eb;border:1px solid #f3e2d2;color:#990b10}
.menu-copy{display:block;flex:1;min-width:0}
.menu-copy strong{display:block;font-size:16px;font-weight:700;line-height:24px;letter-spacing:.025em;color:#21191a}
.menu-copy>span{display:block;font-size:16px;line-height:24px;letter-spacing:.025em;color:#786c66}
@media(max-width:1100px){.site-nav{gap:32px}.desktop-nav>a,.nav-group>button{font-size:14px}}
@media(max-width:1023px){.desktop-nav,.nav-contact{display:none}}

/* Full-width contact background, with the existing 1152px content alignment. */
.contact-main{max-width:none;padding-inline:max(32px,calc((100% - 1152px)/2))}
@media(max-width:767px){.contact-main{padding-inline:24px}}

.copyright .credit{color:#e7bd50}.copyright .credit:hover{text-decoration:underline}

/* Immersive home hero: Djamo's content geometry, with Voonov's visual story. */
.page-surface>#hero{position:relative;overflow:hidden;background:#30251f;padding-block:16px;isolation:isolate}
.hero-nav-spacer{height:80px}
#hero-video-wrapper{position:absolute;inset:0;z-index:0;overflow:hidden;background:url('/assets/hero.webp') center/cover no-repeat}
.hero-scene{position:absolute;inset:0;opacity:0;animation:heroScene 24s linear infinite;will-change:opacity}
.hero-scene img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;animation:heroCamera 24s ease-in-out infinite;will-change:transform}
.hero-scene-studio{opacity:1}
.hero-scene-mentorat,.hero-scene-mentorat img{animation-delay:-16s}
.hero-scene-capital,.hero-scene-capital img{animation-delay:-8s}
/* Sticker timing is independent of the slower photographic scene cycle. */
.hero-labels{position:absolute;inset:0;z-index:2;pointer-events:none}
.hero-scene-caption{--label-tilt:-5deg;position:absolute;right:max(8%,calc((100% - 1120px)/2));top:50%;display:flex;flex-direction:column;align-items:center;transform-origin:42% 80%;opacity:0;transform:translate3d(0,14px,0) rotate(-12deg) scale(.015);animation:heroLabelPop 7.2s linear infinite both;font-size:clamp(28px,3.4vw,58px);font-weight:700;line-height:1.08;letter-spacing:-.025em;filter:drop-shadow(0 8px 0 #26090d);color:#fff;will-change:transform,opacity}
.hero-scene-caption span{display:block;padding:5px 16px 10px;background:var(--burgundy);border-radius:18px}
.hero-scene-caption span+span{margin-top:-8px}
.hero-label-mentorat{--label-tilt:4deg;right:12%;animation-delay:2.2s}
.hero-label-capital{--label-tilt:-3deg;animation-delay:4.4s}
.hero-label-accent{position:absolute;right:-58px;top:-48px;width:80px;height:80px;overflow:visible;filter:none}
.hero-label-accent path{stroke:#e1b84d;stroke-width:8;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;animation:heroAccentDraw 7.2s linear infinite both}
.hero-label-accent .hero-label-spark{stroke-width:5;animation-name:heroSparkDraw}
.hero-label-mentorat .hero-label-accent path{animation-delay:2.2s}
.hero-label-capital .hero-label-accent path{animation-delay:4.4s}
@keyframes heroLabelPop{
  0%,11.5%{opacity:0;transform:translate3d(-8px,18px,0) rotate(calc(var(--label-tilt) - 9deg)) scale(.015)}
  12%{opacity:1;transform:translate3d(-8px,18px,0) rotate(calc(var(--label-tilt) - 9deg)) scale(.015);animation-timing-function:cubic-bezier(.16,1,.3,1)}
  17%{opacity:1;transform:translate3d(0,-3px,0) rotate(calc(var(--label-tilt) + 1deg)) scale(1.035);animation-timing-function:ease-out}
  20%{opacity:1;transform:translate3d(0,0,0) rotate(var(--label-tilt)) scale(1)}
  36%{opacity:1;transform:translate3d(-3px,-4px,0) rotate(calc(var(--label-tilt) - 1deg)) scale(1)}
  37%,100%{opacity:0;transform:translate3d(-3px,-4px,0) rotate(calc(var(--label-tilt) - 1deg)) scale(1)}
}
@keyframes heroAccentDraw{
  0%,17%{opacity:0;stroke-dashoffset:1}
  18%{opacity:1;stroke-dashoffset:1;animation-timing-function:ease-out}
  23%{opacity:1;stroke-dashoffset:0}
  27%{opacity:0;stroke-dashoffset:-1}
  100%{opacity:0;stroke-dashoffset:-1}
}
@keyframes heroSparkDraw{
  0%,21%{opacity:0;stroke-dashoffset:1}
  22%{opacity:1;stroke-dashoffset:1}
  24%{opacity:1;stroke-dashoffset:0}
  28%,100%{opacity:0;stroke-dashoffset:-1}
}
#hero-overlay{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to bottom,#0009,#00000073 55%,#00000059)}
#hero-content{position:relative;z-index:2;color:#fff;pointer-events:none}
.hero-content-space{display:flex;flex-direction:column;padding-top:80px;padding-bottom:420px}
#hero-content-card{pointer-events:auto}
#hero-content h1{line-height:1;letter-spacing:normal;text-shadow:0 2px 18px #00000059;animation-delay:.1s}
#hero-content p{color:#fff;max-width:460px;text-shadow:0 1px 2px #00000059,0 2px 14px #0006;animation-delay:.25s}
#hero-content-card>div.hero-fade-up{animation-delay:.4s}
.hero-motion-toggle{position:absolute;right:24px;bottom:24px;z-index:3;display:none;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #ffffff65;border-radius:50%;background:#0003;color:#fff;backdrop-filter:blur(8px);transition:background .2s,transform .2s}
.hero-motion-enabled .hero-motion-toggle{display:flex}
.hero-motion-toggle:hover{background:#0006}.hero-motion-toggle:active{transform:scale(.97)}
.hero-motion-toggle:focus-visible{outline:2px solid #fff;outline-offset:4px}
.hero-play-icon{display:none}.hero-paused .hero-pause-icon{display:none}.hero-paused .hero-play-icon{display:block}
.hero-paused .hero-scene,.hero-paused .hero-scene img,.hero-offscreen .hero-scene,.hero-offscreen .hero-scene img,.hero-paused .hero-scene-caption,.hero-offscreen .hero-scene-caption,.hero-paused .hero-label-accent path,.hero-offscreen .hero-label-accent path{animation-play-state:paused}
@keyframes heroScene{0%,28%{opacity:1}33.333%,95%{opacity:0}100%{opacity:1}}
@keyframes heroCamera{0%,100%{transform:scale(1.01) translate3d(0,0,0)}50%{transform:scale(1.075) translate3d(-.6%,.3%,0)}}
@media(max-width:767px){
  .page-surface>#hero{padding-block:0}
  .hero-nav-spacer{height:72px}
  .hero-content-space{padding-top:40px;padding-bottom:300px}
  #hero-content-card{padding:24px}
  #hero-content h1{line-height:1.2}
  #hero-video-wrapper{background-position:70% center}
  .hero-scene-studio img{object-position:70% center}
  .hero-scene-mentorat img{object-position:60% center}
  .hero-scene-capital img{object-position:65% center}
  .hero-scene-caption{right:12%;top:auto;bottom:12%;font-size:clamp(27px,7.5vw,40px)}
  .hero-scene-caption span{border-radius:12px;padding:5px 12px 9px}
  .hero-label-accent{right:-34px;top:-30px;width:52px;height:52px}
  .hero-motion-toggle{right:16px;bottom:16px}
}
@media(prefers-reduced-motion:reduce){
  .hero-scene,.hero-scene img,.hero-scene-caption,.hero-label-accent path{animation:none;will-change:auto}
  .hero-scene-studio{opacity:1}.hero-scene-mentorat,.hero-scene-capital,.hero-label-mentorat,.hero-label-capital{display:none}
  .hero-label-studio{opacity:1;transform:rotate(var(--label-tilt))}.hero-label-accent{display:none}
  .hero-motion-enabled .hero-motion-toggle{display:none}
}

/* Motion layer: scroll reveals, framed photography, timelines and micro-interactions.
   Reveal states only apply under .motion, which site.js sets when motion is allowed. */
:root{--ease-out:cubic-bezier(.16,1,.3,1);--ease-spring:cubic-bezier(.34,1.56,.64,1)}
.motion [data-reveal]{transition:opacity .8s var(--ease-out) calc(var(--i,0)*90ms),transform .9s var(--ease-out) calc(var(--i,0)*90ms),clip-path 1.1s var(--ease-out) calc(var(--i,0)*90ms)}
.motion [data-reveal]:not(.is-in){opacity:0;transform:translate3d(0,32px,0)}
.motion [data-reveal=fade]:not(.is-in){transform:none}
.motion [data-reveal=scale]:not(.is-in){transform:translate3d(0,24px,0) scale(.96)}
.motion [data-reveal=clip]{clip-path:inset(0 round 0)}
.motion [data-reveal=clip]:not(.is-in){opacity:1;transform:none;clip-path:inset(16% 7% 16% 7% round 14px)}

/* Framed photography: a slight overscan leaves room for parallax and the reveal zoom. */
.media-frame{position:relative;overflow:hidden;isolation:isolate}
.media-frame>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;scale:1.08;translate:0 var(--py,0px);transition:scale 1.4s var(--ease-out);will-change:translate}
.motion [data-reveal=clip]:not(.is-in) img{scale:1.22}

/* Trust section: check badges in place of single-side bars. */
.trust-badge{display:flex;align-items:center;justify-content:center;flex:0 0 36px;align-self:flex-start;width:36px;height:36px;margin-top:-4px;border-radius:50%;background:#d4a01726;border:1px solid #d4a01766;color:#e1b84d;transition:transform .6s var(--ease-spring) calc(var(--i,0)*90ms + 250ms),opacity .4s ease calc(var(--i,0)*90ms + 250ms)}
.motion [data-reveal]:not(.is-in) .trust-badge{opacity:0;transform:scale(.4) rotate(-25deg)}

/* Process steps as a timeline: a dot per step and a gold trace drawn to the next one. */
.process-section li:before{content:'';position:absolute;left:0;top:0;z-index:1;width:12px;height:12px;box-sizing:border-box;border-radius:50%;background:#fff;border:2px solid #d4a017;transition:transform .5s var(--ease-spring) calc(var(--i,0)*90ms + 150ms)}
.process-section li:after{content:'';position:absolute;left:12px;top:5px;width:calc(100% + 8px);height:2px;background:#e1b84d;transform-origin:left center;transition:transform .6s var(--ease-out) calc(var(--i,0)*90ms + 350ms)}
.process-section li:last-child:after{display:none}
.motion .process-section li[data-reveal]:not(.is-in):before{transform:scale(0)}
.motion .process-section li[data-reveal]:not(.is-in):after{transform:scaleX(0)}
@media(min-width:768px) and (max-width:1023px){.process-section li:nth-child(3n):after{display:none}}
@media(max-width:767px){
  .process-section li{padding:0 0 0 32px}
  .process-section li:before{top:50%;margin-top:-6px}
  .process-section li:after{left:5px;top:calc(50% + 6px);width:2px;height:calc(100% + 12px);transform-origin:center top}
  .motion .process-section li[data-reveal]:not(.is-in):after{transform:scaleY(0)}
}

/* Footer: a drawn accent beside the closing call to action, and the wordmark rising letter by letter. */
.footer-cta h2{position:relative;display:table;margin-inline:auto}
.cta-accent{position:absolute;right:-68px;top:-44px;width:64px;height:64px;overflow:visible;pointer-events:none}
.cta-accent path{fill:none;stroke:#d4a017;stroke-width:7;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset .7s var(--ease-out) .55s}
.cta-accent .cta-spark{stroke-width:5;transition-delay:.85s}
.motion .footer-cta h2[data-reveal]:not(.is-in) .cta-accent path{stroke-dashoffset:1}
.wm-letter{display:inline-block}
.motion #footer-reveal-wordmark .wm-letter{transition:transform 1.2s var(--ease-out) calc(var(--i)*70ms),opacity .8s ease calc(var(--i)*70ms)}
.motion #footer-reveal-wordmark:not(.is-in) .wm-letter{opacity:0;transform:translate3d(0,45%,0) rotate(4deg)}
@media(max-width:767px){.cta-accent{right:-18px;top:-34px;width:40px;height:40px}}

/* Navigation gains depth once the page scrolls. */
.site-nav{transition:box-shadow .3s,background-color .3s}
#navbar-fixed.is-scrolled .site-nav{background-color:#fffffff5;box-shadow:0 12px 32px -14px #21191a40}

/* Hover and micro-interactions. */
.pill:hover:not(:active){transform:translateY(-1px)}
.bento-card,.detail-grid article{transition:transform .5s var(--ease-out),box-shadow .5s var(--ease-out)}
.bento-card a:after{content:'→';display:inline-block;transition:transform .3s var(--ease-out)}
.service-number{transition:width .4s var(--ease-out)}
.menu-icon{transition:transform .3s var(--ease-spring)}
@media(hover:hover){
  .bento-card:hover,.detail-grid article:hover{transform:translateY(-4px);box-shadow:0 22px 44px -22px #45080b4d}
  .bento-card a:hover:after{transform:translateX(4px)}
  #services-section article:hover .service-number,.detail-grid article:hover .service-number{width:72px}
  .megamenu-panel a:hover .menu-icon{transform:scale(1.06) rotate(-3deg)}
}

/* Menus and answers open with motion instead of snapping into place. */
@keyframes panelIn{from{opacity:0;transform:translate3d(0,-6px,0)}to{opacity:1;transform:none}}
@keyframes itemIn{from{opacity:0;transform:translate3d(0,8px,0)}to{opacity:1;transform:none}}
.megamenu-panel:not(.hidden){animation:panelIn .28s var(--ease-out)}
.megamenu-panel:not(.hidden) a{animation:itemIn .4s var(--ease-out) both}
.megamenu-panel a:nth-child(2){animation-delay:40ms}.megamenu-panel a:nth-child(3){animation-delay:80ms}.megamenu-panel a:nth-child(4){animation-delay:120ms}.megamenu-panel a:nth-child(5){animation-delay:160ms}
#mobile-menu:not(.hidden){animation:panelIn .32s var(--ease-out)}
#mobile-menu:not(.hidden)>*{animation:itemIn .45s var(--ease-out) both}
#mobile-menu>:nth-child(2){animation-delay:50ms}#mobile-menu>:nth-child(3){animation-delay:100ms}#mobile-menu>:nth-child(4){animation-delay:150ms}
#mobile-menu details[open] a{animation:itemIn .35s var(--ease-out) both}
details.group[open]>div{animation:itemIn .45s var(--ease-out)}

/* Above-the-fold content on inner pages animates on load, without waiting for script. */
@keyframes frameIn{from{clip-path:inset(10% 8% 10% 8% round 14px)}to{clip-path:inset(0 round 14px)}}
@keyframes frameSettle{from{scale:1.22}to{scale:1.08}}
@keyframes kenBurns{from{transform:none}to{transform:scale(1.06) translate3d(-1.2%,-.8%,0)}}
@media(prefers-reduced-motion:no-preference){
  .inner-hero>div:not(.inner-hero-media)>*,.contact-main>section>*,.not-found>*{opacity:0;animation:heroFadeUp .8s var(--ease-out) forwards}
  .inner-hero>div:not(.inner-hero-media)>:nth-child(2),.contact-main>section>:nth-child(2),.not-found>:nth-child(2){animation-delay:.1s}
  .inner-hero>div:not(.inner-hero-media)>:nth-child(3),.contact-main>section>:nth-child(3),.not-found>:nth-child(3){animation-delay:.2s}
  .inner-hero>div:not(.inner-hero-media)>:nth-child(n+4),.contact-main>section>:nth-child(n+4){animation-delay:.3s}
  .inner-hero-media{animation:frameIn 1.2s var(--ease-out) both}
  .inner-hero-media>img{animation:frameSettle 1.6s var(--ease-out) both,kenBurns 20s ease-in-out 1.6s infinite alternate}
  #contact-form{opacity:0;animation:heroFadeUp .9s var(--ease-out) .25s forwards}
}
@media(prefers-reduced-motion:reduce){
  .media-frame>img{scale:1;transition:none}
  .megamenu-panel:not(.hidden),.megamenu-panel:not(.hidden) a,#mobile-menu:not(.hidden),#mobile-menu:not(.hidden)>*,#mobile-menu details[open] a,details.group[open]>div{animation:none}
  .bento-card,.detail-grid article,.service-number,.menu-icon,.site-nav,.pill{transition:none}
}

/* Startups accompagnées: carousel of uniform cards (4 visible on desktop) and a detail dialog. */
#section-startups{padding:72px 0 80px;background:#fff;overflow:hidden}
.startups-head{max-width:640px;margin:0 auto;padding:0 24px;text-align:center}
.startups-head .eyebrow{margin-bottom:14px}
.startups-head h2{font-size:36px;line-height:44px;font-weight:700;color:var(--ink);text-wrap:balance}
.startups-head p{margin-top:16px;font-size:16px;line-height:24px;font-weight:500;color:#786c66}
.startups-carousel{max-width:1152px;margin:48px auto 0;padding:0 24px}
.startups-track{--gap:24px;display:flex;gap:var(--gap);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:6px 2px 18px;margin:-6px -2px 0;overscroll-behavior-x:contain}
.startups-track::-webkit-scrollbar{display:none}
.startup-card{flex:0 0 calc((100% - 3*var(--gap))/4);min-width:0;scroll-snap-align:start;display:flex;flex-direction:column;gap:16px;padding:12px 12px 18px;background:#fff;border:1px solid #f3e2d2;border-radius:16px;text-align:left;font:inherit;color:var(--ink);transition:box-shadow .3s var(--ease-out),transform .3s var(--ease-out)}
.startup-card:hover{box-shadow:0 14px 34px #45080b14;transform:translateY(-4px)}
.startup-plate{aspect-ratio:16/10;max-width:100%;display:grid;grid-template:100%/100%;place-items:center;overflow:hidden;background:#fbf7f2;border:1px solid #eadfd6;border-radius:10px}
.startup-plate img{max-width:72%;max-height:62%;object-fit:contain;mix-blend-mode:multiply;transition:transform .5s var(--ease-out)}
.startup-plate img.is-square{max-height:76%;border-radius:12px}
.startup-card:hover .startup-plate img{transform:scale(1.04)}
.startup-initials{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;font-size:26px;font-weight:700;color:var(--burgundy);background:#990b1010;border:1px solid #990b1030}
.startup-body{display:flex;flex-direction:column;gap:8px;padding:0 6px;flex:1}
.startup-name{font-size:20px;line-height:26px;font-weight:700}
.startup-tags{display:flex;flex-wrap:wrap;gap:6px}
.startup-tag{font-size:12px;line-height:18px;font-weight:500;padding:2px 10px;border-radius:100px;background:#fbf4eb;border:1px solid #eadfd6;color:#786c66;white-space:nowrap}
.startup-tag.is-sector{color:var(--burgundy);background:#990b100d;border-color:#990b1030}
.startup-pitch{font-size:14px;line-height:21px;color:#5e514b;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:63px}
.startup-more{display:inline-flex;align-items:center;gap:6px;padding:0 6px;font-size:14px;font-weight:700;color:var(--burgundy)}
.startup-more svg{width:16px;height:16px;transition:transform .25s var(--ease-out)}
.startup-card:hover .startup-more svg{transform:translateX(4px)}
.startups-controls{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}
.startups-arrow{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--burgundy);border:1px solid #990b1040;transition:background .2s,transform .2s}
.startups-arrow:hover{background:#fbf4eb}
.startups-arrow:active{transform:scale(.94)}
.startups-arrow svg{width:20px;height:20px}

.startup-modal{border:0;padding:0;margin:auto;background:transparent;width:calc(100% - 48px);max-width:880px;max-height:calc(100dvh - 48px);overflow:visible;color:var(--ink)}
.startup-modal::backdrop{background:#21191acc;backdrop-filter:blur(4px)}
.startup-modal[open]{animation:startupIn .35s var(--ease-out)}
@keyframes startupIn{from{opacity:0;transform:translate3d(0,18px,0) scale(.98)}}
.startup-sheet{display:grid;grid-template-columns:300px minmax(0,1fr);grid-template-rows:minmax(0,1fr);max-height:calc(100dvh - 48px);background:#fff;border-radius:22px;overflow:hidden}
.startup-side{display:flex;flex-direction:column;gap:20px;padding:28px;background:#fbf4eb;overflow-y:auto;overscroll-behavior:contain}
.startup-side .startup-plate{aspect-ratio:1/1}
.startup-side .startup-plate img{max-width:76%;max-height:70%}
.startup-facts{display:flex;flex-direction:column;gap:10px;margin:0;font-size:14px}
.startup-facts div{display:flex;justify-content:space-between;gap:12px;padding-bottom:9px;border-bottom:1px solid #eadfd6}
.startup-facts dt{color:#786c66}
.startup-facts dd{margin:0;font-weight:500;text-align:right}
.startup-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.startup-stats div{padding:12px;background:#fff;border:1px solid #eadfd6;border-radius:12px}
.startup-stats strong{display:block;font-size:24px;line-height:30px;color:var(--burgundy);font-variant-numeric:tabular-nums}
.startup-stats span{display:block;font-size:12px;line-height:16px;color:#786c66}
.startup-main{display:flex;flex-direction:column;min-width:0;overflow-y:auto;overscroll-behavior:contain}
.startup-main-body{display:flex;flex-direction:column;gap:14px;padding:36px 36px 8px}
.startup-main-body h2{font-size:32px;line-height:38px;font-weight:700;margin-top:4px}
.startup-tagline{font-size:18px;line-height:27px;font-weight:500;color:var(--ink)}
.startup-main-body p:not(.startup-tagline){font-size:16px;line-height:25px;color:#5e514b}
.startup-main-body h3{font-size:16px;font-weight:700;margin-top:8px}
.startup-main-body ul{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}
.startup-main-body li{position:relative;padding-left:20px;font-size:15px;line-height:23px;color:#5e514b}
.startup-main-body li::before{content:"";position:absolute;left:0;top:8px;width:8px;height:8px;border-radius:50%;background:var(--gold)}
.startup-main-body li b{color:var(--ink)}
.startup-visual{width:100%;max-width:420px;border-radius:14px}
.startup-modal-nav{display:flex;justify-content:space-between;gap:12px;margin:auto 36px 0;padding:16px 0 24px;border-top:1px solid #eadfd6}
.startup-modal-nav button{padding:6px 0;font-size:14px;font-weight:500;color:var(--burgundy)}
.startup-close{position:absolute;top:14px;right:14px;z-index:2;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ink);box-shadow:0 6px 20px #21191a24}
.startup-close svg{width:18px;height:18px}
html:has(.startup-modal[open]){overflow:hidden}

@media(max-width:1023px){.startup-card{flex-basis:calc((100% - var(--gap))/2)}}
@media(max-width:767px){
  #section-startups{padding:56px 0 64px}
  .startups-head h2{font-size:28px;line-height:36px}
  .startups-carousel{margin-top:36px}
  .startups-track{--gap:16px}
  .startup-card{flex-basis:84%}
  .startup-modal{width:100%;max-width:none;margin:auto 0 0;max-height:92dvh}
  .startup-modal[open]{animation-name:startupUp}
  @keyframes startupUp{from{transform:translate3d(0,48px,0)}}
  .startup-sheet{grid-template-columns:minmax(0,1fr);grid-template-rows:none;max-height:92dvh;overflow-y:auto;border-radius:22px 22px 0 0}
  .startup-side{flex-direction:row;flex-wrap:wrap;align-items:center;gap:16px;padding:20px;overflow:visible}
  .startup-side .startup-plate{width:96px}
  .startup-facts{flex:1;min-width:150px}
  .startup-stats{width:100%}
  .startup-main{overflow:visible}
  .startup-main-body{padding:24px 20px 8px}
  .startup-main-body h2{font-size:26px;line-height:32px}
  .startup-modal-nav{margin:auto 20px 0;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}
}
@media(prefers-reduced-motion:reduce){
  .startups-track{scroll-behavior:auto}
  .startup-card,.startup-plate img,.startup-more svg{transition:none}
  .startup-modal[open]{animation:none}
}

/* Startups grid: full page /startups/ (3 columns, a lone last card is centred) and featured cards on /voonov/ (4 columns). */
.inner-hero.is-compact{grid-template-columns:minmax(0,1fr);padding-bottom:40px}
.inner-hero.is-compact>div{max-width:760px}
#section-startups.is-page,#section-startups.is-featured{padding:0 0 85px}
.startups-grid{--gap:24px;max-width:1216px;margin:0 auto;padding:6px 32px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap)}
.is-featured .startups-head{max-width:1216px;padding:0 32px;text-align:left}
.is-featured .startups-head h2{font-size:40px;line-height:47px;letter-spacing:-.02em;max-width:620px}
.is-featured .startups-head p{max-width:620px}
.is-featured .startups-grid{margin-top:40px}
.is-featured .section-link{max-width:1216px;margin:40px auto 0;padding:0 32px;text-align:left}
@media(min-width:1024px){.is-featured .startups-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:1024px){.is-page .startups-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.is-page .startups-grid>*{grid-column:span 2}.is-page .startups-grid>:last-child:nth-child(3n+1){grid-column:3/span 2}}
@media(max-width:767px){
  #section-startups.is-page,#section-startups.is-featured{padding:0 0 56px}
  .inner-hero.is-compact{padding-bottom:32px}
  .startups-grid{--gap:12px;padding:6px 24px 0}
  .is-featured .startups-head,.is-featured .section-link{padding:0 24px}
  .is-featured .startups-head h2{font-size:30px;line-height:36px}
  .is-featured .startups-grid{margin-top:28px}
  .startups-grid .startup-card{gap:12px;padding:8px 8px 14px;border-radius:14px}
  .startups-grid .startup-body{padding:0 4px;gap:6px}
  .startups-grid .startup-name{font-size:16px;line-height:21px}
  .startups-grid .startup-pitch{font-size:13px;line-height:19px;min-height:57px}
  .startups-grid .startup-more{padding:0 4px;font-size:13px}
}
