:root{--navy:#0c2d60;--blue:#155bb0;--ink:#142b4d;--muted:#62748d;--cyan:#78d6e9;--gold:#ffc945;--paper:#f6f7f5;--white:#fdfefe;--mist:#e9f0f4;--line:#dce5e9;--ease:cubic-bezier(.22,1,.36,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Figtree,sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Sora,sans-serif;letter-spacing:-.06em}p{line-height:1.7}em{color:var(--blue);font-style:normal}::selection{background:var(--gold);color:var(--navy)}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.shell{width:min(100% - 72px,1380px);margin-inline:auto}.section-space{padding:clamp(84px,9vw,140px) 0}.display-heading{font-size:clamp(2.7rem,5.1vw,5.4rem);font-weight:700;line-height:1.1}.eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:30px;color:var(--blue);font:700 10px Sora,sans-serif;letter-spacing:.17em;text-transform:uppercase}.eyebrow span{display:grid;place-items:center;min-width:29px;height:29px;border:1px solid currentColor;border-radius:50%;font-size:9px;letter-spacing:0}.micro-label{font:700 10px Sora,sans-serif;letter-spacing:.15em;text-transform:uppercase}.text-link{display:inline-flex;align-items:center;gap:22px;width:max-content;max-width:100%;padding:9px 0;border-bottom:1px solid currentColor;color:var(--blue);font-size:13px;font-weight:800;transition:gap .25s var(--ease),color .25s}.text-link:hover{gap:32px;color:var(--navy)}.text-link>span:last-child{font-size:19px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:56px;padding:0 22px;border:1px solid transparent;border-radius:3px;white-space:nowrap;font-size:13px;font-weight:800;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s,color .25s}.button:hover{transform:translateY(-4px) scale(1.025);box-shadow:0 18px 26px #102c5030}.button:active{transform:translateY(0) scale(.97)}.button>span:last-child{font-size:19px}.button-blue{background:var(--navy);color:var(--white)}.button-blue:hover{background:var(--blue)}.button-gold{background:var(--gold);color:var(--navy)}.button-outline-light{border-color:#b8ced7;color:var(--white)}.button-outline-light:hover{background:var(--white);color:var(--navy)}
.scroll-progress{position:fixed;z-index:100;top:0;left:0;width:100%;height:3px;transform:scaleX(0);transform-origin:left;background:var(--gold);pointer-events:none}.site-header{position:sticky;top:0;z-index:50;background:#fdfefef0;backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.header-inner{height:92px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;min-width:260px}.brand-logo{width:70px;height:52px;object-fit:contain}.brand-copy{display:flex;flex-direction:column;gap:3px}.brand-copy strong{font:700 21px Sora,sans-serif;letter-spacing:-.07em;color:var(--navy)}.brand-copy small{font-size:9px;font-weight:700;letter-spacing:.05em;color:var(--muted)}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:clamp(12px,1.7vw,28px);flex:1}.desktop-nav a{position:relative;padding:34px 0;font-size:12px;font-weight:800;white-space:nowrap;transition:color .2s}.desktop-nav a::after{content:'';position:absolute;bottom:27px;left:0;width:100%;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.desktop-nav a:hover,.desktop-nav a[aria-current]{color:var(--blue)}.desktop-nav a:hover::after,.desktop-nav a[aria-current]::after{transform:scaleX(1)}.header-cta{display:flex;align-items:center;gap:20px;padding:15px 17px;background:var(--navy);color:var(--white);font-size:12px;font-weight:800;white-space:nowrap;transition:transform .25s var(--ease),background .25s}.header-cta:hover{transform:translateY(-3px);background:var(--blue)}.header-cta span{font-size:17px}.menu-toggle,.mobile-nav{display:none}.breadcrumb{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px;font-weight:700}.breadcrumb a:hover,.breadcrumb span{color:var(--blue)}
.home-hero{overflow:hidden}.home-hero-grid{display:grid;grid-template-columns:1fr 1.02fr;min-height:690px}.home-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:70px 6vw 55px 0}.home-hero h1{max-width:750px;font-size:clamp(4rem,6.1vw,7rem);line-height:1.04}.home-hero h1 em{display:inline-block;font:italic 400 1em Georgia,serif;letter-spacing:-.08em}.home-hero-copy>p:not(.eyebrow){max-width:540px;margin-top:30px;color:var(--muted);font-size:clamp(1rem,1.25vw,1.2rem)}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:32px;flex-wrap:wrap}.hero-footnote{display:flex;align-items:center;gap:14px;margin-top:auto;padding-top:54px;color:var(--muted);font-size:11px;font-weight:700}.footnote-line{width:37px;height:1px;background:var(--gold)}.home-hero-visual{position:relative;min-height:620px;overflow:hidden;background:var(--navy)}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.9) contrast(1.03);animation:hero-image-enter 1.1s var(--ease) both}.home-hero-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,#092952b8);pointer-events:none}.hero-photo-label{position:absolute;z-index:2;left:44px;bottom:42px;display:flex;flex-direction:column;gap:11px;color:var(--white)}.hero-photo-label strong{font:700 clamp(2rem,3vw,3.2rem)/1.12 Sora,sans-serif;letter-spacing:-.06em}.hero-photo-label span{font-size:11px;letter-spacing:.16em;text-transform:uppercase}.hero-orbit{position:absolute;z-index:3;right:-70px;top:-95px;width:240px;height:240px;border:1px solid #ffffffa0;border-radius:50%;box-shadow:0 0 0 50px #ffffff16,0 0 0 100px #ffffff0e;animation:orbit-breathe 7s ease-in-out infinite}.home-hero-copy>*{animation:rise-in .75s var(--ease) both}.home-hero-copy>.eyebrow{animation-delay:.06s}.home-hero-copy>h1{animation-delay:.16s}.home-hero-copy>p:not(.eyebrow){animation-delay:.28s}.home-hero-copy>.hero-actions{animation-delay:.38s}.marquee{overflow:hidden;background:var(--navy);color:var(--white)}.marquee-track{display:flex;align-items:center;gap:42px;width:max-content;min-height:67px;animation:marquee-move 38s linear infinite}.marquee span{font:700 12px Sora,sans-serif;letter-spacing:.21em}.marquee i{color:var(--gold);font-size:18px;font-style:normal}
.intro-layout,.split-section{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(48px,8vw,132px)}.intro-body,.body-stack{display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding-top:61px}.intro-body p,.body-stack p{max-width:620px;color:var(--muted);font-size:16px}.intro-body .large-copy,.body-stack .large-copy{color:var(--ink);font:600 clamp(1.25rem,1.8vw,1.65rem)/1.45 Sora,sans-serif;letter-spacing:-.04em}.intro-body .text-link,.body-stack .text-link{margin-top:14px}.proof-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:100px;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.proof-strip span{color:var(--muted);font:700 11px Sora,sans-serif;letter-spacing:.06em;text-transform:uppercase}.services-preview,.vision-section,.sector-section,.gallery-section,.outcome-section{background:var(--mist)}.section-heading{margin-bottom:50px}.heading-line{display:flex;align-items:end;justify-content:space-between;gap:30px}.service-preview-grid,.service-full-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.service-full-grid{grid-template-columns:repeat(2,1fr)}.service-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:330px;padding:29px;background:var(--white);border:1px solid var(--line);transition:transform .3s var(--ease),background .3s,box-shadow .3s var(--ease)}.service-card:hover{transform:translateY(-7px);background:#f2f8fa;box-shadow:0 20px 38px #12375d1c}.service-index{color:var(--blue);font:700 10px Sora,sans-serif;letter-spacing:.13em}.service-card h3{max-width:300px;margin-bottom:12px;font-size:clamp(1.2rem,1.7vw,1.6rem);font-weight:600;line-height:1.25}.service-card p{max-width:280px;color:var(--muted);font-size:13px}.service-arrow{position:absolute;right:24px;bottom:24px;color:var(--blue);font-size:22px;transition:transform .25s var(--ease)}.service-card:hover .service-arrow{transform:translate(4px,-4px)}.section-tail{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:28px;color:var(--muted);font-size:13px}
.model-preview,.dark-editorial{background:var(--navy);color:var(--white)}.model-preview-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(50px,7vw,110px)}.model-preview .eyebrow,.dark-editorial .eyebrow,.cta-band .eyebrow{color:var(--cyan)}.model-preview h2 em,.dark-editorial h2 em{color:var(--cyan)}.model-preview-grid>div:first-child>p:not(.eyebrow){max-width:420px;margin:25px 0 30px;color:#cfdee9;font-size:16px}.model-preview-steps{border-top:1px solid #ffffff55}.model-preview-step{display:grid;grid-template-columns:45px 1fr 1.7fr 25px;gap:16px;align-items:center;min-height:99px;border-bottom:1px solid #ffffff55}.model-preview-step>span:first-child{color:var(--cyan);font:700 11px Sora,sans-serif}.model-preview-step strong{font:600 20px Sora,sans-serif;letter-spacing:-.05em}.model-preview-step p{color:#c4d6e3;font-size:12px;line-height:1.45}.model-step-arrow{color:var(--gold);font-size:20px}.featured-programs,.program-grid,.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.program-card{display:flex;flex-direction:column;justify-content:space-between;min-height:390px;padding:30px;border:1px solid var(--line);background:var(--white);transition:transform .3s var(--ease),background .3s,box-shadow .3s var(--ease)}.program-card:hover{transform:translateY(-7px);background:#f1f7fa;box-shadow:0 19px 35px #132f5020}.program-card-top{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font:700 10px Sora,sans-serif;text-transform:uppercase;letter-spacing:.08em}.program-card-top span:first-child{color:var(--blue)}.program-tag{display:inline-block;margin-bottom:12px;color:var(--blue);font-size:11px;font-weight:800}.program-card h3{max-width:360px;margin-bottom:14px;font-size:clamp(1.55rem,2.25vw,2.3rem);line-height:1.18;font-weight:600}.program-card p{max-width:350px;color:var(--muted);font-size:13px}.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:17px;border-top:1px solid var(--line);color:var(--blue);font-size:12px;font-weight:800}.card-bottom span{font-size:21px}
.photo-story{overflow:hidden;background:var(--white)}.photo-story-grid{display:grid;grid-template-columns:.9fr 1.15fr .75fr;gap:14px;min-height:510px}.photo-story-text{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:50px 45px 50px 0}.photo-story-text h2{font-size:clamp(2.5rem,3.6vw,4.1rem);line-height:1.14}.photo-story-text p:not(.eyebrow){max-width:380px;margin-top:22px;color:var(--muted);font-size:14px}.photo-story-text .text-link{margin-top:20px}.photo-story-image{min-height:510px;overflow:hidden}.photo-story-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.photo-story-image:hover img{transform:scale(1.06)}.photo-story-image.second img{object-position:40% 35%}.industry-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(45px,8vw,125px)}.industry-preview-grid>div:first-child>p:not(.eyebrow){max-width:460px;margin:26px 0 30px;color:var(--muted);font-size:15px}.industry-list{border-top:1px solid var(--line)}.industry-list>div{display:grid;grid-template-columns:45px 1fr 25px;gap:14px;align-items:center;min-height:91px;border-bottom:1px solid var(--line)}.industry-list span:first-child{color:var(--blue);font:700 11px Sora,sans-serif}.industry-list strong{font:600 clamp(1rem,1.65vw,1.5rem) Sora,sans-serif;letter-spacing:-.04em}.industry-list span:last-child{color:var(--blue);font-size:20px}.cta-band{overflow:hidden;position:relative;padding:96px 0;background:var(--ink);color:var(--white)}.cta-band::after{content:'';position:absolute;right:-100px;top:-160px;width:520px;height:520px;border:1px solid #ffffff30;border-radius:50%;box-shadow:0 0 0 55px #ffffff0b,0 0 0 110px #ffffff06;pointer-events:none}.cta-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:60px}.cta-band h2{max-width:770px;font-size:clamp(2.8rem,5vw,5.7rem);line-height:1.1}.cta-inner>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:24px}.cta-inner p{max-width:340px;color:#d2dce8;font-size:15px}
.site-footer{background:var(--white)}.footer-main{display:grid;grid-template-columns:1.8fr .7fr .7fr 1fr;gap:50px;padding:78px 0}.footer-logo{width:100px;height:78px;object-fit:contain;object-position:left}.footer-identity p{margin-top:20px;font:600 21px/1.4 Sora,sans-serif;letter-spacing:-.05em}.footer-links{display:flex;flex-direction:column;gap:16px}.footer-links>span{margin-bottom:6px;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.footer-links a{font-size:13px;font-weight:700;transition:color .2s,transform .2s}.footer-links a:hover{color:var(--blue);transform:translateX(4px)}.footer-signoff{display:flex;flex-direction:column;gap:15px}.footer-signoff .micro-label{color:var(--muted)}.footer-signoff strong{font:700 24px/1.3 Sora,sans-serif;letter-spacing:-.05em;color:var(--navy)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:60px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}.footer-bottom a{color:var(--blue);font-weight:800}
.page-hero-grid{display:grid;grid-template-columns:1fr .9fr;min-height:550px}.page-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:56px 6vw 56px 0}.page-hero-copy .breadcrumb{margin-bottom:62px}.page-hero h1,.detail-hero h1,.contact-hero h1{font-size:clamp(3.4rem,5.3vw,6.2rem);line-height:1.1}.page-hero-copy>p:not(.eyebrow){max-width:550px;margin-top:25px;color:var(--muted);font-size:17px}.page-hero-visual{position:relative;min-height:550px;overflow:hidden;background:var(--navy)}.page-hero-image{width:100%;height:100%;object-fit:cover;animation:hero-image-enter 1s var(--ease) both}.image-caption{position:absolute;right:22px;bottom:22px;padding:10px 12px;background:var(--white);color:var(--navy);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.brand-principles{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.brand-principles span{padding:10px 12px;border:1px solid var(--line);color:var(--blue);font:700 10px Sora,sans-serif;letter-spacing:.08em}.vision-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.vision-grid article{min-height:300px;padding:35px;background:var(--white);display:flex;flex-direction:column;align-items:flex-start}.vision-grid article>span{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.14em}.vision-grid h3{max-width:450px;margin-top:55px;font-size:clamp(1.7rem,2.7vw,2.7rem);line-height:1.18}.vision-grid p{max-width:500px;margin-top:15px;color:var(--muted);font-size:14px}.wide-photo-section{padding-top:50px}.wide-photo{position:relative;max-height:550px;overflow:hidden}.wide-photo img{width:100%;max-height:550px;object-fit:cover}.wide-photo::after{content:'';position:absolute;inset:20% 0 0;background:linear-gradient(transparent,#061a3db8)}.wide-photo-overlay{position:absolute;z-index:1;left:45px;bottom:38px;display:flex;flex-direction:column;gap:12px;color:var(--white)}.wide-photo-overlay span{font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.wide-photo-overlay strong{font:700 clamp(2rem,3.5vw,3.6rem)/1.13 Sora,sans-serif;letter-spacing:-.06em}.service-full-grid .service-card{min-height:300px}.service-full-grid .service-card h3{max-width:440px;font-size:clamp(1.5rem,2.1vw,2.25rem)}.dark-editorial .body-stack p{color:#c9d7e4}.dark-editorial .body-stack .large-copy{color:var(--white)}
.program-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px}.filter-button{min-height:44px;padding:10px 16px;border:1px solid var(--line);background:var(--white);color:var(--muted);font-size:12px;font-weight:800;transition:background .25s,color .25s,transform .25s var(--ease)}.filter-button:hover{transform:translateY(-3px);border-color:var(--blue);color:var(--blue)}.filter-button.is-active{background:var(--navy);color:var(--white);border-color:var(--navy)}.program-grid .program-card{min-height:360px}.program-grid .program-card.is-hidden{display:none}.program-note{margin-top:25px;color:var(--muted);font-size:12px}.model-detail-list{border-top:1px solid var(--line)}.model-detail{display:grid;grid-template-columns:65px 1fr 1.2fr 70px;gap:30px;align-items:center;min-height:172px;padding:20px 0;border-bottom:1px solid var(--line)}.model-number{color:var(--blue);font:700 13px Sora,sans-serif}.model-detail h3{font-size:clamp(1.8rem,3vw,3.2rem);font-weight:600}.model-detail p{max-width:440px;font-size:16px}.model-detail small{display:block;margin-top:8px;color:var(--muted);font-size:12px}.model-icon{color:var(--blue);font:45px Georgia,serif;text-align:right}.keyword-cloud{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}.keyword-cloud span{padding:10px 13px;border:1px solid #ffffff66;color:var(--white);font-size:12px}.industry-feature{display:grid;grid-template-columns:1fr .85fr;gap:clamp(50px,8vw,120px);align-items:center}.industry-feature>div:first-child>p:not(.eyebrow){max-width:540px;margin:27px 0 31px;color:var(--muted);font-size:16px}.industry-feature-panel{padding:35px 35px 10px;background:var(--navy);color:var(--white)}.industry-feature-panel .micro-label{display:block;margin-bottom:27px;color:var(--cyan)}.industry-feature-panel>div{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:84px;border-top:1px solid #ffffff40}.industry-feature-panel strong{font:600 15px Sora,sans-serif;letter-spacing:-.04em}.industry-feature-panel span:not(.micro-label){font-size:12px;color:var(--gold)}.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.sector-card{display:flex;flex-direction:column;min-height:290px;padding:30px;background:var(--white)}.sector-card>span{color:var(--blue);font:700 11px Sora,sans-serif}.sector-card h3{margin-top:auto;font-size:clamp(1.4rem,2.1vw,2.1rem);line-height:1.2}.sector-card p{margin-top:14px;color:var(--muted);font-size:13px}.media-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.media-feature{display:flex;flex-direction:column;min-height:360px;padding:33px;background:var(--navy);color:var(--white);transition:transform .3s var(--ease),background .3s}.media-feature:nth-child(2){background:var(--blue)}.media-feature:hover{transform:translateY(-6px);background:var(--ink)}.media-feature>span:first-child{color:var(--cyan);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.media-feature h3{max-width:570px;margin:auto 0;font-size:clamp(1.7rem,2.6vw,2.9rem);line-height:1.18;font-weight:600}.media-arrow{padding-top:18px;border-top:1px solid #ffffff55;font-size:12px;font-weight:800}.gallery-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-template-rows:260px 260px;gap:13px}.gallery-grid figure{position:relative;overflow:hidden;background:var(--navy)}.gallery-grid .gallery-large{grid-row:span 2}.gallery-grid figure:last-child{grid-column:span 2}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.gallery-grid figure:hover img{transform:scale(1.05)}.gallery-grid figcaption{position:absolute;left:16px;bottom:16px;padding:8px 10px;background:var(--white);color:var(--ink);font-size:10px;font-weight:800}
.contact-hero{padding:65px 0 110px}.contact-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px,8vw,130px)}.contact-hero .breadcrumb{margin-bottom:80px}.contact-hero h1 em{font:italic 400 1em Georgia,serif}.contact-hero-grid>div:first-child>p:not(.eyebrow){max-width:510px;margin-top:27px;color:var(--muted);font-size:17px}.contact-points{display:flex;flex-direction:column;gap:11px;margin-top:48px;color:var(--blue);font-size:12px;font-weight:800}.contact-points span::before{content:'✳';margin-right:10px;color:var(--gold)}.contact-panel{padding:40px;background:var(--white);box-shadow:0 20px 55px #142c5015}.contact-panel>.micro-label{color:var(--blue)}.contact-panel h2{margin-top:14px;font-size:clamp(1.7rem,2.4vw,2.8rem)}.contact-panel>p{margin:14px 0 26px;color:var(--muted);font-size:13px}.contact-panel form{display:flex;flex-direction:column;gap:17px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-panel label{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:800}.contact-panel input,.contact-panel select,.contact-panel textarea{width:100%;min-height:48px;padding:12px;border:1px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);outline:none;transition:border-color .25s,box-shadow .25s}.contact-panel textarea{resize:vertical}.contact-panel input:focus,.contact-panel select:focus,.contact-panel textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #4385c923}.contact-panel .button{align-self:flex-start}.form-disclaimer,.form-response{color:var(--muted);font-size:11px}.form-response{min-height:18px;color:var(--blue);font-weight:800}.detail-hero{background:var(--navy);color:var(--white)}.detail-hero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:80px;min-height:550px;align-items:end;padding-top:65px;padding-bottom:80px}.detail-hero .breadcrumb,.detail-hero .breadcrumb a{color:#d8e6ed}.detail-hero .breadcrumb{margin-bottom:72px}.detail-hero .eyebrow{color:var(--cyan)}.detail-hero h1{max-width:920px}.detail-hero-grid>div:first-child>p:not(.eyebrow){max-width:650px;margin:25px 0 30px;color:#dce9ef;font-size:17px}.detail-hero-aside{display:flex;flex-direction:column;gap:12px;padding:30px 0 0;border-top:1px solid #ffffff55}.detail-hero-aside .micro-label{color:var(--cyan)}.detail-hero-aside strong{margin-bottom:18px;font:600 20px Sora,sans-serif}.detail-content{display:grid;grid-template-columns:1fr 1fr;gap:90px}.detail-content>div>p:not(.eyebrow){max-width:480px;margin-top:24px;color:var(--muted)}.learning-list{padding:0;margin:0;list-style:none;border-top:1px solid var(--line)}.learning-list li{display:flex;gap:20px;align-items:center;min-height:75px;padding:15px 0;border-bottom:1px solid var(--line);font:600 15px/1.4 Sora,sans-serif;letter-spacing:-.03em}.learning-list li span{color:var(--blue);font-size:11px}.outcome-inner{max-width:1200px}.outcome-inner>p{max-width:1000px;font:600 clamp(1.8rem,3.8vw,4rem)/1.28 Sora,sans-serif;letter-spacing:-.055em}.outcome-inner>span{display:block;margin-top:25px;color:var(--muted);font-size:12px}.related-grid .program-card{min-height:340px}
@keyframes rise-in{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-image-enter{from{opacity:.4;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes orbit-breathe{50%{transform:scale(1.09);opacity:.65}}@keyframes marquee-move{to{transform:translateX(-50%)}}@view-transition{navigation:auto}::view-transition-old(root){animation:.22s ease-out both fade-out}::view-transition-new(root){animation:.45s var(--ease) both fade-in}@keyframes fade-out{to{opacity:0}}@keyframes fade-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1200px){.shell{width:min(100% - 54px,1380px)}.brand{min-width:210px}.desktop-nav{gap:13px}.desktop-nav a{font-size:11px}.header-cta{padding:14px;gap:10px}.service-preview-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:275px}.photo-story-grid{grid-template-columns:.95fr 1fr}.photo-story-image.second{display:none}}
@media(max-width:980px){.header-inner{height:78px}.desktop-nav,.header-cta{display:none}.brand{min-width:0;margin-right:auto}.menu-toggle{position:relative;z-index:60;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:48px;height:48px;border:1px solid var(--line);background:var(--white)}.menu-toggle span{width:22px;height:2px;background:var(--navy);transition:transform .25s var(--ease)}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav{display:block;position:fixed;top:78px;left:0;right:0;height:calc(100dvh - 78px);overflow:auto;visibility:hidden;opacity:0;transform:translateY(-12px);background:var(--navy);color:var(--white);transition:opacity .3s var(--ease),transform .3s var(--ease),visibility .3s}.mobile-nav.is-open{visibility:visible;opacity:1;transform:translateY(0)}.mobile-nav .shell{padding:26px 0 50px}.mobile-nav a{display:grid;grid-template-columns:35px 1fr 30px;align-items:center;gap:13px;min-height:66px;border-bottom:1px solid #ffffff3a;font:600 clamp(1.2rem,3vw,1.7rem) Sora,sans-serif;letter-spacing:-.04em}.mobile-nav a[aria-current]{color:var(--gold)}.mobile-index{color:var(--cyan);font-size:10px;letter-spacing:0}.mobile-nav a>span:last-child{text-align:right;font-size:17px}.home-hero-grid,.page-hero-grid{grid-template-columns:1fr 1fr}.home-hero h1{font-size:clamp(3.4rem,6vw,5.4rem)}.home-hero-copy{padding-right:32px}.home-hero-visual{min-height:590px}.page-hero h1{font-size:clamp(3.1rem,5.4vw,5rem)}.model-preview-grid{grid-template-columns:1fr}.model-preview-steps{margin-top:15px}.footer-main{grid-template-columns:1.4fr 1fr 1fr;gap:35px}.footer-signoff{grid-column:1/-1;flex-direction:row;align-items:center;gap:30px}.footer-signoff strong{font-size:20px}.contact-hero-grid{gap:40px}.contact-panel{padding:30px}}
@media(max-width:760px){.shell{width:min(100% - 36px,1380px)}.section-space{padding:76px 0}.header-inner{height:72px}.brand-logo{width:60px;height:45px}.brand-copy strong{font-size:19px}.brand-copy small{font-size:8px}.mobile-nav{top:72px;height:calc(100dvh - 72px)}.home-hero-grid,.page-hero-grid,.intro-layout,.split-section,.industry-preview-grid,.industry-feature,.contact-hero-grid,.detail-content,.detail-hero-grid{grid-template-columns:1fr}.home-hero-grid{min-height:0}.home-hero-copy{min-height:570px;padding:75px 0 40px}.home-hero h1{font-size:clamp(3.5rem,12vw,5.8rem)}.home-hero-copy>p:not(.eyebrow){font-size:16px}.hero-footnote{padding-top:45px}.home-hero-visual{min-height:470px;height:470px}.hero-photo-label{left:20px;bottom:22px}.hero-photo-label strong{font-size:2.35rem}.hero-orbit{width:190px;height:190px}.marquee-track{min-height:55px}.intro-layout,.split-section{gap:20px}.intro-body,.body-stack{padding-top:0}.proof-strip{flex-wrap:wrap;justify-content:flex-start;gap:13px 22px;margin-top:55px}.proof-strip span{font-size:10px}.display-heading{font-size:clamp(2.65rem,10vw,4.7rem)}.heading-line{align-items:flex-start;flex-direction:column;gap:19px}.service-preview-grid,.service-full-grid{grid-template-columns:1fr 1fr}.service-card,.service-full-grid .service-card{min-height:275px;padding:22px}.service-card h3,.service-full-grid .service-card h3{font-size:1.25rem}.service-card p{font-size:12px}.section-tail{align-items:flex-start;flex-direction:column}.model-preview-grid{gap:35px}.model-preview-step{grid-template-columns:35px 1fr 22px;min-height:83px}.model-preview-step p{grid-column:2;grid-row:2;margin-top:-15px;margin-bottom:12px}.model-step-arrow{grid-column:3;grid-row:1}.featured-programs,.program-grid,.related-grid,.sector-grid,.media-grid{grid-template-columns:1fr}.program-card,.program-grid .program-card{min-height:315px}.program-card h3{font-size:2rem}.photo-story-grid{grid-template-columns:1fr 1fr;min-height:auto}.photo-story-text{grid-column:1/-1;padding:70px 0 25px}.photo-story-image,.photo-story-image.second{display:block;min-height:250px;height:300px}.photo-story-image.second img{object-position:center 30%}.industry-preview-grid{gap:35px}.industry-list>div{min-height:75px}.cta-inner{grid-template-columns:1fr;gap:30px}.cta-band{padding:75px 0}.cta-band h2{font-size:clamp(2.7rem,10vw,4.8rem)}.footer-main{grid-template-columns:1fr 1fr;gap:34px;padding:60px 0}.footer-identity{grid-column:1/-1}.footer-signoff{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;justify-content:flex-start;min-height:80px;padding:15px 0}.footer-bottom span,.footer-bottom a{min-width:42%}.page-hero-grid{min-height:0}.page-hero-copy{min-height:420px;padding:35px 0 45px}.page-hero-copy .breadcrumb{margin-bottom:45px}.page-hero h1{font-size:clamp(3.3rem,10.5vw,5.3rem)}.page-hero-copy>p:not(.eyebrow){font-size:15px}.page-hero-visual{min-height:360px;height:360px}.vision-grid{grid-template-columns:1fr}.vision-grid article{min-height:260px}.vision-grid h3{margin-top:45px}.wide-photo-section{padding-top:25px}.wide-photo{min-height:300px}.wide-photo img{height:360px}.wide-photo-overlay{left:20px;bottom:20px}.model-detail{grid-template-columns:40px 1fr 35px;gap:12px;min-height:130px}.model-detail h3{font-size:2rem}.model-detail>div{grid-column:2;grid-row:2;padding-bottom:15px}.model-icon{grid-column:3;grid-row:1;font-size:30px}.industry-feature{gap:40px}.industry-feature-panel{padding:25px 25px 0}.media-feature{min-height:290px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:300px 210px 210px}.gallery-grid .gallery-large{grid-column:span 2;grid-row:auto}.gallery-grid figure:last-child{grid-column:span 2}.contact-hero{padding:35px 0 80px}.contact-hero .breadcrumb{margin-bottom:56px}.contact-hero h1{font-size:clamp(3.2rem,10vw,5.1rem)}.contact-panel{padding:25px}.detail-hero-grid{min-height:0;gap:35px;padding:36px 0 65px}.detail-hero .breadcrumb{margin-bottom:55px}.detail-hero h1{font-size:clamp(3rem,10vw,5rem)}.detail-hero-aside{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.detail-hero-aside strong{font-size:16px}.detail-hero-aside .micro-label:nth-of-type(2){grid-column:2;grid-row:1}.detail-hero-aside strong:nth-of-type(2){grid-column:2;grid-row:2}.learning-list{margin-top:30px}}
@media(max-width:470px){.eyebrow{font-size:9px}.home-hero-copy{min-height:550px}.home-hero h1{font-size:clamp(3.15rem,12vw,4.3rem)}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.home-hero-visual{height:400px;min-height:400px}.proof-strip span{width:100%}.service-preview-grid,.service-full-grid{grid-template-columns:1fr}.service-card,.service-full-grid .service-card{min-height:230px}.service-card h3,.service-full-grid .service-card h3{font-size:1.45rem}.photo-story-image,.photo-story-image.second{height:230px;min-height:230px}.footer-main{gap:35px}.form-row{grid-template-columns:1fr}.gallery-grid{grid-template-rows:230px 180px 180px}.contact-panel .button{width:100%}}

.founders-section{padding:74px 0;background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.founders-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,120px);align-items:end}.founders-layout h2{font-size:clamp(2.4rem,4vw,4.5rem);line-height:1.12}.founders-layout>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.founders-layout>div:last-child p{max-width:530px;color:var(--muted);font-size:16px}@media(max-width:760px){.founders-section{padding:70px 0}.founders-layout{grid-template-columns:1fr;gap:25px}.founders-layout h2{font-size:clamp(2.7rem,10vw,4rem)}}

/* 2026 visual refresh: one typographic voice and a scroll-led model narrative. */
:root{
  --navy:oklch(30% .115 260);
  --blue:oklch(45% .16 257);
  --ink:oklch(26% .074 258);
  --muted:oklch(51% .043 258);
  --gold:oklch(82% .16 84);
  --paper:oklch(97% .008 255);
  --white:oklch(99% .005 255);
  --mist:oklch(94% .018 252);
  --line:oklch(87% .022 255);
  --ease:cubic-bezier(.16,1,.3,1);
}
h1,h2,h3{letter-spacing:-.055em}
em{font:inherit!important;color:inherit!important}
.eyebrow{gap:0;margin-bottom:28px;color:var(--blue);font:800 10px Figtree,sans-serif;letter-spacing:.19em}
.eyebrow::before{content:'';display:block;width:28px;height:1px;margin-right:13px;background:currentColor}
.eyebrow span{display:none}
.display-heading{font-size:clamp(2.9rem,5.15vw,5.8rem);line-height:1.08}
.text-link{gap:12px;padding-bottom:10px;border-bottom:1px solid currentColor;transition:gap .3s var(--ease),color .3s var(--ease)}
.text-link:hover{gap:24px}
.button{border-radius:0;min-height:58px;transition:transform .35s var(--ease),box-shadow .35s var(--ease),background .25s,color .25s}
.button:hover{transform:translateY(-5px) scale(1.025);box-shadow:0 17px 30px #071e3930}
.button:active{transform:translateY(-1px) scale(.98)}
.site-header{background:color-mix(in oklch,var(--white) 95%,transparent);border-color:var(--line);transition:box-shadow .35s var(--ease),background .35s var(--ease)}
.site-header.is-scrolled{box-shadow:0 12px 34px #0c2d6015;background:color-mix(in oklch,var(--white) 98%,transparent)}
.header-inner{height:102px;gap:clamp(16px,2vw,36px);transition:height .35s var(--ease)}
.site-header.is-scrolled .header-inner{height:84px}
.brand{min-width:286px;gap:14px}
.brand-logo{width:82px;height:66px;filter:drop-shadow(0 5px 11px #1737681c);transition:transform .4s var(--ease)}
.brand:hover .brand-logo{transform:rotate(-5deg) scale(1.05)}
.brand-copy{gap:7px}
.brand-copy strong{font:700 18px/1.08 Sora,sans-serif;letter-spacing:-.06em;color:var(--navy)}
.brand-copy small{font-size:9px;font-weight:800;letter-spacing:.095em;text-transform:uppercase;color:var(--blue)}
.desktop-nav{gap:clamp(15px,1.8vw,32px);justify-content:flex-end}
.desktop-nav a{padding:40px 0;font-size:12px;font-weight:700}
.desktop-nav a::after{bottom:31px;background:var(--gold)}
.header-cta{min-height:48px;padding:0 0 0 19px;gap:18px;border:1px solid var(--navy);background:var(--navy);font-size:12px}
.header-cta b{display:grid;place-items:center;width:47px;height:47px;border-left:1px solid #ffffff55;font:500 22px Sora,sans-serif;transition:background .3s var(--ease),transform .3s var(--ease)}
.header-cta:hover b{background:var(--gold);color:var(--navy);transform:rotate(45deg)}
.home-hero{background:var(--navy);color:var(--white)}
.home-hero-grid{min-height:690px;grid-template-columns:1fr .96fr}
.home-hero-copy{position:relative;z-index:2;padding:78px clamp(35px,5vw,85px) 45px 0}
.home-hero .eyebrow{color:var(--gold)}
.home-hero h1{max-width:760px;font-size:clamp(4.1rem,6.4vw,7.2rem);line-height:1.04;font-weight:700;letter-spacing:-.075em}
.home-hero-copy>p:not(.eyebrow){max-width:520px;margin-top:30px;color:oklch(88% .023 255);font-size:clamp(1rem,1.35vw,1.22rem);line-height:1.6}
.hero-actions{margin-top:36px;gap:30px}
.hero-secondary{display:inline-flex;align-items:center;min-height:56px;border-bottom:1px solid #ffffff85;color:var(--white);font-size:13px;font-weight:800;transition:color .25s,border-color .25s,transform .3s var(--ease)}
.hero-secondary:hover{color:var(--gold);border-color:var(--gold);transform:translateX(6px)}
.hero-footnote{color:oklch(83% .03 255);letter-spacing:.06em;text-transform:uppercase}
.footnote-line{background:var(--gold)}
.home-hero-visual{min-height:690px}
.hero-photo{object-position:center 43%;filter:saturate(.9) contrast(1.09);animation:photo-uncover 1.2s var(--ease) both}
.home-hero-visual::after{background:linear-gradient(180deg,#071b3940 0%,transparent 40%,#071b39c9 100%)}
.home-hero-visual::before{content:'';position:absolute;z-index:2;inset:18px;border:1px solid #ffffff85;pointer-events:none;opacity:.8}
.hero-photo-label{left:50px;bottom:52px;gap:17px}
.hero-photo-label span{order:0;color:var(--gold);font-size:10px;font-weight:800}
.hero-photo-label strong{order:1;font-size:clamp(1.7rem,2.55vw,3rem)}
.hero-image-count{position:absolute;z-index:2;top:45px;right:50px;font-size:11px;font-weight:800;letter-spacing:.12em}
.home-hero-copy>*{animation:hero-copy-enter .85s var(--ease) both}
.home-hero-copy>.eyebrow{animation-delay:.05s}
.home-hero-copy>h1{animation-delay:.14s}
.home-hero-copy>p:not(.eyebrow){animation-delay:.28s}
.home-hero-copy>.hero-actions{animation-delay:.38s}
@keyframes hero-copy-enter{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}
@keyframes photo-uncover{from{opacity:.2;transform:scale(1.11)}to{opacity:1;transform:scale(1)}}
.trusted-by{padding:28px 0 32px;background:var(--white);border-bottom:1px solid var(--line);overflow:hidden}
.trusted-heading{display:flex;justify-content:space-between;gap:20px;margin-bottom:24px;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.14em}
.trusted-heading span:last-child{color:var(--muted);font-weight:600;letter-spacing:.02em;text-transform:none}
.client-rail{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.client-track{display:flex;width:max-content;animation:client-scroll 34s linear infinite}
.client-rail:hover .client-track{animation-play-state:paused}
.client-set{display:flex;align-items:center;gap:clamp(55px,6vw,100px);padding-right:clamp(55px,6vw,100px)}
.client-name{color:var(--navy);font:700 clamp(1.25rem,1.65vw,1.7rem)/1 Sora,sans-serif;letter-spacing:-.06em;white-space:nowrap;opacity:.8}
@keyframes client-scroll{to{transform:translateX(-50%)}}
.intro-section{background:var(--paper)}
.intro-layout{grid-template-columns:1fr .75fr;align-items:start}
.intro-body{padding-top:65px}
.services-preview{background:var(--white)}
.service-preview-grid,.service-full-grid{gap:0;border-top:1px solid var(--line)}
.service-card{min-height:300px;padding:28px 25px 38px;border:0;border-bottom:1px solid var(--line);background:transparent;box-shadow:none}
.service-card+ .service-card{border-left:1px solid var(--line)}
.service-card:hover{background:var(--mist);box-shadow:none;transform:translateY(-4px)}
.service-card h3{font-weight:700}
.service-arrow{right:24px;bottom:24px}
.service-full-grid .service-card:nth-child(odd){border-left:0}
.photo-story-text{background:var(--navy);color:var(--white)}
.photo-story-text .eyebrow{color:var(--gold)}
.photo-story-text p{color:oklch(86% .025 255)}
.photo-story-text .text-link{color:var(--white)}
.photo-story-image img{transition:transform 1.2s var(--ease)}
.photo-story-image:hover img{transform:scale(1.06)}
.program-preview{background:var(--paper)}
.program-card{border-radius:0;box-shadow:none;transition:transform .35s var(--ease),box-shadow .35s var(--ease),background .35s}
.program-card:hover{transform:translateY(-8px);box-shadow:0 20px 32px #0b315d17;background:var(--white)}
.program-card h3{font-weight:700}
.page-hero{background:var(--paper)}
.page-hero-grid{min-height:620px;grid-template-columns:1.08fr .92fr}
.page-hero-copy{padding-right:clamp(30px,5vw,85px)}
.page-hero h1,.contact-hero h1,.detail-hero h1{font-size:clamp(3.7rem,5.55vw,6.4rem);font-weight:700;line-height:1.07}
.page-hero-visual{min-height:620px}
.page-hero-image{animation:photo-uncover 1.1s var(--ease) both}
.image-caption{right:0;bottom:0;padding:17px 20px;background:var(--gold);font-weight:800}
.vision-grid,.sector-grid,.media-grid{gap:0}
.vision-grid article,.sector-card{border:1px solid var(--line)}
.vision-grid article+article,.sector-card+ .sector-card{border-left:0}
.media-feature:nth-child(2){background:var(--blue)}
.media-feature:hover{background:var(--ink)}
.model-story{background:var(--navy);color:var(--white);overflow:clip}
.model-story-intro{padding-top:clamp(84px,9vw,135px);padding-bottom:clamp(45px,6vw,85px)}
.model-story .eyebrow{color:var(--gold)}
.model-story-intro-grid{display:grid;grid-template-columns:1.15fr .5fr;align-items:end;gap:clamp(50px,7vw,120px)}
.model-story-intro h2{font-size:clamp(3rem,5.2vw,6rem);line-height:1.08;font-weight:700}
.model-story-intro p{max-width:360px;color:oklch(85% .03 255);font-size:16px}
.model-story-layout{display:grid;grid-template-columns:1.04fr .96fr;gap:clamp(50px,7vw,120px);align-items:start}
.model-stage{position:sticky;top:126px;align-self:start;height:min(72vh,625px);min-height:440px}
.model-stage-frame{position:relative;width:100%;height:100%;overflow:hidden;background:#061735}
.model-stage-frame::after{content:'';position:absolute;inset:17px;border:1px solid #ffffff88;pointer-events:none}
.model-stage-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.1);filter:saturate(.8);transition:opacity .65s var(--ease),transform 1.3s var(--ease)}
.model-stage-image.is-active{opacity:1;transform:scale(1)}
.model-stage-shade{position:absolute;inset:0;background:linear-gradient(180deg,#061b3b90,#0620443d 42%,#061735d9);pointer-events:none}
.model-stage-meta,.model-stage-footer{position:absolute;z-index:1;left:43px;right:43px;display:flex;justify-content:space-between;gap:15px;font-size:10px;font-weight:800;letter-spacing:.14em}
.model-stage-meta{top:45px;color:var(--gold)}
.model-stage-title{position:absolute;z-index:1;left:40px;bottom:100px;font:700 clamp(3.8rem,6.5vw,8rem)/1 Sora,sans-serif;letter-spacing:-.08em;transition:opacity .25s var(--ease),transform .4s var(--ease)}
.model-stage-title.is-changing{opacity:.25;transform:translateY(10px)}
.model-stage-footer{bottom:43px;color:var(--white);opacity:.8}
.model-stage-meter{position:absolute;z-index:2;bottom:0;left:0;right:0;height:6px;background:#ffffff33}
.model-stage-meter span{display:block;width:100%;height:100%;background:var(--gold);transform:scaleX(var(--model-progress,0));transform-origin:left}
.model-chapter{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:68vh;padding:65px 0 95px;color:oklch(69% .026 255);transition:color .4s var(--ease)}
.model-chapter:first-child{padding-top:0}
.model-chapter.is-active{color:var(--white)}
.chapter-number{color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.16em}
.model-chapter h3{margin:25px 0 18px;font-size:clamp(3rem,5vw,6rem);line-height:1.05;font-weight:700;transform:translateX(0);transition:transform .55s var(--ease)}
.model-chapter.is-active h3{transform:translateX(12px)}
.chapter-lead{max-width:470px;font:600 clamp(1.25rem,1.8vw,1.7rem)/1.4 Sora,sans-serif;letter-spacing:-.035em}
.chapter-detail{max-width:450px;margin-top:15px;color:oklch(78% .032 255);font-size:15px}
.chapter-line{position:absolute;left:0;bottom:0;width:100%;height:1px;background:#ffffff3f}
.chapter-line::after{content:'';display:block;width:100%;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.model-chapter.is-active .chapter-line::after{transform:scaleX(1)}
.model-story-end{display:flex;align-items:center;justify-content:flex-end;gap:34px;padding-top:30px;padding-bottom:clamp(85px,9vw,135px)}
.model-story-end .text-link{color:var(--white)}
.model-story-full .model-story-end .text-link{display:none}
.model-story-full{margin-top:0}
.model-story-full .model-story-intro{padding-top:clamp(85px,9vw,135px)}
@keyframes page-arrive{from{opacity:0;clip-path:inset(0 0 10% 0);transform:translateY(14px)}to{opacity:1;clip-path:inset(0);transform:translateY(0)}}
@view-transition{navigation:auto}
::view-transition-new(root){animation:.65s var(--ease) both page-arrive}
::view-transition-old(root){animation:.25s ease both fade-out}
@media(max-width:1140px){
  .header-inner{height:84px}.site-header.is-scrolled .header-inner{height:76px}
  .desktop-nav,.header-cta{display:none}
  .brand{min-width:0;margin-right:auto}.brand-logo{width:70px;height:56px}.brand-copy strong{font-size:16px}
  .menu-toggle{position:relative;z-index:60;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:48px;height:48px;border:1px solid var(--line);background:var(--white)}
  .mobile-nav{display:block;top:84px;height:calc(100dvh - 84px)}.site-header.is-scrolled .mobile-nav{top:76px;height:calc(100dvh - 76px)}
  .mobile-nav-label{margin:12px 0 22px;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
  .mobile-nav .shell{padding:20px 0 52px}
  .mobile-nav a{min-height:61px}
}
@media(max-width:860px){
  .home-hero-grid{grid-template-columns:1fr 1fr}
  .home-hero h1{font-size:clamp(3.6rem,7vw,5.5rem)}
  .home-hero-copy{padding-right:25px}
  .model-story-intro-grid{grid-template-columns:1fr .65fr}
  .model-story-layout{gap:40px}
  .model-stage{top:108px;min-height:370px}
  .model-stage-title{font-size:clamp(3.3rem,6vw,5rem)}
  .model-stage-meta,.model-stage-footer{left:25px;right:25px}
}
@media(max-width:760px){
  .header-inner,.site-header.is-scrolled .header-inner{height:74px}
  .brand{gap:8px}.brand-logo{width:56px;height:48px}.brand-copy{gap:4px}.brand-copy strong{font-size:14px}.brand-copy small{font-size:7px;letter-spacing:.06em}
  .mobile-nav,.site-header.is-scrolled .mobile-nav{top:74px;height:calc(100dvh - 74px)}
  .home-hero-grid{grid-template-columns:1fr}.home-hero-copy{min-height:530px;padding:75px 0 40px}
  .home-hero h1{font-size:clamp(3.55rem,12vw,6rem)}
  .home-hero-visual{height:480px;min-height:480px}
  .hero-photo-label{left:36px;bottom:40px}.hero-image-count{right:36px;top:36px}
  .trusted-by{padding:23px 0 27px}.trusted-heading{margin-bottom:22px}.trusted-heading span:last-child{display:none}
  .client-name{font-size:1.3rem}.client-set{gap:55px;padding-right:55px}
  .intro-layout{grid-template-columns:1fr}.intro-body{padding-top:15px}
  .service-preview-grid,.service-full-grid{grid-template-columns:1fr 1fr}
  .service-card{min-height:260px}.service-card:nth-child(odd){border-left:0}.service-card:nth-child(even){border-left:1px solid var(--line)}
  .page-hero-grid{grid-template-columns:1fr;min-height:0}.page-hero-copy{min-height:420px;padding:38px 0 52px}.page-hero-visual{height:390px;min-height:390px}
  .page-hero h1,.contact-hero h1,.detail-hero h1{font-size:clamp(3.3rem,10vw,5.6rem)}
  .model-story-intro{padding-top:80px;padding-bottom:45px}
  .model-story-intro-grid{grid-template-columns:1fr;gap:20px}
  .model-story-intro h2{font-size:clamp(2.8rem,9vw,4.7rem)}
  .model-story-intro p{font-size:15px}
  .model-story-layout{grid-template-columns:1fr;gap:0}
  .model-stage{top:74px;z-index:2;height:300px;min-height:300px;box-shadow:0 18px 34px #0311267a}
  .model-stage-frame::after{inset:10px}
  .model-stage-meta{top:26px}.model-stage-title{left:24px;bottom:71px;font-size:clamp(3.4rem,10vw,5.5rem)}
  .model-stage-footer{bottom:27px;font-size:8px}
  .model-story-steps{position:relative;z-index:1}
  .model-chapter{min-height:53vh;padding:55px 0 65px}
  .model-chapter:first-child{padding-top:55px}
  .model-chapter h3{font-size:clamp(3.1rem,10vw,5rem)}
  .model-story-end{justify-content:flex-start;padding-top:40px;padding-bottom:85px}
  .vision-grid article+article,.sector-card+ .sector-card{border-left:1px solid var(--line);border-top:0}
}
@media(max-width:470px){
  .shell{width:min(100% - 34px,1380px)}
  .brand-logo{width:51px;height:44px}.brand-copy strong{font-size:12px}.brand-copy small{font-size:6px}
  .home-hero-copy{min-height:500px;padding-top:66px}
  .home-hero h1{font-size:clamp(3.15rem,12.6vw,4.35rem)}
  .hero-actions{align-items:flex-start;gap:17px}
  .home-hero-visual{height:390px;min-height:390px}
  .hero-photo-label{left:29px;bottom:32px}.hero-photo-label strong{font-size:1.8rem}
  .service-preview-grid,.service-full-grid{grid-template-columns:1fr}.service-card,.service-card:nth-child(even){border-left:0}
  .model-stage{height:250px;min-height:250px}
  .model-stage-title{bottom:62px;font-size:3.5rem}
  .model-stage-footer{bottom:25px;font-size:7px}
  .model-stage-meta{font-size:8px}
  .model-chapter{min-height:51vh}
  .model-chapter h3{font-size:3.4rem}
}

.desktop-nav .nav-group{position:relative;align-self:stretch;display:flex;align-items:center}
.desktop-nav .nav-group summary{display:flex;align-items:center;gap:6px;min-height:48px;list-style:none;cursor:pointer;font-size:12px;font-weight:700;white-space:nowrap;transition:color .25s var(--ease)}
.desktop-nav .nav-group summary::-webkit-details-marker{display:none}
.desktop-nav .nav-group summary span{font-size:17px;line-height:1;transition:transform .3s var(--ease)}
.desktop-nav .nav-group[open] summary span{transform:rotate(180deg)}
.desktop-nav .nav-group summary:hover,.desktop-nav .nav-group summary.is-current,.desktop-nav .nav-group[open] summary{color:var(--blue)}
.desktop-nav .nav-group summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.nav-dropdown{position:absolute;top:calc(100% - 9px);left:-25px;width:260px;padding:14px;background:var(--white);border:1px solid var(--line);box-shadow:0 25px 45px #0b2b4e25;animation:dropdown-enter .32s var(--ease) both}
.desktop-nav .nav-dropdown a{display:grid;grid-template-columns:1fr auto;gap:3px 10px;padding:16px 12px;border-bottom:1px solid var(--line);font-size:14px;line-height:1.2}
.desktop-nav .nav-dropdown a:last-child{border-bottom:0}
.desktop-nav .nav-dropdown a:hover{background:var(--mist)}
.desktop-nav .nav-dropdown a::after{display:none}
.nav-dropdown small{grid-column:1 / -1;color:var(--muted);font:800 9px Figtree,sans-serif;letter-spacing:.13em}
.nav-dropdown a>span{grid-column:2;grid-row:2;font-size:18px}
@keyframes dropdown-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1140px){.desktop-nav .nav-group{display:none}}

/* Story-led homepage refinement */
.eyebrow::before{display:none}
.eyebrow{margin-bottom:24px;letter-spacing:.14em}
.header-topbar{height:30px;background:var(--navy);color:#eff5f7;overflow:hidden;background-image:repeating-linear-gradient(112deg,transparent 0 86px,#ffffff0c 86px 87px),linear-gradient(90deg,#09254f,#164d8d)}
.header-topbar-inner{display:flex;align-items:center;justify-content:space-between;height:100%;font-size:9px;font-weight:800;letter-spacing:.17em}
.header-topbar-inner>span:first-child{display:flex;align-items:center;gap:9px}
.header-topbar i{display:block;width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px #ffc94533;animation:signal-pulse 2.8s ease-in-out infinite}
@keyframes signal-pulse{50%{box-shadow:0 0 0 10px #ffc94500}}
.site-header{background:var(--white)}
.header-inner{height:96px}
.site-header.is-scrolled .header-inner{height:80px}
.brand{gap:18px}
.brand-logo{width:83px;height:64px;mix-blend-mode:multiply;filter:none}
.brand-copy strong{font-size:20px;line-height:1.06}
.brand-copy small{font-size:9px;color:var(--blue);letter-spacing:.12em}
.header-cta{background:var(--blue);border-color:var(--blue)}
.header-cta:hover{background:var(--navy)}
.desktop-nav a[aria-current]::after,.desktop-nav a:hover::after{transform:scaleX(1.1)}
.home-hero{position:relative;overflow:hidden;background:#092957;color:var(--white);background-image:radial-gradient(circle at 74% 46%,#2463a8 0,#153f78 27%,transparent 57%),repeating-linear-gradient(117deg,transparent 0 106px,#ffffff0b 106px 107px),linear-gradient(135deg,#082448,#10386f)}
.home-hero-grid{position:relative;display:block;min-height:780px}
.home-hero-copy{position:relative;z-index:3;width:100%;max-width:1280px;min-height:780px;padding:115px 0 55px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}
.hero-overline{color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.hero-overline span{padding:0 9px;color:#ffffff9c}
.home-hero h1{max-width:1230px;margin-top:36px;font-size:clamp(3.65rem,5.4vw,6.6rem);line-height:1.07;letter-spacing:-.072em;text-wrap:balance;text-shadow:0 8px 35px #08244845}
.home-hero-copy>p:not(.hero-overline){max-width:720px;margin-top:30px;color:#edf4fb;font-size:clamp(1.07rem,1.35vw,1.3rem);line-height:1.6}
.hero-actions{margin-top:36px}
.hero-belief{display:flex;flex-direction:column;gap:9px;margin-top:auto;padding-top:65px;border-top:1px solid #ffffff58;width:min(100%,580px)}
.hero-belief span{color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.hero-belief strong{font:600 clamp(1.1rem,1.6vw,1.5rem)/1.3 Sora,sans-serif;letter-spacing:-.04em}
.home-hero-visual{position:absolute;z-index:1;top:0;right:-14%;width:68%;height:100%;min-height:0;overflow:visible;background:none;opacity:1;pointer-events:none}
.home-hero-visual::before,.home-hero-visual::after{display:none}
.hero-art-ring{position:absolute;top:51%;left:57%;border:1px solid #ffffff43;border-radius:50%;transform:translate(-50%,-50%);animation:ring-breathe 10s ease-in-out infinite}
.ring-one{width:430px;height:430px;border-color:#ffc94577;box-shadow:0 0 0 45px #ffffff0b;animation-delay:0s}
.ring-two{width:620px;height:620px;border-color:#e7f4ff3e;animation-delay:-2s}
.ring-three{width:850px;height:850px;border-color:#e7f4ff27;animation-delay:-4s}
@keyframes ring-breathe{50%{transform:translate(-50%,-50%) scale(1.04);opacity:.68}}
.hero-art-core{position:absolute;top:50%;left:57%;display:flex;flex-direction:column;align-items:center;justify-content:center;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#2e75ba,#103667 65%,#09254b);box-shadow:0 30px 75px #061e3f8c,inset 0 0 0 1px #ffffff5d;transform:translate(-50%,calc(-50% + var(--hero-shift,0px)));transition:transform .1s linear}
.hero-art-core span{font:700 100px/1 Sora,sans-serif;letter-spacing:-.12em;color:#f5f8fb}
.hero-art-core small{margin-top:12px;color:var(--gold);font-size:8px;font-weight:800;letter-spacing:.16em}
.hero-art-path{position:absolute;inset:4% 0 auto 0;width:100%;height:95%;color:var(--gold);opacity:.85}
.hero-art-path path{stroke-dasharray:1200;stroke-dashoffset:1200;animation:draw-path 2.2s .35s var(--ease) forwards}
@keyframes draw-path{to{stroke-dashoffset:0}}
.hero-art-note{display:none}
.trusted-by{padding:48px 0 43px;background:var(--white)}
.trusted-by h2{margin:0 auto 37px;padding:0 18px;color:var(--navy);font-size:clamp(1.45rem,2.5vw,2.5rem);font-weight:700;letter-spacing:-.05em;text-align:center;text-transform:none}
.client-rail{mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.client-track{animation-duration:29s}
.client-set{gap:35px;padding-right:35px}
.client-logo{display:grid;place-items:center;width:210px;height:82px;padding:8px 20px;background:var(--paper);border:1px solid var(--line);flex:0 0 auto}
.client-logo-image{display:block;width:auto;max-width:165px;height:auto;max-height:48px;object-fit:contain;filter:grayscale(1);opacity:.73;transition:filter .3s var(--ease),opacity .3s var(--ease),transform .3s var(--ease)}
.client-logo:hover .client-logo-image{filter:none;opacity:1;transform:scale(1.06)}
.intro-section{background:var(--paper)}
.intro-layout{grid-template-columns:1fr .85fr}
.intro-body{padding-top:9px}
.intro-body .large-copy{font-size:clamp(1.38rem,1.9vw,1.85rem)}
.model-story{position:relative;background:#092958;background-image:radial-gradient(circle at 90% 22%,#205a9a 0,transparent 34%),repeating-linear-gradient(112deg,transparent 0 108px,#ffffff09 108px 109px),linear-gradient(150deg,#092958,#0c376f 60%,#0a2a58)}
.model-story::before{content:'IZT';position:absolute;right:-4vw;top:3vw;color:transparent;-webkit-text-stroke:1px #ffffff1c;font:800 min(26vw,360px)/1 Sora,sans-serif;letter-spacing:-.13em;pointer-events:none}
.model-story>*{position:relative;z-index:1}
.model-stage-frame{background:#081f44}
.model-stage-image{filter:saturate(.75) contrast(1.06)}
.model-stage-shade{background:linear-gradient(180deg,#061b3baa 0%,#06204422 40%,#061735db 100%)}
.model-stage-meta{color:var(--gold)}
.model-story-intro h2{max-width:870px}
.capability-preview{background:var(--white)}
.overview-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:52px}
.overview-heading p{max-width:545px;margin-top:20px;color:var(--muted);font-size:16px}
.capability-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.capability-panel{display:flex;flex-direction:column;min-height:610px;padding:clamp(30px,4vw,55px);background:var(--paper);border:1px solid var(--line);transition:background .4s var(--ease),transform .4s var(--ease)}
.capability-panel:hover{background:var(--mist);transform:translateY(-5px)}
.capability-top{display:flex;align-items:center;justify-content:space-between;gap:18px}
.capability-index{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.14em}
.signature-badge{display:inline-flex;align-items:center;justify-content:center;width:max-content;min-height:26px;padding:3px 10px;border:1px solid var(--blue);color:var(--blue);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.capability-panel h3{max-width:550px;margin-top:50px;font-size:clamp(2rem,3vw,3.6rem);line-height:1.12}
.capability-panel>p{max-width:475px;margin-top:17px;color:var(--muted);font-size:15px}
.capability-links{margin-top:auto;padding-top:35px}
.capability-links a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:57px;border-top:1px solid var(--line);font-size:13px;font-weight:700;transition:padding .25s var(--ease),color .25s var(--ease)}
.capability-links a:last-child{border-bottom:1px solid var(--line)}
.capability-links a:hover{padding-left:10px;color:var(--blue)}
.capability-links a span{font-size:19px;font-weight:400;color:var(--blue)}
.capability-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:30px}
.capability-bottom>span{max-width:600px;color:var(--muted);font-size:13px}
.program-title-row{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.program-title-row .signature-badge{order:-1;margin-bottom:5px}
.program-title-row h3{margin-bottom:12px}
.industry-preview{position:relative;overflow:hidden;background:var(--mist)}
.industry-preview::after{content:'';position:absolute;right:-140px;bottom:-230px;width:520px;height:520px;border:1px solid #ffffff89;border-radius:50%;box-shadow:0 0 0 70px #ffffff24,0 0 0 140px #ffffff18;pointer-events:none}
.industry-preview-grid{position:relative;z-index:1}
.industry-list a{display:grid;grid-template-columns:42px 1fr 25px;align-items:center;gap:20px;min-height:100px;padding:17px 0;border-bottom:1px solid #1439643d;transition:padding .3s var(--ease),color .3s var(--ease)}
.industry-list a:first-child{border-top:1px solid #1439643d}
.industry-list a:hover{padding-left:15px;color:var(--blue)}
.industry-list a>span:first-child{color:var(--blue);font-size:11px;font-weight:800}
.industry-list a strong{font:600 clamp(1.15rem,1.8vw,1.55rem)/1.25 Sora,sans-serif;letter-spacing:-.045em}
.industry-list a>span:last-child{font-size:21px}
.learning-collage{overflow:hidden;background:var(--white)}
.collage-grid{display:grid;grid-template-columns:1.08fr .82fr 1fr;grid-template-rows:220px 240px 210px;gap:18px}
.collage-tile{position:relative;overflow:hidden;background:var(--navy);transform:translate3d(0,var(--tile-offset,0px),0);transition:transform .14s linear}
.collage-image-wrap{width:100%;height:100%;overflow:hidden}
.collage-image{width:100%;height:calc(100% + 120px);margin-top:-60px;object-fit:cover;transform:translate3d(0,var(--photo-offset,0px),0) scale(1.04);transition:transform .12s linear;will-change:transform}
.collage-tile::after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#041c3b9e);pointer-events:none}
.collage-tile figcaption{position:absolute;z-index:1;left:21px;bottom:18px;color:var(--white);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.collage-1{grid-column:1;grid-row:1 / span 2}
.collage-2{grid-column:2;grid-row:1}
.collage-3{grid-column:3;grid-row:1 / span 2}
.collage-4{grid-column:2;grid-row:2 / span 2}
.collage-5{grid-column:1;grid-row:3}
.collage-6{grid-column:3;grid-row:3}
.news-preview{background:var(--paper)}
.news-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:clamp(50px,8vw,130px);align-items:center}
.news-cover{height:600px;overflow:hidden;background:#152c53;box-shadow:26px 26px 0 var(--mist)}
.news-cover img{width:100%;height:100%;object-fit:cover;object-position:center 46%;transition:transform .8s var(--ease)}
.news-cover:hover img{transform:scale(1.035)}
.news-kicker{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.16em}
.news-copy h2{margin-top:22px;font-size:clamp(2.8rem,5vw,5.5rem)}
.news-copy>p{max-width:620px;margin:24px 0 27px;color:var(--muted);font-size:17px}
.news-secondary{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-top:85px;padding-top:23px;border-top:1px solid var(--line)}
.news-secondary>span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.16em}
.founders-feature{background:var(--white)}
.founders-feature-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(50px,8vw,130px)}
.founders-feature-image{height:600px;overflow:hidden;background:var(--navy)}
.founders-feature-image img{width:100%;height:100%;object-fit:cover;object-position:center 47%}
.founders-feature-copy h2{margin:22px 0;font-size:clamp(2.8rem,4.5vw,5rem);line-height:1.1}
.founders-feature-copy p{max-width:570px;margin-bottom:24px;color:var(--muted);font-size:17px}
.media-press{background:var(--white)}
.media-press-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(50px,8vw,120px);align-items:center}
.media-press-cover{height:580px;overflow:hidden;background:var(--navy)}
.media-press-cover img{width:100%;height:100%;object-fit:cover;object-position:center 46%}
.media-press-grid>div:last-child>p{max-width:600px;margin:22px 0 32px;color:var(--muted);font-size:16px}
.press-links{border-top:1px solid var(--line)}
.press-links a{display:grid;grid-template-columns:1fr 22px;gap:6px;min-height:100px;padding:18px 0;border-bottom:1px solid var(--line);transition:padding .3s var(--ease),color .3s var(--ease)}
.press-links a:hover{padding-left:12px;color:var(--blue)}
.press-links a span{grid-column:1/-1;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.13em}
.press-links a strong{font:600 17px Sora,sans-serif;letter-spacing:-.04em}
.press-links a b{font-size:19px;font-weight:400}
.page-hero-visual{position:relative;overflow:hidden;display:block;background:#0b3167;background-image:radial-gradient(circle at 55% 40%,#2c6eaf,transparent 45%),repeating-linear-gradient(108deg,transparent 0 72px,#ffffff12 72px 73px),linear-gradient(145deg,#09254f,#155298)}
.page-hero-visual::before{content:'';position:absolute;inset:20px;border:1px solid #ffffff78;pointer-events:none}
.page-hero-orbit{position:absolute;top:50%;left:50%;border:1px solid #ffffff75;border-radius:50%;transform:translate(-50%,-50%);animation:orbit-sway 10s ease-in-out infinite}
.page-hero-orbit.orbit-a{width:38%;aspect-ratio:1;border-color:var(--gold);box-shadow:0 0 0 42px #ffffff10}
.page-hero-orbit.orbit-b{width:70%;aspect-ratio:1;border-color:#ffffff4c;animation-delay:-3s}
.page-hero-orbit.orbit-c{width:102%;aspect-ratio:1;border-color:#ffffff25;animation-delay:-5s}
@keyframes orbit-sway{50%{transform:translate(-50%,-50%) rotate(12deg) scale(1.04)}}
.page-hero-artword{position:absolute;top:50%;left:48%;transform:translate(-50%,-50%);font:800 clamp(8rem,19vw,21rem)/1 Sora,sans-serif;letter-spacing:-.14em;color:#ffffffd9;text-shadow:0 18px 36px #05234d46}
.page-hero-corner{position:absolute;top:45px;left:47px;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.13em}
.page-hero-index{position:absolute;right:45px;bottom:40px;color:var(--white);font:600 16px Sora,sans-serif}
.cta-band,.dark-editorial,.detail-hero,.photo-story-text,.industry-feature-panel,.media-feature{background-image:radial-gradient(circle at 85% 20%,#2761a0 0,transparent 40%),repeating-linear-gradient(110deg,transparent 0 94px,#ffffff0b 94px 95px),linear-gradient(140deg,#082651,#124780)}
.cta-band{background-color:#092c5e}
.cta-band::before{opacity:.4}
.detail-hero{background-color:#0a2d60}
@media(max-width:1140px){
  .header-inner{height:82px}.site-header.is-scrolled .header-inner{height:74px}
  .menu-toggle span{width:22px;height:2px;background:var(--navy);transition:transform .25s var(--ease)}
  .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
  .mobile-nav{display:block;position:fixed;top:112px;left:0;right:0;height:calc(100dvh - 112px);overflow:auto;visibility:hidden;opacity:0;transform:translateY(-12px);background:var(--navy);color:var(--white);transition:opacity .3s var(--ease),transform .3s var(--ease),visibility .3s}
  .mobile-nav.is-open{visibility:visible;opacity:1;transform:translateY(0)}
  .mobile-nav a{display:grid;grid-template-columns:35px 1fr 30px;align-items:center;gap:13px;border-bottom:1px solid #ffffff3a;font:600 clamp(1.2rem,3vw,1.7rem) Sora,sans-serif;letter-spacing:-.04em}
  .mobile-nav a[aria-current]{color:var(--gold)}
  .mobile-index{color:var(--cyan);font-size:10px;letter-spacing:0}
  .mobile-nav a>span:last-child{text-align:right;font-size:17px}
  .site-header.is-scrolled .mobile-nav{top:104px;height:calc(100dvh - 104px)}
}
@media(max-width:760px){
  .header-topbar{display:none}
  .header-inner,.site-header.is-scrolled .header-inner{height:74px}
  .brand-logo{width:55px;height:47px}
  .brand-copy strong{font-size:14px}.brand-copy small{font-size:7px}
  .mobile-nav,.site-header.is-scrolled .mobile-nav{top:74px;height:calc(100dvh - 74px)}
  .home-hero-grid{min-height:0}
  .home-hero-copy{min-height:685px;padding:66px 0 38px}
  .hero-overline{max-width:270px;font-size:9px;line-height:1.6}
  .home-hero h1{margin-top:30px;max-width:100%;font-size:clamp(2.6rem,9.4vw,4.3rem);line-height:1.1;letter-spacing:-.07em;text-wrap:wrap}
  .home-hero-copy>p:not(.hero-overline){max-width:560px;margin-top:27px;font-size:16px}
  .hero-actions{margin-top:28px}
  .hero-belief{margin-top:auto;padding-top:24px}
  .home-hero-visual{top:15%;right:-65%;width:130%;height:75%;opacity:.52}
  .hero-art-ring.ring-one{width:320px;height:320px}
  .hero-art-ring.ring-two{width:470px;height:470px}
  .hero-art-ring.ring-three{width:620px;height:620px}
  .hero-art-core{width:170px;height:170px}
  .hero-art-core span{font-size:65px}.hero-art-core small{font-size:6px}
  .hero-art-note{display:none}
  .trusted-by{padding:40px 0 36px}.trusted-by h2{margin-bottom:24px}
  .client-logo{width:185px;height:74px}.client-logo-image{max-width:150px;max-height:43px}
  .intro-layout{grid-template-columns:1fr}.intro-body{padding-top:0}
  .overview-heading{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:35px}
  .capability-grid{grid-template-columns:1fr}
  .capability-panel{min-height:0;padding:30px}
  .capability-panel h3{margin-top:42px}
  .capability-links{margin-top:34px;padding-top:0}
  .capability-bottom{align-items:flex-start;flex-direction:column}
  .industry-preview::after{right:-150px;bottom:-170px;width:320px;height:320px;box-shadow:0 0 0 42px #ffffff24,0 0 0 84px #ffffff18}
  .industry-list a{min-height:75px;grid-template-columns:32px 1fr 22px;gap:10px}
  .collage-grid{grid-template-columns:1fr 1fr;grid-template-rows:210px 155px 210px 160px;gap:10px}
  .collage-1{grid-column:1;grid-row:1 / span 2}
  .collage-2{grid-column:2;grid-row:1}
  .collage-3{grid-column:2;grid-row:2 / span 2}
  .collage-4{grid-column:1;grid-row:3 / span 2}
  .collage-5{grid-column:2;grid-row:4}
  .collage-6{display:none}
  .collage-tile figcaption{left:10px;bottom:10px;font-size:8px}
  .news-grid,.founders-feature-grid,.media-press-grid{grid-template-columns:1fr;gap:35px}
  .news-cover,.founders-feature-image,.media-press-cover{height:430px;box-shadow:none}
  .news-secondary{margin-top:45px}
  .page-hero-visual{height:330px;min-height:330px}
  .page-hero-artword{font-size:12rem}.page-hero-corner{top:33px;left:34px;font-size:8px}.page-hero-index{right:33px;bottom:28px}
}
@media(max-width:470px){
  .home-hero-copy{min-height:670px;padding-top:60px}
  .home-hero h1{font-size:clamp(2.5rem,10.3vw,3.5rem)}
  .hero-overline{max-width:240px}
  .hero-belief strong{font-size:1rem}
  .home-hero-visual{right:-75%;opacity:.43}
  .trusted-by h2{font-size:1.6rem}
  .client-logo{width:160px;height:68px}.client-logo-image{max-width:132px;max-height:38px}
  .capability-panel h3{font-size:2rem}
  .capability-links a{font-size:12px}
  .news-cover,.founders-feature-image,.media-press-cover{height:370px}
  .page-hero-artword{font-size:10rem}
}


/* Brand, model, and client refinements */
.icon{display:block;width:100%;height:100%}
.brand{flex:0 0 auto;min-width:0;gap:10px}
.brand-logo{flex:0 0 auto;width:104px;height:78px}
.brand-copy strong{font-size:clamp(17px,1.5vw,22px);line-height:1.1;white-space:nowrap}
.brand-copy small{font-size:9px;white-space:nowrap}
.desktop-nav{min-width:0;gap:clamp(14px,1.4vw,23px)}
.home-hero{isolation:isolate;background:#082552;background-image:none}
.hero-mesh{position:absolute;z-index:0;inset:0;overflow:hidden;background:radial-gradient(ellipse 58% 68% at 85% 16%,#0c6b9c 0,transparent 70%),radial-gradient(ellipse 56% 72% at 75% 86%,#2366a6 0,transparent 70%),radial-gradient(ellipse 42% 52% at 32% 74%,#154c8c 0,transparent 70%),linear-gradient(110deg,#071d42 4%,#0b336a 60%,#146b99)}
.hero-mesh::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#061b3ac9 0%,#061e3a70 45%,transparent 88%),linear-gradient(0deg,#061a3a98 0,transparent 30%);pointer-events:none}
.mesh-orb{position:absolute;display:block;border-radius:50%;filter:blur(75px);mix-blend-mode:screen;animation:mesh-float 16s ease-in-out infinite alternate;will-change:transform}
.mesh-orb-one{width:49vw;height:49vw;right:-10vw;top:-23vw;background:#298dc2;opacity:.48}
.mesh-orb-two{width:52vw;height:42vw;right:10vw;bottom:-25vw;background:#2756bd;opacity:.52;animation-delay:-5s}
.mesh-orb-three{width:28vw;height:25vw;right:18vw;top:18vw;background:#d2a74a;opacity:.16;animation-delay:-9s}
@keyframes mesh-float{to{transform:translate3d(-6vw,4vw,0) scale(1.16)}}
.home-hero-grid{z-index:1;min-height:770px}
.home-hero-copy{min-height:770px;padding-top:123px}
.home-hero h1{max-width:1170px;margin-top:0}
.home-hero-copy>p:not(.hero-overline){max-width:690px}
.hero-belief{display:flex;flex-direction:row;align-items:center;gap:20px;width:min(100%,800px);max-width:none;margin-top:auto;padding:20px 24px;border:1px solid #ffffff60;border-left:4px solid var(--gold);background:linear-gradient(105deg,#0d3e78c9,#0c6093a3);box-shadow:0 22px 48px #06172d33;backdrop-filter:blur(14px)}
.belief-mark{display:grid;place-items:center;flex:0 0 50px;width:50px;height:50px;border:1px solid #ffc945a8;border-radius:50%;color:var(--gold);font-size:27px;line-height:1;animation:belief-glow 3.5s ease-in-out infinite}
@keyframes belief-glow{50%{box-shadow:0 0 28px #ffc94555;transform:rotate(18deg)}}
.belief-copy{display:flex;flex-direction:column;gap:7px}
.belief-copy span{color:#b9e7fa;font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.belief-copy strong{color:var(--white);font:600 clamp(1.25rem,2vw,1.95rem)/1.18 Sora,sans-serif;letter-spacing:-.055em}
.belief-copy i{padding:0 4px;color:var(--gold);font-style:normal}
.trusted-by{padding:53px 0 49px}
.trusted-by h2{margin-bottom:32px}
.trusted-by .client-rail+.client-rail{margin-top:15px}
.client-track{animation-duration:58s}
.client-track-reverse{animation-name:client-scroll-reverse;animation-duration:53s;transform:translateX(-50%)}
@keyframes client-scroll-reverse{to{transform:translateX(0)}}
.client-set{gap:15px;padding-right:15px}
.client-logo{width:166px;height:92px;padding:8px 10px;background:#fff;border-color:#e8edf1}
.client-logo-image{width:auto;max-width:146px;height:auto;max-height:72px;filter:none;opacity:1}
.client-logo:hover .client-logo-image{transform:scale(1.07)}
.client-logo-dark{background:#15356b;border-color:#15356b}
.chapter-title-row{display:flex;align-items:center;gap:20px;margin:24px 0 18px}
.chapter-title-row h3{margin:0}
.chapter-icon{display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;padding:13px;border:1px solid #ffffff70;color:var(--gold);transition:background .35s var(--ease),color .35s var(--ease),transform .35s var(--ease)}
.model-chapter.is-active .chapter-icon{background:var(--gold);color:var(--navy);transform:rotate(-5deg)}
.model-story-end{padding-top:46px}
.capability-symbol,.service-icon,.industry-icon,.sector-icon{display:grid;place-items:center;color:var(--blue);border:1px solid #b8cfdf;background:#fff}
.capability-symbol{width:66px;height:66px;padding:17px}
.service-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.service-icon{width:52px;height:52px;padding:12px;background:var(--mist)}
.service-card:hover .service-icon{background:var(--blue);border-color:var(--blue);color:#fff}
.industry-list a{grid-template-columns:58px 1fr 25px}
.industry-icon{width:50px;height:50px;padding:11px;border-color:#b6cbdc;background:#fff}
.industry-list a:hover .industry-icon{background:var(--blue);color:#fff}
.sector-icon{width:58px;height:58px;padding:14px;background:var(--mist)}
.sector-card h3{margin-top:auto}
@media(max-width:1140px){
  .brand-logo{width:90px;height:68px}
  .brand-copy strong{font-size:19px}
}
@media(max-width:760px){
  .header-inner,.site-header.is-scrolled .header-inner{height:78px;gap:12px}
  .brand{gap:7px}
  .brand-logo{width:70px;height:60px}
  .brand-copy strong{font-size:clamp(13px,2.5vw,17px)}
  .brand-copy small{font-size:7px}
  .mobile-nav,.site-header.is-scrolled .mobile-nav{top:78px;height:calc(100dvh - 78px)}
  .home-hero-grid,.home-hero-copy{min-height:700px}
  .home-hero-copy{padding:82px 0 34px}
  .home-hero h1{font-size:clamp(2.6rem,9.4vw,4.3rem)}
  .mesh-orb{filter:blur(44px)}
  .mesh-orb-one{width:78vw;height:90vw;right:-27vw;top:7vw}
  .mesh-orb-two{width:95vw;height:96vw;right:-9vw;bottom:-33vw}
  .mesh-orb-three{width:55vw;height:55vw;right:28vw;top:66vw}
  .hero-belief{gap:13px;padding:16px 17px}
  .belief-mark{flex-basis:42px;width:42px;height:42px;font-size:24px}
  .belief-copy strong{font-size:clamp(1rem,3.6vw,1.4rem)}
  .trusted-by{padding:40px 0}
  .client-logo{width:143px;height:80px}.client-logo-image{max-width:125px;max-height:62px}
  .industry-list a{grid-template-columns:48px 1fr 22px}
  .industry-icon{width:43px;height:43px;padding:9px}
}
@media(max-width:470px){
  .header-inner,.site-header.is-scrolled .header-inner{gap:8px}
  .brand-logo{width:65px;height:57px}
  .brand-copy strong{font-size:clamp(11.1px,3.1vw,13px);letter-spacing:-.08em}
  .brand-copy small{display:none}
  .menu-toggle{flex:0 0 46px;width:46px;height:46px}
  .home-hero-copy{min-height:700px;padding-top:78px}
  .hero-belief{gap:10px;padding:14px 12px}
  .belief-mark{flex-basis:34px;width:34px;height:34px;font-size:19px}
  .belief-copy strong{font-size:.98rem}
  .client-logo{width:132px;height:73px}.client-logo-image{max-width:114px;max-height:57px}
  .chapter-icon{flex-basis:44px;width:44px;height:44px;padding:10px}
  .chapter-title-row{gap:12px}
}


/* 2026 direction: sculptural hero, belief, cumulative model, program overview */
.site-header{box-shadow:0 1px 0 #d9e2ec}
.header-inner{height:94px}
.site-header.is-scrolled .header-inner{height:78px}
.home-hero{background:#081c40}
.home-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);align-items:center;min-height:710px}
.home-hero-copy{width:100%;min-height:710px;padding:92px 0 100px;justify-content:center}
.home-hero h1{max-width:760px;margin:0;font-size:clamp(4.1rem,5.6vw,6.05rem);line-height:1.04;letter-spacing:-.075em;text-wrap:balance}
.home-hero-copy>p:not(.hero-overline){max-width:580px;margin-top:31px}
.hero-mesh{background:radial-gradient(ellipse 45% 72% at 75% 38%,#165d94 0,transparent 75%),radial-gradient(ellipse 55% 75% at 80% 95%,#132d70 0,transparent 70%),radial-gradient(ellipse 45% 55% at 10% 84%,#164779 0,transparent 76%),linear-gradient(115deg,#061a3b,#092c5c 63%,#0d5981)}
.hero-mesh::after{background:linear-gradient(90deg,#0617358c 0%,transparent 55%),repeating-linear-gradient(112deg,transparent 0 185px,#ffffff08 185px 186px)}
.hero-art-wrap{position:relative;z-index:2;height:610px;min-width:0;transform:translateY(var(--hero-shift,0px));will-change:transform}
.hero-art-wrap::before{content:'';position:absolute;inset:7% -11% 5%;border:1px solid #ffffff24;border-radius:50%;box-shadow:0 0 0 68px #ffffff08,0 0 0 135px #ffffff05;transform:rotate(-16deg)}
.hero-art-orbit{position:absolute;inset:11% 2% 13%;border:1px solid #f5c8564f;border-radius:50%;transform:rotate(-18deg);animation:sculpture-orbit 14s ease-in-out infinite alternate}
@keyframes sculpture-orbit{to{transform:rotate(2deg) scale(1.06)}}
.hero-sculpture{position:absolute;z-index:2;top:50%;right:-14%;display:block;width:129%;max-width:none;height:auto;transform:translateY(-51%) rotate(-3deg);filter:drop-shadow(0 32px 70px #03132fa8);animation:sculpture-enter 1.25s cubic-bezier(.16,1,.3,1) both,sculpture-hover 8s 1.25s ease-in-out infinite alternate}
@keyframes sculpture-enter{from{opacity:0;transform:translateY(-43%) rotate(3deg) scale(.92)}to{opacity:1;transform:translateY(-51%) rotate(-3deg) scale(1)}}
@keyframes sculpture-hover{to{transform:translateY(-54%) rotate(-1deg) scale(1.025)}}
.hero-art-glow{position:absolute;z-index:1;left:7%;right:-15%;bottom:9%;height:25%;background:#2f9bdc5c;filter:blur(66px);border-radius:50%;pointer-events:none}
.belief-section{position:relative;overflow:hidden;padding:50px 0 55px;background:linear-gradient(110deg,#061733,#102d59 66%,#143d6e);color:#f7fbff;border-top:1px solid #ffffff33;border-bottom:2px solid var(--gold)}
.belief-section::before{content:'';position:absolute;width:500px;height:350px;right:-130px;top:-150px;border-radius:50%;background:#2182bd2e;filter:blur(45px)}
.belief-layout{position:relative;display:grid;grid-template-columns:230px minmax(0,1fr);align-items:center;gap:55px}
.belief-heading{position:relative;padding-left:22px;border-left:3px solid var(--gold)}
.belief-heading h2{font:700 13px/1.4 Figtree,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--gold)}
.belief-heading p{margin-top:12px;font-size:13px;line-height:1.5;color:#b8d0e6}
.belief-signal{position:absolute;left:-7px;top:0;width:11px;height:11px;border-radius:50%;background:var(--gold);box-shadow:0 0 18px #f6c958}
.belief-words{display:flex;align-items:center;justify-content:space-between;gap:13px}
.belief-word{display:flex;flex-direction:column;justify-content:center;min-height:118px;padding:15px 20px 15px 24px;border-left:1px solid #ffffff3b;font:700 clamp(1.5rem,2.7vw,2.7rem)/1.1 Sora,sans-serif;letter-spacing:-.075em;white-space:nowrap;transition:transform .45s var(--ease),color .45s var(--ease)}
.belief-word:hover{transform:translateY(-6px);color:#c9f0ff}
.belief-word small{margin-bottom:17px;color:var(--gold);font:800 10px/1 Figtree,sans-serif;letter-spacing:.16em}
.belief-word:last-child{padding-right:0}
.model-story{background:radial-gradient(circle at 10% 17%,#184776 0,transparent 33%),radial-gradient(circle at 96% 80%,#145486 0,transparent 37%),linear-gradient(150deg,#071d42,#0c3264 52%,#071d42)}
.model-stage{top:110px;height:min(74vh,650px);min-height:500px}
.model-stage-meta{left:42px;right:42px;top:42px;z-index:3}
.model-stage-meter{z-index:4}
.model-chapter{min-height:72vh}
.model-story-intro p{max-width:390px}
.capability-preview{background:#f7f9fb}
.capability-preview .overview-heading{align-items:end;margin-bottom:40px}
.program-preview-groups{border-top:1px solid #b9cada}
.program-preview-group{display:grid;grid-template-columns:minmax(260px,.38fr) minmax(0,.62fr);gap:clamp(32px,5vw,90px);padding:50px 0;border-bottom:1px solid #b9cada}
.program-preview-heading{display:flex;align-items:flex-start;gap:20px}
.program-preview-icon{display:grid;place-items:center;flex:0 0 54px;width:54px;height:54px;padding:12px;border-radius:50%;background:var(--blue);color:white}
.program-preview-label{display:flex;flex-wrap:wrap;align-items:center;gap:13px}
.program-preview-label h3{font-size:clamp(1.6rem,2.3vw,2.45rem);line-height:1.12;letter-spacing:-.06em}
.program-preview-heading p{max-width:290px;margin-top:18px;color:var(--muted);font-size:15px}
.program-preview-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.program-preview-item{position:relative;display:flex;align-items:flex-start;min-height:135px;padding:22px 47px 22px 22px;background:white;border:1px solid #d2e0e9;transition:background .3s,transform .3s,box-shadow .3s}
.program-preview-item:hover{background:#edf8fc;transform:translateY(-4px);box-shadow:0 14px 25px #0b315916}
.program-preview-item strong{font:650 clamp(1.1rem,1.4vw,1.4rem)/1.28 Sora,sans-serif;letter-spacing:-.045em}
.program-preview-arrow{position:absolute;top:19px;right:22px;color:var(--blue);font-size:22px}
.program-preview-more{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-top:32px}
.program-preview-more>div{max-width:600px}
.program-preview-more>div>span{color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.14em}
.program-preview-more p{margin-top:9px;color:var(--muted);font-size:15px}
@media(max-width:1140px){
  .home-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.82fr)}
  .home-hero h1{font-size:clamp(3.5rem,6vw,5.1rem)}
  .hero-art-wrap{height:540px}
  .belief-layout{grid-template-columns:1fr;gap:25px}
  .belief-words{justify-content:flex-start;gap:40px}
  .belief-word{min-height:90px}
  .program-preview-group{grid-template-columns:290px minmax(0,1fr);gap:30px}
}
@media(max-width:760px){
  .header-inner,.site-header.is-scrolled .header-inner{height:78px}
  .home-hero-grid{grid-template-columns:1fr;min-height:0}
  .home-hero-copy{min-height:0;padding:69px 0 0}
  .home-hero h1{max-width:680px;font-size:clamp(2.7rem,9.5vw,4.5rem)}
  .home-hero-copy>p:not(.hero-overline){max-width:570px;margin-top:24px;font-size:16px}
  .hero-actions{margin-top:25px}
  .hero-art-wrap{height:330px;margin-top:17px;transform:none}
  .hero-art-wrap::before{inset:8% 10% 5%;box-shadow:0 0 0 43px #ffffff07}
  .hero-art-orbit{inset:8% 16% 10%}
  .hero-sculpture{right:50%;top:52%;width:min(112%,620px);transform:translate(50%,-50%) rotate(-3deg);animation:sculpture-enter-mobile 1s cubic-bezier(.16,1,.3,1) both,sculpture-hover-mobile 8s 1s ease-in-out infinite alternate}
  @keyframes sculpture-enter-mobile{from{opacity:0;transform:translate(50%,-45%) rotate(3deg) scale(.9)}to{opacity:1;transform:translate(50%,-50%) rotate(-3deg) scale(1)}}
  @keyframes sculpture-hover-mobile{to{transform:translate(50%,-52%) rotate(-1deg) scale(1.03)}}
  .hero-art-glow{left:20%;right:20%;bottom:7%}
  .belief-section{padding:45px 0}
  .belief-layout{gap:20px}
  .belief-words{display:grid;grid-template-columns:1fr;gap:0}
  .belief-word{min-height:75px;flex-direction:row;align-items:center;justify-content:flex-start;gap:22px;padding:15px 0;border-left:0;border-bottom:1px solid #ffffff3b;font-size:clamp(1.9rem,7.3vw,3.1rem)}
  .belief-word small{margin:0;font-size:10px}
  .belief-word:last-child{padding-right:0}
  .model-story-layout{grid-template-columns:1fr;gap:0}
  .model-stage{top:78px;height:330px;min-height:330px}
  .model-stage-meta{left:25px;right:25px;top:25px}
  .model-chapter{min-height:52vh}
  .program-preview-group{grid-template-columns:1fr;gap:26px;padding:35px 0}
  .program-preview-heading p{max-width:550px;margin-top:11px}
  .program-preview-list{grid-template-columns:1fr 1fr}
  .program-preview-more{align-items:flex-start;flex-direction:column;gap:22px}
}
@media(max-width:470px){
  .home-hero-copy{padding-top:60px}
  .home-hero h1{font-size:clamp(2.5rem,10vw,3.25rem)}
  .hero-art-wrap{height:235px;margin-top:15px}
  .hero-sculpture{width:122%}
  .belief-word{font-size:clamp(1.75rem,8vw,2.6rem)}
  .model-stage{height:270px;min-height:270px}
  .model-stage-meta{left:18px;right:18px;top:19px}
  .program-preview-heading{gap:14px}
  .program-preview-icon{flex-basis:45px;width:45px;height:45px;padding:10px}
  .program-preview-label h3{font-size:1.55rem}
  .program-preview-list{grid-template-columns:1fr}
  .program-preview-item{min-height:105px;padding:18px 45px 30px 18px}
  .program-preview-arrow{right:18px;top:16px}
}

/* Painted brand mark and the five-part learning flywheel */
.hero-art-wrap{display:grid;place-items:center}
.hero-art-wrap::before{inset:5% -5% 5%;opacity:.5}
.hero-art-orbit{opacity:.55}
.hero-logo-stage{position:relative;z-index:2;display:grid;place-items:center;width:100%;height:100%;filter:drop-shadow(0 30px 45px #030f29a8)}
.hero-logo-svg{display:block;width:126%;max-width:none;height:auto;overflow:visible;animation:hero-logo-enter .9s cubic-bezier(.16,1,.3,1) both}
@keyframes hero-logo-enter{from{opacity:0;transform:translateY(24px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}
.hero-logo-disc,.hero-logo-disc-inner{transform-origin:603px 435px;animation:hero-disc-enter .8s cubic-bezier(.16,1,.3,1) both}
@keyframes hero-disc-enter{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}
.journey-frame{isolation:isolate;background:radial-gradient(circle at 50% 48%,#1a5e96 0,#0b3569 43%,#041733 85%);border:1px solid #80c2d35e;box-shadow:0 25px 70px #03122bb0}
.journey-frame::after{inset:15px;border-color:#ffffff2b}
.journey-scene{position:absolute;inset:0;overflow:hidden}
.journey-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 22px 25px #00132982)}
.journey-guide{fill:none;stroke:#9fddeb51;stroke-width:1.4;stroke-dasharray:3 11}
.journey-guide-inner{stroke:#f4cc6354;stroke-dasharray:1 9}
.journey-crosshair{fill:none;stroke:#dcecf766;stroke-width:1.4}
.journey-blade{opacity:0;filter:saturate(.3);transition:opacity .65s cubic-bezier(.16,1,.3,1),filter .65s ease}
.journey-blade.is-built{opacity:1;filter:saturate(1)}
.journey-blade.is-past{opacity:.36;filter:grayscale(1) saturate(.15)}
.journey-blade-shadow{fill:#00152d;opacity:.42;transform:translateY(12px)}
.journey-blade-body{stroke:#e4f7fa94;stroke-width:1.7;filter:drop-shadow(0 8px 8px #04152d80)}
.journey-blade-glint{fill:none;stroke:#f2fbff;stroke-width:2.7;stroke-linecap:round;opacity:.68}
.journey-blade-tip{fill:#f7d070;filter:drop-shadow(0 0 9px #f7d070)}
.journey-core-halo{fill:none;stroke:#e5d27b57;stroke-width:1.5;stroke-dasharray:5 12}
.journey-core{fill:#061c3d;stroke:#b6e5ee;stroke-width:2;filter:drop-shadow(0 15px 20px #00132bcc)}
.journey-core-line{fill:none;stroke:#f2d37c8e;stroke-width:1.4}
.journey-core-glyph{fill:#79d5e8}
.journey-core-point{fill:#f5c956;filter:drop-shadow(0 0 10px #f6d274)}
.model-story.is-complete .journey-core-halo{stroke:#f7d676;stroke-width:3;animation:journey-finale-glow 3s ease-in-out infinite alternate}
@keyframes journey-finale-glow{to{opacity:.55;transform:scale(1.07);transform-origin:325px 325px}}
.journey-node-layer{position:absolute;z-index:3;inset:0;pointer-events:none}
.journey-node{position:absolute;display:flex;align-items:baseline;gap:7px;min-width:90px;padding:7px 9px;background:#031934db;border-left:2px solid #f7cf5c;box-shadow:0 8px 22px #00142b73;color:#e9f8fa;opacity:0;transform:translateY(8px);transition:opacity .4s,transform .5s cubic-bezier(.16,1,.3,1),filter .5s}
.journey-node.is-built{opacity:1;transform:translateY(0)}
.journey-node.is-past{opacity:.44;filter:grayscale(1)}
.journey-node span{color:#f5cf6e;font-size:10px;font-weight:800;letter-spacing:.08em}
.journey-node strong{font:700 clamp(13px,1.2vw,17px)/1.1 Sora,sans-serif;letter-spacing:-.04em}
.journey-node-1{left:8%;top:17%}
.journey-node-2{right:8%;top:19%}
.journey-node-3{right:5%;bottom:19%}
.journey-node-4{left:17%;bottom:12%}
.journey-node-5{left:4%;top:50%}
.journey-scene-label{position:absolute;z-index:3;left:50%;bottom:24px;transform:translateX(-50%);white-space:nowrap;color:#a9d2df;font-size:9px;font-weight:800;letter-spacing:.18em}
.model-finale{display:flex;flex-direction:column;justify-content:center;min-height:56vh;padding:40px 0 85px}
.model-finale span{color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.15em}
.model-finale p{max-width:570px;margin-top:18px;color:#eff8fc;font:650 clamp(2rem,3.2vw,3.4rem)/1.16 Sora,sans-serif;letter-spacing:-.06em}
.model-story.is-complete .journey-blade,.model-story.is-complete .journey-node{opacity:1;filter:none}
@media(max-width:760px){
  .hero-logo-svg{width:min(118%,570px)}
  .journey-node{min-width:0;gap:4px;padding:5px 6px}
  .journey-node strong{font-size:11px}
  .journey-node span{font-size:8px}
  .journey-scene-label{bottom:11px;font-size:7px}
  .model-stage{height:clamp(300px,82vw,350px);min-height:300px}
  .model-finale{min-height:38vh;padding:40px 0 65px}
}
@media(max-width:470px){
  .hero-art-wrap{height:320px}
  .hero-logo-svg{width:110%}
  .journey-node-1{left:3%;top:15%}
  .journey-node-2{right:3%;top:16%}
  .journey-node-3{right:2%;bottom:18%}
  .journey-node-4{left:12%;bottom:11%}
  .journey-node-5{left:1%;top:48%}
}


/* October refinement: an aurora hero and a compact floating navigation. */
.site-header-home,.site-header-home.is-scrolled{position:fixed;top:0;left:0;right:0;z-index:70;background:transparent;border:0;box-shadow:none;backdrop-filter:none}
.site-header-home .header-inner{transition:height .38s var(--ease),transform .45s var(--ease),background .38s ease,box-shadow .38s ease,padding .38s var(--ease);}
.site-header-home:not(.is-floating) .brand-copy strong,.site-header-home:not(.is-floating) .desktop-nav a,.site-header-home:not(.is-floating) .nav-group summary{color:#f8fcff}
.site-header-home:not(.is-floating) .brand-copy small{color:#c8e6ec}
.site-header-home:not(.is-floating) .desktop-nav a:hover,.site-header-home:not(.is-floating) .desktop-nav a[aria-current],.site-header-home:not(.is-floating) .nav-group summary:hover{color:#ffe1a3}
.site-header-home:not(.is-floating) .header-cta{background:#fbd06c;color:#08264e}
.site-header-home.is-floating .header-inner{height:76px;padding:0 25px;border:1px solid #d7e4e8;border-radius:999px;background:#f9fcfbf2;backdrop-filter:blur(20px);box-shadow:0 16px 45px #051c3d38;transform:translateY(13px)}
.site-header-home.is-floating .brand-logo{height:65px;width:90px}
.site-header-home.is-floating .brand-copy strong{font-size:clamp(17px,1.4vw,20px)}
.site-header-home.is-floating .desktop-nav a{padding:25px 0}
.site-header-home.is-floating .desktop-nav a::after{bottom:18px}
.site-header-home .nav-dropdown{color:var(--ink)}
.home-hero{background:#071b3d}
.hero-mesh{background:radial-gradient(ellipse 33% 90% at 98% 42%,#2b7996 0,transparent 76%),radial-gradient(ellipse 40% 60% at 65% 10%,#a16251a1 0,transparent 72%),radial-gradient(ellipse 62% 92% at 56% 82%,#144b94 0,transparent 76%),radial-gradient(ellipse 48% 62% at 3% 94%,#097b87a8 0,transparent 77%),linear-gradient(126deg,#07172f 5%,#0a254b 46%,#115875 100%)}
.hero-mesh::before{content:'';position:absolute;inset:-32% -24%;background:conic-gradient(from 225deg at 55% 48%,transparent 0deg,#e5b45d38 31deg,transparent 63deg,#4aa9bb47 116deg,transparent 168deg,#d5937250 231deg,transparent 286deg);filter:blur(62px);opacity:.9;animation:hero-aurora 18s ease-in-out infinite alternate;pointer-events:none}
.hero-mesh::after{background:linear-gradient(90deg,#05162ef0 0%,#071c35a1 40%,transparent 85%),radial-gradient(circle at 76% 48%,transparent 0 18%,#081b3480 62%),repeating-linear-gradient(118deg,transparent 0 212px,#d5eef408 212px 213px)}
.mesh-orb-one{background:#3faac0;opacity:.42}.mesh-orb-two{background:#2f6cb6;opacity:.4}.mesh-orb-three{background:#e2a261;opacity:.3}
@keyframes hero-aurora{to{transform:translate3d(-4%,5%,0) rotate(15deg) scale(1.1);opacity:.7}}
.home-hero-copy>h1{color:#fff;background:linear-gradient(102deg,#fff 5%,#f8fcff 18%,#a7e6ee 35%,#ffe1a0 49%,#fff 64%,#bdebf1 80%,#fff 95%);background-size:240% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:hero-copy-enter .85s var(--ease) .14s both,hero-type-flutter 8s ease-in-out 1s infinite alternate}
@keyframes hero-type-flutter{0%{background-position:0% 50%}50%{background-position:60% 50%}100%{background-position:100% 50%}}
.hero-art-glow{background:radial-gradient(ellipse,#f2b85d69 0,#3e9ab65e 42%,transparent 78%);filter:blur(48px)}
.hero-logo-ink{animation:hero-ink-cycle 6.2s linear infinite}
.hero-paint{stroke-dasharray:1;stroke-dashoffset:1}
.hero-paint-gold{animation:hero-paint-gold 6.2s cubic-bezier(.34,.05,.28,1) infinite}
.hero-paint-upper{animation:hero-paint-upper 6.2s cubic-bezier(.34,.05,.28,1) infinite}
.hero-paint-lower{animation:hero-paint-lower 6.2s cubic-bezier(.34,.05,.28,1) infinite}
.hero-paint-finish{opacity:0;animation:hero-paint-complete 6.2s steps(1,end) infinite}
.hero-script-wipe{transform-box:fill-box;transform-origin:left center;transform:scaleX(0);animation:hero-lettering 6.2s cubic-bezier(.22,1,.36,1) infinite}
@keyframes hero-paint-gold{0%,2%{stroke-dashoffset:1}14%,100%{stroke-dashoffset:0}}
@keyframes hero-paint-upper{0%,12%{stroke-dashoffset:1}29%,100%{stroke-dashoffset:0}}
@keyframes hero-paint-lower{0%,24%{stroke-dashoffset:1}42%,100%{stroke-dashoffset:0}}
@keyframes hero-paint-complete{0%,42%{opacity:0}42.1%,100%{opacity:1}}
@keyframes hero-lettering{0%,42%{transform:scaleX(0)}60%,100%{transform:scaleX(1)}}
@keyframes hero-ink-cycle{0%,93%{opacity:1}97%,100%{opacity:0}}
.belief-word{min-height:84px;padding-block:11px}
.program-preview-group{padding:38px 0}
.program-preview-item{min-height:88px;align-items:center;padding:17px 49px 17px 20px}
.program-preview-arrow{top:50%;transform:translateY(-50%)}
.collage-image-wrap{position:relative}
.collage-image{position:absolute;inset:-60px 0 auto;width:100%;height:calc(100% + 120px);margin:0;transition:transform .12s linear,opacity .68s ease}
.collage-image-next{opacity:0}
.collage-image-wrap.is-swapping .collage-image-current{opacity:0}
.collage-image-wrap.is-swapping .collage-image-next{opacity:1}
.partnership-section{overflow:hidden;background:linear-gradient(125deg,#eaf4f4,#f9f7ed 65%,#e9f4f5);border-block:1px solid #d5e5e7}
.partnership-grid{display:grid;grid-template-columns:minmax(290px,.45fr) minmax(0,.55fr);gap:clamp(40px,7vw,125px);align-items:center}
.partnership-symbol{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:390px;border:1px solid #92b5c5;background:radial-gradient(circle at 70% 15%,#2c8db485,transparent 40%),linear-gradient(140deg,#092a53,#123e6e 65%,#0e5d75);box-shadow:26px 26px 0 #b9d8d5;color:#fff;font:700 clamp(3.5rem,6vw,6rem)/.9 Sora,sans-serif;letter-spacing:-.1em;transform:rotate(-2deg)}
.partnership-symbol::after{content:'';position:absolute;inset:18px;border:1px solid #ffffff38;pointer-events:none}
.partnership-symbol span{position:relative;z-index:1}.partnership-symbol .partnership-join{margin:12px 0;color:#ffce63;font:300 3.6rem/1 Figtree,sans-serif;letter-spacing:0}
.partnership-copy{max-width:640px}.partnership-copy h2{max-width:650px;margin:20px 0 26px;font-size:clamp(3rem,4.8vw,5.1rem);line-height:1.05}.partnership-copy p{margin:0 0 18px;color:#36516a;font-size:clamp(1rem,1.3vw,1.22rem)}.partnership-copy p a{color:var(--blue);font-weight:800;text-decoration:underline;text-underline-offset:4px}.partnership-copy .text-link{margin-top:13px}
@media(max-width:1140px){.site-header-home .header-inner{gap:14px}.site-header-home.is-floating .header-inner{height:72px;padding-inline:18px}.site-header-home.is-floating .brand-logo{width:76px}.site-header-home .desktop-nav{gap:13px}}
@media(max-width:760px){
  .site-header-home .header-inner,.site-header-home.is-scrolled .header-inner{height:78px}
  .site-header-home.is-floating .header-inner{height:66px;padding:0 11px;transform:translateY(10px)}
  .site-header-home.is-floating .brand-logo{width:68px;height:55px}
  .site-header-home:not(.is-floating) .menu-toggle{background:#ffffff17;border-color:#ffffff7a}
  .site-header-home:not(.is-floating) .menu-toggle span{background:#fff}
  .site-header-home.is-floating .menu-toggle{width:44px;height:44px;border-radius:50%}
  .site-header-home .mobile-nav{top:78px;height:calc(100dvh - 78px)}
  .site-header-home.is-floating .mobile-nav{top:92px;height:calc(100dvh - 92px)}
  .hero-mesh::after{background:linear-gradient(90deg,#071b35c9,#071b3559),linear-gradient(0deg,#06173391,transparent 45%)}
  .program-preview-item{min-height:88px}
  .partnership-grid{grid-template-columns:1fr;gap:55px}.partnership-symbol{min-height:280px;box-shadow:14px 14px 0 #b9d8d5;font-size:4.5rem}
}
@media(max-width:470px){
  .site-header-home .brand-copy strong{font-size:clamp(11px,3.1vw,13px)}
  .site-header-home.is-floating .brand-logo{width:59px}
  .site-header-home.is-floating .brand-copy strong{font-size:clamp(10.8px,3vw,13px)}
  .site-header-home.is-floating .brand-copy small{display:none}
  .program-preview-item{min-height:78px;padding:14px 43px 14px 16px}
  .partnership-symbol{min-height:240px;font-size:3.9rem}
}

@media(min-width:761px){.hero-logo-svg{width:110%}}
.mesh-beam{position:absolute;left:44%;top:-75%;width:21%;height:230%;border-left:1px solid #e0ede752;border-right:1px solid #f5d49242;background:linear-gradient(90deg,transparent,#bfe7e40e 30%,#ffe0a316 65%,transparent);transform:rotate(27deg);opacity:.7;animation:mesh-beam-sway 16s ease-in-out infinite alternate;pointer-events:none}
.mesh-beam::after{content:'';position:absolute;left:25%;top:0;width:1px;height:100%;background:linear-gradient(transparent,#ffffff5c 40%,#ffe0a336 70%,transparent)}
@keyframes mesh-beam-sway{to{transform:rotate(31deg) translateX(5vw);opacity:.43}}
@media(max-width:760px){.home-hero-copy{padding-top:134px}.mesh-beam{left:65%;width:30%;opacity:.4}}
@media(max-width:470px){.home-hero-copy{padding-top:128px}}


#partnership-heading{scroll-margin-top:115px}

/* IZT October homepage: unified belief, painted emblem and five-part wheel. */
.hero-emblem-wipe{transform-box:fill-box;transform-origin:top center;transform:scaleY(0);animation:hero-mark-reveal 6.2s cubic-bezier(.46,.03,.3,1) infinite}
.hero-script-wipe{animation:hero-script-reveal 6.2s cubic-bezier(.22,1,.36,1) infinite}
@keyframes hero-mark-reveal{0%,5%{transform:scaleY(0)}45%,96%{transform:scaleY(1)}100%{transform:scaleY(0)}}
@keyframes hero-script-reveal{0%,46%{transform:scaleX(0)}64%,96%{transform:scaleX(1)}100%{transform:scaleX(0)}}
.hero-logo-ink{animation:none}
.home-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.74fr);grid-template-rows:auto 1fr;align-items:start;column-gap:35px;min-height:700px;padding-top:155px;padding-bottom:42px}
.home-hero .hero-main-title{position:relative;z-index:3;grid-column:1/-1;max-width:none;margin:0;font-size:clamp(3.45rem,5.55vw,5.8rem);line-height:1.04;letter-spacing:-.075em;white-space:nowrap;color:#f5fbff;background:linear-gradient(103deg,#f8fcff 8%,#b7e8ed 30%,#ffe7aa 45%,#f8fcff 61%,#bdebf1 78%,#f8fcff 96%);background-size:230% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:hero-copy-enter .85s var(--ease) .1s both,hero-type-flutter 8s ease-in-out 1s infinite alternate}
.hero-main-title span{display:block}
.home-hero-copy{z-index:3;grid-column:1;grid-row:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;min-height:0;padding:20px 0 0}
.home-hero-copy>p:not(.hero-overline){max-width:570px;margin:0;color:#edf4fb;font-size:clamp(1.05rem,1.4vw,1.3rem);line-height:1.55}
.home-hero-copy .hero-actions{margin-top:27px}
.hero-art-wrap{grid-column:2;grid-row:2;height:325px;margin-top:-18px;transform:translateY(var(--hero-shift,0px))}
.hero-logo-svg{width:min(105%,620px)}
.hero-membership{position:relative;z-index:5;background:#f8faf9;border-top:1px solid #d9e5e7;border-bottom:1px solid #d9e5e7}
.membership-inner{display:flex;align-items:center;justify-content:center;min-height:142px;padding:12px 0}
.membership-inner img{display:block;width:min(100%,510px);height:auto;mix-blend-mode:multiply}
.belief-section{padding:clamp(75px,9vw,130px) 0;background:radial-gradient(circle at 92% 9%,#2a759493,transparent 33%),linear-gradient(135deg,#071b3a,#153f6b 65%,#0b6076);border-top:0;border-bottom:0}
.belief-section::before{width:54vw;height:54vw;right:-10vw;top:auto;bottom:-40vw;background:radial-gradient(circle,#89cbd44a,transparent 66%);filter:none}
.belief-combined{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);align-items:center;gap:clamp(50px,7vw,120px)}
.belief-main .micro-label,.belief-statement .micro-label{display:block;color:#f1cc78;font-size:11px;font-weight:800;letter-spacing:.16em}
.belief-main h2{max-width:750px;margin-top:21px;color:#f6f8f4;font-size:clamp(2.7rem,4.4vw,5rem);line-height:1.08;letter-spacing:-.065em}
.belief-main p{max-width:620px;margin:23px 0 25px;color:#d8e7ed;font-size:clamp(1rem,1.2vw,1.2rem);line-height:1.65}
.belief-main .text-link{color:#f6d587}
.belief-statement{padding:20px 0 20px clamp(24px,4vw,66px);border-left:1px solid #b5d9e96a}
.belief-words{display:flex;flex-direction:column;align-items:stretch;gap:0;margin-top:17px}
.belief-word{display:block;min-height:0;padding:16px 0;border:0;border-bottom:1px solid #b7d8e858;color:#f5f8f6;font-size:clamp(2rem,3.3vw,3.85rem);line-height:1.1;letter-spacing:-.065em}
.belief-word:last-child{border-bottom:0}
.belief-word:hover{transform:translateX(12px);color:#f9d782}
.trusted-by{padding-top:60px}
.model-story::before{display:none}
.model-story-intro{padding-bottom:16px}
.model-story-intro-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.48fr)}
.model-scroll-track{position:relative;height:430vh}
.model-wheel-stage{position:sticky;top:max(82px,calc((100svh - min(78svh,720px))/2 - 16px));display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(78svh,720px,94vw);margin:0 auto}
.model-wheel{width:100%;aspect-ratio:1;filter:drop-shadow(0 30px 65px #00132975)}
.model-wheel svg{display:block;width:100%;height:100%;overflow:visible}
.wheel-guide{fill:none;stroke:#a4d8e285;stroke-width:2;stroke-dasharray:3 13}
.wheel-progress{fill:none;stroke:#f7d275;stroke-width:6;stroke-linecap:round;stroke-dasharray:2313;stroke-dashoffset:var(--wheel-offset,2313);transform:rotate(-90deg);transform-origin:380px 380px;transition:stroke-dashoffset .15s linear}
.wheel-sector{opacity:.08;filter:grayscale(1);transform:scale(.87);transform-origin:380px 380px;transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1),filter .6s ease}
.wheel-sector.is-built{opacity:1;filter:none;transform:scale(1)}
.wheel-sector.is-past{opacity:.36;filter:grayscale(1)}
.model-story.is-complete .wheel-sector{opacity:1;filter:none;transform:scale(1)}
.wheel-sector-shape{stroke:#c9e8ee9c;stroke-width:1.5;filter:drop-shadow(0 12px 16px #04163066)}
.wheel-sector-copy{color:#f9fcfa;fill:#f9fcfa}
.wheel-sector-icon{stroke:#f8d989;fill:none}
.wheel-sector-title{font:700 34px Sora,sans-serif;letter-spacing:-.07em;fill:#fbfcf9}
.wheel-sector-caption{font:600 18px Figtree,sans-serif;fill:#e1eef2}
.wheel-hub-ring{fill:none;stroke:#f5d179;stroke-width:2;stroke-dasharray:5 9}
.wheel-hub{fill:#071d41;stroke:#b0dfe9;stroke-width:2;filter:drop-shadow(0 14px 24px #00132c9e)}
.wheel-hub-kicker{font:800 13px Figtree,sans-serif;letter-spacing:.16em;fill:#f0c970}
.wheel-hub-stage{font:700 29px Sora,sans-serif;letter-spacing:-.06em;fill:#f9fcf8}
.wheel-hub-count{font:700 13px Figtree,sans-serif;letter-spacing:.14em;fill:#b9dce5}
.model-wheel-prompt{margin:-9px 0 0;color:#b9dbe6;font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.model-story.is-complete .model-wheel-prompt{color:#f7d275}
.model-story-end{justify-content:center;padding-top:30px}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.home-contact .cta-inner{align-items:start}
.home-contact .cta-inner>div:last-child{padding-top:14px}
.home-contact .button{cursor:pointer}
.home-enquiry-wrap{position:relative;z-index:2;scroll-margin-top:115px;margin-top:55px}
.home-enquiry-wrap[hidden]{display:none}
.home-enquiry-panel{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(0,1fr);gap:clamp(35px,6vw,100px);padding:clamp(25px,4vw,60px);background:#f5f8f7;color:#102d50;box-shadow:0 28px 70px #02173569;animation:enquiry-enter .55s cubic-bezier(.16,1,.3,1) both}
@keyframes enquiry-enter{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.home-enquiry-panel h3{margin-top:14px;font-size:clamp(2rem,3vw,3.2rem);line-height:1.1}
.home-enquiry-panel>div>p{max-width:350px;margin-top:14px;color:#46627a;font-size:15px}
.home-enquiry-panel form{display:flex;flex-direction:column;gap:16px}
.home-enquiry-panel label{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:800}
.home-enquiry-panel input,.home-enquiry-panel select,.home-enquiry-panel textarea{width:100%;min-height:48px;padding:12px;border:1px solid #bfd0dd;background:#fff;color:#102d50;outline:none}
.home-enquiry-panel input:focus,.home-enquiry-panel select:focus,.home-enquiry-panel textarea:focus{border-color:#1e77b0;box-shadow:0 0 0 3px #4385c923}
.home-enquiry-panel textarea{resize:vertical}
.home-enquiry-panel .button{align-self:flex-start}
.home-enquiry-panel .form-disclaimer{color:#52677a}
@media(max-width:900px){.home-hero-grid{padding-top:145px;grid-template-columns:1fr .72fr}.home-hero .hero-main-title{font-size:clamp(3rem,5.9vw,4.5rem)}.belief-combined{grid-template-columns:1fr;gap:45px}.belief-statement{padding-left:0;border-left:0;border-top:1px solid #b5d9e96a}.home-enquiry-panel{grid-template-columns:1fr}}
@media(max-width:760px){.home-hero-grid{grid-template-columns:1fr;grid-template-rows:auto auto auto;min-height:0;padding-top:125px;padding-bottom:30px}.home-hero .hero-main-title{grid-column:1;max-width:100%;font-size:clamp(2.1rem,7.5vw,3.6rem);line-height:1.12}.home-hero .hero-main-title span:last-child{font-size:.83em;letter-spacing:-.075em}.home-hero-copy{grid-column:1;grid-row:2;padding-top:25px}.home-hero-copy>p:not(.hero-overline){max-width:580px;font-size:16px}.hero-art-wrap{grid-column:1;grid-row:3;height:min(67vw,365px);margin:10px 0 0;transform:none}.hero-logo-svg{width:min(100%,580px)}.membership-inner{min-height:100px}.membership-inner img{width:min(100%,480px)}.belief-section{padding:78px 0}.belief-words{display:flex;grid-template-columns:none}.belief-word{padding:13px 0;border-bottom:1px solid #b7d8e858;font-size:clamp(2.35rem,8vw,3.8rem)}.model-story-intro-grid{grid-template-columns:1fr;gap:20px}.model-scroll-track{height:350svh}.model-wheel-stage{width:min(94vw,550px);top:max(90px,calc((100svh - min(94vw,550px))/2 - 12px))}.model-wheel-prompt{font-size:9px}.model-story-end{padding-top:5px}.home-contact .cta-inner{gap:12px}}
@media(max-width:470px){.home-hero .hero-main-title{font-size:clamp(2rem,8.1vw,2.6rem)}.home-hero .hero-main-title span:last-child{font-size:.78em;white-space:nowrap;letter-spacing:-.08em}.home-hero-copy{padding-top:22px}.hero-art-wrap{height:270px}.membership-inner{padding:11px 0;min-height:80px}.belief-main h2{font-size:2.7rem}.wheel-sector-caption{font-size:19px}.wheel-sector-title{font-size:36px}.model-wheel-stage{width:96vw}.home-enquiry-panel{padding:24px}.home-enquiry-panel .form-row{grid-template-columns:1fr}.home-enquiry-panel .button{width:100%}}

.hero-logo-composition{position:relative;width:110%;aspect-ratio:1206/871}
.hero-logo-composition .hero-logo-svg{display:block;width:100%;height:100%}
.hero-mark-reveal,.hero-script-reveal{position:absolute;z-index:2;overflow:hidden}
.hero-mark-reveal{left:24.875%;top:13.777%;width:50.58%;height:53.39%;clip-path:inset(0 0 100% 0);animation:hero-mark-panel 6.2s cubic-bezier(.43,.02,.25,1) infinite}
.hero-script-reveal{left:26.12%;top:68.89%;width:48.51%;height:12.055%;clip-path:inset(0 100% 0 0);animation:hero-script-panel 6.2s cubic-bezier(.22,1,.36,1) infinite}
.hero-mark-reveal img,.hero-script-reveal img{display:block;width:100%;height:100%;object-fit:fill}
@keyframes hero-mark-panel{0%,5%{clip-path:inset(100% 0 0 0)}45%,94%{clip-path:inset(0)}100%{clip-path:inset(100% 0 0 0)}}
@keyframes hero-script-panel{0%,46%{clip-path:inset(0 100% 0 0)}64%,94%{clip-path:inset(0)}100%{clip-path:inset(0 100% 0 0)}}
@media(max-width:760px){.hero-logo-composition{width:min(100%,580px)}}

.membership-inner{gap:clamp(20px,4vw,65px);min-height:126px}
.membership-title{flex:none;color:#2c5c94;font:700 clamp(1.2rem,1.8vw,1.7rem)/1.2 Sora,sans-serif;letter-spacing:-.04em}
.membership-inner img{width:min(100%,510px)}
@media(max-width:760px){.membership-inner{flex-direction:column;gap:5px;padding:17px 0;min-height:0}.membership-title{font-size:1.3rem}.membership-inner img{width:min(100%,510px)}}

/* A dimensional learning platform gives the homepage its own visual language. */
.brand{flex-shrink:0;gap:10px;min-width:0}
.brand-logo-motion{position:relative;display:block;flex:0 0 auto;width:92px;aspect-ratio:1206/871;filter:drop-shadow(0 3px 8px #081e422f)}
.brand-logo-disc{position:absolute;left:7.7%;top:7.8%;width:84.6%;height:84.3%;border-radius:50%;background:linear-gradient(135deg,#3b70a8,#263d79 20%,#263d79 78%,#65a0c7);box-shadow:inset 0 0 0 2px #afd6ed55}
.brand-mark-reveal,.brand-script-reveal{position:absolute;z-index:1;overflow:hidden}
.brand-mark-reveal{left:24.875%;top:13.777%;width:50.58%;height:53.39%;clip-path:inset(100% 0 0 0);animation:hero-mark-panel 6.2s cubic-bezier(.43,.02,.25,1) infinite}
.brand-script-reveal{left:26.12%;top:68.89%;width:48.51%;height:12.055%;clip-path:inset(0 100% 0 0);animation:hero-script-panel 6.2s cubic-bezier(.22,1,.36,1) infinite}
.brand-mark-reveal img,.brand-script-reveal img{display:block;width:100%;height:100%;object-fit:fill}
.brand-copy{gap:4px}
.brand-copy strong{font-size:clamp(24px,1.95vw,30px);letter-spacing:-.065em;white-space:nowrap}
.brand-copy small{font-size:9px}
.site-header-home:not(.is-floating) .brand-copy strong,.site-header-home:not(.is-floating) .desktop-nav a,.site-header-home:not(.is-floating) .nav-group summary{color:#102d55}
.site-header-home:not(.is-floating) .brand-copy small{color:#3c6385}
.site-header-home:not(.is-floating) .desktop-nav a:hover,.site-header-home:not(.is-floating) .desktop-nav a[aria-current],.site-header-home:not(.is-floating) .nav-group summary:hover{color:#0a6b9a}
.site-header-home:not(.is-floating) .header-cta{background:#123762;color:#fff}
.site-header-home.is-floating .brand-copy strong{font-size:clamp(22px,1.7vw,26px)}
.site-header-home.is-floating .brand-logo-motion{width:76px}
.home-hero{isolation:isolate;background:linear-gradient(180deg,#f9fbfc 0%,#e4ecfb 25%,#a7bcec 39%,#516b9c 51%,#0b1a31 64%,#070e1d 83%,#091425 100%);color:#fff}
.home-hero .hero-mesh{position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse 30% 30% at 17% 28%,#c0f3f5a1,transparent 85%),radial-gradient(ellipse 36% 32% at 88% 30%,#f3d8cf91,transparent 80%),radial-gradient(ellipse 48% 23% at 52% 52%,#28488099,transparent 80%);pointer-events:none}
.home-hero .hero-mesh::after{background:repeating-linear-gradient(90deg,transparent 0 143px,#ffffff0c 144px 145px),linear-gradient(180deg,transparent 47%,#0712213d 75%);opacity:.45}
.home-hero-grid{display:flex;flex-direction:column;align-items:center;min-height:0;padding-top:160px;padding-bottom:0;gap:0}
.home-hero .hero-main-title{width:100%;margin:0;color:#10254a;background:linear-gradient(100deg,#122a52 9%,#286d99 31%,#10254a 52%,#495b95 71%,#122a52 95%);background-size:230% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-align:center;font-size:clamp(3.6rem,5.35vw,5.6rem);line-height:1.07;letter-spacing:-.065em;white-space:normal;animation:hero-copy-enter .85s var(--ease) .1s both,hero-type-flutter 11s ease-in-out 1s infinite alternate}
.home-hero .hero-main-title span{display:block;white-space:nowrap}
.home-hero-copy{width:100%;min-height:0;padding:18px 0 0;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:flex-start}
.home-hero-copy>p:not(.hero-overline){max-width:750px;margin:0;color:#344e70;font-size:clamp(1.07rem,1.32vw,1.27rem);line-height:1.52}
.home-hero-copy .hero-actions{margin-top:25px}
.home-hero .hero-actions .button{min-height:61px;padding-inline:30px;background:#ffc947;color:#122a4f;box-shadow:0 12px 28px #28476c30}
.home-hero .hero-actions .button:hover{background:#ffe08c;box-shadow:0 17px 35px #28476c50}
.hero-art-wrap{position:relative;flex:none;width:min(100%,1000px);height:540px;margin:8px auto 0;transform:translateY(var(--hero-shift,0px));filter:drop-shadow(0 32px 36px #020b1b67)}
.hero-art-wrap::before,.hero-art-orbit{display:none}
.hero-stack-svg{position:absolute;z-index:1;inset:0;display:block;width:100%;height:100%;overflow:visible;animation:stack-arrive 1.35s cubic-bezier(.16,1,.3,1) both}
.stack-layers{animation:stack-float 8s ease-in-out 1.2s infinite alternate}
.stack-layer{filter:drop-shadow(0 8px 9px #01091787)}
.stack-layer-1{filter:drop-shadow(0 12px 17px #000918a3)}
.stack-top-grid,.stack-nodes{animation:stack-glimmer 5s ease-in-out infinite alternate}
.stack-light-column{filter:drop-shadow(0 0 10px #86d9eb)}
@keyframes stack-arrive{from{opacity:0;transform:translateY(60px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes stack-float{to{transform:translateY(-7px)}}
@keyframes stack-glimmer{to{opacity:.55}}
.hero-medallion{position:absolute;z-index:3;left:50%;top:21%;width:202px;transform:translateX(-50%) rotate(-3deg);filter:drop-shadow(0 24px 22px #020e29b5);animation:medallion-float 8s ease-in-out infinite alternate}
.hero-medallion .hero-logo-composition{width:100%}
.hero-medallion .hero-logo-stage{width:100%}
@keyframes medallion-float{to{transform:translate(-50%,-12px) rotate(2deg)}}
.hero-art-glow{z-index:0;left:25%;right:25%;bottom:6%;height:25%;background:#58aede96;filter:blur(43px)}
.hero-membership{position:relative;z-index:3;background:linear-gradient(180deg,#091425bf,#0a182b);border-top:1px solid #9bc7da40;border-bottom:1px solid #7ea9c230;backdrop-filter:blur(14px)}
.membership-inner{display:flex;align-items:center;justify-content:center;gap:clamp(22px,3.8vw,70px);min-height:138px;padding:17px 0}
.membership-title{color:#cce8f0;font:650 clamp(1.18rem,1.6vw,1.55rem)/1.2 Sora,sans-serif;letter-spacing:-.04em;white-space:nowrap}
.membership-logos{display:flex;align-items:center;justify-content:center;gap:clamp(22px,3vw,53px)}
.membership-logo{display:grid;place-items:center;width:94px;height:78px;flex:none}
.membership-logo img{display:block;max-width:100%;max-height:76px;width:auto;height:auto;object-fit:contain;mix-blend-mode:normal}
.membership-msme{width:98px;height:76px;border:1px solid #e9f4f35c;border-radius:4px;background:#e9f0f2;box-shadow:0 8px 22px #020c2061}
.membership-msme img{max-width:80px;max-height:63px}
.membership-istd img{max-height:70px}
.membership-lub img{max-height:69px}
.membership-fkcci img{max-height:74px;clip-path:inset(0 16% 0 0)}
.stack-annotation{position:absolute;z-index:3;display:flex;flex-direction:column;gap:5px;padding:7px 0 7px 14px;border-left:1px solid #98c9d5b0;color:#d7eef2;font:700 11px Figtree,sans-serif;letter-spacing:.12em;text-shadow:0 2px 10px #061629}
.stack-annotation small{font-size:11px;font-weight:500;letter-spacing:0;color:#a9cfde}
.stack-annotation-left{left:9%;top:38%}.stack-annotation-right{right:8%;top:62%}
.model-scroll-track{height:430vh}
.model-wheel-stage{position:sticky;top:82px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;width:100%;height:calc(100svh - 82px);margin:0}
.model-story-intro{width:min(100% - 60px,1180px);padding:0;margin:0 auto 2px}
.model-story-intro .eyebrow{margin-bottom:9px}
.model-story-intro-grid{display:flex;align-items:end;justify-content:space-between;gap:32px}
.model-story-intro-grid h2{font-size:clamp(2rem,3.2vw,3.55rem);line-height:1.08;max-width:780px}
.model-story-intro-grid p{max-width:340px;margin:0;color:#d8e7ee;font-size:clamp(.87rem,1vw,1rem);line-height:1.45}
.model-wheel{width:min(53svh,500px,90vw);flex:0 0 auto}
.wheel-sector-icon{stroke:#ffdc87}
.wheel-sector-title{font-size:37px}
.wheel-hub-name{font:700 28px Sora,sans-serif;letter-spacing:-.07em;fill:#f8fcfb}
.model-wheel-prompt{margin:-3px 0 0}
@media(max-width:1200px){.brand-logo-motion{width:82px}.brand-copy strong{font-size:24px}.site-header-home.is-floating .brand-copy strong{font-size:22px}.site-header-home .desktop-nav{gap:12px}.header-inner{gap:14px}}
@media(max-width:980px){.brand-logo-motion{width:82px}.brand-copy strong{font-size:24px}}
@media(max-width:760px){
  .brand-logo-motion{width:70px}.brand-copy strong,.site-header-home:not(.is-floating) .brand-copy strong{font-size:clamp(17px,3.7vw,22px)}.site-header-home.is-floating .brand-logo-motion{width:61px}.site-header-home.is-floating .brand-copy strong{font-size:clamp(16px,3.5vw,21px)}
  .site-header-home:not(.is-floating) .menu-toggle{background:#ecf5fa;border-color:#7d9cb7}.site-header-home:not(.is-floating) .menu-toggle span{background:#123762}
  .home-hero-grid{padding-top:125px;padding-bottom:0}.home-hero .hero-main-title{font-size:clamp(2.2rem,7.4vw,3.7rem)}.home-hero .hero-main-title span:last-child{font-size:.85em}.home-hero-copy{padding-top:19px}.home-hero-copy>p:not(.hero-overline){max-width:560px;color:#314a6b;font-size:15px}.hero-art-wrap{width:min(112%,660px);height:340px;margin:10px -6% 0}.hero-medallion{width:130px;top:21%}.stack-annotation{display:none}.membership-inner{flex-wrap:wrap;gap:9px;padding:20px 0;min-height:0}.membership-title{width:100%;text-align:center;font-size:1.05rem}.membership-logos{width:100%;gap:clamp(8px,3vw,24px)}.membership-logo{width:70px;height:65px}.membership-logo img{max-width:68px;max-height:58px}.membership-msme img{max-width:60px}.membership-istd img{max-height:55px}
  .model-scroll-track{height:350svh}.model-wheel-stage{top:76px;height:calc(100svh - 76px)}.model-story-intro{width:min(100% - 36px,680px)}.model-story-intro-grid{display:block}.model-story-intro-grid h2{font-size:clamp(1.85rem,4.5vw,2.9rem)}.model-story-intro-grid p{margin-top:6px;max-width:600px;font-size:13px}.model-wheel{width:min(49svh,430px,90vw)}.model-wheel-prompt{font-size:9px}
}
@media(max-width:470px){
  .brand{gap:5px}.brand-logo-motion{width:62px}.brand-copy strong,.site-header-home:not(.is-floating) .brand-copy strong{font-size:clamp(16px,4vw,18px)}.brand-copy small{font-size:7px}.site-header-home.is-floating .brand-logo-motion{width:56px}.site-header-home.is-floating .brand-copy strong{font-size:16px}
  .home-hero-grid{padding-top:120px}.home-hero .hero-main-title{font-size:clamp(2.05rem,8.1vw,2.65rem)}.home-hero .hero-main-title span:last-child{font-size:.76em;letter-spacing:-.07em}.home-hero-copy{padding-top:17px}.home-hero-copy>p:not(.hero-overline){font-size:14px}.home-hero .hero-actions .button{min-height:54px}.hero-art-wrap{height:285px;margin-top:9px}.hero-medallion{width:106px}.membership-logos{gap:4px;justify-content:space-between}.membership-logo{width:23%;height:58px}.membership-logo img{max-width:100%;max-height:52px}.membership-msme img{max-width:80px}
  .model-story-intro-grid h2{font-size:1.9rem}.model-story-intro-grid p{font-size:12px}.model-wheel{width:min(48svh,94vw)}.wheel-sector-title{font-size:37px}.wheel-sector-caption{font-size:19px}
}


/* Home flow and deck-informed capability layers. */
.site-header-home.is-floating .header-inner{background:linear-gradient(110deg,#f8fcfded 0%,#deebf6f2 38%,#c7d9eef2 70%,#edf5f8f2 100%);border-color:#edfaffad;box-shadow:0 16px 42px #0a275160}
.home-hero-grid{padding-top:115px}
.home-hero-copy{padding-top:12px}
.home-hero-copy .hero-actions{margin-top:16px}
.hero-art-wrap{height:clamp(440px,37vw,520px);margin-top:-32px}
.hero-medallion{display:none}
.stack-layer-4 path:last-child{stroke:#64cde3;stroke-width:3}
.stack-layer-3 path:last-child{stroke:#76a7da;stroke-width:3}
.stack-layer-2 path:last-child{stroke:#f5cf78;stroke-width:3}
.stack-layer-1 path:last-child{stroke:#7ed6c5;stroke-width:3}
.hero-membership{background:linear-gradient(125deg,#08172d,#102e51 55%,#0c5066);border-top:1px solid #9bc7da40;border-bottom:0}
#trusted-by{scroll-margin-top:85px}
.trusted-by{padding:36px 0 39px}
.trusted-by h2{margin-bottom:22px}
.model-story{position:relative;isolation:isolate;background:radial-gradient(ellipse 43% 34% at 86% 16%,#2e6396a8,transparent 82%),radial-gradient(ellipse 38% 42% at 14% 78%,#13788a70,transparent 80%),linear-gradient(132deg,#071728,#132f57 48%,#153e68 74%,#0b1c38)}
.model-story::before{display:block;content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 7%,#72d4df16 7.2% 7.6%,transparent 8% 13%,#f1c76c12 13.2% 13.55%,transparent 14% 20%),radial-gradient(circle at 56% 25%,#569fda2e,transparent 33%);mask-image:linear-gradient(180deg,transparent,#000 13%,#000 88%,transparent)}
.model-scroll-track,.model-story-end{position:relative;z-index:1}
.model-wheel-stage{top:72px;height:calc(100svh - 72px);gap:5px}
.model-story-intro{margin-bottom:0}
.model-wheel{width:min(68svh,620px,93vw)}
.model-wheel-prompt{margin-top:-8px}
.capability-preview{padding:clamp(65px,6vw,90px) 0}
.capability-preview .overview-heading{margin-bottom:27px}
.program-preview-group{display:block;padding:25px 0}
.program-preview-heading{align-items:center;margin-bottom:17px}
.program-preview-heading p{max-width:700px;margin-top:8px;font-size:14px}
.program-preview-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.program-preview-item{min-height:78px;padding:12px 31px 12px 15px;align-items:center}
.program-preview-item strong{font-size:clamp(.96rem,1.17vw,1.08rem);line-height:1.2}
.program-preview-arrow{top:50%;right:11px;transform:translateY(-50%);font:500 25px/1 Figtree,sans-serif}
.program-preview-more{padding-top:22px}
.about-home{background:#f5f8fa;color:#173150}
.about-home-heading{display:grid;grid-template-columns:1fr .5fr;gap:30px;align-items:end;margin-bottom:45px}
.about-home-heading .news-kicker{grid-column:1/-1}
.about-home-heading h2{max-width:780px;font-size:clamp(2.75rem,4.5vw,5rem);line-height:1.06}
.about-home-heading p{max-width:400px;color:#52677d;font-size:17px;line-height:1.55}
.partner-showcase{display:grid;grid-template-columns:.46fr .54fr;gap:clamp(40px,5vw,90px);padding-top:34px;border-top:1px solid #c2d3df}
.partner-list{display:flex;flex-direction:column;gap:12px}
.partner-option{display:grid;grid-template-columns:116px minmax(0,1fr);align-items:center;gap:19px;width:100%;padding:7px;text-align:left;border:0;border-radius:13px;background:transparent;color:#173150;opacity:.43;cursor:pointer;transition:opacity .35s ease,background .35s ease,transform .35s var(--ease)}
.partner-option:hover,.partner-option.is-active{opacity:1;background:#e7eef2;transform:translateX(4px)}
.partner-option:focus-visible{outline:3px solid #246da8;outline-offset:3px;opacity:1}
.partner-option img{display:block;width:116px;height:124px;object-fit:cover;object-position:center 16%;border-radius:10px;background:#b8d3df}
.partner-option[data-partner="sandhya"] img{object-position:center 11%;background:linear-gradient(145deg,#bdd6df,#e9eee8)}
.partner-option span{display:flex;flex-direction:column;gap:7px}
.partner-option strong{font:700 clamp(1.13rem,1.6vw,1.5rem)/1.17 Sora,sans-serif;letter-spacing:-.05em}
.partner-option small{color:#5d7184;font-size:13px;font-weight:600}
.partner-panel-wrap{min-height:295px;padding-left:clamp(30px,4.3vw,70px);border-left:1px solid #c7d6de}
.partner-panel[hidden]{display:none!important}
.partner-panel-label{color:#2f739b;font-size:10px;font-weight:800;letter-spacing:.17em}
.partner-panel h3{margin:18px 0 24px;font-size:clamp(2rem,3vw,3.5rem);line-height:1.06}
.partner-panel p{max-width:680px;margin:0 0 16px;color:#344d62;font-size:clamp(1rem,1.2vw,1.15rem);line-height:1.6}
.about-news{margin-top:clamp(65px,8vw,110px);padding-top:clamp(45px,5vw,72px);border-top:1px solid #c2d3df}
.about-news .news-grid{grid-template-columns:.38fr .62fr;gap:clamp(40px,6vw,90px)}
.about-news .news-cover{height:360px;box-shadow:18px 18px 0 #dce9ee}
.about-news .news-copy h3{margin-top:19px;font-size:clamp(2.5rem,3.8vw,4.1rem)}
.about-news .news-copy>p{max-width:580px;margin:20px 0;color:#4c6174;font-size:16px}
@media(max-width:900px){.program-preview-list{grid-template-columns:repeat(2,minmax(0,1fr))}.about-home-heading{grid-template-columns:1fr}.partner-showcase{grid-template-columns:.42fr .58fr;gap:22px}.partner-option{grid-template-columns:82px 1fr;gap:12px}.partner-option img{width:82px;height:92px}.partner-panel-wrap{padding-left:22px}}
@media(max-width:760px){
  .home-hero-grid{padding-top:112px;padding-bottom:48px}.home-hero-copy{padding-top:16px}.home-hero-copy .hero-actions{margin-top:18px}.hero-art-wrap{height:345px;margin-top:-13px}
  .trusted-by{padding:31px 0}.trusted-by h2{font-size:1.65rem;margin-bottom:20px}
  .belief-section{padding:48px 0}.belief-combined{gap:27px}.belief-main h2{font-size:clamp(2.05rem,5.3vw,3rem);margin-top:13px}.belief-main p{font-size:14px;margin:15px 0 18px}.belief-statement{padding-top:14px}.belief-words{margin-top:8px}.belief-word{padding:8px 0;font-size:clamp(1.9rem,5.5vw,2.7rem)}
  .model-wheel-stage{top:66px;height:calc(100svh - 66px);justify-content:flex-start;padding-top:17px}.model-wheel{width:min(60svh,98vw)}.model-wheel-prompt{margin-top:-5px}
  .capability-preview{padding:58px 0}.program-preview-group{padding:22px 0}.program-preview-heading{margin-bottom:14px}.program-preview-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.program-preview-item{min-height:79px;padding:11px 27px 11px 11px}.program-preview-item strong{font-size:.98rem}.program-preview-arrow{right:8px;font-size:21px}
  .about-home-heading{gap:13px;margin-bottom:25px}.about-home-heading h2{font-size:clamp(2.4rem,8vw,3.8rem)}.about-home-heading p{font-size:15px}.partner-showcase{display:block;padding-top:23px}.partner-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.partner-option{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:7px}.partner-option img{width:100%;height:156px;object-fit:cover}.partner-option strong{font-size:1rem}.partner-option small{font-size:11px}.partner-panel-wrap{min-height:0;margin-top:25px;padding:22px 0 0;border-left:0;border-top:1px solid #c7d6de}.partner-panel h3{margin:12px 0 16px}.partner-panel p{font-size:15px}.about-news{margin-top:55px;padding-top:42px}.about-news .news-grid{grid-template-columns:1fr;gap:27px}.about-news .news-cover{height:300px;box-shadow:10px 10px 0 #dce9ee}.about-news .news-copy h3{font-size:2.9rem}
}
@media(max-width:470px){
  .home-hero-grid{padding-top:105px}.hero-art-wrap{height:315px}
  .belief-section{padding:41px 0}.belief-main h2{font-size:2.1rem}.belief-main p{font-size:13px}.belief-word{font-size:1.85rem;padding:7px 0}
  .model-story-intro-grid h2{font-size:1.78rem}.model-story-intro-grid p{font-size:11px}.model-wheel{width:min(61svh,98vw)}
  .program-preview-item strong{font-size:.92rem}.partner-option img{height:128px}.partner-option strong{font-size:.92rem}.partner-option small{font-size:10px}
}

/* The four stages are part of the sculpture rather than a detached key. */
.home-hero-grid{padding-top:90px}
.stack-intro{position:relative;z-index:2;margin:17px 0 0;color:#eaf6fa;text-align:center;font:700 clamp(1.08rem,1.9vw,1.55rem)/1.25 Sora,sans-serif;letter-spacing:-.035em;text-shadow:0 2px 14px #061b34b8}
.hero-art-wrap{height:clamp(490px,40vw,570px);margin-top:-63px}
.stack-face-label{fill:#e5f7fc;stroke:#06192c;stroke-width:4px;paint-order:stroke fill;font:800 24px Sora,sans-serif;letter-spacing:.16em;filter:drop-shadow(0 2px 4px #010b20)}
.stack-layer,.stack-top-grid,.stack-nodes,.stack-light-column{will-change:transform}
.stack-layer-1,.stack-top-grid,.stack-nodes,.stack-light-column{transform:translateY(var(--layer-impact,0px))}
.stack-layer-2{transform:translateY(var(--layer-output,0px))}
.stack-layer-3{transform:translateY(var(--layer-journey,0px))}
.stack-layer-4{transform:translateY(var(--layer-input,0px))}
.about-home{scroll-margin-top:100px}
@media(max-width:760px){
  .home-hero-grid{padding-top:108px;padding-bottom:14px}
  .stack-intro{margin-top:21px;font-size:1.08rem}
  .hero-art-wrap{height:390px;margin-top:-25px}
  .stack-face-label{font-size:27px}
}
@media(max-width:470px){
  .home-hero-grid{padding-top:102px}
  .stack-intro{margin-top:18px;font-size:1rem}
  .hero-art-wrap{height:350px;margin-top:-24px}
  .stack-face-label{font-size:30px}
}


/* Program choices read as an editorial index, with room for long titles. */
#what-we-do{scroll-margin-top:112px}
.capability-preview{padding:clamp(74px,7vw,104px) 0;background:#f6f8fa}
.capability-preview .overview-heading{margin-bottom:38px}
.program-preview-group{display:grid;grid-template-columns:minmax(280px,.37fr) minmax(0,.63fr);gap:clamp(36px,5vw,84px);padding:clamp(38px,4.5vw,58px) 0}
.program-preview-heading{align-items:flex-start;gap:16px;margin:0}
.program-preview-icon{flex:0 0 44px;width:44px;height:44px;padding:9px;border-radius:10px;background:#e1eef6;color:#155bb0}
.program-preview-label{align-items:center;gap:10px 13px}
.program-preview-label h3{font-size:clamp(1.7rem,2.15vw,2.55rem);line-height:1.12;text-wrap:balance}
.program-preview-heading p{max-width:390px;margin-top:17px;color:#536b84;font-size:clamp(.95rem,1.08vw,1.08rem);line-height:1.55}
.program-preview-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(24px,3.8vw,68px)}
.program-preview-item{position:relative;display:flex;align-items:center;min-height:92px;padding:17px 35px 17px 0;border:0;border-top:1px solid #c7d5e0;border-radius:0;background:transparent;box-shadow:none;transition:transform .3s var(--ease),background-color .3s var(--ease)}
.program-preview-item:nth-last-child(-n+2){border-bottom:1px solid #c7d5e0}
.program-preview-item:hover{background:#e9f1f6;transform:translateX(4px);box-shadow:none}
.program-preview-item strong{font:650 clamp(1.08rem,1.35vw,1.34rem)/1.3 Sora,sans-serif;letter-spacing:-.04em;text-wrap:pretty}
.program-preview-arrow{top:50%;right:5px;color:#155bb0;font:500 25px/1 Figtree,sans-serif;transform:translateY(-50%);transition:transform .3s var(--ease)}
.program-preview-item:hover .program-preview-arrow{transform:translate(4px,-50%)}
@media(max-width:1100px){
  .program-preview-group{grid-template-columns:1fr;gap:24px}
  .program-preview-heading p{max-width:640px}
}
@media(max-width:760px){
  #what-we-do{scroll-margin-top:88px}
  .capability-preview{padding:61px 0 68px}
  .capability-preview .overview-heading{margin-bottom:25px}
  .program-preview-group{padding:31px 0;gap:20px}
  .program-preview-heading{gap:13px}
  .program-preview-icon{flex-basis:39px;width:39px;height:39px;padding:8px}
  .program-preview-label h3{font-size:clamp(1.62rem,5.6vw,2rem)}
  .program-preview-heading p{margin-top:10px;font-size:14px}
  .program-preview-list{grid-template-columns:1fr}
  .program-preview-item{min-height:70px;padding:14px 32px 14px 0}
  .program-preview-item:nth-last-child(2){border-bottom:0}
  .program-preview-item strong{font-size:1rem}
}

/* Brand mark and quiet labels are printed into the isometric learning stack. */
.hero-art-wrap{margin-top:-22px}
.stack-side-label{fill:#9eb9c8;fill-opacity:.82;font:650 21px Sora,sans-serif;letter-spacing:.075em;paint-order:stroke fill;stroke:#071729;stroke-opacity:.68;stroke-width:2px}
.stack-top-emblem{transform:translateY(var(--layer-impact,0px));filter:drop-shadow(0 4px 7px #010918a6);will-change:transform}
#belief-heading{scroll-margin-top:112px}
.industry-list .industry-row{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:20px;min-height:98px;padding:15px 0;border-bottom:1px solid #1439643d}
.industry-list .industry-row:first-child{border-top:1px solid #1439643d}
.industry-list .industry-row strong{font:600 clamp(1.15rem,1.8vw,1.55rem)/1.25 Sora,sans-serif;letter-spacing:-.045em}

/* Vertical colour bars give the full IZT Model chapter its own backdrop. */
.model-story{background:linear-gradient(100deg,#061e27 0%,#0a2938 30%,#112b55 58%,#243d79 80%,#392d63 100%)}
.model-story::before{display:block;content:'';position:absolute;inset:0;z-index:0;pointer-events:none;mask-image:none;background:repeating-linear-gradient(90deg,#020f1b88 0 3.2%,#1e59714f 3.35% 6.7%,#04121f9c 6.9% 9.9%),linear-gradient(180deg,#4a9aad1e,transparent 34%,#07182855 100%)}
.model-story::after{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 40% 22% at 89% 8%,#ba4ca98a,transparent 90%),radial-gradient(ellipse 47% 33% at 37% 48%,#5686c75c,transparent 85%),radial-gradient(ellipse 40% 26% at 20% 87%,#208b8063,transparent 86%);mix-blend-mode:screen}

/* Two scroll chapters hold the partners in view before the news feature. */
.partner-scroll-track{position:relative;height:195svh}
.partner-showcase{position:sticky;top:104px;display:grid;grid-template-columns:.46fr .54fr;align-items:center;gap:clamp(35px,5vw,84px);height:calc(100svh - 122px);min-height:560px;padding:24px 0;border-top:1px solid #c2d3df}
.partner-option{opacity:.36;filter:grayscale(1);transition:opacity .35s ease,filter .35s ease,background .35s ease,transform .35s var(--ease)}
.partner-option:hover,.partner-option.is-active{opacity:1;filter:none}
.partner-panel-wrap{min-height:0}
.partner-panel h3{margin:14px 0 23px;font-size:clamp(2rem,3.2vw,3.65rem)}
.partner-stat{display:flex;align-items:end;gap:17px;max-width:620px;padding-bottom:22px;border-bottom:1px solid #bfd0dd}
.partner-stat strong{color:#144d86;font:700 clamp(3.8rem,6vw,6.2rem)/.9 Sora,sans-serif;letter-spacing:-.09em;white-space:nowrap}
.partner-stat span{max-width:300px;color:#52677a;font-size:clamp(.9rem,1.1vw,1.1rem);line-height:1.4}
.partner-points{display:grid;gap:15px;max-width:700px;margin:22px 0 0;padding:0;list-style:none}
.partner-points li{position:relative;padding-left:21px;color:#344d62;font-size:clamp(.96rem,1.12vw,1.12rem);line-height:1.48}
.partner-points li::before{content:'';position:absolute;left:0;top:.6em;width:7px;height:7px;background:#277da1;transform:rotate(45deg)}
.about-news{margin-top:42px}
@media(max-width:760px){
  .hero-art-wrap{margin-top:0}
  .stack-side-label{font-size:29px}
  #belief-heading{scroll-margin-top:86px}
  .industry-list .industry-row{grid-template-columns:48px minmax(0,1fr);gap:13px;min-height:78px}
  .partner-scroll-track{height:195svh}
  .partner-showcase{top:78px;display:block;height:calc(100svh - 88px);min-height:0;padding:13px 0 0}
  .partner-panel-wrap{margin-top:16px;padding-top:17px}
  .partner-panel h3{margin:9px 0 14px;font-size:clamp(1.85rem,6vw,2.4rem)}
  .partner-stat{gap:12px;padding-bottom:15px}
  .partner-stat strong{font-size:3.7rem}
  .partner-stat span{font-size:13px}
  .partner-points{gap:9px;margin-top:15px}
  .partner-points li{font-size:13px;line-height:1.42}
  .about-news{margin-top:34px}
}
@media(max-width:470px){
  .hero-art-wrap{margin-top:0}
  .stack-side-label{font-size:32px}
  .partner-option img{height:112px}
  .partner-option strong{font-size:.9rem}
  .partner-option small{font-size:10px}
  .partner-stat strong{font-size:3.4rem}
  .partner-points li{font-size:12.5px}
}


/* October refinement: tighter navigation, scroll chapters and joined customer stories. */
.home-hero-grid{padding-top:142px}
.home-hero-copy{padding-top:15px}
.home-hero .hero-actions .button{min-height:47px;padding:11px 22px;font-size:.86rem;box-shadow:0 9px 19px #28476c27}
.hero-art-wrap{margin-top:-13px}
.stack-top-emblem{filter:drop-shadow(0 9px 10px #01091878)}

/* Deep translucent bars over an IZT blue, teal and violet field. */
.model-story{background:radial-gradient(ellipse 45% 35% at 97% 6%,#d15ac89e,transparent 86%),radial-gradient(ellipse 45% 48% at 7% 92%,#0b88787a,transparent 89%),linear-gradient(110deg,#071d23 0%,#0c343d 32%,#183c63 65%,#443466 100%)}
.model-story::before{background:repeating-linear-gradient(90deg,#03191fd9 0 3.9%,#0e505c6b 4% 6.7%,#061923bd 6.85% 10.2%,#416baa61 10.4% 12%,#071621d9 12.2% 15.9%);opacity:.82}
.model-story::after{background:radial-gradient(ellipse 24% 48% at 92% 13%,#e346bd95,transparent 95%),radial-gradient(ellipse 30% 32% at 75% 46%,#8067db52,transparent 90%),radial-gradient(ellipse 38% 40% at 19% 64%,#087f8170,transparent 90%);mix-blend-mode:screen}

.about-home-heading{margin-bottom:12px;gap:12px}
.partner-scroll-track{height:185svh}
.partner-showcase{top:96px;height:calc(100svh - 104px);min-height:510px;align-items:start;padding-top:clamp(34px,7vh,76px)}
.partner-option{grid-template-columns:150px minmax(0,1fr);gap:23px}
.partner-option img{width:150px;height:161px}
.partner-panel-wrap{padding-top:10px}
.partner-panel-label{display:block;margin-bottom:29px}
.partner-stat strong{font-size:clamp(3.6rem,5vw,5.6rem)}

.customer-stories{background:#f4f7f8}
.customer-stories-heading{padding:95px 0 56px;text-align:center}
.customer-stories-heading h2{margin:11px 0 12px;font-size:clamp(2.7rem,5vw,5rem);line-height:1.06;letter-spacing:-.07em}
.customer-stories-heading p{color:#4c6276;font-size:1.05rem}
.customer-stories .trusted-by{background:transparent;border-top:1px solid #c9d9df;border-bottom:1px solid #c9d9df}
.customer-stories .learning-collage{background:transparent;padding-bottom:35px}
.testimonials{padding-top:35px;background:transparent}
.testimonial-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:26px}
.testimonial-heading h2{font-size:clamp(2.1rem,3vw,3.2rem);letter-spacing:-.055em}
.testimonial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.testimonial-card{display:grid;grid-template-columns:120px minmax(0,1fr);grid-template-rows:auto 1fr auto;gap:12px 22px;min-height:360px;margin:0;padding:32px;background:#fff;border:1px solid #d8e4e8;box-shadow:0 17px 42px #0b315d0b}
.testimonial-person{grid-column:1;grid-row:1/4;display:flex;flex-direction:column;justify-content:space-between;gap:14px}
.testimonial-person img,.testimonial-placeholder{width:120px;height:145px;object-fit:cover;object-position:center 25%;border-radius:18px;background:linear-gradient(135deg,#d9e8ec,#e8f3f1)}
.testimonial-placeholder{display:grid;place-items:center;color:#527585;font:700 1.8rem Sora,sans-serif}
.testimonial-person strong{display:block;color:#123453;font:700 1rem/1.3 Sora,sans-serif}
.testimonial-person span{display:block;margin-top:5px;color:#5d7182;font-size:.76rem;line-height:1.45}
.testimonial-card blockquote{grid-column:2;grid-row:1/3;align-self:center;margin:0;color:#17334e;font:500 clamp(1.13rem,1.38vw,1.45rem)/1.52 Figtree,sans-serif;letter-spacing:-.025em}
.testimonial-card figcaption{grid-column:2;grid-row:3;align-self:end;padding-top:18px;border-top:1px solid #d6e3e7;color:#245477;font-size:.75rem;font-weight:800}

/* Service overview and brochure-aligned program details live together. */
.page-hero-photo{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(1.03)}
.page-hero-visual::before{z-index:1;inset:0;background:linear-gradient(155deg,#09234918 30%,#071c45a6 100%);border:0}
.page-hero-index{z-index:2}
.page-hero-orbit,.page-hero-corner,.page-hero-artword{display:none}
.programs-section{background:#edf3f5}
.programs-intro{max-width:860px;margin-bottom:64px}
.programs-intro h2{margin:11px 0 18px;font-size:clamp(2.8rem,5vw,5rem);line-height:1.08;letter-spacing:-.07em}
.programs-intro p{max-width:760px;color:#536b7e;font-size:1.1rem;line-height:1.55}
.program-group{margin-top:56px}
.program-group-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding-bottom:16px;border-bottom:1px solid #bed1dc}
.program-group-heading h3{font-size:clamp(1.65rem,2.4vw,2.5rem);letter-spacing:-.055em}
.program-group-heading span{color:#48728c;font-size:.73rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.program-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding-top:20px}
.program-grid .program-card{min-height:270px;padding:26px 29px;border:1px solid #d2e0e5;background:#fff;transform:none;box-shadow:none}
.program-grid .program-card:hover{transform:none;box-shadow:0 15px 30px #0b315d11}
.program-card-main{display:flex;justify-content:space-between;align-items:end;gap:25px;flex:1;padding-top:17px}
.program-card-main>div{max-width:440px}
.program-card .program-title-row{display:flex;align-items:flex-start;gap:8px 13px;flex-wrap:wrap}
.program-card h3{max-width:none;margin:0 0 13px;font-size:clamp(1.45rem,1.9vw,2rem)}
.program-card p{max-width:480px;font-size:.91rem;line-height:1.5}
.program-expand{display:flex;align-items:center;gap:7px;flex:none;padding:9px 0;border:0;border-bottom:1px solid #1d5e94;background:none;color:#12578f;font-size:.78rem;font-weight:800;white-space:nowrap;cursor:pointer}
.program-expand:hover,.program-expand:focus-visible{color:#042d60;border-color:#042d60}
.program-expand span{font-size:1.3rem;line-height:.6;transition:transform .3s}
.program-expand[aria-expanded="true"] span{transform:rotate(90deg)}
.program-grid .program-card.is-expanded{grid-column:1/-1;min-height:0;background:#f8fbfb;border-color:#83b5c9}
.program-details:not([hidden]){display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(25px,5vw,85px);margin-top:27px;padding-top:27px;border-top:1px solid #c8dce4}
.program-details h4{margin-bottom:13px;color:#13588e;font-size:.73rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.program-details ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 22px;margin:0;padding:0;list-style:none}
.program-details li{position:relative;padding-left:15px;color:#334f66;font-size:.88rem;line-height:1.45}
.program-details li::before{content:'';position:absolute;left:0;top:.5em;width:6px;height:6px;background:#247a9b;border-radius:50%}
.program-details p{max-width:480px;color:#173b5a;font:600 1.12rem/1.5 Figtree,sans-serif}
.program-details span{display:block;margin-top:18px;color:#63798b;font-size:.76rem}








@media(max-width:900px){
  .testimonial-grid{grid-template-columns:1fr}
  .program-card-main{align-items:start;flex-direction:column;gap:10px}
}
@media(max-width:760px){
  .home-hero-grid{padding-top:150px}
  .home-hero .hero-actions .button{min-height:43px;padding:10px 17px;font-size:.78rem}
  .hero-art-wrap{margin-top:8px}
  .about-home-heading{margin-bottom:7px}
  .partner-showcase{padding-top:23px}
  .partner-option{gap:9px}
  .partner-option img{width:100%;height:clamp(142px,38vw,190px)}
  .partner-panel-wrap{padding-top:12px}
  .partner-panel-label{margin-bottom:20px}
  .partner-stat strong{font-size:clamp(2.7rem,8vw,3.8rem)}
  .customer-stories-heading{padding:65px 0 38px}
  .testimonial-card{grid-template-columns:93px minmax(0,1fr);gap:15px;min-height:0;padding:23px}
  .testimonial-person img,.testimonial-placeholder{width:93px;height:111px;border-radius:13px}
  .testimonial-person strong{font-size:.82rem}
  .testimonial-person span{font-size:.67rem}
  .testimonial-card blockquote{font-size:1.06rem}
  .programs-intro{margin-bottom:40px}
  .program-group{margin-top:40px}
  .program-grid{grid-template-columns:1fr}
  .program-grid .program-card{min-height:240px}
  .program-details:not([hidden]){grid-template-columns:1fr;gap:22px}
  .program-details ul{grid-template-columns:1fr}
}
@media(max-width:470px){
  .home-hero-grid{padding-top:152px}
  .testimonial-card{grid-template-columns:1fr}
  .testimonial-person{grid-column:1;grid-row:1;flex-direction:row;align-items:center}
  .testimonial-person img,.testimonial-placeholder{width:78px;height:85px;flex:none}
  .testimonial-card blockquote{grid-column:1;grid-row:2}
  .testimonial-card figcaption{grid-column:1;grid-row:3}
  .program-group-heading h3{font-size:1.6rem}
}

.service-overview.section-space{padding-bottom:55px}
.programs-section.section-space{padding-top:60px}
.program-card .program-title-row{flex-direction:row;align-items:center;gap:9px 14px}
.program-title-row .signature-badge{order:0;margin:0 0 10px}
.program-grid .program-card{min-height:245px}
.testimonial-full{grid-column:2;grid-row:3;align-self:end;color:#3c556a;font-size:.82rem;line-height:1.55}
.testimonial-full summary{color:#145c91;font-weight:800;cursor:pointer}
.testimonial-full p{margin-top:12px;color:#3c556a}
.testimonial-card figcaption{grid-row:4}
.testimonials.section-space{padding-bottom:48px}
.about-home.section-space{padding-top:55px}
@media(max-width:470px){.testimonial-full{grid-column:1;grid-row:3}.testimonial-card figcaption{grid-row:4}}
.testimonial-heading{display:block}
.testimonial-heading .news-kicker{display:block;margin-bottom:12px}
@media(max-width:760px){.testimonial-heading h2{font-size:clamp(2.25rem,7vw,3.2rem)}}

/* Focused hero, quieter navigation cue, and room for the moving stack. */
.home-hero-grid{padding-top:clamp(190px,17vh,255px);padding-bottom:150px}
.home-hero .hero-main-title{background:linear-gradient(105deg,#0d2850 5%,#3b76a6 26%,#345a96 46%,#15365f 63%,#6c79b2 82%,#0d2850 98%);background-size:280% 100%;animation:hero-copy-enter .85s var(--ease) .1s both,hero-type-flutter 5.8s ease-in-out 1s infinite alternate}
.home-hero-copy{padding-top:20px}
.home-hero-copy .hero-actions{margin-top:18px}
.home-hero .hero-actions .button{min-height:0;padding:4px 2px 7px;border:0;border-bottom:1px solid #315d81;border-radius:0;background:transparent;color:#173c62;font-size:.81rem;font-weight:750;letter-spacing:.035em;box-shadow:none}
.home-hero .hero-actions .button:hover{background:transparent;color:#0c6c99;box-shadow:none}
.home-hero .hero-actions .button span{display:inline-block;margin-left:5px;transition:transform .25s ease}
.home-hero .hero-actions .button:hover span{transform:translateY(4px)}
.hero-art-wrap{margin-top:-5px}
.desktop-nav .nav-group summary span{display:inline-grid;place-items:center;width:16px;height:16px;line-height:1;transform:none}
.desktop-nav .nav-group summary span svg{display:block;width:15px;height:15px}
.desktop-nav .nav-group[open] summary span{transform:rotate(180deg)}

/* The IZT initials carry the visual emphasis of the belief statement. */
.belief-word{color:#b9d5df}
.belief-word:hover{color:#d0e8ea}
.belief-initial{color:#fff;font-weight:800}

/* Continue the hero palette through the complete model chapter. */
.model-story,.model-wheel-stage{background:linear-gradient(180deg,#f9fbfc 0%,#e4ecfb 25%,#a7bcec 39%,#516b9c 51%,#0b1a31 64%,#070e1d 83%,#091425 100%)}
.model-story::before{background:radial-gradient(ellipse 30% 30% at 17% 28%,#c0f3f5a1,transparent 85%),radial-gradient(ellipse 36% 32% at 88% 30%,#f3d8cf91,transparent 80%),radial-gradient(ellipse 48% 23% at 52% 52%,#28488099,transparent 80%);mask-image:none;opacity:1}
.model-story::after{display:none}
.model-wheel-stage{isolation:isolate}
.model-wheel-stage::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 30% 30% at 17% 28%,#c0f3f5a1,transparent 85%),radial-gradient(ellipse 36% 32% at 88% 30%,#f3d8cf91,transparent 80%),radial-gradient(ellipse 48% 23% at 52% 52%,#28488099,transparent 80%)}
.model-story-intro-grid h2{color:#102c55}
.model-story-intro-grid p{color:#294969}
.model-story-intro .eyebrow{color:#196487}
.model-wheel-prompt{color:#d4e4ec}

/* Compact eight-service overview. */
.service-full-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid #c8dae3;border-left:1px solid #c8dae3}
.service-full-grid .service-card{justify-content:flex-start;gap:19px;min-height:220px;padding:19px 20px 22px;border:0;border-right:1px solid #c8dae3;border-bottom:1px solid #c8dae3;background:#f8fbfc}
.service-full-grid .service-card:nth-child(odd){border-left:0}
.service-full-grid .service-card:hover{background:#eef7f9;box-shadow:none}
.service-full-grid .service-card-top{align-items:start;min-height:60px}
.service-full-grid .service-index{font:600 clamp(2.5rem,4vw,4rem)/.95 Sora,sans-serif;letter-spacing:-.09em;color:#e9f0f5;-webkit-text-stroke:1px #8aafc3}
.service-full-grid .service-icon{width:41px;height:41px;padding:9px;border:0;background:transparent;color:#27658b}
.service-full-grid .service-card h3{margin-bottom:8px;font-size:clamp(1.05rem,1.3vw,1.38rem);line-height:1.2}
.service-full-grid .service-card p{max-width:none;color:#587087;font-size:.79rem;line-height:1.5}
.program-preview-more{display:block;padding-top:18px;border-top:1px solid #d4e1e7}
.program-preview-more>span{display:block;color:#21618b;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.program-preview-more p{max-width:740px;margin-top:6px}

/* Program categories remain in view as cards stack and expand. */
.programs-layout{display:grid;grid-template-columns:minmax(245px,.34fr) minmax(0,.66fr);align-items:start;gap:clamp(32px,4vw,80px)}
.program-category-nav{position:sticky;top:115px;display:flex;flex-direction:column;gap:0;padding:20px 0;border-top:1px solid #bfd3de;border-bottom:1px solid #bfd3de}
.program-category-kicker{margin:0 0 13px 19px;color:#5d7b8e;font-size:.68rem;font-weight:800;letter-spacing:.14em}
.program-category-nav a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:66px;padding:10px 18px;border-left:3px solid transparent;color:#62788a;font:650 clamp(1rem,1.45vw,1.3rem)/1.18 Sora,sans-serif;letter-spacing:-.045em;opacity:.47;transition:opacity .3s,color .3s,background .3s,border-color .3s}
.program-category-nav a:hover,.program-category-nav a.is-active{border-color:#216f9b;background:#e3eef3;color:#123b60;opacity:1}
.program-category-nav small{color:#1e6e98;font:800 .56rem Figtree,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.program-category{scroll-margin-top:122px;opacity:.58;filter:grayscale(.48);transition:opacity .45s ease,filter .45s ease}
.program-category.is-active{opacity:1;filter:none}
.program-category+.program-category{margin-top:68px}
.program-category .program-group-heading{justify-content:flex-start;align-items:center;gap:16px}
.program-category .program-group-heading h3{font-size:clamp(1.7rem,2.35vw,2.6rem)}
.program-category .signature-badge{margin:0}
.program-category .program-grid{display:grid;grid-template-columns:1fr;gap:12px;padding-top:18px}
.program-category .program-card{min-height:185px;padding:22px 25px}
.program-category .program-card-main{padding-top:8px}
.program-category .program-card h3{font-size:clamp(1.36rem,1.8vw,1.9rem)}
.program-category .program-card p{max-width:680px}
.program-category .program-card.is-expanded{min-height:0}

/* Hold the people heading below the floating nav, then hand off to the news. */
.partner-chapter{position:relative}
.about-home-heading{position:sticky;top:93px;z-index:5;gap:8px;margin:0;padding:10px 0 14px;border-bottom:1px solid #d1e0e5;background:linear-gradient(180deg,#f8fafb 75%,#f8fafbe8)}
.about-home-heading h2{font-size:clamp(2.5rem,4.2vw,4.5rem)}
.about-home-heading p{font-size:15px}
.partner-scroll-track{height:170svh}
.partner-showcase{top:226px;height:calc(100svh - 235px);min-height:460px;padding-top:22px}
.about-news{margin-top:0;padding-top:24px}
.about-home.section-space{padding-bottom:67px}
.customer-stories .testimonials{padding-top:34px}
.customer-stories .learning-collage{padding-top:27px}

@media(max-width:1050px){
  .service-full-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .programs-layout{grid-template-columns:minmax(205px,.32fr) minmax(0,.68fr);gap:25px}
  .program-category-nav a{font-size:.96rem}
}
@media(max-width:760px){
  .home-hero-grid{padding-top:clamp(168px,22vh,205px);padding-bottom:98px}
  .hero-art-wrap{margin-top:15px;transform:translateY(var(--hero-shift,0px))}
  .home-hero .hero-actions .button{min-height:0;padding:4px 2px 7px;font-size:.76rem}
  .model-story-intro-grid h2{font-size:clamp(1.8rem,5vw,2.5rem)}
  .programs-layout{display:block}
  .program-category-nav{top:71px;z-index:8;flex-direction:row;gap:5px;overflow-x:auto;width:calc(100vw - 36px);margin-bottom:35px;padding:9px 0;background:#edf3f5;scroll-snap-type:x proximity;scrollbar-width:thin}
  .program-category-kicker{display:none}
  .program-category-nav a{flex:none;min-height:43px;padding:8px 13px;border:1px solid #bdced8;border-radius:2px;font-size:.84rem;white-space:nowrap;scroll-snap-align:start}
  .program-category-nav a:hover,.program-category-nav a.is-active{border-color:#3d85a7}
  .program-category{scroll-margin-top:142px}
  .program-category+.program-category{margin-top:50px}
  .program-category .program-card{min-height:185px}
  .partner-scroll-track{height:170svh}
  .about-home-heading{top:76px;padding:8px 0 12px}
  .about-home-heading h2{font-size:clamp(2rem,7.1vw,3rem)}
  .about-home-heading p{font-size:13px}
  .partner-showcase{top:228px;height:calc(100svh - 235px);min-height:470px;padding-top:12px}
  .about-news{padding-top:18px}
}
@media(max-width:470px){
  .home-hero-grid{padding-top:175px;padding-bottom:85px}
  .service-full-grid{grid-template-columns:1fr 1fr}
  .service-full-grid .service-card{min-height:215px;padding:14px;gap:12px}
  .service-full-grid .service-index{font-size:2.6rem}
  .service-full-grid .service-icon{width:32px;height:32px;padding:5px}
  .service-full-grid .service-card h3{font-size:1rem}
  .service-full-grid .service-card p{font-size:.71rem}
  .program-category .program-group-heading h3{font-size:1.45rem}
  .program-category .program-card{padding:20px}
  .partner-showcase{top:218px;height:calc(100svh - 225px);min-height:435px}
}

.home-hero .hero-main-title{background-clip:text;-webkit-background-clip:text}
.partner-scroll-track{height:150svh}
.about-news{padding-top:12px}
@media(max-width:760px){.partner-scroll-track{height:145svh}.partner-showcase{min-height:0}.about-news{padding-top:8px}}

/* Subpage wayfinding and an image that changes every two seconds. */
.subpage-return{display:inline-flex;align-items:center;gap:10px;margin-bottom:35px;padding:8px 0;color:#165a8b;font-size:.78rem;font-weight:800;letter-spacing:.025em;text-decoration:none;border-bottom:1px solid #8bb3c8;transition:gap .25s ease,color .25s ease}
.subpage-return:hover{gap:15px;color:#092f57}
.subpage-return span{font-size:1.2rem;line-height:1}
.page-hero-copy .breadcrumb,.contact-hero .breadcrumb{display:none}
.page-hero-visual .page-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:none}
.page-hero-visual .page-hero-photo-next{z-index:1;opacity:0;transition:opacity .65s ease}
.page-hero-visual .page-hero-photo-next.is-active{opacity:1}
.page-hero-visual::before{z-index:2}
.page-hero-index{z-index:3}
.contact-hero .subpage-return{margin-bottom:36px}

/* Vision and mission sit directly after the story as a paired statement. */
.vision-section{position:relative;overflow:hidden;background:linear-gradient(135deg,#dfebf1 0%,#f6f9f8 50%,#e1eff2 100%)}
.vision-section .section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px}
.vision-section .section-heading .eyebrow{align-self:start}
.vision-section .section-heading h2{font-size:clamp(2.7rem,4.6vw,4.8rem)}
.vision-grid{gap:16px}
.vision-grid article,.vision-grid article+article{position:relative;isolation:isolate;overflow:hidden;min-height:350px;padding:clamp(30px,3vw,46px);border:1px solid #bdd1dc;background:linear-gradient(135deg,#0a3155,#14677d);color:#fff}
.vision-grid article:nth-child(2){background:linear-gradient(135deg,#e2f2f3,#f7f8f4 75%);color:#102f53}
.vision-grid article::before{content:'';position:absolute;z-index:-1;right:-95px;top:-105px;width:300px;height:300px;border:1px solid #ffffff35;border-radius:50%;box-shadow:0 0 0 48px #ffffff0c,0 0 0 105px #ffffff09}
.vision-grid article:nth-child(2)::before{border-color:#36799c3d;box-shadow:0 0 0 48px #5ca0b30e,0 0 0 105px #5ca0b307}
.vision-grid article>span{display:inline-flex;align-items:center;gap:13px;color:#bdebf3;font-size:.82rem;letter-spacing:.15em;text-transform:uppercase}
.vision-grid article>span::before{content:'';width:34px;height:1px;background:currentColor}
.vision-grid article:nth-child(2)>span{color:#246c8f}
.vision-grid h3{max-width:420px;margin-top:auto;font-size:clamp(2rem,2.8vw,3rem);line-height:1.07}
.vision-grid p{max-width:470px;margin-top:16px;color:#e3f1f3;font-size:1rem;line-height:1.55}
.vision-grid article:nth-child(2) p{color:#426179}

/* Partnership: the actual IZT and Roncucci&Partners identities share one stage. */
.partnership-section{background:radial-gradient(ellipse 40% 70% at 2% 4%,#d7eef0,transparent 80%),linear-gradient(135deg,#f7faf9,#e7f0f1 70%,#eff4ee);border:0}
.partnership-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(35px,5vw,90px)}
.partnership-symbol{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:18px;min-height:430px;padding:48px 30px 65px;border:1px solid #1b5b7b;background:radial-gradient(circle at 50% 46%,#1785947c,transparent 45%),linear-gradient(132deg,#071c3e,#0c3560 53%,#0b4358);box-shadow:0 25px 55px #0b315d29;color:#fff;transform:none;letter-spacing:normal}
.partnership-symbol::after{inset:15px;border:1px solid #ffffff26;background:repeating-linear-gradient(90deg,transparent 0 86px,#ffffff0a 87px 88px);pointer-events:none}
.partnership-brand{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;min-width:0;min-height:230px;padding:20px 12px;border:1px solid #ffffff52;border-radius:3px;background:#d9ecf012;backdrop-filter:blur(8px);box-shadow:0 13px 24px #020f2d35}
.partnership-brand img{display:block;width:min(100%,175px);height:135px;object-fit:contain}
.partnership-brand-rp img{width:min(100%,225px);height:140px;filter:drop-shadow(0 2px 10px #0007)}
.partnership-brand span{color:#d8eef1;font:700 clamp(.73rem,.85vw,.87rem)/1.3 Figtree,sans-serif;letter-spacing:.015em;text-align:center}
.partnership-join{position:absolute!important;z-index:3!important;left:50%;top:43%;display:grid;place-items:center;width:56px;height:56px;margin:0!important;border:1px solid #9bd7dc;border-radius:50%;background:#e3f4ed;color:#0c456a!important;font:400 2.1rem/1 Figtree,sans-serif!important;transform:translate(-50%,-50%);box-shadow:0 8px 24px #03132a75}
.partnership-caption{position:absolute;z-index:2;left:30px;right:30px;bottom:24px;color:#bde2e4;font-size:.81rem;font-weight:750;letter-spacing:.08em;text-align:center;text-transform:uppercase}
.partnership-copy h2{margin:13px 0 24px;font-size:clamp(2.6rem,4.4vw,4.6rem)}
.partnership-copy p{font-size:clamp(.98rem,1.2vw,1.16rem);line-height:1.58}

/* Keep program summaries focused on the name, description and details. */
.program-category .program-card{min-height:155px}
.program-category .program-card-main{padding-top:0}
.program-card .program-title-row h3{margin-bottom:8px}
@media(max-width:760px){
  .subpage-return{margin-bottom:28px}
  .page-hero-copy{padding-top:30px}
  .vision-section .section-heading{display:block}
  .vision-section .section-heading h2{margin-top:14px}
  .vision-grid article,.vision-grid article+article{min-height:275px;padding:27px}
  .vision-grid h3{font-size:clamp(1.8rem,6.5vw,2.5rem)}
  .partnership-grid{grid-template-columns:1fr;gap:40px}
  .partnership-symbol{min-height:300px;padding:38px 18px 59px;box-shadow:0 16px 30px #0b315d20}
  .partnership-brand{min-height:175px;padding:13px 7px}
  .partnership-brand img{height:95px;width:min(100%,120px)}
  .partnership-brand-rp img{height:100px;width:min(100%,150px)}
  .partnership-brand span{font-size:.66rem}
  .partnership-join{width:42px;height:42px;font-size:1.5rem!important}
  .partnership-caption{bottom:17px;font-size:.65rem}
}


/* A balanced split hero: the message and the dimensional learning stack. */
.home-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:1fr auto auto 1fr;column-gap:30px;row-gap:0;align-items:center;min-height:850px;padding-top:155px;padding-bottom:140px}
.home-hero .hero-main-title{grid-column:1;grid-row:2;text-align:left;font-size:clamp(2.65rem,3.6vw,3.9rem);line-height:1.1;letter-spacing:-.065em;align-self:end}
.home-hero .hero-main-title span:last-child{font-size:.83em}
.home-hero-copy{grid-column:1;grid-row:3;align-items:flex-start;text-align:left;padding:25px 0 0;align-self:start}
.home-hero-copy>p:not(.hero-overline){max-width:510px;color:#18365a;font-size:clamp(1rem,1.2vw,1.15rem);line-height:1.65}
.home-hero-copy .hero-actions{margin-top:25px}
.hero-art-wrap{grid-column:2;grid-row:1/5;width:115%;height:540px;margin:0 0 0 -7.5%;align-self:center}
.home-hero{background:radial-gradient(ellipse 48% 66% at 82% 65%,#173d66cc,transparent 90%),linear-gradient(165deg,#f9fbfc 0%,#e4ecfb 29%,#b7c8e9 47%,#7b94b7 65%,#102842 89%,#091425 100%)}
.proof-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding:5px 0 55px;text-align:center}
.proof-stat{padding:10px 20px;display:flex;flex-direction:column;align-items:center;gap:12px}
.proof-stat+.proof-stat{border-left:1px solid #cad9e0}
.proof-stat strong{font:600 clamp(3.5rem,6vw,6rem)/1 Sora,sans-serif;letter-spacing:-.075em;color:#155477;font-variant-numeric:tabular-nums}
.proof-stat>span{color:#486174;font-size:clamp(.85rem,1.15vw,1.05rem)}
@media(max-width:1000px) and (min-width:761px){.home-hero-grid{column-gap:18px;min-height:750px;padding-top:140px;padding-bottom:110px}.home-hero .hero-main-title{font-size:clamp(2rem,3.65vw,2.7rem)}.hero-art-wrap{height:460px}.home-hero-copy>p:not(.hero-overline){font-size:.95rem}}
@media(max-width:760px){.home-hero-grid{display:flex;flex-direction:column;gap:0;min-height:0;padding-top:160px;padding-bottom:100px}.home-hero .hero-main-title{text-align:center;font-size:clamp(2.4rem,7.4vw,3.7rem);align-self:center}.home-hero .hero-main-title span:last-child{font-size:.8em}.home-hero-copy{align-items:center;text-align:center;padding-top:20px}.home-hero-copy>p:not(.hero-overline){max-width:520px;font-size:1rem}.hero-art-wrap{width:min(112%,660px);height:360px;margin:30px -6% 0;align-self:center}.proof-stats{gap:10px;padding-bottom:35px}.proof-stat{padding:8px 6px;gap:10px}.proof-stat strong{font-size:clamp(2.6rem,10vw,4rem)}.proof-stat>span{max-width:130px;font-size:.76rem;line-height:1.4}}
@media(max-width:400px){.home-hero .hero-main-title{font-size:8vw}.home-hero .hero-main-title span:last-child{font-size:.76em}.hero-art-wrap{height:305px}.proof-stats{gap:5px}.proof-stat>span{font-size:.69rem}}
.home-hero-grid{grid-template-rows:auto;min-height:800px;padding-top:155px;padding-bottom:120px}
.hero-message{position:relative;z-index:3;grid-column:1;grid-row:1;align-self:center}
.hero-art-wrap{grid-row:1;height:480px}
.home-hero{background:radial-gradient(ellipse 55% 75% at 5% 32%,#edf7fbe6,transparent 95%),radial-gradient(ellipse 48% 66% at 82% 65%,#173d66cc,transparent 90%),linear-gradient(165deg,#f9fbfc 0%,#e4ecfb 29%,#b7c8e9 47%,#7b94b7 65%,#102842 89%,#091425 100%)}
@media(max-width:1000px) and (min-width:761px){.home-hero-grid{min-height:740px;padding-top:140px;padding-bottom:110px}.hero-art-wrap{height:450px}}
@media(max-width:760px){.home-hero-grid{min-height:0;padding-top:160px;padding-bottom:100px}.hero-message{width:100%}.hero-art-wrap{height:360px}}
@media(max-width:400px){.hero-art-wrap{height:305px}}
.partnership-brand{background:#eff6f2;border-color:#d0e5e3;backdrop-filter:none}
.partnership-brand span{color:#244b60}
.partnership-brand-rp img{filter:none}
/* Contain side-entry motion without introducing horizontal page scrolling. */
.testimonials{overflow-x:clip}
/* Restore the centered hero composition with a stronger two-line headline. */
.home-hero-grid{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:0;min-height:0;padding-top:clamp(190px,20vh,250px);padding-bottom:0}
.hero-message{width:100%;display:flex;flex-direction:column;align-items:center;text-align:center}
.home-hero .hero-main-title{width:100%;max-width:none;text-align:center;font-size:clamp(4.1rem,7vw,7rem);line-height:1.08;letter-spacing:-.07em}
.home-hero .hero-main-title span{display:block;white-space:nowrap}
.home-hero .hero-main-title span+span{margin-top:.13em}
.home-hero .hero-main-title span:last-child{font-size:.88em}
.home-hero-copy{width:100%;align-items:center;text-align:center;padding:24px 0 0}
.home-hero-copy>p:not(.hero-overline){max-width:750px}
.hero-art-wrap{width:min(100%,1000px);height:540px;margin:8px auto 0;align-self:center}
@media(max-width:760px){.home-hero-grid{padding-top:clamp(155px,21vh,205px);padding-bottom:0}.home-hero .hero-main-title{font-size:clamp(3rem,10.2vw,4.7rem)}.home-hero .hero-main-title span:last-child{font-size:.83em}.home-hero .hero-main-title span+span{margin-top:.2em}.hero-art-wrap{width:min(112%,660px);height:360px;margin:30px -6% 0}}
@media(max-width:400px){.home-hero .hero-main-title{font-size:9.5vw}.home-hero .hero-main-title span:last-child{font-size:.79em}.hero-art-wrap{height:305px}}

/* Shared floating navigation on inner pages, matching the homepage pill. */
.site-header-subpage{position:fixed;top:0;left:0;right:0;z-index:70;border:0;background:transparent;box-shadow:none;backdrop-filter:none}
.site-header-subpage .header-inner{height:76px;margin-top:13px;padding:0 25px;border:1px solid #d7e4e8;border-radius:999px;background:#f9fcfbf2;backdrop-filter:blur(20px);box-shadow:0 16px 45px #051c3d25;transition:height .35s var(--ease),padding .35s var(--ease),box-shadow .35s var(--ease)}
.site-header-subpage .brand-logo-motion{width:76px}
.site-header-subpage.is-scrolled .header-inner{height:70px;box-shadow:0 18px 48px #051c3d34}
.site-header-subpage .desktop-nav a{padding-block:25px}
.site-header-subpage .desktop-nav a::after{bottom:18px;background:var(--gold)}
.site-header-subpage .header-cta{border-radius:999px}
.site-header-subpage + main{padding-top:102px}
.site-header-subpage .mobile-nav{top:92px;left:50%;right:auto;width:min(calc(100% - 32px),520px);height:calc(100dvh - 108px);border:1px solid #d7e4e8;border-radius:22px;box-shadow:0 20px 48px #051c3d3b;transform:translate(-50%,-12px)}
.site-header-subpage .mobile-nav.is-open{transform:translate(-50%,0)}
.site-header-subpage .mobile-nav .shell{padding-inline:24px}
.site-header-subpage .menu-toggle{border-radius:50%;background:#f5f9fa}
.programs-intro{position:relative;z-index:12;margin-bottom:45px}
.programs-intro h2{position:sticky;top:92px;z-index:12;width:max-content;max-width:100%;padding:9px 0 12px;background:#edf3f5;white-space:nowrap;font-size:clamp(1.8rem,4.25vw,4rem);letter-spacing:-.065em}






@media(max-width:1200px){.site-header-subpage .header-inner{padding-inline:18px}.site-header-subpage .brand{min-width:190px}}
@media(max-width:980px){.site-header-subpage .header-inner,.site-header-subpage.is-scrolled .header-inner{height:68px;margin-top:10px;padding-inline:12px}.site-header-subpage + main{padding-top:88px}.site-header-subpage .mobile-nav{top:84px;height:calc(100dvh - 98px)}.programs-intro h2{top:80px}}
@media(max-width:760px){.site-header-subpage .header-inner,.site-header-subpage.is-scrolled .header-inner{height:62px;padding-inline:9px}.site-header-subpage + main{padding-top:81px}.site-header-subpage .brand-logo-motion{width:64px}.site-header-subpage .brand-copy strong{font-size:16px}.site-header-subpage .brand-copy small{font-size:7px}.site-header-subpage .mobile-nav{top:77px;height:calc(100dvh - 90px)}.programs-intro h2{top:73px;font-size:clamp(1.55rem,6.2vw,2.7rem)}}
@media(max-width:380px){.programs-intro h2{font-size:6vw}}

/* ==========================================================================
   Hero title: one fluid size for both lines, always a single line each.
   Width ratio of the longer line is ~12.6em at -.07em tracking.
   ========================================================================== */
:root{--hero-gutter:60px}
@media(max-width:760px){:root{--hero-gutter:28px}}
.home-hero .hero-main-title{font-size:min(6.3rem,calc((100vw - var(--hero-gutter)) / 13));letter-spacing:-.07em;line-height:1.08;white-space:nowrap}
.home-hero .hero-main-title span,.home-hero .hero-main-title span:last-child{display:block;font-size:1em;letter-spacing:inherit;white-space:nowrap}

/* ==========================================================================
   Premium motion layer
   ========================================================================== */

/* --- Reveals: keyframe based, so hover states and final layout are never
       affected by a leftover offset. Hidden until the observer shows them. --- */
.js :is(.reveal,.reveal-from-left,.reveal-from-right,.service-card,.program-card,.industry-row,.news-grid,.gallery-grid figure,[data-fx]):not(.is-visible){opacity:0}
.js :is(.reveal,.service-card,.program-card,.industry-row,.news-grid,.gallery-grid figure,[data-fx]).is-visible{animation:fx-up .9s var(--ease) var(--fx-delay,0s) backwards}
.js .reveal-from-left.is-visible{animation:fx-left 1s var(--ease) var(--fx-delay,0s) backwards}
.js .reveal-from-right.is-visible{animation:fx-right 1s var(--ease) var(--fx-delay,0s) backwards}
@keyframes fx-up{from{opacity:0;transform:translate3d(0,56px,0) scale(.97)}to{opacity:1;transform:none}}
@keyframes fx-left{from{opacity:0;transform:translate3d(-90px,0,0)}to{opacity:1;transform:none}}
@keyframes fx-right{from{opacity:0;transform:translate3d(90px,0,0)}to{opacity:1;transform:none}}
.service-card.is-visible:hover,.industry-row.is-visible:hover{transform:translate3d(0,-4px,0)}

/* --- Headings rise word by word out of a mask --- */
.js .fx-split .fx-w{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .06em .16em 0;margin:0 -.06em -.16em 0}
.js .fx-split .fx-w>span{display:inline-block;transform:translate3d(0,115%,0) rotate(4deg);transform-origin:0 100%;transition:transform 1.1s var(--ease) calc(var(--w,0) * 65ms)}
.js .fx-split.is-visible .fx-w>span{transform:none}

/* --- Photos: curtain reveal + scroll parallax (individual transform
       properties so they never fight with reveal or hover transforms) --- */
.js [data-curtain]{clip-path:inset(0 0 100% 0);transition:clip-path 1.5s var(--ease) var(--fx-delay,0s)}
.js [data-curtain].is-visible{clip-path:inset(0 0 0 0)}
[data-parallax-img]{--img-scale:1.2;scale:var(--img-scale);translate:0 var(--py,0px);transition:scale 2s var(--ease)}
.js [data-curtain]:not(.is-visible) [data-parallax-img]{--img-scale:1.45}
[data-parallax]{translate:0 var(--py,0px)}
.gallery-grid figure,.founders-feature-image,.media-press-cover,.news-cover{overflow:hidden}

/* --- Stacked panels: each section is a sheet that the next one slides
       over. The outgoing sheet fades back while the incoming one fades up.
       Driven by scroll position, so it reverses cleanly when scrolling up. --- */
:root{--panel-r:clamp(20px,2.8vw,40px)}
@media(max-width:760px){:root{--panel-r:22px}}


/* ==========================================================================
   Programs on phones: swipe carousel per category + bottom-sheet details
   ========================================================================== */
.program-dots{display:none}
.program-sheet{position:fixed;inset:0;z-index:200}
.program-sheet[hidden]{display:none}
.program-sheet-backdrop{position:absolute;inset:0;background:#06193a8f;opacity:0;transition:opacity .4s ease;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.program-sheet.is-open .program-sheet-backdrop{opacity:1}
.program-sheet-panel{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;max-height:90dvh;background:var(--white);border-radius:26px 26px 0 0;box-shadow:0 -22px 60px #04153542;transform:translate3d(0,100%,0);transition:transform .5s var(--ease);outline:0;padding-bottom:env(safe-area-inset-bottom)}
.program-sheet.is-open .program-sheet-panel{transform:none}
.program-sheet-grab{display:grid;place-items:center;flex:none;height:30px;touch-action:none}
.program-sheet-grab span{width:44px;height:5px;border-radius:9px;background:#c3d1da}
.program-sheet-close{position:absolute;top:12px;right:14px;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--navy);cursor:pointer}
.program-sheet-close svg{width:18px;height:18px}
.program-sheet-scroll{overflow-y:auto;overscroll-behavior:contain;padding:6px 24px 28px}
.program-sheet-kicker{display:block;padding-right:52px;color:var(--blue);font:800 .68rem Figtree,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.program-sheet-scroll h3{margin:10px 0 12px;padding-right:20px;font:700 1.7rem/1.15 Sora,sans-serif;letter-spacing:-.05em;color:var(--navy)}
.program-sheet-intro{margin:0 0 22px;color:var(--muted);font-size:.98rem;line-height:1.55}
.program-sheet-scroll h4{margin:0 0 12px;color:#13588e;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.program-sheet-list{display:grid;gap:11px;margin:0 0 24px;padding:0;list-style:none}
.program-sheet-list li{position:relative;padding-left:18px;color:#334f66;font-size:.95rem;line-height:1.45}
.program-sheet-list li::before{content:'';position:absolute;left:0;top:.52em;width:7px;height:7px;border-radius:50%;background:#247a9b}
.program-sheet-outcome{margin:0 0 10px;color:#173b5a;font:600 1.05rem/1.5 Figtree,sans-serif}
.program-sheet-scroll small{display:block;margin-bottom:22px;color:#63798b;font-size:.78rem}
.program-sheet-cta{display:flex;justify-content:center;width:100%}
body.sheet-open{overflow:hidden}
.program-sheet.is-open .program-sheet-scroll>*{animation:sheet-item .6s var(--ease) both}
.program-sheet.is-open .program-sheet-scroll>*:nth-child(2){animation-delay:.05s}
.program-sheet.is-open .program-sheet-scroll>*:nth-child(3){animation-delay:.09s}
.program-sheet.is-open .program-sheet-scroll>*:nth-child(n+4){animation-delay:.13s}
@keyframes sheet-item{from{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:none}}


@media(max-width:760px){
  .program-category .program-grid{display:flex;align-items:stretch;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;width:100vw;margin-left:calc(50% - 50vw);padding:16px var(--edge,17px) 6px;scroll-padding-inline:var(--edge,17px);scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .program-category .program-grid::-webkit-scrollbar{display:none}
  .program-category .program-card{flex:0 0 min(80%,320px);display:flex;flex-direction:column;min-height:236px;padding:22px 20px 20px;scroll-snap-align:start;border:1px solid #cfdfe6;border-radius:18px;background:#fff;box-shadow:0 10px 28px -16px #0b315d40}
  .program-category .program-card:only-child{flex-basis:100%}
  .program-category .program-card-main{flex:1;flex-direction:column;align-items:stretch;justify-content:space-between;gap:18px;padding-top:0}
  .program-category .program-card h3{margin:0 0 10px;font-size:1.35rem;line-height:1.2}
  .program-category .program-card p{font-size:.9rem}
  .program-category .program-expand{align-self:flex-start;gap:8px;padding:10px 16px;border:1px solid #1d5e94;border-radius:999px;font-size:.8rem;transition:background .25s,color .25s,transform .25s var(--ease)}
  .program-category .program-expand:active{transform:scale(.96);background:#12578f;color:#fff}
  .program-category .program-expand span{transform:none!important}
  .program-category .program-card.is-expanded{min-height:236px;background:#fff}
  .program-category .program-details{display:none!important}
  .program-dots{display:flex;justify-content:center;gap:6px;padding:12px 0 0}
  .program-dots i{width:6px;height:6px;border-radius:99px;background:#b9cbd6;transition:width .3s var(--ease),background .3s}
  .program-dots i.is-active{width:22px;background:var(--blue)}
}

/* Section headings: a little more air between kicker, title and intro */
.section-heading .news-kicker,.programs-intro .news-kicker{display:block;margin-bottom:14px}
.section-heading p{margin-top:22px}
@media(min-width:761px){
  .program-category .program-card{min-height:0;padding:30px 32px}
  .program-category .program-card-main{align-items:center;padding-top:0}
}

/* Mobile polish */
.hero-membership{-webkit-backdrop-filter:none;backdrop-filter:none}
@media(max-width:980px){
  .menu-toggle,.site-header-home:not(.is-floating) .menu-toggle{border-radius:50%}
}
@media(max-width:760px){
  .capability-preview .overview-heading{align-items:flex-start}
  .proof-stats{gap:0}
  .proof-stat{padding:8px 4px}
  .proof-stat strong{font-size:clamp(2rem,9.2vw,2.6rem)}
  .model-wheel-stage{justify-content:center;padding-top:0}
  .model-story-end{padding-top:24px;padding-bottom:70px}
}
.programs-intro h2{width:100%;box-shadow:0 0 0 100vmax #edf3f5;clip-path:inset(0 -100vmax)}

/* ==========================================================================
   Panel transitions (used on a few hand-picked sections, see script.js).
   The pinned section stays fully in view for a short hold before the sheet rises.
   ========================================================================== */
:root{--panel-hold:28svh}
@media(max-width:760px){:root{--panel-hold:20svh}}
.panel-pair{position:relative}
/* Opaque fallback; any section with its own background wins (zero specificity). */
:where(.has-panels .is-pinned,.has-panels .is-sheet){background-color:var(--paper)}
.has-panels .is-pinned{position:sticky;top:var(--pin-top,0px);z-index:1;min-height:100svh;display:flex;flex-direction:column;justify-content:center;overflow:clip}
.has-panels .is-sheet{position:relative;z-index:2;margin-top:calc(var(--panel-hold) - var(--panel-r));border-radius:var(--panel-r) var(--panel-r) 0 0;box-shadow:0 -18px 40px -22px #061a3c55;overflow:clip}
.panel-dim{position:absolute;left:0;right:0;bottom:0;height:100svh;z-index:20;background:#04142b;opacity:0;pointer-events:none}

/* ==========================================================================
   Home hero fills exactly one screen: title, copy and the full 3D stack.
   The stack takes whatever height is left and scales to fit inside it.
   ========================================================================== */
:root{--hdr-h:94px}
@media(max-width:760px){:root{--hdr-h:78px}}
.home-hero{height:100svh;min-height:560px;display:flex;flex-direction:column}
.home-hero .home-hero-grid{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:0;min-height:0;height:100%;padding-top:calc(var(--hdr-h) + clamp(18px,5svh,64px));padding-bottom:clamp(14px,3svh,34px)}
.home-hero .hero-message{flex:none;width:100%}
.home-hero .hero-main-title{font-size:min(6.3rem,calc((100vw - var(--hero-gutter)) / 13),10.5svh)}
.home-hero .home-hero-copy{padding-top:clamp(12px,2.2svh,24px)}
.home-hero .home-hero-copy .hero-actions{margin-top:clamp(10px,2svh,20px)}
.home-hero .hero-art-wrap{flex:1 1 0;min-height:150px;width:min(100%,1000px);height:auto;margin:clamp(6px,1.5svh,18px) auto 0;align-self:center}
@media(max-width:760px){.home-hero .hero-art-wrap{width:100%;margin-inline:0}}
/* The receding hero content stays inside its own section. */
.page-hero{overflow:clip}
/* Larger hero stack: the hero may run past the first screen, so the stack keeps
   real presence instead of shrinking to fit. */
.home-hero{height:auto;min-height:100svh}
.home-hero .home-hero-grid{height:auto}
.home-hero .hero-art-wrap{flex:none;width:min(100%,1080px);height:clamp(460px,66svh,660px)}
@media(max-width:760px){.home-hero .hero-art-wrap{width:146%;margin-inline:-23%;height:clamp(380px,56svh,500px)}}
/* Breathing room below the hero stack before the next section arrives. */
.home-hero .home-hero-grid{padding-bottom:clamp(18px,4svh,44px)}
/* As the stack rises it passes over the fading copy rather than under it; it is decorative, so it never takes clicks. */
.home-hero .hero-art-wrap{z-index:4;pointer-events:none}

/* "Other programs" link to the detailed programs */
.program-preview-more .program-preview-cta{margin-top:14px;font-size:.82rem}

/* ==========================================================================
   Industry icons: small looping animations once the row is in view
   ========================================================================== */
.ind-icon{overflow:visible}
.ind-icon :is(.ind-smoke circle,.ind-heart,.ind-lid,.ind-steam path){transform-box:fill-box;transform-origin:center}
.ind-smoke circle{opacity:0}
.industry-row.is-visible .ind-smoke circle{animation:ind-smoke 2.7s ease-out infinite}
.industry-row.is-visible .ind-smoke circle:nth-child(2){animation-delay:.9s}
.industry-row.is-visible .ind-smoke circle:nth-child(3){animation-delay:1.8s}
@keyframes ind-smoke{0%{opacity:0;transform:translate(0,1px) scale(.45)}18%{opacity:.6}100%{opacity:0;transform:translate(2.6px,-7px) scale(1.7)}}
.industry-row.is-visible .ind-heart{animation:ind-beat 1.25s ease-in-out infinite}
@keyframes ind-beat{0%,46%,100%{transform:scale(1)}12%{transform:scale(1.14)}24%{transform:scale(.98)}34%{transform:scale(1.09)}}
.ind-ecg{stroke-dasharray:1;stroke-dashoffset:1}
.industry-row.is-visible .ind-ecg{animation:ind-ecg 1.25s linear infinite}
@keyframes ind-ecg{0%{stroke-dashoffset:1}55%{stroke-dashoffset:0}100%{stroke-dashoffset:-1}}
.ind-steam path{opacity:0}
.industry-row.is-visible .ind-lid{transform-origin:20% 100%;animation:ind-lid 3.2s var(--ease) infinite}
@keyframes ind-lid{0%,58%,100%{transform:none}66%,82%{transform:translate(0,-1.6px) rotate(-7deg)}}
.industry-row.is-visible .ind-steam path{animation:ind-steam 3.2s ease-out infinite}
.industry-row.is-visible .ind-steam path:nth-child(2){animation-delay:.18s}
@keyframes ind-steam{0%,62%{opacity:0;transform:translateY(2px)}74%{opacity:.85}100%{opacity:0;transform:translateY(-3.5px)}}
.ind-core{fill:currentColor;fill-opacity:0}
.industry-row.is-visible .ind-core{animation:ind-core 1.8s ease-in-out infinite}
@keyframes ind-core{0%,100%{fill-opacity:0}50%{fill-opacity:.38}}
.ind-pins path{stroke-dasharray:.45 .55;stroke-dashoffset:.45}
.industry-row.is-visible .ind-pins path{animation:ind-pin 1.8s linear infinite;animation-delay:calc(var(--p) * -.22s)}
@keyframes ind-pin{to{stroke-dashoffset:-.55}}

/* ==========================================================================
   Client Stories: the label becomes the headline, the old title the subheader
   ========================================================================== */
.customer-stories-heading .stories-title{margin:0 0 12px;font-size:clamp(3rem,7vw,6.4rem);line-height:1;letter-spacing:-.075em;color:var(--navy)}
.customer-stories-heading .stories-subhead{margin:0 0 10px;color:#1f4569;font:600 clamp(1.15rem,1.9vw,1.6rem)/1.3 Sora,sans-serif;letter-spacing:-.035em}

/* ==========================================================================
   IZT belief: the words slide in from the right ~0.5s after the block is in view
   ========================================================================== */
.js .belief-statement .belief-word{opacity:0}
.js .belief-statement.is-in .belief-word{opacity:1;animation:belief-in 1.05s var(--ease) .5s backwards}
.js .belief-statement.is-in .belief-word:nth-child(2){animation-delay:.68s}
.js .belief-statement.is-in .belief-word:nth-child(3){animation-delay:.86s}
@keyframes belief-in{from{opacity:0;transform:translate3d(110px,0,0)}to{opacity:1;transform:none}}
.belief-initial{display:inline-block}
.js .belief-statement.is-in .belief-initial{animation:belief-initial .9s var(--ease) 1.05s backwards}
.js .belief-statement.is-in .belief-word:nth-child(2) .belief-initial{animation-delay:1.23s}
.js .belief-statement.is-in .belief-word:nth-child(3) .belief-initial{animation-delay:1.41s}
@keyframes belief-initial{0%{color:#fff}45%{color:#f9d782;transform:scale(1.18)}100%{color:#fff;transform:none}}

/* ==========================================================================
   Programs page: cards swing in from the right, one after another, and each
   category draws its heading rule as it arrives
   ========================================================================== */
.js .program-category .program-card.is-visible{animation:program-in .95s var(--ease) calc(var(--ci,0) * 120ms + .05s) backwards}
@keyframes program-in{from{opacity:0;transform:perspective(1200px) translate3d(80px,0,0) rotateY(-10deg)}to{opacity:1;transform:none}}
.program-category .program-group-heading{position:relative;border-bottom-color:transparent}
.program-category .program-group-heading::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:1px;background:#9fc0d2;transform:scaleX(0);transform-origin:left;transition:transform 1.2s var(--ease) .1s}
.program-category.is-seen .program-group-heading::after{transform:scaleX(1)}
.program-category .program-group-heading .signature-badge{transition:opacity .6s ease .45s,transform .6s var(--ease) .45s}
.js .program-category:not(.is-seen) .program-group-heading .signature-badge{opacity:0;transform:translateX(-10px)}
@media(max-width:760px){
  .js .program-category .program-grid.is-visible .program-card{animation:program-slide .85s var(--ease) calc(var(--ci,0) * 110ms + .1s) backwards}
  @keyframes program-slide{from{opacity:0;transform:translate3d(90px,0,0)}to{opacity:1;transform:none}}
}


/* Industry icons at twice their earlier size */
.industry-list .industry-row{grid-template-columns:100px minmax(0,1fr);gap:26px}
.industry-list .industry-icon{width:100px;height:100px;padding:20px}
@media(max-width:760px){
  .industry-list .industry-row{grid-template-columns:86px minmax(0,1fr);gap:18px}
  .industry-list .industry-icon{width:86px;height:86px;padding:17px}
}

/* Compact footer: one tight row on desktop, two short rows on phones */
.footer-main{grid-template-columns:1fr auto auto auto;align-items:start;gap:16px clamp(36px,5vw,72px);padding:34px 0 26px}
.footer-signoff strong span{display:block}
.footer-identity{display:flex;align-items:center;gap:16px}
.footer-identity .footer-logo{width:62px;height:48px}
.footer-identity p{margin:0;font-size:15px;line-height:1.35}
.footer-links{grid-column:auto;gap:8px}
.footer-links>span{margin-bottom:2px}
.footer-signoff{grid-column:auto;flex-direction:column;align-items:flex-start;gap:8px}
.footer-signoff strong{font-size:15px;line-height:1.35}
.footer-bottom{min-height:46px;padding:10px 0;font-size:11px}
@media(max-width:980px){
  .footer-main{grid-template-columns:1fr 1fr 1fr;gap:22px 28px}
  .footer-identity{grid-column:1/-1}
  .footer-signoff{grid-column:auto}
}
@media(max-width:760px){
  .footer-main{grid-template-columns:1fr 1fr;gap:20px 24px;padding:28px 0 20px}
  .footer-identity .footer-logo{width:52px;height:40px}
  .footer-signoff{grid-column:1/-1;flex-direction:row;align-items:baseline;gap:14px}
  .footer-signoff strong span{display:inline}
  .footer-signoff strong{font-size:14px}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:4px;min-height:0;padding:12px 0 16px}
  .footer-bottom span,.footer-bottom a{min-width:0}
}

/* ==========================================================================
   Hero stack: etched chevrons and a pulse that climbs bottom to top
   ========================================================================== */
.stack-layer-4 .stack-flow{--d:0s}
.stack-layer-3 .stack-flow{--d:.38s}
.stack-layer-2 .stack-flow{--d:.76s}
.stack-layer-1 .stack-flow{--d:1.14s}
.stack-flow path:nth-child(2){animation-delay:calc(var(--d) + 1.26s)}
.stack-flow path:nth-child(3){animation-delay:calc(var(--d) + 1.32s)}
@keyframes stack-climb{0%,100%{opacity:.3;filter:none}9%{opacity:1;filter:brightness(1.35) drop-shadow(0 0 3px #ffe08a) drop-shadow(0 0 8px #f4b43a)}26%{opacity:.3;filter:none}}
.stack-layer-4{--d:0s}.stack-layer-3{--d:.38s}.stack-layer-2{--d:.76s}.stack-layer-1{--d:1.14s}
.stack-light-column{animation:stack-beam 4.2s ease-in-out 2.7s infinite}
@keyframes stack-beam{0%,100%{stroke-opacity:.35}10%{stroke-opacity:1}30%{stroke-opacity:.35}}


/* ==========================================================================
   Programs: numbered, focus-following, clickable cards
   ========================================================================== */
.program-category .program-card{position:relative;cursor:pointer;transition:translate .35s var(--ease),box-shadow .35s var(--ease),border-color .3s,background-color .3s}
.program-category .program-card::before{content:'';position:absolute;left:-1px;top:-1px;bottom:-1px;width:4px;background:linear-gradient(180deg,var(--blue),#4fb6d4);transform:scaleY(0);transform-origin:top;transition:transform .4s var(--ease)}
@media(min-width:761px){
  .program-category .program-card-main{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:26px}
  .program-category .program-card:is(.is-focus,:hover,.is-expanded){translate:10px 0;border-color:#9cc3d6;box-shadow:0 18px 38px -22px #0b315d59;background-color:#fff}
  .program-category .program-card:is(.is-focus,:hover,.is-expanded)::before{transform:scaleY(1)}
  .program-category .program-card:is(.is-focus,:hover,.is-expanded)   .program-category .program-card:is(.is-focus,:hover) .program-expand span{translate:4px 0}
  .program-category .program-expand span{transition:translate .25s var(--ease),transform .3s}
}
/* Details pop in item by item */
.program-card.is-expanded .program-details li{animation:li-pop .5s var(--ease) calc(var(--li,0) * 55ms + .12s) backwards}
.program-card.is-expanded .program-details>div:nth-child(2){animation:li-pop .6s var(--ease) .3s backwards}
@keyframes li-pop{from{opacity:0;transform:translate3d(0,12px,0) scale(.97)}to{opacity:1;transform:none}}
.program-details li::before{transition:transform .3s var(--ease)}
.program-details li:hover::before{transform:scale(1.6)}
/* Category nav fills as you read through the active category */
.program-category-nav a{position:relative}
.program-category-nav a::after{content:'';position:absolute;left:-3px;top:0;bottom:0;width:3px;background:var(--blue);transform:scaleY(var(--cat-progress,0));transform-origin:top;opacity:0;transition:opacity .3s}
.program-category-nav a.is-active::after{opacity:1}
/* Phones: the centred carousel card leads, its neighbours step back */
@media(max-width:760px){
    .program-category .program-card{transition:scale .4s var(--ease),opacity .4s,translate .3s}
  .program-category .program-grid.has-current .program-card:not(.is-current){scale:.94;opacity:.62}
  .program-category .program-card.is-current   .program-category-nav a::after{left:0;right:0;top:auto;bottom:-1px;width:auto;height:3px;transform:scaleX(var(--cat-progress,0));transform-origin:left}
}

/* Industry icons 25% smaller than the 2x version */
.industry-list .industry-row{grid-template-columns:75px minmax(0,1fr);gap:22px}
.industry-list .industry-icon{width:75px;height:75px;padding:15px}
@media(max-width:760px){
  .industry-list .industry-row{grid-template-columns:65px minmax(0,1fr);gap:16px}
  .industry-list .industry-icon{width:65px;height:65px;padding:13px}
}

/* A highlight on the edge the climbing chevrons point towards */
.stack-target{fill:none;stroke:#ffe08a;stroke-width:3;stroke-linecap:round;opacity:0;filter:drop-shadow(0 0 5px #f6c24f)}
.stack-target{animation:stack-target 4.2s ease-in-out infinite;animation-delay:calc(var(--d) + 1.38s)}
@keyframes stack-target{0%,100%{opacity:0}11%{opacity:.95}30%{opacity:0}}
/* Gold climbing chevrons (specific enough to beat the per-layer last-child stroke colours) */
.stack-layers .stack-layer .stack-flow path{fill:none;stroke:url(#stack-gold);stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round;opacity:.3;animation:stack-climb 4.2s ease-in-out infinite;animation-delay:calc(var(--d) + 1.2s)}
.stack-layers .stack-layer .stack-flow path:nth-child(2){animation-delay:calc(var(--d) + 1.26s)}
.stack-layers .stack-layer .stack-flow path:nth-child(3){animation-delay:calc(var(--d) + 1.32s)}
/* Each layer's label turns gold together with its chevrons */
.stack-layers .stack-layer .stack-side-label{animation:stack-label 4.2s ease-in-out infinite;animation-delay:calc(var(--d) + 1.22s)}
@keyframes stack-label{0%,100%{fill:#9eb9c8;fill-opacity:.82}9%,15%{fill:#ffd36a;fill-opacity:1}28%{fill:#9eb9c8;fill-opacity:.82}}
.wheel-hub-name{font-size:24px}

/* ==========================================================================
   IZT gold accents: What we do, Industries, Client Stories
   (deeper gold on light backgrounds keeps text readable)
   ========================================================================== */
:root{--izt-gold:#f2be45;--izt-gold-deep:#b98617;--izt-gold-soft:#fbf1d6}
/* A short gold rule under each section title */
.capability-preview .display-heading,.industry-preview .display-heading,.customer-stories-heading .stories-title{position:relative}
.capability-preview .display-heading::after,.industry-preview .display-heading::after,.customer-stories-heading .stories-title::after{content:'';display:block;width:72px;height:4px;margin-top:16px;border-radius:2px;background:linear-gradient(90deg,var(--izt-gold),#e5a52c)}
.customer-stories-heading .stories-title::after{margin:18px auto 4px}
/* What we do */
.capability-preview .signature-badge{border-color:var(--izt-gold);background:var(--izt-gold-soft);color:var(--izt-gold-deep)}
.capability-preview .program-preview-icon{background:linear-gradient(140deg,#e1eef6 55%,#fbecc4);box-shadow:inset 0 0 0 1px #f2d48f}
.capability-preview .program-preview-arrow{color:var(--izt-gold-deep)}
.capability-preview .program-preview-item{border-left:3px solid transparent;transition:transform .3s var(--ease),background-color .3s var(--ease),border-color .3s}
.capability-preview .program-preview-item:hover{border-left-color:var(--izt-gold);background:#fbf6ea}
.capability-preview .program-preview-more>span{color:var(--izt-gold-deep)}
.capability-preview .program-preview-more .program-preview-cta{border-bottom-color:var(--izt-gold)}
/* Industries */
.industry-list .industry-icon{border-color:#ecd391;box-shadow:inset 0 -3px 0 #f6dc93}
.industry-list .industry-row{border-bottom-color:#e2cf9a}
.industry-list .industry-row:first-child{border-top-color:#e2cf9a}
.ind-smoke circle{fill:var(--izt-gold)}
.ind-ecg,.ind-steam path{stroke:var(--izt-gold-deep)}
.ind-core{fill:var(--izt-gold)}
/* Client Stories */
.proof-stat strong>span:not(.stat-number){color:var(--izt-gold)}
.proof-stat+.proof-stat{border-left-color:#ecd391}

/* ==========================================================================
   Our Services + learning journeys: IZT gold, and the white → blue → gold
   "building blocks of learning" gradient
   ========================================================================== */
:root{--learn-grad:linear-gradient(180deg,#ffffff 0%,#d9e9f5 14%,#5b9bd5 38%,#155bb0 58%,#c9952a 82%,#f2be45 100%);--learn-grad-x:linear-gradient(90deg,#ffffff 0%,#d9e9f5 14%,#5b9bd5 38%,#155bb0 58%,#c9952a 82%,#f2be45 100%)}
/* Section kickers and a gold rule under the section titles */
.service-overview .news-kicker,.programs-intro .news-kicker{color:var(--izt-gold-deep)}
.service-overview .section-heading .display-heading::after{content:'';display:block;width:72px;height:4px;margin-top:16px;border-radius:2px;background:linear-gradient(90deg,var(--izt-gold),#e5a52c)}
/* Eight service cards */
.service-full-grid .service-index{-webkit-text-stroke-color:#d9b25a;color:#fbf3df}
.service-full-grid .service-card{transition:background-color .3s,box-shadow .3s}
.service-full-grid .service-card:hover{background:#fdf8ec;box-shadow:inset 0 -3px 0 var(--izt-gold)}
.service-full-grid .service-card:hover .service-icon{color:var(--izt-gold-deep)}
/* Programs: gold badges, bullets and links */
.programs-section .signature-badge{border-color:var(--izt-gold);background:var(--izt-gold-soft);color:var(--izt-gold-deep)}
.program-category-nav small{color:var(--izt-gold-deep)}
.program-details li::before{background:var(--izt-gold)}
.program-details h4{color:var(--izt-gold-deep)}
.program-category .program-expand span{color:var(--izt-gold-deep)}
/* The building-blocks gradient: card strip, heading rule and reading progress */
.program-category .program-card::before{left:-3px;top:-1px;bottom:-1px;width:6px;border-radius:3px;background:var(--learn-grad);box-shadow:0 0 0 1px #cfe0ea,0 4px 12px -2px #f2be4566}
.program-category .program-group-heading::after{height:2px;background:var(--learn-grad-x);box-shadow:0 0 0 .5px #d4e3ec}
.program-category-nav a::after{width:4px;left:-4px;border-radius:2px;background:var(--learn-grad);box-shadow:0 0 0 1px #cfe0ea}
@media(max-width:760px){
  .program-category-nav a::after{width:auto;left:0;height:3px;background:var(--learn-grad-x)}
  /* Phone carousel: the centred card carries the gradient along its top edge */
  .program-category .program-card::before{left:18px;right:18px;top:-1px;bottom:auto;width:auto;height:5px;border-radius:0 0 4px 4px;background:var(--learn-grad-x);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
  .program-category .program-card.is-current::before{transform:scaleX(1)}
}
/* Nav: the gradient replaces the plain blue active border and reveals top-down as you read */
.program-category-nav a.is-active,.program-category-nav a:hover{border-left-color:transparent}
.program-category-nav a::after{transform:none;clip-path:inset(0 0 calc((1 - var(--cat-progress,0)) * 100%) 0)}
.program-category-nav a.is-active::before{content:'';position:absolute;left:-4px;top:0;bottom:0;width:4px;border-radius:2px;background:#d8e5ec}
@media(max-width:760px){
  .program-category-nav a::after{clip-path:inset(0 calc((1 - var(--cat-progress,0)) * 100%) 0 0)}
  .program-category-nav a.is-active::before{display:none}
}

/* ==========================================================================
   About IZT: gold accents, Belief card, handshake between the partner logos
   ========================================================================== */
.about-page .eyebrow,.about-page .news-kicker{color:var(--izt-gold-deep)}
.about-page .split-section .display-heading::after,.about-page .vision-section .display-heading::after,.about-page .founders-feature-copy h2::after,.about-page .partnership-copy h2::after{content:'';display:block;width:72px;height:4px;margin-top:18px;border-radius:2px;background:linear-gradient(90deg,var(--izt-gold),#e5a52c)}
.about-page .brand-principles span{border-color:#ecd391;background:var(--izt-gold-soft);color:var(--izt-gold-deep)}
.about-page .brand-principles span::first-letter{color:#9a6c0c}
/* Vision · Mission · Belief */
@media(min-width:981px){.vision-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.vision-grid article>span::before{background:var(--izt-gold)}
.vision-grid article:first-child>span{color:#f5d27c}
.vision-grid article.vision-belief{background:linear-gradient(140deg,#0b2a52 0%,#163f73 55%,#7a5a18 140%);color:#fff;border-color:#c9a24a}
.vision-grid article.vision-belief::before{border-color:#f2be4540;box-shadow:0 0 0 48px #f2be450d,0 0 0 105px #f2be4508}
.vision-grid article.vision-belief>span{color:#f5d27c}
.vision-grid article.vision-belief h3{font-size:clamp(1.8rem,2.4vw,2.6rem);line-height:1.12}
.vision-grid article.vision-belief h3 b{color:var(--izt-gold)}
.vision-grid article.vision-belief p{color:#dbe7f2}
/* Handshake */
.partnership-join{width:66px;height:66px;border:1.5px solid var(--izt-gold);background:radial-gradient(circle at 35% 30%,#fff9e8,#f6e7bd);color:#8a5f08!important}
.partnership-join .handshake{width:36px;height:36px}
@media(max-width:760px){.partnership-join{width:52px;height:52px}.partnership-join .handshake{width:28px;height:28px}}

/* Learning-journey highlight: a thin white → blue → gold border around the whole card
   (replaces the left strip) */
.program-category .program-card::before,
.program-category .program-card:is(.is-focus,:hover,.is-expanded)::before{content:'';position:absolute;inset:-1px;left:-1px;right:-1px;top:-1px;bottom:-1px;width:auto;height:auto;border-radius:inherit;padding:2px;background:linear-gradient(125deg,#ffffff 0%,#cfe2f1 16%,#5b9bd5 40%,#155bb0 58%,#c9952a 84%,#f2be45 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);box-shadow:none;transform:none;opacity:0;pointer-events:none;transition:opacity .45s var(--ease)}
@media(min-width:761px){
  .program-category .program-card:is(.is-focus,:hover,.is-expanded)::before{opacity:1}
  .program-category .program-card:is(.is-focus,:hover,.is-expanded){border-color:transparent;box-shadow:0 18px 38px -22px #0b315d59,0 10px 28px -18px #f2be4555}
}
@media(max-width:760px){
  .program-category .program-card::before{border-radius:18px}
  .program-category .program-card.is-current::before{opacity:1}
  .program-category .program-card.is-current{border-color:transparent}
}
/* Thicker learning-journey border so the gradient reads clearly */
.program-category .program-card::before,
.program-category .program-card:is(.is-focus,:hover,.is-expanded)::before{inset:-2px;left:-2px;right:-2px;top:-2px;bottom:-2px;padding:4px;background:linear-gradient(125deg,#ffffff 0%,#d6e7f4 9%,#6aa6dc 30%,#155bb0 55%,#c9952a 82%,#f2be45 100%)}
@media(max-width:760px){
  .program-category .program-card::before{padding:3.5px;border-radius:20px}
}

/* Learning journeys: the focused card is the clear primary; the rest step back */
@media(min-width:761px){
  .program-category .program-card{transition:translate .45s var(--ease),scale .45s var(--ease),opacity .45s ease,filter .45s ease,box-shadow .45s var(--ease),border-color .3s,background-color .3s}
  .programs-section:has(.program-card.is-focus) .program-category .program-card:not(.is-focus):not(:hover):not(.is-expanded){opacity:.42;filter:saturate(.5);scale:.97}
  .program-category .program-card.is-focus{scale:1.025;translate:4px 0;z-index:2;box-shadow:0 28px 54px -24px #0b315d73,0 14px 34px -20px #f2be4566}
  .program-category .program-card.is-focus h3{color:var(--navy)}
}

/* ==========================================================================
   Learning journeys: on desktop the intro and category nav form one pinned
   left column that stays in view while the program cards scroll
   ========================================================================== */
@media(max-width:980px){.programs-aside{display:contents}}
@media(min-width:981px){
  .programs-layout{display:grid;grid-template-columns:minmax(300px,.36fr) minmax(0,.64fr);align-items:start;gap:clamp(32px,4vw,72px)}
  .programs-aside{position:sticky;top:112px;display:flex;flex-direction:column;gap:22px;max-height:calc(100vh - 128px);z-index:3}
  .programs-aside .programs-intro{position:static;margin:0;max-width:none}
  .programs-aside .programs-intro h2{position:static;width:auto;margin:10px 0 12px;padding:0;background:none;box-shadow:none;clip-path:none;white-space:normal;font-size:clamp(2rem,2.7vw,2.9rem);line-height:1.06}
  .programs-aside .programs-intro p{font-size:.98rem;line-height:1.5}
  .programs-aside .program-category-nav{position:static;top:auto;padding:12px 0}
  .programs-aside .program-category-kicker{display:none}
  .programs-aside .program-category-nav a{min-height:54px}
  .programs-section .program-category-panels{padding-top:4px}
}
@media(min-width:981px) and (max-height:820px){
  .programs-aside{gap:14px}
  .programs-aside .programs-intro h2{font-size:clamp(1.8rem,2.3vw,2.4rem)}
  .programs-aside .programs-intro p{font-size:.9rem}
  .programs-aside .program-category-nav a{min-height:44px;padding-block:6px}
}

/* Bigger "Our programs" label */
.programs-intro .news-kicker{font-size:.95rem;letter-spacing:.18em}
@media(max-width:760px){.programs-intro .news-kicker{font-size:.8rem}}

/* Hover no longer enlarges a card; only clicking (opening) a card makes it the focus */
@media(min-width:761px){
  .program-category .program-card:hover:not(.is-focus):not(.is-expanded){translate:0 0;scale:.97;border-color:#d2e0e5;box-shadow:none;background-color:#fff}
  .program-category .program-card:hover:not(.is-focus):not(.is-expanded)::before{opacity:0}
  .program-category .program-card:hover:not(.is-focus):not(.is-expanded) .program-expand span{translate:0 0}
  .programs-section:has(.program-card.is-focus) .program-category .program-card:hover:not(.is-focus):not(.is-expanded){opacity:.62;filter:saturate(.7)}
  .program-category .program-card.is-expanded{scale:1.025;translate:4px 0;z-index:2}
}

/* ==========================================================================
   IZT experiential model
   ========================================================================== */
.js :is(.izt-difference li,.cycle-track li,.c3-step,.mix-practices li,.mix-equation>*,.transform-word span,.transform-outcomes li){opacity:0}
.js .is-in :is(li,.c3-step),.js .mix-equation.is-in>*,.js .is-in .transform-word span{opacity:1;animation:xm-rise .8s var(--ease) calc(var(--i,0) * 110ms + .1s) backwards}
.js .mix-equation.is-in>:nth-child(2){animation-delay:.18s}.js .mix-equation.is-in>:nth-child(3){animation-delay:.3s}.js .mix-equation.is-in>:nth-child(4){animation-delay:.42s}.js .mix-equation.is-in>:nth-child(5){animation-delay:.54s}
@keyframes xm-rise{from{opacity:0;transform:translate3d(0,26px,0)}to{opacity:1;transform:none}}

/* Home: the IZT difference strip, on the dark end of the model story */
.izt-difference{position:relative;z-index:1;padding-top:30px;text-align:center}
.izt-difference .news-kicker{display:block;margin-bottom:22px;color:var(--izt-gold);font-size:.8rem;letter-spacing:.2em}
.izt-difference ul{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
.izt-difference li{display:flex;flex-direction:column;align-items:center;gap:12px}
.izt-difference-icon{display:grid;place-items:center;width:64px;height:64px;padding:16px;border-radius:50% 50% 50% 8px;rotate:-45deg;background:linear-gradient(140deg,#16467c,#0c2a52);border:1px solid #f2be4570;box-shadow:0 10px 24px -10px #000}
.izt-difference-icon .icon{rotate:45deg;color:var(--izt-gold);width:30px;height:30px}
.izt-difference strong{color:#eef5fb;font:700 .82rem/1.3 Figtree,sans-serif;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:760px){
  .izt-difference ul{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:22px}
  .izt-difference-icon{width:54px;height:54px;padding:13px}
  .izt-difference strong{font-size:.68rem}
}

/* Approach page shared headings */
:is(.cycle-section,.c3-section,.difference-section) .news-kicker{display:block;margin-bottom:14px;color:var(--izt-gold-deep)}
:is(.cycle-section,.c3-section,.difference-section) .display-heading::after{content:'';display:block;width:72px;height:4px;margin-top:16px;border-radius:2px;background:linear-gradient(90deg,var(--izt-gold),#e5a52c)}
:is(.cycle-section,.c3-section) .section-heading p{max-width:620px;margin-top:20px;color:var(--muted);font-size:1.05rem}

/* The IZT cycle */
.cycle-section{background:linear-gradient(180deg,#f6f9fb,#eaf2f6)}
.cycle-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:48px 0 0;padding:0;list-style:none;counter-reset:c}
.cycle-track li{position:relative;display:flex;flex-direction:column;gap:14px;min-height:150px;padding:26px 22px 24px;background:#fff;border:1px solid #d3e2ea;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,0 100%,18px 50%)}
.cycle-track li:first-child{clip-path:polygon(0 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,0 100%)}
.cycle-track li+li{margin-left:-10px;padding-left:34px}
.cycle-track li:nth-child(1){background:#ffffff}.cycle-track li:nth-child(2){background:#e3eff8}.cycle-track li:nth-child(3){background:#bcd6ee}.cycle-track li:nth-child(4){background:#1f5fa8;color:#fff}.cycle-track li:nth-child(5){background:linear-gradient(120deg,#c9952a,#f2be45);color:#10294b}
.cycle-num{font:700 .78rem Sora,sans-serif;letter-spacing:.12em;color:var(--izt-gold-deep)}
.cycle-track li:nth-child(4) .cycle-num{color:#f5d27c}.cycle-track li:nth-child(5) .cycle-num{color:#5a3d06}
.cycle-track strong{font:650 clamp(1.05rem,1.4vw,1.3rem)/1.25 Sora,sans-serif;letter-spacing:-.03em}
.cycle-loop{margin-top:20px;color:var(--muted);font-size:.95rem}
.cycle-loop span{color:var(--izt-gold-deep);font-size:1.2rem;margin-right:6px}
@media(max-width:900px){
  .cycle-track{grid-template-columns:1fr;gap:8px}
  .cycle-track li,.cycle-track li:first-child{min-height:0;clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),50% 100%,0 calc(100% - 12px));padding:18px 20px 26px}
  .cycle-track li+li{margin-left:0;padding-left:20px}
  .cycle-track li{flex-direction:row;align-items:baseline;gap:14px}
}

/* C3 ladder: steps rise in the white → blue → gold building-block gradient */
.c3-section{background:#fbfcfd}
.c3-chart{position:relative;margin-top:50px;padding:0 0 34px 34px;border-left:2px solid #9fb9cb;border-bottom:2px solid #9fb9cb}
.c3-axis{position:absolute;color:#6a8195;font:800 .7rem Figtree,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.c3-axis-y{left:-14px;top:0;transform:translateX(-100%) rotate(-90deg);transform-origin:right top}
.c3-axis-x{right:0;bottom:-26px}
.c3-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:12px;margin:0;padding:0;list-style:none;min-height:420px}
.c3-step{display:flex;align-items:flex-end;height:100%}
.c3-bar{display:flex;flex-direction:column;gap:10px;width:100%;padding:22px 18px;border-radius:10px 10px 0 0;border:1px solid #d3e2ea;transform-origin:bottom}
.c3-step-1 .c3-bar{height:36%;background:#ffffff;color:#10294b}
.c3-step-2 .c3-bar{height:52%;background:#dcebf7;color:#10294b}
.c3-step-3 .c3-bar{height:68%;background:#6ea7dc;color:#fff;border-color:#6ea7dc}
.c3-step-4 .c3-bar{height:84%;background:#155bb0;color:#fff;border-color:#155bb0}
.c3-step-5 .c3-bar{height:100%;background:linear-gradient(160deg,#f6cf6a,#d69a26);color:#10294b;border-color:#d69a26;box-shadow:0 18px 40px -20px #c9952a}
.c3-bar strong{font:700 clamp(.95rem,1.3vw,1.2rem)/1.2 Sora,sans-serif;letter-spacing:-.03em}
.c3-bar span{font-size:.88rem;line-height:1.45;opacity:.85}
.js .c3-chart.is-in .c3-bar{animation:c3-grow 1s var(--ease) calc(var(--i,0) * 160ms + .1s) backwards}
.js .c3-chart .c3-step{opacity:1}
.js .c3-chart:not(.is-in) .c3-bar{transform:scaleY(0)}
@keyframes c3-grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@media(max-width:760px){
  .c3-chart{padding:0 0 30px 22px}
  .c3-axis-y{display:none}
  .c3-steps{grid-template-columns:1fr;min-height:0;gap:10px}
  .c3-step{height:auto}
  .c3-bar,.c3-step .c3-bar{height:auto;border-radius:0 10px 10px 0;transform-origin:left}
  .c3-step-1 .c3-bar{width:62%}.c3-step-2 .c3-bar{width:72%}.c3-step-3 .c3-bar{width:82%}.c3-step-4 .c3-bar{width:91%}.c3-step-5 .c3-bar{width:100%}
  .c3-step{order:calc(5 - var(--i))}
  .js .c3-chart:not(.is-in) .c3-bar{transform:scaleX(0)}
  @keyframes c3-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
}

/* Knowledge + Skills + Behaviour */
.learning-mix .eyebrow{color:var(--izt-gold)}
.mix-equation{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 22px;margin:18px 0 22px;font-size:clamp(2.4rem,5.4vw,5.6rem);line-height:1.05;letter-spacing:-.06em}
.mix-equation b{color:var(--izt-gold);font-weight:400}
.learning-mix .large-copy{max-width:640px;color:#d3e1ec;font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.55}
.mix-practices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:40px 0 0;padding:0;list-style:none}
.mix-practices li{display:flex;flex-direction:column;gap:16px;padding:22px 20px;border:1px solid #ffffff2e;border-radius:12px;background:#ffffff0d;transition:border-color .3s,background-color .3s}
.mix-practices li:hover{border-color:#f2be4599;background:#f2be4514}
.mix-practices li>span .icon{width:30px;height:30px;color:var(--izt-gold)}
.mix-practices strong{font:650 1.05rem/1.25 Sora,sans-serif;letter-spacing:-.03em}
@media(max-width:900px){.mix-practices{grid-template-columns:repeat(2,minmax(0,1fr))}.mix-practices li:last-child{grid-column:1/-1}}

/* The IZT difference */
.difference-section{background:linear-gradient(180deg,#eef4f8,#f8fafb)}
.difference-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:44px 0 0;padding:0;list-style:none}
.difference-grid li{display:flex;flex-direction:column;gap:14px;padding:28px 22px;background:#fff;border:1px solid #d6e3ea;border-top:3px solid var(--izt-gold);border-radius:4px 4px 12px 12px}
.difference-icon{display:grid;place-items:center;width:52px;height:52px;padding:12px;border-radius:50% 50% 50% 8px;rotate:-45deg;background:linear-gradient(140deg,#16467c,#0c2a52)}
.difference-icon .icon{rotate:45deg;color:var(--izt-gold);width:26px;height:26px}
.difference-grid h3{margin:4px 0 0;font-size:1.15rem;line-height:1.25;letter-spacing:-.03em}
.difference-grid p{margin:0;color:var(--muted);font-size:.92rem;line-height:1.5}
@media(max-width:1100px){.difference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.difference-grid li:last-child{grid-column:1/-1}}
@media(max-width:560px){.difference-grid{grid-template-columns:1fr}}

/* TRANSFORM */
.transform-section{background:#fbfcfd;text-align:center;overflow:hidden}
.transform-word{display:flex;justify-content:center;gap:clamp(4px,1.2vw,20px);margin:0;font:800 clamp(2.6rem,9vw,8.5rem)/1 Sora,sans-serif;letter-spacing:-.02em;background:linear-gradient(90deg,#9cc3e6 0%,#155bb0 45%,#c9952a 80%,#f2be45 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.transform-word span{display:inline-block;background:inherit;-webkit-background-clip:text;background-clip:text}
.transform-lede{margin:14px auto 34px;color:var(--muted);font-size:1.05rem}
.transform-outcomes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:900px;margin:0 auto;padding:0;list-style:none}
.transform-outcomes li{display:flex;flex-direction:column;align-items:center;gap:12px;padding:22px 12px;border-radius:14px;background:#fff;border:1px solid #d6e3ea}
.transform-outcomes li>span{display:grid;place-items:center;width:58px;height:58px;padding:14px;border-radius:50%;color:#fff}
.transform-outcomes li:nth-child(1)>span{background:#5b9bd5}.transform-outcomes li:nth-child(2)>span{background:#155bb0}.transform-outcomes li:nth-child(3)>span{background:#c9952a}.transform-outcomes li:nth-child(4)>span{background:#f2be45;color:#10294b}
.transform-outcomes strong{font:650 1rem Sora,sans-serif;letter-spacing:-.02em;color:var(--navy)}
@media(max-width:600px){.transform-outcomes{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* TRANSFORM: one colour per letter so the white-blue-gold progression runs across the word */
.transform-word{background:none;color:var(--navy)}
.transform-word span{background:none;-webkit-background-clip:border-box;background-clip:border-box}
.transform-word span:nth-child(1){color:#8fbbe3}.transform-word span:nth-child(2){color:#6ea7dc}.transform-word span:nth-child(3){color:#4b8dd0}.transform-word span:nth-child(4){color:#2a72c0}.transform-word span:nth-child(5){color:#155bb0}.transform-word span:nth-child(6){color:#3c5f86}.transform-word span:nth-child(7){color:#9b7a33}.transform-word span:nth-child(8){color:#c9952a}.transform-word span:nth-child(9){color:#f2be45}
@media(max-width:760px){.izt-difference ul{display:flex;flex-wrap:wrap;justify-content:center}.izt-difference li{flex:0 0 31%}}

/* ==========================================================================
   Home model: once all five sectors have built, the wheel slides left and
   the IZT difference arrives from the right, one item after another
   ========================================================================== */
.model-story-home .model-scroll-track{height:540vh}
.model-story-home .model-wheel-stage{position:sticky;overflow:hidden}
.model-story-home .model-wheel,.model-story-home .model-wheel-prompt{transition:translate 1s var(--ease),scale 1s var(--ease)}
.model-story-home.is-complete .model-wheel,.model-story-home.is-complete .model-wheel-prompt{translate:-22vw 0}
.izt-side{position:absolute;z-index:2;top:50%;right:max(4vw,calc((100vw - 1320px) / 2));width:min(36vw,470px);translate:0 -38%;pointer-events:none}
.model-story-home.is-complete .izt-side{pointer-events:auto}
.izt-side-kicker{display:block;margin-bottom:16px;color:var(--izt-gold);font:800 .82rem Figtree,sans-serif;letter-spacing:.2em;text-transform:uppercase;opacity:0;translate:40px 0;transition:opacity .5s ease,translate .7s var(--ease)}
.izt-side ul{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.izt-side li{display:flex;align-items:center;gap:18px;padding:12px 18px 12px 12px;border:1px solid #f2be4540;border-radius:14px;background:linear-gradient(100deg,#0f2f58e6,#0a1f3dcc);box-shadow:0 14px 30px -18px #000;opacity:0;translate:90px 0;transition:opacity .45s ease,translate .7s var(--ease)}
.izt-side strong{color:#eef5fb;font:650 clamp(1rem,1.3vw,1.2rem)/1.25 Sora,sans-serif;letter-spacing:-.02em}
.izt-side-icon{flex:none;display:grid;place-items:center;width:52px;height:52px;padding:13px;border-radius:50% 50% 50% 8px;rotate:-45deg;background:linear-gradient(140deg,#16467c,#0c2a52);border:1px solid #f2be4570}
.izt-side-icon .icon{rotate:45deg;color:var(--izt-gold);width:26px;height:26px}
.model-story-home.is-complete .izt-side-kicker{opacity:1;translate:0 0;transition-delay:.55s}
.model-story-home.is-complete .izt-side li{opacity:1;translate:0 0;transition-delay:calc(var(--i) * .16s + .7s)}
/* Phones: the wheel shrinks into the left half and the list sits on the right */
@media(max-width:760px){
  .model-story-home .model-scroll-track{height:470svh}
  .model-story-home.is-complete .model-wheel{translate:-25vw 0;scale:.5}
  .model-story-home.is-complete .model-wheel-prompt{opacity:0}
  .izt-side{right:12px;width:50vw;translate:0 -30%}
  .izt-side-kicker{font-size:.62rem;letter-spacing:.14em;margin-bottom:10px}
  .izt-side ul{gap:8px}
  .izt-side li{gap:10px;padding:7px 10px 7px 7px;border-radius:10px}
  .izt-side-icon{width:34px;height:34px;padding:8px}
  .izt-side-icon .icon{width:17px;height:17px}
  .izt-side strong{font-size:.74rem}
}
.izt-side-kicker{color:var(--izt-gold-deep)}

/* IZT difference panel: centred, calmer styling, capitals */
.izt-side{left:72vw;right:auto;width:min(34vw,430px);translate:-50% -50%}
.izt-side-kicker{text-align:left}
.izt-side ul{gap:0;border-top:1px solid #ffffff2b}
.izt-side li{gap:16px;padding:15px 4px;border:0;border-bottom:1px solid #ffffff2b;border-radius:0;background:none;box-shadow:none}
.izt-side-icon{width:auto;height:auto;padding:0;border:0;border-radius:0;rotate:0deg;background:none}
.izt-side-icon .icon{rotate:0deg;width:24px;height:24px;color:#e8c46a}
.izt-side strong{color:#e9f1f8;font:700 clamp(.82rem,1vw,.95rem)/1.3 Figtree,sans-serif;letter-spacing:.14em;text-transform:uppercase}
@media(max-width:760px){
  .izt-side{left:74vw;width:47vw}
  .izt-side li{gap:9px;padding:9px 2px}
  .izt-side-icon .icon{width:17px;height:17px}
  .izt-side strong{font-size:.6rem;letter-spacing:.1em}
}
/* Wheel stage names in capitals */
.wheel-sector-title{text-transform:uppercase;letter-spacing:.02em}
.wheel-sector-title{font-size:32px}

/* Wheel text and icons follow the white → blue → gold sector colours */
.wheel-sector[data-stage="0"] :is(.wheel-sector-title,.wheel-sector-caption),.wheel-sector[data-stage="1"] :is(.wheel-sector-title,.wheel-sector-caption){fill:#10294b}
.wheel-sector[data-stage="0"] .wheel-sector-icon,.wheel-sector[data-stage="1"] .wheel-sector-icon{stroke:#b98617}
.wheel-sector[data-stage="4"] :is(.wheel-sector-title,.wheel-sector-caption){fill:#10294b}
.wheel-sector[data-stage="4"] .wheel-sector-icon{stroke:#10294b}
.wheel-sector[data-stage="0"] .wheel-sector-shape{stroke:#c3d6e4}

/* Bigger "The IZT difference" heading */
.izt-side-kicker{margin-bottom:20px;font:800 clamp(1.1rem,1.5vw,1.45rem)/1.2 Sora,sans-serif;letter-spacing:.14em}
@media(max-width:760px){.izt-side-kicker{font-size:.82rem;letter-spacing:.1em;margin-bottom:12px}}
.izt-side ul{border-top-color:transparent;transition:border-color .5s ease}
.model-story-home.is-complete .izt-side ul{border-top-color:#ffffff2b;transition-delay:.6s}
/* Home: "Explore the complete IZT model" arrives under the difference list, after it */
.izt-side .izt-side-cta{margin-top:30px;color:#fff;border-bottom-color:#f2be45;opacity:0;translate:0 14px;transition:opacity .5s ease,translate .7s var(--ease)}
.izt-side .izt-side-cta:hover{color:var(--izt-gold)}
.model-story-home.is-complete .izt-side-cta{opacity:1;translate:0 0;transition-delay:1.65s}
.model-story-home .model-story-end{padding-top:0;padding-bottom:clamp(40px,6vw,80px)}
@media(max-width:760px){.izt-side .izt-side-cta{margin-top:18px;font-size:.72rem;gap:8px}}
@media(max-width:760px){.izt-side .izt-side-cta{font-size:.62rem;white-space:nowrap;gap:6px;padding-bottom:7px}}

/* ==========================================================================
   Home: the IZT difference sits on a frosted navy panel so every item reads
   clearly, wherever the background gradient is light
   ========================================================================== */
.izt-side{padding:24px 28px 26px;border-radius:18px;background:linear-gradient(160deg,#0a1f3dd9,#081a33e6);border:1px solid #ffffff1f;box-shadow:0 24px 50px -28px #000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;transition:opacity .6s ease}
.model-story-home.is-complete .izt-side{opacity:1;transition-delay:.4s}
.izt-side-kicker{color:var(--izt-gold)}
@media(max-width:760px){.izt-side{padding:14px 14px 16px;border-radius:12px;width:50vw;left:74vw}}

/* ==========================================================================
   Approach page: once the wheel is built, each phase name moves up and the
   sector shows how the engagement runs at that phase
   ========================================================================== */
.wheel-cycle-text{opacity:0;font:650 21px Figtree,sans-serif;fill:#fbfcf9;pointer-events:none}
.wheel-sector[data-stage="0"] .wheel-cycle-text,.wheel-sector[data-stage="1"] .wheel-cycle-text,.wheel-sector[data-stage="4"] .wheel-cycle-text{fill:#10294b}
.model-story-full :is(.wheel-sector-icon,.wheel-sector-caption,.wheel-cycle-text){transition:opacity .45s ease}
.model-story-full .wheel-sector-title{transition:transform .8s var(--ease)}
.model-story-full.is-complete :is(.wheel-sector-icon,.wheel-sector-caption){opacity:0}
.model-story-full.is-complete .wheel-sector-title{transform:translateY(-52px)}
.model-story-full.is-complete .wheel-cycle-text{opacity:1;transition-delay:.55s}
/* Fit intro, wheel, prompt and CTA inside the first pinned view */
.model-story-full .model-story-intro{padding-top:clamp(12px,2.5svh,28px)}
.model-stage-cta{margin-top:12px;opacity:0;translate:0 12px;transition:opacity .5s ease,translate .7s var(--ease);pointer-events:none}
.model-story-full.is-complete .model-stage-cta{opacity:1;translate:0 0;transition-delay:1s;pointer-events:auto}
.model-stage-cta .button{min-height:50px;padding:12px 24px}
.model-story-full .model-story-end{display:none}

/* Bigger section labels on the Approach page */
.model-page :is(.eyebrow,.news-kicker,.page-hero .breadcrumb span){font-size:clamp(.95rem,1.15vw,1.15rem);letter-spacing:.16em}
@media(max-width:760px){.model-page :is(.eyebrow,.news-kicker){font-size:.85rem;letter-spacing:.12em}}
@media(min-width:761px){.model-story-full .model-wheel{width:min(56svh,620px,94vw)}.model-story-full .model-wheel-stage{gap:2px}}
/* Lower sectors sit under the hub, so their names lift less and the cycle text sits lower */
.model-story-full.is-complete .wheel-sector:is([data-stage="2"],[data-stage="3"]) .wheel-sector-title{transform:translateY(-30px)}
.wheel-sector:is([data-stage="2"],[data-stage="3"]) .wheel-cycle-text{transform:translateY(12px)}

/* ==========================================================================
   Home: wheel + IZT difference laid out by script (no overlap), subtler panel
   ========================================================================== */
.model-story-home.is-complete .model-wheel,.model-story-home.is-complete .model-wheel-prompt,
.model-story-home.is-complete .model-wheel{translate:var(--wheel-shift,0px) 0;scale:var(--wheel-scale,1)}
.model-story-home.is-complete .model-wheel-prompt{translate:var(--wheel-shift,0px) 0;scale:1}
.izt-side{translate:0 -50%;right:auto;background:linear-gradient(180deg,#14335fb3 0%,#0d264c80 55%,#0a1f3d40 100%);border:1px solid #ffffff24;box-shadow:0 20px 44px -30px #000a;-webkit-backdrop-filter:blur(18px) saturate(1.2);backdrop-filter:blur(18px) saturate(1.2)}
@media(max-width:760px){.izt-side{left:auto;width:auto;translate:0 -50%}.model-story-home.is-complete .model-wheel-prompt{opacity:0}}

/* ==========================================================================
   Approach: phase names travel to the rim of each sector and follow the
   circle; the engagement step becomes the focus text inside
   ========================================================================== */
.wheel-rim-title{font:800 27px Sora,sans-serif;letter-spacing:.12em;fill:#10294b;opacity:0;transition:opacity .6s ease}
.wheel-sector:is([data-stage="2"],[data-stage="3"]) .wheel-rim-title{fill:#f3f8fc}
.model-story-full.is-complete .wheel-sector-title{transform:translateY(-120px) scale(.8);opacity:0;transition:transform .7s var(--ease),opacity .45s ease .2s}
.model-story-full.is-complete .wheel-sector:is([data-stage="2"],[data-stage="3"]) .wheel-sector-title{transform:translateY(80px) scale(.8)}
.model-story-full.is-complete .wheel-rim-title{opacity:1;transition-delay:.45s}
.wheel-cycle-text{font:700 26px Sora,sans-serif;letter-spacing:-.02em}
.wheel-sector:is([data-stage="2"],[data-stage="3"]) .wheel-cycle-text{transform:none}
.model-story-full.is-complete .wheel-cycle-text{transition-delay:.7s}

/* ==========================================================================
   C3 ladder: icons, arrows between bars, and always a time-on-x-axis graph
   ========================================================================== */
.c3-steps{gap:28px}
.c3-bar{position:relative;overflow:visible}
.c3-icon .icon{width:30px;height:30px}
.c3-step-1 .c3-icon,.c3-step-2 .c3-icon{color:#155bb0}
.c3-step-3 .c3-icon,.c3-step-4 .c3-icon{color:#f5d27c}
.c3-step-5 .c3-icon{color:#10294b}
.c3-arrow{position:absolute;top:-12px;right:-31px;width:34px;height:26px;fill:none;stroke:#c9952a;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .4s ease}
.js .c3-chart.is-in .c3-arrow{opacity:1;transition-delay:calc(var(--i,0) * 160ms + .9s)}
.c3-swipe{display:none}
@media(max-width:760px){
  .c3-scroll{margin-inline:-18px;padding:0 18px 6px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .c3-scroll::-webkit-scrollbar{display:none}
  .c3-chart{width:660px;padding:0 0 30px 26px}
  .c3-axis-y{display:block}
  .c3-steps{grid-template-columns:repeat(5,minmax(0,1fr));min-height:360px;gap:24px}
  .c3-step{height:100%;order:0}
  .c3-bar,.c3-step .c3-bar{border-radius:10px 10px 0 0;transform-origin:bottom;padding:16px 12px}
  .c3-step-1 .c3-bar{width:auto;height:40%}.c3-step-2 .c3-bar{width:auto;height:55%}.c3-step-3 .c3-bar{width:auto;height:70%}.c3-step-4 .c3-bar{width:auto;height:85%}.c3-step-5 .c3-bar{width:auto;height:100%}
  .c3-bar strong{font-size:.86rem}.c3-bar span{font-size:.76rem}
  .c3-arrow{right:-27px;width:28px;height:22px}
  .js .c3-chart:not(.is-in) .c3-bar{transform:scaleY(0)}
  @keyframes c3-grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
  .c3-swipe{display:block;margin-top:10px;color:var(--izt-gold-deep);font:700 .78rem Figtree,sans-serif;letter-spacing:.06em}
}

/* The IZT difference (Approach): icon, title and text line up across all five cards */
.difference-grid{grid-auto-rows:auto}
.difference-grid li{display:grid;grid-row:span 3;grid-template-rows:subgrid;gap:14px;align-content:start}
.difference-grid li h3{align-self:end}
/* Rim titles: capitals, and the focus text on the side sectors moves inward clear of the rim */
.wheel-rim-title{font-size:24px;text-transform:uppercase;letter-spacing:.16em}
.wheel-cycle-text{font-size:23px}
.model-story-full.is-complete .wheel-sector[data-stage="1"] .wheel-cycle-text{transform:translate(-30px,10px)}
.model-story-full.is-complete .wheel-sector[data-stage="4"] .wheel-cycle-text{transform:translate(30px,10px)}
.model-story-full.is-complete .wheel-sector[data-stage="0"] .wheel-cycle-text{transform:translateY(14px)}
.model-story-full .wheel-cycle-text{transition:opacity .45s ease,transform .7s var(--ease)}
@media(max-width:760px){.c3-steps{min-height:470px}}
.model-story-full.is-complete .wheel-sector[data-stage="4"] .wheel-cycle-text{transform:translate(8px,6px)}
/* Focus text runs along each sector at mid-radius, clear of the rim and the hub */
.model-story-full.is-complete .wheel-sector .wheel-cycle-text{transform:none}
.wheel-cycle-text{font:700 22px Sora,sans-serif;letter-spacing:-.02em}
/* Rim titles step back: smaller, lighter, quieter, so the focus text leads */
.wheel-rim-title{font:600 16px Figtree,sans-serif;letter-spacing:.28em;fill:#3f5b7a}
.wheel-sector:is([data-stage="2"],[data-stage="3"]) .wheel-rim-title{fill:#c9dbec}
.wheel-sector[data-stage="4"] .wheel-rim-title{fill:#6b4a0c}
.model-story-full.is-complete .wheel-rim-title{opacity:.85}
.difference-grid h3{white-space:nowrap}
.wheel-cycle-text{font-size:20px}
.wheel-cycle-side .wheel-cycle-text{font-size:18px}
.wheel-cycle-text,.wheel-cycle-side .wheel-cycle-text{font-size:19px}
.wheel-cycle-text,.wheel-cycle-side .wheel-cycle-text{font-size:18px}
/* Step text: one size everywhere (positions are fitted in build.mjs) */
.wheel-cycle-text,.wheel-cycle-side .wheel-cycle-text{font:700 22px Sora,sans-serif;letter-spacing:-.02em}
/* Phase names ride on the border band, along the circumference */
.wheel-rim-title,.wheel-sector:is([data-stage="2"],[data-stage="3"]) .wheel-rim-title,.wheel-sector[data-stage="4"] .wheel-rim-title{font:700 12.5px Figtree,sans-serif;letter-spacing:.34em;fill:#f3d68c}
.model-story-full.is-complete .wheel-rim-title{opacity:1}

/* Bigger "The point of learning" label on the home page */
.belief-section .belief-main .micro-label{display:block;font-size:clamp(1rem,1.3vw,1.3rem);letter-spacing:.18em;margin-bottom:14px}
.wheel-rim-title,.wheel-sector:is([data-stage="2"],[data-stage="3"]) .wheel-rim-title,.wheel-sector[data-stage="4"] .wheel-rim-title{font-size:15px;letter-spacing:.32em}
.wheel-band{stroke:transparent;stroke-width:32}
.model-story-full .wheel-band{stroke:#0b2347;transition:stroke .6s ease}

/* ==========================================================================
   Hero stack performance: no SVG filters (they forced a full re-render of the
   stack on every scroll frame). Depth comes from cheap static shapes instead.
   ========================================================================== */
.stack-layer,.stack-layer-1,.stack-light-column,.stack-target,.hero-art-wrap{filter:none!important}
.stack-shade{fill:#010a1a;opacity:.32}
.stack-layer-1 .stack-shade{opacity:.42}
.hero-art-glow{filter:none!important;background:radial-gradient(ellipse at center,#58aede70 0%,#58aede30 40%,transparent 72%)}
.hero-art-wrap{will-change:transform}
/* chevron pulse animates opacity and stroke only */
@keyframes stack-climb{0%,100%{opacity:.3;stroke-width:3.2}9%{opacity:1;stroke-width:4.2}26%{opacity:.3;stroke-width:3.2}}
.stack-target{stroke-width:4}
.stack-light-column{stroke-width:3}
/* The stack's gentle float runs on its wrapper, which the GPU moves for free,
   instead of inside the SVG (which forced a repaint every frame). */
.stack-layers{animation:none!important}
.home-hero .hero-art-wrap{animation:stack-float-wrap 8s ease-in-out 1.2s infinite alternate}
@keyframes stack-float-wrap{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-10px,0)}}

/* ==========================================================================
   C3 ladder, adaptive: every bar grows to fit its text; the staircase comes
   from a top offset that scales with the screen, so nothing can bleed out
   ========================================================================== */
.c3-chart{--rise:clamp(26px,5.2vw,78px)}
.c3-steps,.c3-steps{min-height:0;align-items:stretch}
.c3-step{height:auto;display:flex;flex-direction:column;justify-content:flex-end;padding-top:calc((4 - var(--i)) * var(--rise))}
.c3-step .c3-bar,.c3-step-1 .c3-bar,.c3-step-2 .c3-bar,.c3-step-3 .c3-bar,.c3-step-4 .c3-bar,.c3-step-5 .c3-bar{height:auto;flex:1 1 auto;min-height:150px;width:auto}
.c3-bar strong{overflow-wrap:anywhere;hyphens:auto}
.c3-icon .head-icon{width:44px;height:44px}
/* Larger axis titles */
.c3-axis{font-size:clamp(.82rem,1vw,1rem);letter-spacing:.18em;color:#4f6880}
.c3-axis-x{bottom:-32px}
.c3-chart{padding-bottom:40px}
@media(max-width:760px){
  .c3-chart{--rise:30px;width:680px}
  .c3-step .c3-bar,.c3-step-1 .c3-bar,.c3-step-2 .c3-bar,.c3-step-3 .c3-bar,.c3-step-4 .c3-bar,.c3-step-5 .c3-bar{min-height:130px}
  .c3-icon .head-icon{width:36px;height:36px}
}
.c3-chart,.c3-chart{padding-bottom:0;margin-bottom:44px}
@media(max-width:760px){.c3-chart{padding-bottom:0;margin-bottom:40px}}

/* Phones: the people section flows normally (pinning cut it off on real
   screen heights); tap a partner card to switch */
@media(max-width:760px){
  .partner-scroll-track{height:auto}
  .about-home .about-home-heading,.about-home .partner-showcase{position:static;top:auto}
  .partner-option{cursor:pointer;-webkit-tap-highlight-color:transparent}
  .partner-list::after{content:'Tap a name to read their profile';grid-column:1/-1;display:block;margin-top:6px;color:var(--izt-gold-deep);font:700 .74rem Figtree,sans-serif;letter-spacing:.05em;text-align:center}
}
@media(max-width:760px){.about-home .partner-showcase{height:auto;min-height:0}}
@media(max-width:760px){.model-story-full .model-wheel{width:min(94vw,calc(100svh - 330px))}}

/* Phones: show the whole magazine cover (the printed names were being cropped) */
@media(max-width:760px){
  .founders-feature-image,.media-press-cover,.news-cover{height:auto!important;aspect-ratio:auto!important;max-height:none!important}
  .founders-feature-image img,.media-press-cover img,.news-cover img{height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;scale:1!important;translate:none!important}
}
/* Phones: C3 graph wide enough that stage names never break mid-word */
@media(max-width:760px){
  .c3-chart{width:860px}
  .c3-bar strong{overflow-wrap:normal;hyphens:manual;word-break:normal}
}

/* Line-drawn arrows (replace text arrows, which iPhones can render as emoji) */
svg.arr{display:inline-block;width:1em;height:1em;vertical-align:-.14em;flex:none;overflow:visible}
.button svg.arr,.text-link svg.arr,.header-cta svg.arr{width:1.05em;height:1.05em}
.program-expand svg.arr{width:.85em;height:.85em;vertical-align:-.08em}

/* ==========================================================================
   Home intro (once per visit): logo and name, large, then they fly into the
   header as the page appears
   ========================================================================== */
html.has-intro::before{content:'';position:fixed;inset:0;z-index:9980;background:linear-gradient(165deg,#f9fbfc 0%,#e8f0fa 55%,#dbe6f6 100%)}
.intro-hold .home-hero,.intro-hold .home-hero *{animation-play-state:paused!important}
.intro-brand-hidden .site-header .brand{opacity:0}
.intro-lock,.intro-lock body{overflow:hidden}
.izt-intro{position:fixed;inset:0;z-index:9985;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(14px,2.4vh,26px);padding:0 20px;text-align:center;cursor:pointer;background:radial-gradient(ellipse 60% 55% at 50% 46%,#ffffff 0%,#f1f6fc 45%,transparent 75%),linear-gradient(165deg,#f9fbfc 0%,#e8f0fa 55%,#dbe6f6 100%);transition:opacity .8s ease}
.izt-intro.is-leaving{opacity:0;pointer-events:none}
.izt-intro-logo{width:clamp(130px,19vh,220px);opacity:0;filter:drop-shadow(0 18px 30px #0c2d6026)}
.izt-intro.is-go .izt-intro-logo{animation:izt-intro-logo 1.1s cubic-bezier(.2,.8,.2,1) .05s forwards}
@keyframes izt-intro-logo{0%{opacity:0;transform:scale(.7) translateY(14px)}100%{opacity:1;transform:none}}
.izt-intro-name{margin:0;font:800 clamp(2.2rem,6.4vw,5.6rem)/1.04 Sora,sans-serif;letter-spacing:-.05em;color:#102d55}
.izt-intro-name .w{display:inline-block;white-space:nowrap}
.izt-intro-name .w>span{display:inline-block;opacity:0}
.izt-intro.is-go .izt-intro-name .w>span{animation:izt-intro-letter .8s cubic-bezier(.2,.8,.2,1) calc(.3s + var(--k) * 30ms) forwards}
@keyframes izt-intro-letter{from{opacity:0;transform:translateY(.4em)}to{opacity:1;transform:none}}
.izt-intro-sub{margin:0;color:#2a6aa3;font:700 clamp(.7rem,1.3vh,.9rem) Figtree,sans-serif;letter-spacing:.38em;text-indent:.38em;text-transform:uppercase;opacity:0}
.izt-intro.is-go .izt-intro-sub{animation:izt-intro-sub .8s ease 1s forwards}
@keyframes izt-intro-sub{to{opacity:1}}
.izt-intro.is-landing .izt-intro-sub{animation:none;opacity:0;transition:opacity .25s}
.izt-intro.is-landing{background:transparent;transition:background .8s ease}
@media(max-width:700px){.izt-intro-sub{letter-spacing:.2em;text-indent:.2em}}
/* IZT belief: the I, Z and T flash and then settle in IZT gold */
.belief-initial{color:var(--izt-gold)}
@keyframes belief-initial{0%{color:#fff}45%{color:#ffe08a;transform:scale(1.18)}100%{color:var(--izt-gold);transform:none}}
