:root{--bg:#e8edf4;--white:#fff;--paper:#f5f7fa;--ink:#0a1426;--muted:#667185;--line:#dbe1e9;--blue:#3158ed;--blue2:#8db8ff;--pale:#dce8ff;--navy:#0b162a;--radius:22px;--max:1380px;--font:'Inter',Arial,sans-serif;--type-xs:12px;--type-sm:14px;--type-base:16px;--type-lg:18px;--type-xl:22px;--type-2xl:24px;--type-3xl:32px;--type-section:48px;--type-hero:66px;--leading-2:16px;--leading-3:24px;--leading-4:32px;--leading-5:40px;--leading-6:48px;--leading-7:56px;--leading-9:72px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--type-base);line-height:var(--leading-3);font-weight:400;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}p{line-height:var(--leading-3);color:var(--muted)}h1,h2,h3,p{margin-top:0}img{display:block;max-width:100%}.site-header{position:sticky;top:0;z-index:100;padding:16px 22px 0}.nav-wrap{height:68px;max-width:var(--max);margin:auto;background:rgba(242,247,255,.62);-webkit-backdrop-filter:blur(22px) saturate(145%);backdrop-filter:blur(22px) saturate(145%);border:1px solid rgba(255,255,255,.72);border-radius:18px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;box-shadow:0 10px 30px rgba(15,29,53,.06)}.brand{display:flex;align-items:center;gap:11px;font-size:var(--type-lg);line-height:var(--leading-3);letter-spacing:.05em;white-space:nowrap}.brand i{width:29px;height:29px;border:2px solid var(--blue);border-radius:50%;position:relative}.brand i:after{content:"";position:absolute;inset:6px;border:1px solid var(--blue);border-radius:50%}.brand strong{font-weight:800}.nav-wrap nav{display:flex;gap:5px;padding:4px;background:rgba(238,243,250,.72);border-radius:999px}.nav-wrap nav a{padding:9px 14px;border-radius:999px;font-size:var(--type-sm);line-height:var(--leading-3);font-weight:600;color:#455064;transition:.2s}.nav-wrap nav a:hover{background:rgba(255,255,255,.78);color:var(--ink);box-shadow:0 2px 10px rgba(10,20,38,.07)}.nav-right{display:flex;align-items:center;gap:13px;font-size:var(--type-sm);line-height:var(--leading-3)}.search{border:0;background:transparent;font-size:var(--type-lg)}.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;border-radius:999px;min-height:43px;padding:0 19px;font-size:var(--type-sm);line-height:var(--leading-3);font-weight:600}.nav-cta,.button.dark{background:var(--navy);color:#fff}.button.light{background:#fff;color:var(--ink)}.button span,.text-link span,.nav-cta span{font-size:var(--type-base)}.mobile-menu{display:none}.mobile-menu summary{font-size:var(--type-sm);line-height:var(--leading-3);cursor:pointer}.mobile-menu summary::marker{display:none}.mobile-menu>div{position:absolute;left:22px;right:22px;top:84px;padding:24px;background:#fff;border-radius:15px;display:grid;gap:15px;box-shadow:0 16px 36px rgba(10,20,38,.15)}
.site-canvas,.section-wrap,.editorial-shell{max-width:var(--max);margin:22px auto;background:#fff;border-radius:var(--radius);overflow:hidden}.home-canvas{padding:26px}.pill{display:inline-flex;align-items:center;gap:8px;font-size:.65rem;color:var(--blue);letter-spacing:.02em}.dot{width:7px;height:7px;border:1px solid var(--blue);border-radius:50%;position:relative}.dot:after{content:"";position:absolute;width:2px;height:2px;border-radius:50%;background:var(--blue);inset:50%;transform:translate(-50%,-50%)}.text-link{display:inline-flex;align-items:center;gap:11px;font-size:.75rem;font-weight:600;border-bottom:1px solid #aeb7c4;padding-bottom:4px}.actions{display:flex;align-items:center;gap:24px;margin-top:32px}
.hero{min-height:680px;background:var(--navy);border-radius:18px;color:#fff;display:grid;grid-template-columns:.9fr 1.1fr;overflow:hidden}.hero-copy{padding:68px 60px 34px;display:flex;flex-direction:column}.hero-copy .pill{color:#b9d1ff}.hero-copy .dot{border-color:#b9d1ff}.hero-copy .dot:after{background:#b9d1ff}.hero h1{font-size:clamp(3.7rem,5.6vw,6.1rem);line-height:1.01;letter-spacing:-.055em;font-weight:300;max-width:700px;margin:34px 0 26px}.hero-copy>p{font-size:1.04rem;color:#cbd2df;max-width:620px}.hero .text-link{color:#fff;border-color:#647087}.hero-proof{margin-top:auto;padding-top:35px;display:flex;gap:0}.hero-proof span{font-size:.65rem;padding:0 16px;border-right:1px solid #354156;color:#aeb7c8}.hero-proof span:first-child{padding-left:0}.blue-visual{position:relative;min-height:680px;overflow:hidden;background:radial-gradient(circle at 25% 20%,#bcd8ff,transparent 24%),radial-gradient(circle at 75% 78%,#2455df,transparent 31%),linear-gradient(135deg,#dbe9ff,#6c9cef 45%,#122f87);border-radius:18px}.blue-visual:after{content:"";position:absolute;inset:-20%;background:repeating-radial-gradient(ellipse at 60% 40%,transparent 0 38px,rgba(255,255,255,.14) 40px,transparent 42px);transform:rotate(-16deg);animation:drift 14s ease-in-out infinite alternate}.orb{position:absolute;border-radius:48% 52% 62% 38%;filter:blur(1px);background:linear-gradient(135deg,rgba(255,255,255,.75),rgba(36,80,211,.22));box-shadow:inset 0 0 60px rgba(255,255,255,.5)}.orb.one{width:410px;height:250px;top:54px;left:50px;transform:rotate(-18deg)}.orb.two{width:360px;height:320px;right:-70px;bottom:40px;transform:rotate(34deg)}.glass-system{position:absolute;z-index:2;inset:29% 9% auto 9%;height:270px;border:1px solid rgba(255,255,255,.45);background:rgba(229,241,255,.33);backdrop-filter:blur(20px);border-radius:28px;display:flex;align-items:center;justify-content:center;gap:25px;box-shadow:0 35px 80px rgba(4,31,95,.27)}.glass-system i{width:45px;height:1px;background:rgba(255,255,255,.8)}.system-node{width:100px;height:100px;border:1px solid rgba(255,255,255,.55);border-radius:22px;background:rgba(255,255,255,.16);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff}.system-node span{font-size:.58rem;opacity:.7}.system-node b{font-size:.8rem;font-weight:500;margin-top:7px}.visual-note{position:absolute;z-index:3;left:45px;right:45px;bottom:34px;display:flex;justify-content:space-between;color:#fff}.visual-note span{font-size:.57rem;letter-spacing:.08em}.visual-note b{font-size:.75rem;font-weight:500}.opening{padding:110px 40px 80px;display:grid;grid-template-columns:1.15fr .7fr;gap:120px}.opening h2,.section-intro h2,.system-copy h2,.final-cta h2,.knowledge-band h2{font-size:clamp(2.6rem,4.2vw,4.6rem);line-height:1.08;letter-spacing:-.045em;font-weight:300;margin:25px 0 0}.opening>div:last-child{padding-top:25px}.opening p{font-size:1rem}.opening .text-link{margin-top:20px}.signal-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:0 40px 40px}.signal-cards article{background:#f1f4f8;border-radius:15px;padding:28px;min-height:230px;transition:.25s}.signal-cards article:hover{transform:translateY(-5px);background:#eaf0fa}.signal-cards span,.cap-card>span{color:var(--blue);font-size:.62rem}.signal-cards h3{font-size:1.25rem;font-weight:400;margin:54px 0 10px}.signal-cards p{font-size:.8rem;margin:0}
.section-wrap{padding:90px 55px}.section-intro{display:flex;justify-content:space-between;align-items:end;gap:80px;margin-bottom:60px}.section-intro>div{max-width:920px}.section-intro>p{max-width:480px}.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.cap-card{min-height:300px;padding:30px;display:grid;grid-template-columns:35px 1fr auto;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.25s}.cap-card:hover{background:#f2f6fd}.cap-card div{align-self:end}.cap-card h3{font-weight:400;font-size:1.3rem;line-height:1.2}.cap-card p{font-size:.78rem;margin:0}.cap-card>span:last-child{color:var(--ink)}.system-home{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;background:#f7f9fc}.system-copy{padding-top:25px}.system-copy p{max-width:520px}.system-copy .text-link{margin-top:22px}.system-stack{border-top:1px solid var(--line)}.system-stack>a{display:grid;grid-template-columns:36px 1fr auto;gap:22px;align-items:center;padding:23px 12px;border-bottom:1px solid var(--line);transition:.2s}.system-stack>a:hover{background:#fff;padding-left:22px}.system-stack span{font-size:.6rem;color:var(--blue)}.system-stack h3{font-size:1.15rem;font-weight:400;margin:0 0 3px}.system-stack p{font-size:.72rem;margin:0}.sector-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.sector-grid article{min-height:270px;border-radius:15px;background:#f0f3f7;padding:27px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.sector-grid article:before{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border:1px solid #cad6eb;border-radius:50%}.sector-grid article span{font-size:.56rem;color:var(--blue);position:absolute;top:25px}.sector-grid h3{font-size:1.2rem;font-weight:400}.sector-grid p{font-size:.75rem;margin:0}.featured-work{padding:26px;display:grid;grid-template-columns:.74fr 1.26fr;background:#fff}.case-copy{background:#334763;color:#fff;border-radius:16px;padding:52px;display:flex;flex-direction:column}.case-copy .pill{color:#c5d9ff}.case-copy .dot{border-color:#c5d9ff}.case-copy h2{font-size:clamp(2.3rem,3.3vw,3.7rem);font-weight:300;line-height:1.08;letter-spacing:-.04em;margin:30px 0}.case-copy>p{color:#d6dde6;font-size:.85rem}.case-facts{display:grid;gap:12px;margin:20px 0 35px}.case-facts span{font-size:.72rem;color:#cbd3df}.case-facts b{font-size:1.15rem;font-weight:400;color:#fff;margin-right:8px}.case-copy .button{align-self:flex-start;margin-top:auto}.case-image{margin-left:14px;border-radius:16px;overflow:hidden;position:relative;min-height:590px}.case-image img{width:100%;height:100%;object-fit:cover}.case-image:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(7,17,35,.72))}.case-image>div{position:absolute;z-index:2;left:35px;right:35px;bottom:32px;color:#fff;display:flex;justify-content:space-between;align-items:end}.case-image span{font-size:.55rem}.case-image b{max-width:360px;text-align:right;font-size:1.1rem;font-weight:400}.model-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.model-grid>a{background:#f1f4f8;border-radius:15px;padding:20px;min-height:410px;position:relative;transition:.25s}.model-grid>a:hover{transform:translateY(-5px);box-shadow:0 15px 30px rgba(20,40,70,.08)}.model-graphic{height:190px;border-radius:12px;margin-bottom:25px;position:relative;overflow:hidden;background:linear-gradient(135deg,#dae7ff,#7da6f6)}.model-graphic i{position:absolute;border:1px solid rgba(255,255,255,.75);border-radius:50%}.model-graphic i:nth-child(1){inset:20px}.model-graphic i:nth-child(2){inset:48px}.model-graphic i:nth-child(3){inset:75px;background:rgba(255,255,255,.25)}.graphic-2{background:linear-gradient(145deg,#132a61,#5c83df)}.graphic-3{background:linear-gradient(135deg,#a6c9ff,#f1f6ff)}.graphic-4{background:linear-gradient(145deg,#253f7c,#9ebeff)}.model-grid>a>span{font-size:.54rem;color:var(--blue)}.model-grid h3{font-size:1.15rem;font-weight:400;margin:15px 0 8px}.model-grid p{font-size:.73rem}.model-grid>a>span:last-child{position:absolute;right:20px;bottom:20px;color:var(--ink);font-size:.9rem}.insight-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;gap:12px}.insight-grid>a{position:relative;padding-bottom:35px;border-bottom:1px solid var(--line)}.insight-grid>a:last-child{display:none}.insight-art{height:230px;background:#dbe5f6;border-radius:14px;margin-bottom:22px;position:relative;overflow:hidden}.lead-insight .insight-art{height:390px}.insight-art:before,.insight-art:after{content:"";position:absolute;border-radius:50%;filter:blur(1px)}.insight-art:before{width:75%;height:140%;right:-15%;top:-40%;background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(46,90,222,.55))}.insight-art:after{width:60%;height:110%;left:-15%;bottom:-45%;background:linear-gradient(135deg,#173a92,rgba(157,196,255,.7))}.art-2{background:#e7ecf3}.art-3{background:#17233a}.insight-art span{position:absolute;z-index:2;top:18px;left:18px;color:#fff;font-size:.54rem}.insight-grid small,.hub-grid small,.case-list-grid small{font-size:.56rem;color:var(--blue)}.insight-grid h3{font-size:1.35rem;font-weight:400;margin:13px 0 8px}.lead-insight h3{font-size:1.8rem}.insight-grid p{font-size:.75rem}.insight-grid>a>span:last-child{position:absolute;right:0;bottom:12px}.final-cta{max-width:var(--max);margin:22px auto;background:var(--navy);color:#fff;border-radius:var(--radius);padding:85px 70px;display:flex;align-items:end;justify-content:space-between;gap:70px}.final-cta>div{max-width:900px}.final-cta .pill{color:#a9c8ff}.final-cta h2{margin-bottom:0}
.hub-canvas{padding:26px}.hub-hero{min-height:590px;background:linear-gradient(125deg,#f7f9fc 0 63%,#dae7fb 63%);border-radius:16px;padding:75px;display:grid;grid-template-columns:1.35fr .65fr;align-items:end}.hub-hero h1,.detail-hero h1,.contact-canvas h1,.not-found h1{font-size:clamp(3.8rem,6.2vw,6.8rem);line-height:1.02;letter-spacing:-.055em;font-weight:300;margin:34px 0 24px}.hub-hero>div:first-child p{font-size:1.05rem;max-width:730px}.hub-visual{display:flex;flex-direction:column;align-items:center;gap:25px}.rings{width:290px;height:290px;position:relative}.rings i{position:absolute;border:1px solid rgba(49,88,237,.32);border-radius:50%}.rings i:nth-child(1){inset:0}.rings i:nth-child(2){inset:44px}.rings i:nth-child(3){inset:88px}.rings span{position:absolute;width:50px;height:50px;background:var(--blue);border-radius:50%;inset:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 14px rgba(49,88,237,.1)}.hub-visual small{text-align:center;font-size:.55rem;color:#52617a}.hub-filter{display:flex;align-items:center;gap:8px;padding-bottom:25px;border-bottom:1px solid var(--line);overflow:auto}.hub-filter>span{margin-right:auto;font-size:.72rem;color:var(--muted)}.hub-filter button{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 13px;font-size:.66rem}.hub-filter button:first-of-type{background:var(--navy);color:#fff}.hub-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line);margin-top:45px}.hub-grid>a{min-height:310px;padding:28px;display:grid;grid-template-columns:30px 1fr auto;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.2s}.hub-grid>a:hover{background:#f2f6fd}.hub-grid>a>span{font-size:.58rem;color:var(--blue)}.hub-grid>a>div{align-self:end}.hub-grid h2{font-size:1.35rem;line-height:1.2;font-weight:400;margin:13px 0 8px}.hub-grid p{font-size:.75rem}.hub-grid>a>span:last-child{color:var(--ink)}.hub-grid.frameworks,.hub-grid.firm{grid-template-columns:repeat(2,1fr)}.hub-grid.insights{grid-template-columns:repeat(2,1fr)}.hub-grid.insights>a{min-height:280px}.cases-list{padding:65px}.case-list-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.case-list-grid>a{border:1px solid var(--line);border-radius:16px;padding:20px;position:relative}.case-list-grid img,.case-blue{height:400px;width:100%;object-fit:cover;border-radius:12px;margin-bottom:25px}.case-blue{background:linear-gradient(135deg,#dceaff,#4f7ee5 55%,#142d69);position:relative;display:grid;place-items:center}.glass-chip{padding:45px 70px;border:1px solid rgba(255,255,255,.6);background:rgba(255,255,255,.25);backdrop-filter:blur(20px);border-radius:20px;color:#fff;font-size:.85rem}.case-list-grid h2{font-size:1.7rem;font-weight:400;margin:15px 0}.case-list-grid p{font-size:.8rem}.case-list-grid>a>span:last-child{position:absolute;right:22px;bottom:22px}.knowledge-band{max-width:var(--max);margin:22px auto;background:#dfe8f5;border-radius:var(--radius);padding:75px;display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:end}.knowledge-band>div:first-child{max-width:800px}.knowledge-band h2{font-size:3.4rem}.knowledge-band>div:last-child{display:grid;grid-template-columns:auto 1fr;gap:12px 20px;align-items:center}.knowledge-band>div:last-child span{font-size:2rem;font-weight:300;color:var(--blue)}.knowledge-band>div:last-child p{font-size:.75rem;margin:0;border-bottom:1px solid #c5d0df;padding-bottom:12px}
.detail-canvas{padding:26px}.detail-hero{min-height:650px;background:#f4f7fb;border-radius:16px;padding:70px;display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center}.back{display:block;font-size:.7rem;color:var(--muted);margin-bottom:60px}.detail-hero h1{font-size:clamp(3.6rem,5.7vw,6.2rem)}.detail-hero>div:first-child>p{font-size:1rem;max-width:680px}.detail-model{display:flex;flex-direction:column;align-items:center;gap:24px}.detail-orbit{width:400px;height:400px;border-radius:50%;background:linear-gradient(135deg,#dceaff,#739be9);position:relative;display:grid;place-items:center;overflow:hidden}.detail-orbit:after{content:"";position:absolute;inset:22%;background:rgba(255,255,255,.3);border:1px solid rgba(255,255,255,.7);border-radius:28px;backdrop-filter:blur(15px)}.detail-orbit i{position:absolute;border:1px solid rgba(255,255,255,.65);border-radius:50%}.detail-orbit i:nth-child(1){inset:24px}.detail-orbit i:nth-child(2){inset:73px}.detail-orbit i:nth-child(3){inset:128px}.detail-orbit span{position:relative;z-index:2;color:#fff;font-size:1rem}.detail-model small{font-size:.55rem;color:#657186}.article-detail{display:grid;grid-template-columns:230px 1fr;gap:100px}.article-detail>aside{position:sticky;top:110px;align-self:start;display:grid;gap:16px}.article-detail>aside b{font-size:.58rem;color:var(--blue);margin-bottom:10px}.article-detail>aside a{font-size:.7rem;color:var(--muted);display:flex;gap:10px}.article-detail>aside span{color:var(--blue)}.article-detail>article blockquote{font-size:clamp(2rem,3.2vw,3.5rem);font-weight:300;line-height:1.25;letter-spacing:-.035em;margin:0 0 100px;padding:0 0 50px;border-bottom:1px solid var(--line)}.article-detail article section{scroll-margin-top:110px;padding-bottom:90px;max-width:850px}.article-detail h2{font-size:2.7rem;font-weight:300;line-height:1.13;letter-spacing:-.035em;margin:24px 0}.article-detail p{font-size:.98rem}.article-detail ul{list-style:none;padding:20px 0;border-top:1px solid var(--line)}.article-detail li{padding:13px 0;border-bottom:1px solid var(--line);font-size:.82rem}.related{max-width:var(--max);margin:22px auto;background:#fff;border-radius:var(--radius);padding:70px}.related>div:first-child{margin-bottom:35px}.related h2{font-size:2.6rem;font-weight:300;margin:20px 0 0}.related>div:last-child{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.related>div:last-child a{min-height:210px;padding:25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative}.related small{font-size:.54rem;color:var(--blue)}.related h3{font-size:1.2rem;font-weight:400;margin-top:55px;text-transform:capitalize}.related a>span{position:absolute;right:22px;top:22px}
.editorial-shell{padding:26px}.article-heading{padding:45px 35px 55px;display:grid;grid-template-columns:210px 1fr;gap:20px}.article-heading>a{font-size:.68rem;color:var(--muted)}.article-heading>div{max-width:820px}.article-heading h1{font-size:clamp(2.8rem,4.8vw,5.1rem);font-weight:300;line-height:1.04;letter-spacing:-.05em;margin:0 0 22px}.article-heading p{font-size:.83rem;max-width:720px}.article-heading>span{grid-column:1;grid-row:2;font-size:.62rem;color:var(--muted);line-height:1.8;align-self:end}.article-photo{height:610px;border-radius:15px;overflow:hidden}.article-photo img{width:100%;height:100%;object-fit:cover}.article-body{padding:55px 35px 110px;display:grid;grid-template-columns:210px 1fr;gap:70px}.article-body>aside{position:sticky;top:110px;align-self:start}.article-index{background:#f0f3f7;border-radius:9px;padding:18px;display:grid;gap:13px}.article-index a{font-size:.64rem;line-height:1.45}.article-index a:first-child{color:var(--blue)}.share{margin-top:35px}.share>span{font-size:.61rem}.share>div{display:flex;gap:8px;margin-top:12px}.share button{width:30px;height:30px;border:0;border-radius:50%;background:#e5eaf1;font-size:.65rem}.article-body>article{max-width:800px}.article-lead{font-size:1.25rem!important;color:var(--ink);margin-bottom:60px}.article-body article section{scroll-margin-top:110px;margin-bottom:60px}.article-body h2{font-size:2.3rem;font-weight:300;letter-spacing:-.035em;margin-bottom:22px}.article-body p{font-size:.83rem;color:#3f4a5b}.article-body ul{padding:18px 0 18px 20px}.article-body li{font-size:.78rem;margin:9px 0}.article-body blockquote{border-left:2px solid var(--blue);padding-left:20px;margin:30px 0;font-size:.83rem;font-style:italic;color:#4d5869}.editorial-shell>.related{margin:0;background:#f2f5f9;padding:55px}.contact-canvas{padding:26px}.contact-canvas>section{min-height:570px;border-radius:16px;background:linear-gradient(125deg,#f7f9fc 0 62%,#dce8fb 62%);padding:75px;display:grid;grid-template-columns:1.2fr .5fr;gap:100px;align-items:end}.contact-canvas h1{font-size:clamp(3.6rem,5.8vw,6.4rem)}.contact-canvas>section>div:first-child>p{font-size:1rem;max-width:700px}.contact-note{background:rgba(255,255,255,.6);border:1px solid #fff;border-radius:15px;padding:28px}.contact-note span{font-size:.56rem;color:var(--blue)}.contact-note p{font-size:.75rem}.contact-note a{font-size:.72rem;border-bottom:1px solid}.contact-form form{display:grid;grid-template-columns:1fr 1fr;gap:30px}.contact-form label{font-size:.65rem;color:#536074}.contact-form input,.contact-form textarea{width:100%;display:block;margin-top:9px;border:0;border-bottom:1px solid #aeb8c6;background:transparent;padding:14px 0;outline:0}.contact-form textarea{border:1px solid #aeb8c6;border-radius:8px;padding:15px}.contact-form .wide{grid-column:span 2}.contact-form button{justify-self:start}.not-found{max-width:var(--max);min-height:70vh;margin:22px auto;background:#fff;border-radius:var(--radius);padding:90px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.not-found h1{max-width:900px}
footer{max-width:var(--max);margin:22px auto 30px;background:var(--navy);color:#fff;border-radius:var(--radius);padding:70px}.footer-top{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:60px;padding-bottom:70px}.footer-top>div{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.footer-top p{color:#aab4c4;max-width:360px;font-size:.78rem;margin-top:18px}.footer-top b{font-size:.57rem;color:#8390a4;margin-bottom:12px}.footer-top a:not(.brand){font-size:.72rem;color:#c7cfda}.footer-bottom{border-top:1px solid #2b3648;padding-top:25px;display:flex;justify-content:space-between;font-size:.58rem;color:#788598}
/* Desktop typography system: an 8px vertical rhythm with 16/24 body text. */
@media(min-width:1001px){
  .pill{font-size:var(--type-xs);line-height:var(--leading-2)}
  .text-link{font-size:var(--type-sm);line-height:var(--leading-3)}
  .opening .text-link{font-size:var(--type-base);line-height:var(--leading-3)}
  .hero h1{font-size:var(--type-hero);line-height:var(--leading-9);font-weight:100}
  .hero-copy>p{font-size:var(--type-lg);line-height:var(--leading-4)}
  .hero-proof span{font-size:var(--type-xs);line-height:var(--leading-2)}
  .system-node span{font-size:var(--type-xs);line-height:var(--leading-2)}
  .system-node b{font-size:var(--type-sm);line-height:var(--leading-3)}
  .visual-note span{font-size:var(--type-xs);line-height:var(--leading-2)}
  .visual-note b{font-size:var(--type-sm);line-height:var(--leading-3)}
  .opening h2,.section-intro h2,.system-copy h2,.final-cta h2,.knowledge-band h2{font-size:var(--type-section);line-height:var(--leading-7);font-weight:200}
  .opening p{font-size:var(--type-lg);line-height:var(--leading-4)}
  .signal-cards span,.cap-card>span:first-child{font-size:var(--type-lg);line-height:var(--leading-4)}
  .signal-cards h3{font-size:var(--type-2xl);line-height:var(--leading-4)}
  .signal-cards p{font-size:var(--type-sm);line-height:var(--leading-3)}
  .section-intro>p,.system-copy p{font-size:var(--type-base);line-height:var(--leading-3)}
  .cap-card h3{font-size:var(--type-2xl);line-height:var(--leading-4)}
  .cap-card p{font-size:var(--type-sm);line-height:var(--leading-3)}
  .system-stack span{font-size:var(--type-lg);line-height:var(--leading-4)}
  .system-stack h3{font-size:var(--type-xl);line-height:var(--leading-4)}
  .system-stack p{font-size:var(--type-sm);line-height:var(--leading-3)}
  .sector-grid article>span{font-size:var(--type-xs);line-height:var(--leading-2)}
  .sector-grid h3{font-size:var(--type-xl);line-height:var(--leading-4)}
  .sector-grid p{font-size:var(--type-sm);line-height:var(--leading-3)}
  .case-copy h2{font-size:var(--type-section);line-height:var(--leading-7);font-weight:200}
  .case-copy>p{font-size:var(--type-base);line-height:var(--leading-3)}
  .case-facts span{font-size:var(--type-sm);line-height:var(--leading-3)}
  .case-facts b{font-size:var(--type-lg);line-height:var(--leading-4)}
  .case-image span{font-size:var(--type-xs);line-height:var(--leading-2)}
  .case-image b{font-size:var(--type-base);line-height:var(--leading-3)}
  .model-grid>a>span:first-of-type{font-size:var(--type-xs);line-height:var(--leading-2)}
  .model-grid h3{font-size:var(--type-xl);line-height:var(--leading-4)}
  .model-grid p{font-size:var(--type-sm);line-height:var(--leading-3)}
  .model-grid>a>span:last-child{font-size:var(--type-base);line-height:var(--leading-3)}
  .insight-art span,.insight-grid small,.hub-grid small,.case-list-grid small{font-size:var(--type-xs);line-height:var(--leading-2)}
  .insight-grid h3{font-size:var(--type-2xl);line-height:var(--leading-4)}
  .lead-insight h3{font-size:var(--type-3xl);line-height:var(--leading-5)}
  .insight-grid p{font-size:var(--type-sm);line-height:var(--leading-3)}
  .hub-hero h1,.detail-hero h1,.contact-canvas h1,.not-found h1{font-size:64px;line-height:var(--leading-9);font-weight:100}
  .hub-hero>div:first-child p,.detail-hero>div:first-child>p,.contact-canvas>section>div:first-child>p{font-size:var(--type-lg);line-height:var(--leading-4)}
  .hub-visual small,.detail-model small{font-size:var(--type-xs);line-height:var(--leading-2)}
  .hub-filter>span,.hub-filter button{font-size:var(--type-sm);line-height:var(--leading-3)}
  .hub-grid>a>span:first-child{font-size:var(--type-lg);line-height:var(--leading-4)}
  .hub-grid h2{font-size:var(--type-2xl);line-height:var(--leading-4)}
  .hub-grid p{font-size:var(--type-sm);line-height:var(--leading-3)}
  .glass-chip{font-size:var(--type-base);line-height:var(--leading-3)}
  .case-list-grid h2{font-size:var(--type-3xl);line-height:var(--leading-5)}
  .case-list-grid p{font-size:var(--type-base);line-height:var(--leading-3)}
  .knowledge-band>div:last-child span{font-size:var(--type-3xl);line-height:var(--leading-5)}
  .knowledge-band>div:last-child p{font-size:var(--type-sm);line-height:var(--leading-3)}
  .back{font-size:var(--type-sm);line-height:var(--leading-3)}
  .detail-orbit span{font-size:var(--type-base);line-height:var(--leading-3)}
  .article-detail>aside b{font-size:var(--type-xs);line-height:var(--leading-2)}
  .article-detail>aside a{font-size:var(--type-sm);line-height:var(--leading-3)}
  .article-detail>article blockquote{font-size:40px;line-height:var(--leading-6);font-weight:200}
  .article-detail h2{font-size:40px;line-height:var(--leading-6);font-weight:200}
  .article-detail p{font-size:var(--type-base);line-height:var(--leading-3)}
  .article-detail li{font-size:var(--type-sm);line-height:var(--leading-3)}
  .related h2{font-size:var(--type-3xl);line-height:var(--leading-5);font-weight:200}
  .related small{font-size:var(--type-xs);line-height:var(--leading-2)}
  .related h3{font-size:var(--type-xl);line-height:var(--leading-4)}
  .article-heading>a{font-size:var(--type-sm);line-height:var(--leading-3)}
  .article-heading h1{font-size:var(--type-section);line-height:var(--leading-7);font-weight:200}
  .article-heading p{font-size:var(--type-base);line-height:var(--leading-3)}
  .article-heading>span,.article-index a,.share>span{font-size:var(--type-xs);line-height:var(--leading-2)}
  .share button{font-size:var(--type-xs);line-height:var(--leading-2)}
  .article-lead{font-size:var(--type-lg)!important;line-height:var(--leading-4)!important}
  .article-body h2{font-size:var(--type-3xl);line-height:var(--leading-5);font-weight:200}
  .article-body p{font-size:var(--type-base);line-height:var(--leading-3)}
  .article-body li,.article-body blockquote{font-size:var(--type-sm);line-height:var(--leading-3)}
  .contact-note span,.contact-form label{font-size:var(--type-xs);line-height:var(--leading-2)}
  .contact-note p,.contact-note a{font-size:var(--type-sm);line-height:var(--leading-3)}
  .footer-top p{font-size:var(--type-sm);line-height:var(--leading-3)}
  .footer-top b{font-size:var(--type-xs);line-height:var(--leading-2)}
  .footer-top a:not(.brand){font-size:var(--type-sm);line-height:var(--leading-3)}
  .footer-bottom{font-size:var(--type-xs);line-height:var(--leading-2)}
}
/* A restrained interaction layer: movement clarifies hierarchy without changing content or layout. */
.nav-wrap{transition:height .35s cubic-bezier(.22,1,.36,1),background-color .35s ease,box-shadow .35s ease,transform .35s cubic-bezier(.22,1,.36,1)}
.is-scrolled .nav-wrap{height:60px;background:rgba(246,249,253,.82);box-shadow:0 16px 42px rgba(15,29,53,.11);transform:translateY(-3px)}
.brand i,.brand i:after{transition:transform .55s cubic-bezier(.22,1,.36,1),background-color .3s ease}
.brand:hover i{transform:rotate(180deg) scale(1.07);background:rgba(49,88,237,.07)}
.brand:hover i:after{transform:scale(.72)}
.nav-wrap nav a,.hub-filter button{transition:color .25s ease,background-color .25s ease,box-shadow .25s ease,transform .25s cubic-bezier(.22,1,.36,1)}
.nav-wrap nav a:hover,.hub-filter button:hover{transform:translateY(-1px)}
.button,.nav-cta{overflow:hidden;isolation:isolate;position:relative;transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease,background-color .3s ease}
.button:before,.nav-cta:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.22) 48%,transparent 76%);transform:translateX(-130%);transition:transform .65s cubic-bezier(.22,1,.36,1)}
.button:hover,.nav-cta:hover{transform:translateY(-2px);box-shadow:0 13px 28px rgba(7,22,49,.18)}
.button:hover:before,.nav-cta:hover:before{transform:translateX(130%)}
.button span,.nav-cta span,.text-link span,.cap-card>span:last-child,.system-stack>a>span:last-child,.hub-grid>a>span:last-child,.model-grid>a>span:last-child,.insight-grid>a>span:last-child,.related a>span{transition:transform .3s cubic-bezier(.22,1,.36,1)}
.button:hover span,.nav-cta:hover span,.text-link:hover span,.cap-card:hover>span:last-child,.system-stack>a:hover>span:last-child,.hub-grid>a:hover>span:last-child,.model-grid>a:hover>span:last-child,.insight-grid>a:hover>span:last-child,.related a:hover>span{transform:translate(3px,-3px)}
.text-link{border-bottom-color:transparent;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:0 1px;transition:color .25s ease,background-size .35s cubic-bezier(.22,1,.36,1)}
.text-link:hover{background-size:calc(100% - 27px) 1px}
.search{cursor:pointer;transition:transform .3s ease,color .25s ease}.search:hover{color:var(--blue);transform:scale(1.18) rotate(-8deg)}

.motion-ready .motion-target{opacity:0;transform:translate3d(0,24px,0);transition:opacity .7s ease,transform .75s cubic-bezier(.22,1,.36,1);transition-delay:var(--motion-delay,0ms);will-change:opacity,transform}
.motion-ready .motion-target.is-visible{opacity:1;transform:translate3d(0,0,0);will-change:auto}
.motion-ready .motion-target.is-visible.cap-card:hover,
.motion-ready .system-stack>.motion-target.is-visible:hover,
.motion-ready .model-grid>.motion-target.is-visible:hover,
.motion-ready .insight-grid>.motion-target.is-visible:hover,
.motion-ready .hub-grid>.motion-target.is-visible:hover,
.motion-ready .case-list-grid>.motion-target.is-visible:hover,
.motion-ready .related>div:last-child>.motion-target.is-visible:hover{transform:translate3d(0,-5px,0)}
.motion-ready .signal-cards>.motion-target.is-visible:hover,
.motion-ready .sector-grid>.motion-target.is-visible:hover{transform:translate3d(0,-5px,0)}

.signal-cards article,.cap-card,.system-stack>a,.sector-grid article,.model-grid>a,.insight-grid>a,.hub-grid>a,.case-list-grid>a,.related>div:last-child a{transition:transform .35s cubic-bezier(.22,1,.36,1),background-color .3s ease,box-shadow .35s ease,border-color .3s ease}
.signal-cards article:hover,.sector-grid article:hover,.cap-card:hover,.system-stack>a:hover,.hub-grid>a:hover,.related>div:last-child a:hover{background:#eef4fd;box-shadow:0 18px 38px rgba(18,39,73,.08)}
.sector-grid article:before{transition:transform .65s cubic-bezier(.22,1,.36,1),border-color .3s ease,background-color .3s ease}
.sector-grid article:hover:before{transform:scale(1.45) translate(-7px,7px);border-color:#98b7ef;background:rgba(255,255,255,.42)}
.case-list-grid>a:hover,.model-grid>a:hover{box-shadow:0 20px 44px rgba(18,39,73,.11);border-color:#c8d7ef}
.insight-grid>a:hover{border-bottom-color:var(--blue)}
.case-image img,.case-list-grid img,.article-photo img{transition:transform 1s cubic-bezier(.22,1,.36,1),filter .5s ease}
.featured-work:hover .case-image img,.case-list-grid>a:hover img,.article-photo:hover img{transform:scale(1.035);filter:saturate(1.06)}
.case-image>div{transition:transform .45s cubic-bezier(.22,1,.36,1)}.featured-work:hover .case-image>div{transform:translateY(-5px)}

.blue-visual,.hub-visual,.detail-model,.model-graphic,.insight-art{--parallax-x:0px;--parallax-y:0px;--scroll-parallax:0px}
.glass-system{transform:translate3d(var(--parallax-x),calc(var(--parallax-y) + var(--scroll-parallax)),0);transition:transform .28s ease-out,box-shadow .35s ease}
.blue-visual:hover .glass-system{box-shadow:0 42px 95px rgba(4,31,95,.34)}
.system-node{transition:transform .35s cubic-bezier(.22,1,.36,1),background-color .3s ease,border-color .3s ease}.system-node:hover{transform:translateY(-5px) scale(1.03);background:rgba(255,255,255,.26);border-color:#fff}
.rings{transform:translate3d(var(--parallax-x),calc(var(--parallax-y) + var(--scroll-parallax)),0);transition:transform .3s ease-out}
.rings i{animation:ringPulse 5.5s ease-in-out infinite}.rings i:nth-child(2){animation-delay:-1.8s}.rings i:nth-child(3){animation-delay:-3.6s}
.rings span{transition:box-shadow .5s ease,transform .5s cubic-bezier(.22,1,.36,1)}.hub-visual:hover .rings span{transform:translate(-50%,-50%) scale(1.12);box-shadow:0 0 0 24px rgba(49,88,237,.08)}
.detail-orbit{transform:translate3d(var(--parallax-x),calc(var(--parallax-y) + var(--scroll-parallax)),0);transition:transform .3s ease-out,box-shadow .4s ease}.detail-model:hover .detail-orbit{box-shadow:0 35px 75px rgba(47,86,157,.18)}
.detail-orbit i{animation:orbitBreath 6s ease-in-out infinite}.detail-orbit i:nth-child(2){animation-delay:-2s}.detail-orbit i:nth-child(3){animation-delay:-4s}
.model-graphic{transform:translate3d(var(--parallax-x),calc(var(--parallax-y) + var(--scroll-parallax)),0);transition:transform .3s ease-out,filter .35s ease}.model-grid>a:hover .model-graphic{filter:saturate(1.12) contrast(1.02)}
.model-graphic i{transition:inset .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1)}.model-grid>a:hover .model-graphic i:nth-child(1){transform:scale(1.04)}.model-grid>a:hover .model-graphic i:nth-child(2){transform:scale(.92)}.model-grid>a:hover .model-graphic i:nth-child(3){transform:scale(1.12)}
.insight-art:before,.insight-art:after{transition:transform .9s cubic-bezier(.22,1,.36,1),filter .5s ease}.insight-grid>a:hover .insight-art:before{transform:translate3d(var(--parallax-x),calc(var(--parallax-y) + var(--scroll-parallax)),0) rotate(8deg) scale(1.06)}.insight-grid>a:hover .insight-art:after{transform:translate3d(var(--parallax-x),calc(var(--parallax-y) + var(--scroll-parallax)),0) rotate(-6deg) scale(1.08)}
.share button{cursor:pointer;transition:transform .25s ease,background-color .25s ease,color .25s ease}.share button:hover{transform:translateY(-3px);background:var(--navy);color:#fff}
.contact-form input,.contact-form textarea{transition:border-color .25s ease,box-shadow .25s ease,background-color .25s ease}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--blue);background:rgba(220,232,255,.18);box-shadow:0 8px 0 -7px rgba(49,88,237,.25)}

@keyframes drift{from{transform:rotate(-16deg) translate(-10px,-5px)}to{transform:rotate(-12deg) translate(15px,10px)}}
@keyframes ringPulse{0%,100%{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.025)}}
@keyframes orbitBreath{0%,100%{opacity:.65}50%{opacity:1}}
@media(max-width:1000px){.nav-wrap nav,.nav-right{display:none}.mobile-menu{display:block}.hero{grid-template-columns:1fr}.hero-copy{min-height:650px}.blue-visual{min-height:520px}.opening,.system-home,.featured-work,.knowledge-band,.contact-canvas>section{grid-template-columns:1fr;gap:60px}.capability-grid,.hub-grid{grid-template-columns:repeat(2,1fr)}.sector-grid,.model-grid{grid-template-columns:repeat(2,1fr)}.insight-grid{grid-template-columns:1fr 1fr}.insight-grid .lead-insight{grid-column:span 2}.insight-grid>a:last-child{display:block}.featured-work{padding:22px}.case-image{margin:14px 0 0;min-height:500px}.hub-hero{grid-template-columns:1fr}.hub-visual{display:none}.hub-grid.frameworks,.hub-grid.firm,.hub-grid.insights{grid-template-columns:1fr 1fr}.detail-hero{grid-template-columns:1fr}.detail-model{display:none}.article-detail{grid-template-columns:190px 1fr;gap:50px}.article-photo{height:490px}.footer-top{grid-template-columns:1.5fr 1fr 1fr}.footer-top>div:last-child{display:none}}
@media(max-width:650px){body{background:#e3e9f1}.site-header{padding:10px 10px 0}.nav-wrap{height:57px;padding:0 16px;border-radius:13px}.mobile-menu>div{left:10px;right:10px;top:67px}.site-canvas,.section-wrap,.editorial-shell,.final-cta,.knowledge-band,.related,footer{margin:10px;border-radius:15px}.home-canvas,.hub-canvas,.detail-canvas,.editorial-shell,.contact-canvas{padding:10px}.hero{min-height:auto}.hero-copy{padding:42px 24px 25px;min-height:610px}.hero h1{font-size:3.45rem}.hero-proof{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hero-proof span{border:0;padding:0}.blue-visual{min-height:420px}.glass-system{inset:25% 6% auto;height:210px;gap:8px}.system-node{width:78px;height:78px}.glass-system i{width:17px}.visual-note{left:20px;right:20px}.visual-note b{max-width:160px;text-align:right}.opening{padding:70px 20px 55px;grid-template-columns:1fr;gap:30px}.opening h2,.section-intro h2,.system-copy h2,.final-cta h2,.knowledge-band h2{font-size:2.5rem}.signal-cards{grid-template-columns:1fr;padding:0 20px 20px}.signal-cards article{min-height:200px}.section-wrap{padding:65px 20px}.section-intro{align-items:flex-start;flex-direction:column;gap:25px;margin-bottom:40px}.capability-grid,.hub-grid,.hub-grid.frameworks,.hub-grid.firm,.hub-grid.insights{grid-template-columns:1fr}.cap-card,.hub-grid>a{min-height:240px}.system-home{gap:45px}.sector-grid,.model-grid,.insight-grid{grid-template-columns:1fr}.insight-grid .lead-insight{grid-column:auto}.sector-grid article{min-height:230px}.featured-work{padding:10px}.case-copy{padding:35px 24px}.case-copy h2{font-size:2.55rem}.case-image{min-height:380px}.case-image>div{left:20px;right:20px;flex-direction:column;align-items:flex-start;gap:8px}.case-image b{text-align:left}.model-grid>a{min-height:370px}.lead-insight .insight-art{height:280px}.final-cta{padding:65px 25px;align-items:flex-start;flex-direction:column}.hub-hero{min-height:540px;padding:45px 24px;background:linear-gradient(155deg,#f7f9fc 0 65%,#dae7fb 65%)}.hub-hero h1,.detail-hero h1,.contact-canvas h1,.not-found h1{font-size:3.35rem}.hub-filter>span{display:none}.hub-list{padding-top:35px}.cases-list{padding:30px 20px}.case-list-grid{grid-template-columns:1fr}.case-list-grid img,.case-blue{height:270px}.knowledge-band{padding:55px 25px}.detail-hero{padding:45px 24px;min-height:570px}.back{margin-bottom:45px}.article-detail{grid-template-columns:1fr}.article-detail>aside{position:static;display:flex;gap:14px;overflow:auto;border-bottom:1px solid var(--line);padding-bottom:18px}.article-detail>aside b{display:none}.article-detail>aside a{white-space:nowrap}.article-detail>article blockquote{font-size:2rem;margin-bottom:70px}.article-detail h2{font-size:2.25rem}.related{padding:50px 20px}.related>div:last-child{grid-template-columns:1fr}.article-heading{padding:28px 14px 35px;grid-template-columns:1fr}.article-heading h1{font-size:2.65rem;margin-top:30px}.article-heading>span{grid-column:1;grid-row:auto}.article-photo{height:270px;border-radius:10px}.article-body{padding:28px 14px 70px;grid-template-columns:1fr;gap:40px}.article-body>aside{position:static}.share{display:none}.article-body h2{font-size:1.8rem}.editorial-shell>.related{padding:35px 15px}.contact-canvas>section{padding:45px 24px;background:linear-gradient(155deg,#f7f9fc 0 68%,#dce8fb 68%)}.contact-form form{grid-template-columns:1fr}.contact-form .wide{grid-column:auto}.not-found{padding:40px 25px}footer{padding:55px 25px}.footer-top{grid-template-columns:1fr 1fr;gap:45px}.footer-top>div:first-child{grid-column:span 2}.footer-bottom{flex-direction:column;gap:10px}.footer-bottom span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-target{opacity:1!important;transform:none!important}}

/* Immersive home hero — ambient video, word reveal, interactive living-system model. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.home-canvas{padding:10px}
.cinematic-hero{--hero-x:0;--hero-y:0;--spot-x:50%;--spot-y:50%;position:relative;isolation:isolate;min-height:clamp(720px,calc(100svh - 118px),900px);display:grid;grid-template-columns:minmax(0,1.02fr) minmax(430px,.98fr);background:#06101d;border-radius:18px;overflow:hidden}
.cinematic-hero:after{content:"";position:absolute;z-index:3;inset:0;pointer-events:none;border:1px solid rgba(255,255,255,.13);border-radius:inherit;box-shadow:inset 0 0 90px rgba(7,16,30,.38)}
.hero-media,.hero-media-wash,.hero-cursor-light,.hero-spline-field{position:absolute;inset:0}
.hero-media{z-index:-3;background:#08172c url("../media/circulovivo-flow-poster.jpg") center/cover no-repeat}
.hero-media video{width:100%;height:100%;object-fit:cover;object-position:58% 42%;filter:saturate(.72) contrast(1.12) brightness(.66);transform:scale(1.08) translate3d(calc(var(--hero-x) * -8px),calc(var(--hero-y) * -6px),0);transition:transform 1.2s cubic-bezier(.22,1,.36,1)}
.hero-media-wash{background:linear-gradient(90deg,rgba(5,13,26,.97) 0%,rgba(5,14,28,.86) 39%,rgba(6,17,36,.28) 72%,rgba(5,14,28,.57) 100%),linear-gradient(180deg,rgba(2,10,21,.22),rgba(2,10,21,.58))}
.hero-cursor-light{opacity:.5;background:radial-gradient(360px circle at var(--spot-x) var(--spot-y),rgba(126,177,255,.18),transparent 70%);transition:opacity .4s ease}
.cinematic-hero:hover .hero-cursor-light{opacity:.9}
.hero-spline-field{z-index:-1;pointer-events:none;transform:translate3d(calc(var(--hero-x) * 12px),calc(var(--hero-y) * 9px),0);transition:transform .8s cubic-bezier(.22,1,.36,1)}
.spline{position:absolute;display:block;border:1px solid rgba(172,207,255,.2);border-radius:44% 56% 61% 39%/37% 42% 58% 63%;transform-origin:center}
.spline-a{width:58vw;height:74vh;right:-19vw;top:-14vh;transform:rotate(17deg);animation:splineDrift 14s ease-in-out infinite alternate}
.spline-b{width:44vw;height:53vh;right:-6vw;bottom:-17vh;transform:rotate(-21deg);animation:splineDrift 18s ease-in-out -5s infinite alternate-reverse}
.spline-c{width:26vw;height:29vh;right:19vw;top:26vh;border-color:rgba(193,221,255,.3);transform:rotate(38deg);animation:splineDrift 11s ease-in-out -3s infinite alternate}
.signal-particle{position:absolute;width:5px;height:5px;border-radius:50%;background:#d8e8ff;box-shadow:0 0 0 7px rgba(129,176,255,.08),0 0 25px rgba(145,191,255,.85)}
.particle-a{right:11%;top:18%;animation:particleFloat 7s ease-in-out infinite}.particle-b{right:43%;top:29%;animation:particleFloat 9s ease-in-out -3s infinite}.particle-c{right:25%;bottom:15%;animation:particleFloat 8s ease-in-out -5s infinite}
.cinematic-copy{position:relative;z-index:4;padding:clamp(62px,8vh,94px) clamp(36px,4.8vw,72px) 46px;min-width:0;display:flex;flex-direction:column;justify-content:center}
.hero-kicker{display:flex;align-items:center;gap:10px;color:#bdd5ff;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.hero-kicker-mark{width:8px;height:8px;border:1px solid #bcd4ff;border-radius:50%;box-shadow:inset 0 0 0 2px rgba(188,212,255,.22),0 0 0 5px rgba(117,164,246,.06)}
.cinematic-hero h1{display:block;max-width:760px;margin:clamp(34px,5vh,58px) 0 28px;color:#fff;font-size:clamp(4rem,5.35vw,6.35rem);line-height:.94;letter-spacing:-.062em;font-weight:260}
.hero-line{display:block;overflow:hidden;padding-bottom:.08em}
.hero-line-accent{color:#a8c9ff;font-style:normal}
.hero-dek{max-width:610px;margin:0;color:#bdc7d7;font-size:clamp(.94rem,1.1vw,1.08rem);line-height:1.65}
.hero-reveal{opacity:0;transform:translateY(25px);animation:heroEnter .9s cubic-bezier(.16,1,.3,1) var(--enter-delay,0ms) forwards}
.hero-actions{display:flex;align-items:center;gap:27px;margin-top:38px}
.hero-cta{display:inline-flex;align-items:center;justify-content:center;gap:17px;min-height:55px;padding:0 22px 0 25px;border:1px solid rgba(255,255,255,.92);border-radius:999px;background:#fff;color:#071324;font-size:13px;font-weight:650;box-shadow:0 16px 45px rgba(4,13,26,.25);transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease}
.hero-cta:hover,.hero-cta:focus-visible{transform:translateY(-3px);box-shadow:0 23px 55px rgba(3,12,27,.38)}
.hero-cta:focus-visible,.hero-secondary:focus-visible,.story-controls button:focus-visible,.living-model:focus-visible{outline:2px solid #d8e9ff;outline-offset:4px}
.hero-cta-label{position:relative;display:block;height:20px;line-height:20px;overflow:hidden;min-width:126px}
.hero-cta-label>span{display:block;transition:transform .48s cubic-bezier(.16,1,.3,1)}
.hero-cta:hover .hero-cta-label>span,.hero-cta:focus-visible .hero-cta-label>span{transform:translateY(-20px)}
.hero-cta i{font-style:normal;font-size:18px;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.hero-cta:hover i,.hero-cta:focus-visible i{transform:translate(3px,-3px) rotate(7deg)}
.hero-secondary{display:inline-flex;align-items:center;gap:10px;color:#e4eaf4;font-size:12px;padding-bottom:3px;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:0 1px;transition:background-size .35s ease,color .25s ease}
.hero-secondary:hover,.hero-secondary:focus-visible{color:#fff;background-size:calc(100% - 25px) 1px}
.hero-secondary span{transition:transform .3s ease}.hero-secondary:hover span{transform:translate(3px,-3px)}
.hero-index{display:flex;gap:0;margin-top:auto;padding-top:46px;color:#8693a8}
.hero-index span{padding:0 15px;border-right:1px solid rgba(173,192,220,.22);font-size:10px;letter-spacing:.03em}.hero-index span:first-child{padding-left:0}.hero-index span:last-child{border-right:0}
.hero-story{position:relative;z-index:4;min-width:0;padding:58px 52px 44px 20px;display:flex;flex-direction:column;justify-content:center;align-items:center}
.living-model{position:relative;width:min(43vw,560px);aspect-ratio:1;border:0;background:transparent;color:#fff;cursor:pointer;transform:translate3d(calc(var(--hero-x) * 15px),calc(var(--hero-y) * 12px),0);transition:transform .8s cubic-bezier(.22,1,.36,1)}
.model-orbit,.model-axis,.model-core,.model-node{position:absolute;display:block}
.model-orbit{inset:50%;border:1px solid rgba(196,220,255,.28);border-radius:46% 54% 55% 45%/54% 39% 61% 46%;transform:translate(-50%,-50%);animation:modelBreathe 8s ease-in-out infinite}
.orbit-one{width:90%;height:76%;transform:translate(-50%,-50%) rotate(13deg)}
.orbit-two{width:70%;height:70%;border-color:rgba(207,227,255,.4);transform:translate(-50%,-50%) rotate(-32deg);animation-delay:-2.6s}
.orbit-three{width:49%;height:49%;border-color:rgba(224,237,255,.46);transform:translate(-50%,-50%) rotate(41deg);animation-delay:-5.2s}
.model-axis{left:50%;top:50%;width:76%;height:1px;background:linear-gradient(90deg,transparent,rgba(190,217,255,.18),rgba(226,239,255,.56),rgba(190,217,255,.18),transparent);transform-origin:center}
.axis-one{transform:translate(-50%,-50%) rotate(34deg)}.axis-two{transform:translate(-50%,-50%) rotate(-43deg)}
.model-core{left:50%;top:50%;width:154px;height:154px;transform:translate(-50%,-50%);border:1px solid rgba(223,237,255,.54);border-radius:50%;background:radial-gradient(circle at 35% 28%,rgba(222,238,255,.3),rgba(93,139,215,.12) 38%,rgba(4,16,35,.58) 75%);backdrop-filter:blur(13px);box-shadow:inset 0 0 42px rgba(159,199,255,.18),0 0 0 12px rgba(146,190,255,.035),0 24px 70px rgba(3,12,29,.34);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.model-core:after{content:"";position:absolute;inset:-25px;border:1px dashed rgba(194,218,255,.2);border-radius:50%;animation:coreSpin 22s linear infinite}
.model-core small{font-size:8px;letter-spacing:.14em;color:#a9c7f6;margin-bottom:7px}.model-core b{font-size:19px;line-height:.92;letter-spacing:.08em;font-weight:400}
.model-node{width:38px;height:38px;border-radius:50%;border:1px solid rgba(213,230,255,.4);background:rgba(12,30,57,.72);backdrop-filter:blur(10px);font-size:9px;line-height:36px;text-align:center;color:#a9bddc;box-shadow:0 8px 26px rgba(0,8,24,.22);transition:background .45s ease,box-shadow .45s ease,color .45s ease,transform .45s cubic-bezier(.16,1,.3,1)}
.node-1{left:12%;top:34%}.node-2{right:11%;top:31%}.node-3{right:25%;bottom:11%}
.model-node.is-active{background:#d9e9ff;color:#0a1b36;box-shadow:0 0 0 9px rgba(157,198,255,.09),0 0 38px rgba(149,195,255,.5);transform:scale(1.18)}
.living-model:hover .model-core,.living-model:focus-visible .model-core{box-shadow:inset 0 0 45px rgba(174,211,255,.24),0 0 0 18px rgba(148,191,255,.045),0 30px 85px rgba(2,10,28,.45)}
.story-panel{align-self:stretch;display:grid;grid-template-columns:62px 1fr;gap:20px;min-height:120px;margin:-20px 4px 0;padding:23px 25px;border:1px solid rgba(208,228,255,.2);border-radius:18px;background:rgba(9,24,48,.42);backdrop-filter:blur(16px) saturate(125%);box-shadow:0 24px 50px rgba(2,11,28,.16)}
.story-panel>span{color:#8297b6;font-size:9px;letter-spacing:.08em}.story-panel>div{animation:storyShift .55s cubic-bezier(.16,1,.3,1)}
.story-panel small{display:block;color:#9fc4ff;font-size:9px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px}.story-panel h2{font-size:18px;font-weight:450;letter-spacing:-.02em;margin:0 0 3px}.story-panel p{font-size:11px;line-height:1.45;color:#9eacbf;margin:0}
.story-controls{align-self:stretch;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin:16px 4px 0}
.story-controls button{position:relative;border:0;border-top:1px solid rgba(201,222,251,.18);background:transparent;color:#7587a2;padding:13px 3px 3px;text-align:left;font-size:9px;cursor:pointer;transition:color .3s ease,border-color .3s ease}
.story-controls button:before{content:"";position:absolute;left:0;top:-1px;width:0;height:1px;background:#c9ddff;transition:width .5s cubic-bezier(.16,1,.3,1)}
.story-controls button.is-active{color:#e6efff}.story-controls button.is-active:before{width:100%}.story-controls span{display:block;color:#7892ba;font-size:8px;margin-bottom:2px}
.hero-scroll{position:absolute;z-index:5;left:50%;bottom:28px;transform:translateX(-50%);display:flex;align-items:center;gap:9px;color:#8998ad;font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.hero-scroll>span{width:22px;height:22px;border:1px solid rgba(193,215,246,.25);border-radius:50%;position:relative}.hero-scroll>span:after{content:"";position:absolute;left:50%;top:6px;width:1px;height:6px;background:#c6daf8;animation:scrollCue 1.8s ease-in-out infinite}

@keyframes heroEnter{to{opacity:1;transform:translateY(0)}}
@keyframes splineDrift{0%{border-radius:44% 56% 61% 39%/37% 42% 58% 63%}100%{border-radius:58% 42% 39% 61%/51% 62% 38% 49%;transform:rotate(24deg) scale(1.05)}}
@keyframes particleFloat{0%,100%{transform:translate3d(0,0,0);opacity:.45}50%{transform:translate3d(12px,-18px,0);opacity:1}}
@keyframes modelBreathe{0%,100%{opacity:.55;filter:blur(0)}50%{opacity:1;filter:blur(.15px)}}
@keyframes coreSpin{to{transform:rotate(360deg)}}
@keyframes storyShift{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes scrollCue{0%{transform:translate(-50%,0);opacity:0}35%{opacity:1}100%{transform:translate(-50%,7px);opacity:0}}

@media(max-width:1000px){
  .cinematic-hero{grid-template-columns:1fr;min-height:1040px}
  .cinematic-copy{min-height:610px;padding:68px 54px 30px;justify-content:flex-start}
  .cinematic-hero h1{font-size:clamp(4rem,9vw,6rem);max-width:800px}
  .hero-dek{max-width:650px}
  .hero-index{margin-top:52px}
  .hero-story{position:absolute;right:2%;bottom:10px;width:50%;min-width:460px;padding:10px 24px 48px}
  .living-model{width:min(52vw,500px)}
  .story-panel{margin-top:-55px}
  .hero-scroll{left:72px;transform:none}
}

@media(max-width:650px){
  .home-canvas{padding:6px}
  .cinematic-hero{min-height:940px;border-radius:13px;display:block}
  .hero-media video{object-position:62% center;filter:saturate(.68) contrast(1.08) brightness(.54)}
  .hero-media-wash{background:linear-gradient(180deg,rgba(5,13,26,.96) 0%,rgba(5,13,26,.76) 50%,rgba(5,13,26,.55) 100%)}
  .cinematic-copy{min-height:0;padding:48px 22px 0;display:block}
  .cinematic-hero h1{font-size:clamp(3.35rem,15.5vw,4.65rem);line-height:.92;margin:31px 0 22px}
  .hero-dek{font-size:14px;line-height:1.55;max-width:94%}
  .hero-actions{align-items:flex-start;flex-direction:column;gap:18px;margin-top:28px}
  .hero-cta{min-height:51px}
  .hero-index{display:none}
  .hero-story{position:relative;right:auto;bottom:auto;width:auto;min-width:0;padding:18px 14px 62px;margin-top:10px}
  .living-model{width:min(94vw,390px);margin:auto}
  .model-core{width:122px;height:122px}.model-core b{font-size:16px}.model-node{width:34px;height:34px;line-height:32px}
  .story-panel{margin:-44px 0 0;grid-template-columns:43px 1fr;padding:19px 17px;min-height:112px}
  .story-controls{margin:13px 0 0}
  .story-controls button{font-size:8px}
  .hero-scroll{display:none}
  .spline-a{width:120vw;height:64vh;right:-58vw}.spline-b{width:100vw;right:-40vw}.spline-c{width:70vw;right:5vw}
}

@media(prefers-reduced-motion:reduce){
  .hero-reveal{opacity:1;transform:none}
  .hero-media video,.hero-spline-field,.living-model{transform:none!important}
  .hero-cursor-light{display:none}
  .story-panel>div{animation:none}
}

/* Clear system hero — the video is atmospheric; every foreground element explains the model. */
.clear-system-hero{grid-template-columns:minmax(0,.94fr) minmax(520px,1.06fr);min-height:clamp(760px,calc(100svh - 118px),900px)}
.clear-system-hero .hero-media video{object-position:54% 48%;filter:saturate(.75) contrast(1.08) brightness(.76);transform:scale(1.06) translate3d(calc(var(--hero-x) * -5px),calc(var(--hero-y) * -4px),0)}
.clear-system-hero .hero-media-wash{background:linear-gradient(90deg,rgba(5,13,26,.96) 0%,rgba(6,15,29,.84) 41%,rgba(7,18,36,.42) 68%,rgba(5,14,28,.62) 100%),linear-gradient(180deg,rgba(2,10,21,.12),rgba(2,10,21,.48))}
.clear-hero-copy{padding:clamp(64px,8vh,92px) clamp(44px,4.5vw,68px) 46px;justify-content:center}
.clear-system-hero .hero-kicker{font-size:13px;letter-spacing:.045em;text-transform:none;color:#c8dcff}
.clear-system-hero h1{max-width:680px;font-size:clamp(3.8rem,5vw,5.65rem);line-height:.98;margin:clamp(36px,5vh,54px) 0 30px}
.clear-system-hero .hero-dek{max-width:590px;font-size:clamp(1.05rem,1.25vw,1.2rem);line-height:1.6;color:#d1d8e4}
.clear-system-hero .hero-actions{margin-top:40px}
.clear-system-hero .hero-cta{min-height:58px;padding-inline:27px 23px;font-size:15px}
.clear-system-hero .hero-cta-label{min-width:145px;height:22px;line-height:22px}
.clear-system-hero .hero-cta:hover .hero-cta-label>span,.clear-system-hero .hero-cta:focus-visible .hero-cta-label>span{transform:translateY(-22px)}
.clear-system-hero .hero-secondary{font-size:14px}
.clear-system-hero .hero-index{padding-top:48px;color:#aeb8c8}
.clear-system-hero .hero-index span{font-size:12px;padding-inline:18px}

.system-visual{position:relative;z-index:4;min-width:0;padding:48px 48px 54px 12px;display:flex;flex-direction:column;justify-content:center;color:#fff}
.system-map-heading{display:flex;justify-content:space-between;align-items:center;margin:0 6px 10px;color:#c5d4ea;font-size:13px}
.system-map-heading span:first-child{font-weight:600;color:#fff}.system-map-heading span:last-child{color:#9aa9bd}
.system-map{position:relative;width:100%;height:min(55vh,500px);min-height:440px}
.system-map-rings{position:absolute;inset:50% auto auto 50%;width:min(33vw,390px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(170,205,255,.22) 0 8%,rgba(110,163,247,.08) 9% 26%,transparent 27%);box-shadow:0 0 80px rgba(82,139,232,.13)}
.system-map-rings i{position:absolute;border:1px solid rgba(197,220,255,.2);border-radius:50%}.system-map-rings i:nth-child(1){inset:12%}.system-map-rings i:nth-child(2){inset:29%;border-color:rgba(212,229,255,.3)}.system-map-rings i:nth-child(3){inset:43%;background:rgba(181,211,255,.11);border-color:rgba(226,238,255,.5)}
.system-connector{--connector-angle:0deg;position:absolute;z-index:0;left:50%;top:50%;width:36%;height:1px;transform:rotate(var(--connector-angle));transform-origin:left center;background:linear-gradient(90deg,rgba(212,229,255,.72),rgba(177,206,248,.32) 60%,transparent)}
.system-connector:after{content:"";position:absolute;right:4%;top:50%;width:5px;height:5px;border-radius:50%;background:#cfdef5;transform:translateY(-50%);box-shadow:0 0 14px rgba(170,207,255,.75)}
.system-hub{position:absolute;z-index:2;left:50%;top:50%;width:164px;height:164px;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(221,235,255,.62);border-radius:50%;background:radial-gradient(circle at 38% 28%,rgba(214,233,255,.31),rgba(73,121,199,.17) 45%,rgba(7,20,43,.75) 76%);backdrop-filter:blur(15px);box-shadow:inset 0 0 44px rgba(163,202,255,.16),0 0 0 14px rgba(150,195,255,.045),0 24px 65px rgba(2,10,28,.28);text-align:center}
.system-hub span{font-size:12px;letter-spacing:.16em;color:#b4c9e8}.system-hub b{font-size:22px;letter-spacing:.045em;font-weight:500;margin-top:2px}
.system-layer{position:absolute;z-index:3;width:112px;border:0;background:transparent;color:#fff;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;padding:5px;border-radius:18px;transition:transform .35s cubic-bezier(.16,1,.3,1),color .3s ease}
.system-layer>span{width:58px;height:58px;display:grid;place-items:center;border:1px solid rgba(216,232,255,.45);border-radius:50%;background:rgba(10,28,55,.68);backdrop-filter:blur(12px);color:#b7c7dd;font-size:13px;box-shadow:0 10px 28px rgba(1,9,25,.2);transition:background .35s ease,color .35s ease,box-shadow .35s ease,border-color .35s ease,transform .35s cubic-bezier(.16,1,.3,1)}
.system-layer>b{font-size:15px;font-weight:500;letter-spacing:.01em;text-shadow:0 2px 12px rgba(2,9,22,.55)}
.system-layer:hover,.system-layer:focus-visible,.system-layer.is-active{transform:translateY(-3px);color:#fff;outline:none}
.system-layer:focus-visible{outline:2px solid #d8e9ff;outline-offset:4px}
.system-layer:hover>span,.system-layer:focus-visible>span,.system-layer.is-active>span{background:#d9e8ff;color:#0b1a33;border-color:#fff;box-shadow:0 0 0 10px rgba(159,198,255,.08),0 0 36px rgba(146,190,255,.36);transform:scale(1.08)}
.layer-strategy{left:3%;top:10%}.layer-data{right:5%;top:5%}.layer-ai{right:-1%;top:43%}.layer-execution{right:8%;bottom:3%}.layer-design{left:4%;bottom:5%}
.system-detail{display:grid;grid-template-columns:54px 1fr;gap:20px;align-items:start;min-height:142px;margin-top:0;padding:24px 26px;border:1px solid rgba(211,228,252,.25);border-radius:18px;background:rgba(9,24,48,.5);backdrop-filter:blur(18px) saturate(125%);box-shadow:0 22px 50px rgba(2,11,28,.16)}
.system-detail>span{font-size:13px;color:#9eb5d6;padding-top:4px}.system-detail>div{animation:storyShift .48s cubic-bezier(.16,1,.3,1)}
.system-detail small{display:block;color:#a9caff;font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px}
.system-detail h2{font-size:clamp(1.35rem,1.7vw,1.65rem);line-height:1.2;font-weight:450;letter-spacing:-.025em;margin:0 0 7px}
.system-detail p{max-width:520px;font-size:15px;line-height:1.5;color:#bcc7d7;margin:0}

@media(max-width:1100px){
  .clear-system-hero{grid-template-columns:1fr;min-height:1260px}
  .clear-hero-copy{min-height:620px;padding:68px 54px 28px;justify-content:flex-start}
  .clear-system-hero h1{max-width:780px;font-size:clamp(4.1rem,8.6vw,6rem)}
  .system-visual{padding:20px 54px 72px}
  .system-map{height:510px}
  .system-map-rings{width:min(48vw,410px)}
  .system-detail{max-width:720px;width:100%;margin-inline:auto}
  .clear-system-hero .hero-scroll{display:none}
}

@media(max-width:650px){
  .clear-system-hero{min-height:auto;display:block}
  .clear-system-hero .hero-media video{object-position:58% center;filter:saturate(.72) contrast(1.05) brightness(.63)}
  .clear-system-hero .hero-media-wash{background:linear-gradient(180deg,rgba(5,13,26,.94) 0%,rgba(5,13,26,.78) 47%,rgba(5,13,26,.58) 100%)}
  .clear-hero-copy{min-height:0;padding:48px 22px 30px}
  .clear-system-hero .hero-kicker{font-size:12px}
  .clear-system-hero h1{font-size:clamp(3.15rem,14.6vw,4.35rem);line-height:.94;margin:30px 0 23px}
  .clear-system-hero .hero-dek{font-size:16px;line-height:1.55;max-width:100%}
  .clear-system-hero .hero-actions{align-items:flex-start;flex-direction:column;gap:20px;margin-top:30px}
  .clear-system-hero .hero-index{display:none}
  .system-visual{padding:30px 14px 52px}
  .system-map-heading{font-size:12px;margin-inline:4px}
  .system-map{height:410px;min-height:410px}
  .system-map-rings{width:245px}
  .system-hub{width:116px;height:116px}.system-hub span{font-size:9px}.system-hub b{font-size:16px}
  .system-connector{width:37%}
  .system-layer{width:84px;gap:5px}.system-layer>span{width:45px;height:45px;font-size:12px}.system-layer>b{font-size:13px}
  .layer-strategy{left:-1%;top:9%}.layer-data{right:1%;top:5%}.layer-ai{right:-3%;top:43%}.layer-execution{right:3%;bottom:2%}.layer-design{left:0;bottom:3%}
  .system-detail{grid-template-columns:35px 1fr;gap:13px;min-height:158px;padding:20px 17px}
  .system-detail>span{font-size:12px}.system-detail small{font-size:11px}.system-detail h2{font-size:21px}.system-detail p{font-size:14px}
}

@media(prefers-reduced-motion:reduce){
  .clear-system-hero .hero-media video{transform:none!important}
  .system-detail>div{animation:none}
}

/* WordPress shell: preserve the prototype canvas without block-theme spacing. */
html{margin-top:0!important}
body{overflow-x:hidden}
.wp-site-blocks,.cv-main,.cv-main>.wp-block-post-content{margin:0!important;padding:0!important;max-width:none!important;width:100%!important}
.cv-main>.wp-block-post-content>*{max-width:none!important}
.cv-main p:empty{display:none}
.site-header,.site-footer{width:100%}
.site-header .brand,.site-footer .brand{font-weight:400}
.site-header a:focus-visible,.site-footer a:focus-visible,.mobile-menu summary:focus-visible,.hub-filter button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.mobile-menu summary{list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}
.site-footer .footer-bottom a{display:inline;color:inherit}
.cv-contact-form{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.cv-contact-form label{display:grid;gap:9px;font-size:.72rem;color:#546176}
.cv-contact-form input,.cv-contact-form textarea{width:100%;border:0;border-bottom:1px solid var(--line);padding:13px 0;background:transparent;color:var(--ink);outline:0;border-radius:0}
.cv-contact-form input:focus,.cv-contact-form textarea:focus{border-color:var(--blue);box-shadow:0 1px 0 var(--blue)}
.cv-contact-form .wide,.cv-contact-form .cv-form-message,.cv-contact-form .cv-form-consent{grid-column:1/-1}
.cv-contact-form .cv-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.cv-contact-form .cv-form-message{padding:15px 18px;border-radius:12px;margin:0}
.cv-contact-form .cv-form-message.success{background:#e7f7ef;color:#17673f}
.cv-contact-form .cv-form-message.error{background:#fff0f0;color:#9a2626}
.cv-contact-form .cv-form-consent{font-size:.72rem;color:var(--muted);margin:0}
.cv-contact-form .button{border:0;cursor:pointer;justify-self:start}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:650px){.cv-contact-form{grid-template-columns:1fr}.cv-contact-form .wide,.cv-contact-form .cv-form-message,.cv-contact-form .cv-form-consent{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-target,.hero-reveal{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}.hero-media video{transform:none!important}.system-map-rings,.system-connector:after{animation:none!important}}

/* Production accessibility, language and editorial states. */
body,button,input,textarea,select{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.skip-link:focus{position:fixed!important;z-index:1000;top:8px;left:8px;width:auto!important;height:auto!important;margin:0!important;padding:12px 16px!important;clip:auto!important;overflow:visible!important;background:#fff;color:#0a1426;border:2px solid #3158ed;border-radius:8px}
.language-switch{display:flex;align-items:center;gap:5px}.language-switch a{padding:5px;border-radius:5px}.language-switch a[aria-current=page]{font-weight:800;text-decoration:underline;text-underline-offset:3px}.language-switch a:focus-visible,.cv-form-check a:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.cv-form-check{display:flex!important;align-items:flex-start;gap:10px}.cv-form-check input{width:18px!important;height:18px;margin-top:3px;flex:0 0 auto}.cv-form-check span{font-size:.78rem;color:var(--muted)}.cv-form-check a{text-decoration:underline;text-underline-offset:2px}.cv-contact-form [aria-invalid=true]{border-color:#9a2626!important;box-shadow:0 0 0 2px rgba(154,38,38,.12)}
.hub-grid>a[hidden],.case-list-grid>a[hidden]{display:none}.hub-filter button[aria-pressed=true]{background:var(--navy);color:#fff}.hub-filter button:first-of-type{background:#fff;color:var(--ink)}
.editorial-notice{margin:0 0 28px;padding:16px 18px;border:1px solid #f0c36b;border-radius:12px;background:#fff8e8;color:#60430b;font-size:.78rem;line-height:1.5}.editorial-notice strong{display:block;margin-bottom:4px}
.legal-page{max-width:980px;margin:22px auto;padding:70px;background:#fff;border-radius:var(--radius)}.legal-page h1{font-size:clamp(3rem,5vw,5rem);font-weight:300;letter-spacing:-.05em}.legal-page h2{margin-top:50px;font-size:2rem;font-weight:400}.legal-page li,.legal-page p{font-size:1rem;line-height:1.75}.legal-updated{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
@media(max-width:650px){.language-switch{margin-left:auto}.legal-page{margin:10px;padding:42px 24px;border-radius:15px}.legal-page h1{font-size:3rem}}
@media(prefers-reduced-motion:reduce){.hero-media video{visibility:hidden!important}.hero-media{background-image:var(--hero-poster);background-size:cover;background-position:center}.system-layer{transform:none!important}}
