/* Compatibility corrections. The original design remains in style.css. */
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
.container > *, .hero__grid-layout > *, .intro__layout > *, .video-grid > *,
.service-grid > *, .brand-grid > *, .proof__details > *, .founder__grid > *,
.immersive-inner > *, .contact-qr__copy { min-width:0; }
.btn { max-width:100%; }
.btn__arrow, .eyebrow__dot, .live-pulse, .section-kicker__line { flex-shrink:0; }
.brand-card p, .brand-card > span, .contact-qr__copy, .footer__links { overflow-wrap:break-word; }
.brand-card__logo picture, .founder__photo picture { display:block; width:100%; height:100%; }
.proof-shot picture { display:block; }
.brand-card__logo picture { display:flex; align-items:center; justify-content:center; }
/* Rendering and essential navigation do not depend on JavaScript. */
.reveal { opacity:1; transform:none; }
html.js-reveal .reveal:not(.is-visible) { opacity:0; transform:translateY(38px); }
html:not(.js-tabs) .service-panel[hidden] { display:block!important; }
html:not(.js-tabs) .tabs { display:none; }
html:not(.js-immersive) .immersive-sequence { height:auto; min-height:0; }
html:not(.js-immersive) .immersive-sticky { position:relative; height:auto; min-height:700px; }
html:not(.js-immersive) .immersive-inner { min-height:700px; }
html:not(.js-immersive) .imm-bottom { display:none; }
.video-sound { display:none; }
html.js-videos .video-sound { display:flex; }
.video-play { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); z-index:6; border:1px solid #ffffff70; background:#101010dc; color:white; border-radius:100px; padding:15px 20px; font:700 12px 'DM Sans',Arial,sans-serif; cursor:pointer; white-space:nowrap; }
.video-play[hidden] { display:none; }
.video-frame.has-controls .video-sound { bottom:65px; }
.video-frame.has-controls .video-frame__top { pointer-events:none; }
.image-dialog:not([open]) { display:none; }
body.lightbox-open { overflow:hidden; }
.image-dialog.is-fallback { position:fixed; z-index:200; top:0; left:0; right:0; bottom:0; margin:0; width:100%; height:100%; max-width:none; max-height:none; padding:24px; background:rgba(0,0,0,.94); }
.image-dialog.is-fallback img { display:block; margin:auto; max-width:100%; max-height:calc(100% - 60px); }
/* Phones with safe areas, small viewports, and browser toolbars. */
@media(max-width:900px) {
  body.menu-open { position:fixed; width:100%; }
  .nav { height:calc(100vh - 76px); height:calc(100svh - 76px); padding-bottom:90px; padding-bottom:calc(90px + env(safe-area-inset-bottom,0px)); overscroll-behavior:contain; -webkit-overflow-scrolling:touch; }
  .menu-toggle { flex:0 0 44px; }
  .header__inner { gap:12px; }
  html:not(.js-menu) .header { position:relative; }
  html:not(.js-menu) .header__inner { flex-wrap:wrap; padding-top:12px; }
  html:not(.js-menu) .nav { position:static; transform:none; visibility:visible; height:auto; width:100%; order:3; padding:12px 0; display:flex; flex-direction:row; flex-wrap:wrap; }
  html:not(.js-menu) .nav a { font-size:14px; width:auto; padding:10px; }
  html:not(.js-menu) .menu-toggle { display:none; }
  html:not(.js-menu) .hero { padding-top:0; }
  .immersive-sticky { min-height:640px; }
  .immersive-inner { padding-bottom:80px; }
}
@media(max-width:600px) {
  .nav { top:70px; height:calc(100vh - 70px); height:calc(100svh - 70px); }
  .header__inner { gap:8px; }
  .header__cta { min-height:44px; }
  .eyebrow { flex-wrap:wrap; }
  .hero__visual { overflow:visible; }
  .orbit-label--top { left:0; }
  .orbit-label--right { right:0; }
  .hero__bottom { height:auto; min-height:50px; flex-wrap:wrap; padding-top:8px; padding-bottom:8px; }
  .mobile-wa { bottom:12px; bottom:calc(12px + env(safe-area-inset-bottom,0px)); }
  .imm-title, .immersive-sticky[data-stage] .imm-title { max-width:100%; }
  .imm-bottom { bottom:76px; }
  .immersive-inner { padding-bottom:144px; }
  .immersive-sticky { min-height:720px; }
  .contact-qr { max-width:100%; }
  .contact-qr__image { flex-shrink:0; }
  .video-frame--vertical { height:460px; max-height:80vh; min-height:300px; }
  .video-sound { min-height:44px; }
  .proof-shot { min-width:0; }
  .proof-shot span { overflow-wrap:break-word; }
  .footer__links a { display:inline-flex; align-items:center; min-height:44px; }
}
@media(max-width:360px) {
  .brand-link { width:95px; }
  .header__cta { font-size:9px; padding:10px 9px; gap:5px; }
  .hero h1 { font-size:54px; }
  .hero__actions .btn { gap:8px; padding-left:14px; }
  .orbit-scene { width:255px; height:255px; }
  .imm-title { font-size:54px; }
  .immersive-sticky[data-stage="1"] .imm-title, .immersive-sticky[data-stage="2"] .imm-title { font-size:38px; }
  .immersive-sticky[data-stage="3"] .imm-title { font-size:30px; }
  .immersive-object { width:230px; height:230px; }
  .proof-metrics { gap:18px; flex-wrap:wrap; }
}
@media(max-width:900px) and (max-height:620px) {
  /* A tall sticky panel would trap or clip content in landscape: let it scroll. */
  .immersive-sticky { height:auto; min-height:720px; position:relative; }
  .immersive-sequence { height:auto; min-height:0; }
  .immersive-inner { min-height:720px; }
  .imm-bottom { bottom:0; }
}
@supports (padding:max(0px)) {
  @media(max-width:900px) and (orientation:landscape) {
    .container { max-width:calc(100% - max(19px,env(safe-area-inset-left)) - max(19px,env(safe-area-inset-right))); }
  }
}
/* Older iOS / Android WebViews: retain dimensions when newer CSS is ignored. */
@supports not (height:100svh) {
  .hero { height:auto; }
  .immersive-sequence { height:420vh; }
  .immersive-sticky { height:100vh; }
  @media(max-width:900px) { .immersive-sequence { height:360vh; } }
  @media(max-width:600px) { .immersive-sequence { height:345vh; } }
  @media(max-width:900px) and (max-height:620px) { .immersive-sequence,.immersive-sticky { height:auto; } }
}
@supports not (width:min(1px,2px)) {
  .container { width:91%; max-width:1380px; }
  .hero__visual { height:610px; }
  .orbit-scene { width:46vw; height:46vw; max-width:610px; max-height:610px; }
  .immersive-object { width:42vw; height:600px; max-width:670px; max-height:670px; }
  .video-project--training { gap:60px; }
  .video-frame--training { width:100%; max-width:420px; }
  .image-dialog { max-width:720px; width:94%; }
  @media(max-width:900px) { .hero__visual { height:390px; } .orbit-scene { width:440px; height:440px; max-width:100%; max-height:100%; } .journey__sticky { width:100%; max-width:480px; } .immersive-object { width:410px; height:350px; max-width:90%; } }
  @media(max-width:600px) { .container { width:calc(100% - 38px); } .hero__visual { height:270px; } .orbit-scene { width:285px; height:285px; } .immersive-object { width:260px; height:260px; } }
  @media(max-width:360px) { .orbit-scene { width:255px; height:255px; } .immersive-object { width:230px; height:230px; } }
}
@supports not (font-size:clamp(1px,2vw,3px)) {
  .hero h1 { font-size:7.3vw; }
  .display-heading { font-size:5vw; }
  .service-card h3 { font-size:24px; }
  .manifesto-strip { font-size:3.1vw; }
  .imm-title { font-size:11.8vw; }
  .imm-counter { font-size:18px; margin:60px 0 14px; }
  .immersive-content p { font-size:18px; }
  .imm-steps { margin-top:40px; } .imm-steps span { font-size:9px; }
  .immersive-sticky[data-stage="1"] .imm-title,.immersive-sticky[data-stage="2"] .imm-title { font-size:9vw; }
  .immersive-sticky[data-stage="3"] .imm-title { font-size:7.4vw; }
  .video-frame--vertical { height:600px; } .video-frame--square { height:430px; }
  .final-cta h2 { font-size:6.4vw; }
  .proof__description h3 { font-size:42px; } .proof-metrics strong { font-size:36px; }
  @media(max-width:900px) { .hero h1 { font-size:11vw; } .display-heading { font-size:48px; } .nav a { font-size:32px; } .video-frame--vertical { height:520px; } .imm-title { font-size:12vw; } }
  @media(max-width:600px) { .hero h1 { font-size:58px; } .display-heading { font-size:38px; } .manifesto-strip { font-size:23px; } .final-cta h2 { font-size:43px; } .imm-title { font-size:58px; } .immersive-sticky[data-stage="1"] .imm-title,.immersive-sticky[data-stage="2"] .imm-title { font-size:44px; } .immersive-sticky[data-stage="3"] .imm-title { font-size:35px; } .video-frame--vertical { height:460px; } }
  @media(max-width:360px) { .hero h1 { font-size:54px; } .immersive-sticky[data-stage="1"] .imm-title,.immersive-sticky[data-stage="2"] .imm-title { font-size:38px; } .immersive-sticky[data-stage="3"] .imm-title { font-size:30px; } }
}
@supports not (aspect-ratio:1) {
  .video-frame--training { height:525px; }
  .journey-card__orb { height:65%; }
  @media(max-width:600px) { .video-frame--training { height:110vw; max-height:525px; } }
}
@supports not (display:grid) {
  .hero__grid-layout,.intro__layout,.journey__layout,.proof__top,.proof__details,.founder__grid,.faq__layout,.immersive-inner,.service-grid,.video-grid,.brand-grid { display:block; }
  .hero__visual { margin:0 auto; }
  .service-card,.brand-card,.video-project { margin-bottom:24px; }
  .immersive-sticky { position:relative; height:auto; padding:100px 0; }
  .immersive-sequence { height:auto; min-height:0; }
  .founder__photo { height:500px; }
}
@media(prefers-reduced-motion:reduce) {
  html.js-reveal .reveal:not(.is-visible) { opacity:1; transform:none; }
  .immersive-sequence { height:auto; min-height:0; }
  .immersive-sticky { position:relative; height:auto; min-height:720px; }
  .immersive-inner { min-height:720px; }
}

@media(max-width:600px) and (min-height:621px) and (max-height:740px) {
  .immersive-sticky { min-height:0; }
  .immersive-object { width:230px; height:190px; }
  .immersive-inner { padding-top:82px; padding-bottom:130px; }
  .imm-steps { margin-top:14px; }
}

.is-offscreen, .is-offscreen *, .is-offscreen::before, .is-offscreen::after, .is-offscreen *::before, .is-offscreen *::after { animation-play-state:paused!important; }

/* Requested editorial adjustments; retain the existing page composition. */
.hero__outlined { -webkit-text-stroke:0; color:#b7b7b7; letter-spacing:-.055em; }
.brand-card__illustrative { display:block; margin-top:10px; color:#777; font-size:11px; line-height:1.5; }
