/* Paradigm AI — institutional dark interface */
html,body { background:#071426; }
body.is-preload, body { background-color:#071426 !important; }
#wrapper { background:#071426; }
#wrapper > .bg {
  background-color:#071426 !important;
  background-image:linear-gradient(180deg,rgba(4,14,30,.18),rgba(4,14,30,.38)),url("../../images/bg-dynamic.jpg") !important;
  background-size:cover !important; background-position:center center !important; background-repeat:no-repeat !important;
  background-attachment:fixed !important; opacity:1; transition:opacity .35s ease;
}
#wrapper > *:not(.bg) { position:relative; z-index:1; }
#intro { min-height:100vh; padding-top:5rem; }
#intro h1 { font-family:"IBM Plex Sans","Inter","Segoe UI",Arial,sans-serif; font-weight:600; letter-spacing:.055em; text-transform:uppercase; text-shadow:0 2px 28px rgba(0,0,0,.55); margin-bottom:.75rem; }
#intro p { font-style:normal; letter-spacing:.09em; text-transform:uppercase; font-size:.82rem; color:rgba(239,245,252,.86); }
.paradigm-mark { width:132px; margin:0 auto 1.3rem; filter:drop-shadow(0 0 15px rgba(154,207,255,.18)); animation:mark-breathe 5.5s ease-in-out infinite; }
.paradigm-mark svg { display:block; width:100%; height:auto; overflow:visible; }
.paradigm-mark circle { fill:none; stroke-width:2.2; }
.paradigm-mark .mark-left { stroke:rgba(247,250,255,.96); }
.paradigm-mark .mark-right { stroke:rgba(149,194,235,.58); }
@keyframes mark-breathe { 0%,100%{opacity:.86;filter:drop-shadow(0 0 10px rgba(154,207,255,.12))}50%{opacity:1;filter:drop-shadow(0 0 18px rgba(154,207,255,.28))} }

#nav { background:rgba(9,24,43,.88); backdrop-filter:blur(14px); border:1px solid rgba(178,205,230,.12); border-bottom:0; }
#nav .links a { color:#edf4fa; }
#nav .links li.active { background:rgba(235,244,252,.10); }
#nav .links li.active a { color:#fff; }

#main { background:rgba(9,24,43,.90); color:#d8e2eb; box-shadow:0 24px 70px rgba(0,0,0,.26); border:1px solid rgba(178,205,230,.13); backdrop-filter:blur(16px); }
#main > * { border-top-color:rgba(178,205,230,.13); }
#main h1,#main h2,#main h3,#main h4,#main h5,#main h6,.post.featured header.major h2,.about-page header.major h1 { color:#f5f8fb; }
#main p,#main li { color:#d5e0e9; }
#main a { color:#f2f7fb; }
#main header.major > .date, #main article header .date { color:#9fb3c6; }
#main header.major > .date:before,#main header.major > .date:after { border-top-color:rgba(178,205,230,.22); }
#main .button { box-shadow:inset 0 0 0 2px rgba(226,238,248,.72); color:#f4f8fb !important; }
#main .button:hover { box-shadow:inset 0 0 0 2px #fff; color:#fff !important; }
.brand-visual img { object-fit:contain; max-height:330px; }
.expertise-grid article { display:flex; flex-direction:column; background:rgba(255,255,255,.018); }
.expertise-grid article .image { margin-bottom:1.6rem; }
.expertise-grid article p { flex:1; text-align:left; }
.expertise-grid .image img { height:245px; object-fit:cover; opacity:.92; }
.content-block { border-top:1px solid rgba(178,205,230,.15); padding:3.5rem 0 .5rem; margin-top:2.5rem; }
.content-block > p { max-width:58rem; }
.value-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; margin:2rem 0; }
.value-grid > div,.tech { border:1px solid rgba(178,205,230,.14); background:rgba(255,255,255,.035); }
.value-grid > div { padding:1.5rem; }
.value-grid h3 { margin-bottom:.65rem; }.value-grid p { margin:0; }
.tech-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin-top:2rem; }
.tech { min-height:118px; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:1rem; transition:transform .2s ease,background .2s ease,border-color .2s ease; }
.tech:hover { transform:translateY(-2px); background:rgba(255,255,255,.06); border-color:rgba(178,205,230,.26); }
.tech strong { color:#f0f5f9; font-size:1.05rem; letter-spacing:.02em; }.tech span { color:#91a8bb; font-size:.72rem; margin-top:.4rem; text-transform:uppercase; letter-spacing:.08em; }
#footer { background:rgba(8,21,38,.94); color:#cbd8e3; border:1px solid rgba(178,205,230,.12); }
#footer h3,#footer label,#footer a { color:#edf4f9; }
#footer input,#footer textarea { color:#edf4f9; border-color:rgba(190,213,233,.25); background:rgba(255,255,255,.025); }
#footer .split.contact > section { border-top-color:rgba(178,205,230,.12); }
#footer > section + section { border-left-color:rgba(178,205,230,.12); }
.form-status { min-height:1.5rem; margin:1rem 0 0; font-size:.9rem; }.form-status.success{color:#8fd5b2}.form-status.error{color:#f1a3a3}
@media screen and (max-width:980px){.tech-grid{grid-template-columns:repeat(3,1fr)}.value-grid{grid-template-columns:1fr}}
@media screen and (max-width:736px){#wrapper > .bg{background-attachment:scroll!important;background-position:center center!important}.tech-grid{grid-template-columns:repeat(2,1fr)}.expertise-grid .image img{height:210px}.paradigm-mark{width:105px}#intro h1{letter-spacing:.035em}}
@media (prefers-reduced-motion:reduce){.tech{transition:none}.paradigm-mark{animation:none}}

/* 2026-09 UX pass: persistent navigation, media consistency and brand polish */
.brand-visual {
  position:relative; overflow:hidden; border-radius:10px;
  border:1px solid rgba(178,205,230,.20);
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(7,20,38,.32));
  box-shadow:0 20px 55px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.04);
}
.brand-visual:after { content:""; position:absolute; inset:0; pointer-events:none; box-shadow:inset 0 0 45px rgba(111,190,255,.06); }
.brand-visual img { display:block; width:100%; border-radius:9px; }

.expertise-grid article .image.fit { height:245px; overflow:hidden; margin-bottom:1.6rem; }
.expertise-grid article .image.fit img { width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .48s cubic-bezier(.2,.65,.25,1),opacity .3s ease; }
@media (hover:hover) and (pointer:fine){.expertise-grid article:hover .image.fit img{transform:scale(1.045);opacity:1}}

.floating-nav { position:fixed; top:18px; right:22px; z-index:10020; opacity:0; visibility:hidden; transform:translateY(-8px); transition:opacity .2s ease,transform .2s ease,visibility .2s; }
.floating-nav.is-visible { opacity:1; visibility:visible; transform:none; }
.floating-nav-panel { display:flex; align-items:center; gap:2px; padding:6px; border:1px solid rgba(178,205,230,.18); border-radius:9px; background:rgba(7,20,38,.88); backdrop-filter:blur(15px); -webkit-backdrop-filter:blur(15px); box-shadow:0 12px 38px rgba(0,0,0,.28); }
.floating-nav-panel a { border:0; color:#edf4fa; font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif; font-size:.72rem; font-weight:600; letter-spacing:.08em; line-height:1; padding:.78rem .88rem; text-transform:uppercase; text-decoration:none; border-radius:6px; transition:background .18s ease,color .18s ease; }
.floating-nav-panel a:hover { background:rgba(255,255,255,.09); color:#fff!important; }
.floating-nav-toggle { display:none; }

@media screen and (max-width:736px){
  .expertise-grid article .image.fit{height:210px}
  .floating-nav{top:14px;right:14px}
  .floating-nav-toggle{display:flex;width:44px;height:44px;padding:0;border:1px solid rgba(178,205,230,.20);border-radius:9px;background:rgba(7,20,38,.90);box-shadow:0 10px 28px rgba(0,0,0,.28);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);align-items:center;justify-content:center;flex-direction:column;gap:4px;cursor:pointer}
  .floating-nav-toggle span{display:block;width:17px;height:1.5px;background:#edf4fa;transition:transform .2s ease,opacity .2s ease}
  .floating-nav.is-open .floating-nav-toggle span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
  .floating-nav.is-open .floating-nav-toggle span:nth-child(2){opacity:0}
  .floating-nav.is-open .floating-nav-toggle span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}
  .floating-nav-panel{position:absolute;top:52px;right:0;min-width:190px;display:flex;flex-direction:column;align-items:stretch;padding:7px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease,visibility .18s}
  .floating-nav.is-open .floating-nav-panel{opacity:1;visibility:visible;transform:none}
  .floating-nav-panel a{padding:.9rem 1rem;text-align:left}
}
@media (prefers-reduced-motion:reduce){.expertise-grid article .image.fit img,.floating-nav,.floating-nav-panel{transition:none!important}}
@media screen and (max-width:736px){#navPanelToggle,#navPanel{display:none!important}body.is-navPanel-visible #wrapper{transform:none!important}}

/* Final UX consistency pass */
@media screen and (min-width:737px){
  .expertise-grid article > header{min-height:10.75rem;display:flex;flex-direction:column;justify-content:flex-start;align-items:center}
  .expertise-grid article > header .date{min-height:1.5rem}
  .expertise-grid article > header h2{margin-bottom:0}
}
.expertise-grid article .image.fit{width:100%;height:245px;overflow:hidden;margin:0 0 1.6rem 0}
.expertise-grid article .image.fit img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
@media screen and (max-width:736px){
  .expertise-grid article > header{min-height:0}
  .expertise-grid article .image.fit{width:100%;height:auto;aspect-ratio:16/10}
}
/* Floating nav is independent of the Massively template nav panel. */
.floating-nav{pointer-events:none}
.floating-nav.is-visible{pointer-events:auto}
@media screen and (min-width:737px){.floating-nav-toggle{display:none!important}.floating-nav-panel{display:flex!important;opacity:1!important;visibility:visible!important;transform:none!important}}

/* Floating navigation must remain attached to the viewport, independently of Massively's transformed wrapper. */
body > .floating-nav { position: fixed !important; top: 18px; right: 22px; left: auto; bottom: auto; z-index: 10050; }
@media screen and (max-width:736px) {
  body > .floating-nav { top: 14px; right: 14px; left: auto; bottom: auto; }
  body > .floating-nav .floating-nav-toggle { position: relative; z-index: 2; }
  body > .floating-nav .floating-nav-panel { top: 52px; right: 0; left: auto; bottom: auto; }
}

/* 2026-09 — exact cinematic hero composition */
body.home-cinematic {}
.cinematic-hero {
  position: relative;
  z-index: 2;
  width: min(100vw, 1671px);
  margin: 0 auto;
  aspect-ratio: 1671 / 941;
  overflow: hidden;
  background: #020b15;
  box-shadow: 0 30px 90px rgba(0,0,0,.42);
}
.cinematic-hero-art {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center top;
  user-select: none;
  -webkit-user-drag: none;
}
.cinematic-hit {
  position: absolute;
  display: block;
  z-index: 3;
  border: 0;
  background: transparent;
  text-decoration: none;
}
.cinematic-hit:focus-visible {
  outline: 2px solid rgba(134,190,255,.95);
  outline-offset: 3px;
  border-radius: 5px;
}
.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;
}
/* Hit zones are aligned to the generated reference artwork. */
.cinematic-home      { left:34.6%; top:2.1%; width:5.2%; height:5%; }
.cinematic-expertise { left:39.7%; top:2.1%; width:6.2%; height:5%; }
.cinematic-approche  { left:46.6%; top:2.1%; width:6.7%; height:5%; }
.cinematic-about     { left:53.3%; top:2.1%; width:6.8%; height:5%; }
.cinematic-contact   { left:60.1%; top:2.1%; width:6.3%; height:5%; }
.cinematic-exchange  { left:76.3%; top:2.1%; width:13.8%; height:5.3%; }
.cinematic-cta       { left:40.5%; top:55.2%; width:18.7%; height:5.2%; }
.cinematic-scroll    { left:48.3%; top:65.2%; width:3.2%; height:7.2%; }
.cinematic-card-1    { left:12.5%; top:81.4%; width:16.5%; height:14%; }
.cinematic-card-2    { left:34.0%; top:81.4%; width:16.5%; height:14%; }
.cinematic-card-3    { left:55.5%; top:81.4%; width:16.5%; height:14%; }
.cinematic-card-4    { left:77.0%; top:81.4%; width:16.5%; height:14%; }

/* The reference artwork already contains its own complete visual language. */
.cinematic-hero + #main {
  margin-top: 0;
  border-top: 1px solid rgba(178,205,230,.13);
}
.cinematic-hero + #main > .post.featured {
  display: none;
}
#expertises { scroll-margin-top: 5rem; }

@media screen and (max-width: 736px) {
  .cinematic-hero {
    width: 100%;
    height: 100svh;
    min-height: 640px;
    aspect-ratio: auto;
    background-image: url("../../images/hero-cinematic.png");
    background-repeat: no-repeat;
    background-position: 50% 16%;
    background-size: auto 100%;
  }
  .cinematic-hero-art { opacity: 0; }
  /* On narrow screens the existing floating menu supplies real navigation. */
  .cinematic-hit:not(.cinematic-cta):not(.cinematic-scroll) { display:none; }
  .cinematic-cta { left:29%; top:54%; width:42%; height:7%; }
  .cinematic-scroll { left:44%; top:66%; width:12%; height:8%; }
}
@media (prefers-reduced-motion: reduce) {
  .cinematic-hero { scroll-behavior:auto; }
}
@media screen and (max-width:736px) {
  body > .floating-nav { opacity:1; visibility:visible; transform:none; pointer-events:auto; }
}


/* 2026-09 — cinematic hero: true viewport cover */
body.home-cinematic #wrapper {
  background: #06111f !important;
}
body.home-cinematic #wrapper > .bg {
  background: #06111f !important;
  background-image: none !important;
}
body.home-cinematic body.home-cinematic .cinematic-hero {
  position: relative;
  width: 100vw;
  height: 100vh;
  height: 100svh;
  min-height: 0;
  max-width: none;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  aspect-ratio: auto;
  overflow: hidden;
  background: #020b15;
  box-shadow: none;
}
body.home-cinematic .cinematic-hero-art {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
body.home-cinematic .cinematic-hero + #main {
  margin-top: 0;
}
@media screen and (max-width: 736px) {
  body.home-cinematic .cinematic-hero {
    width: 100vw;
    height: 100svh;
    min-height: 0;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background: #020b15;
  }
  body.home-cinematic .cinematic-hero-art {
    opacity: 1;
    object-fit: cover;
    object-position: 50% 50%;
  }
}

/* 2026-09 — unified Paradigm corporate design system */
body.paradigm-corporate{background:#030b15;color:#c7d4e2;font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif}
body.paradigm-corporate #wrapper{background:#030b15!important;overflow:hidden}
body.paradigm-corporate #wrapper>.bg,body.paradigm-corporate body.paradigm-corporate .floating-nav{opacity:1;visibility:visible;transform:none;pointer-events:auto}
body.paradigm-corporate .floating-nav-panel{background:rgba(3,11,21,.72);border-color:rgba(137,185,230,.16);box-shadow:0 12px 40px rgba(0,0,0,.18)}
.corp-main{position:relative;z-index:2;width:100%;max-width:none;margin:0;background:radial-gradient(circle at 82% 8%,rgba(24,88,145,.09),transparent 28%),#030b15}
.corp-main:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(108,164,218,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(108,164,218,.025) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(to bottom,black,transparent 72%)}
.corp-section{position:relative;z-index:1;max-width:1320px;margin:0 auto;padding:8.5rem 5rem;border-bottom:1px solid rgba(137,185,230,.12)}
.section-kicker,.eyebrow{margin:0 0 1.3rem;color:#73b8f5;font-size:.72rem;font-weight:600;letter-spacing:.19em;text-transform:uppercase}
.section-intro{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr);gap:6rem;align-items:end;margin-bottom:5rem}
.section-intro h1,.conviction-copy h1,.contact-copy h1,.about-hero h1{margin:0;color:#f3f7fb;font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif;font-weight:400;letter-spacing:-.035em;text-transform:none;line-height:1.03}
.section-intro h1{font-size:clamp(2.7rem,5vw,5.4rem)}
.section-intro p,.conviction-copy>p,.contact-copy>p,.about-hero-copy>p:last-child{margin:0;color:#9fb0c2;font-size:1.05rem;line-height:1.85}
.expertise-list{border-top:1px solid rgba(137,185,230,.16)}
.expertise-list article{display:grid;grid-template-columns:72px minmax(300px,.8fr) minmax(320px,1fr);gap:3.5rem;align-items:start;padding:2.65rem 0;border-bottom:1px solid rgba(137,185,230,.12);transition:background .25s ease,padding .25s ease}
.expertise-list article:hover{background:linear-gradient(90deg,rgba(61,137,207,.055),transparent 72%);padding-left:1rem;padding-right:1rem}
.expertise-no{color:#e2a567;font-size:.72rem;letter-spacing:.12em;padding-top:.35rem}
.expertise-list .eyebrow{margin-bottom:.55rem;color:#6887a5}
.expertise-list h2{margin:0;color:#eef5fb;font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif;font-size:1.35rem;font-weight:500;letter-spacing:-.01em;text-transform:none;line-height:1.3}
.expertise-list article>p{margin:0;color:#91a3b5;line-height:1.8;font-size:.96rem}
.approach-section{padding-top:9rem;padding-bottom:9rem}
.approach-flow{position:relative;display:grid;grid-template-columns:repeat(4,1fr);margin-top:4.5rem;border-top:1px solid rgba(137,185,230,.2)}
.approach-flow:before{content:"";position:absolute;top:-1px;left:0;width:25%;height:1px;background:linear-gradient(90deg,#e1a05e,#67b9ff)}
.approach-flow>div{min-height:250px;padding:2.3rem 2.4rem 1rem 0;border-right:1px solid rgba(137,185,230,.12)}
.approach-flow>div:not(:first-child){padding-left:2.4rem}
.approach-flow>div:last-child{border-right:0}
.approach-flow span{color:#e2a567;font-size:.72rem;letter-spacing:.15em}.approach-flow h3{margin:2.5rem 0 1rem;color:#edf4fa;font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif;font-size:1.25rem;font-weight:500;text-transform:none;letter-spacing:0}.approach-flow p{margin:0;color:#879aac;line-height:1.75;font-size:.92rem}
.conviction-section{display:grid;grid-template-columns:1.2fr .8fr;gap:8rem;align-items:start}
.conviction-copy h1{font-size:clamp(2.4rem,4vw,4.3rem);max-width:800px;margin-bottom:2.3rem}.conviction-copy>p{max-width:720px}.corp-link{display:inline-block;margin-top:2.4rem;border:0;color:#dce9f5!important;font-size:.82rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.corp-link span{margin-left:.7rem;color:#e2a567}.principles{border-top:1px solid rgba(137,185,230,.18)}.principles>div{display:grid;grid-template-columns:52px 1fr;gap:1.4rem;padding:1.5rem 0;border-bottom:1px solid rgba(137,185,230,.12)}.principles strong{color:#e2a567;font-size:.7rem;font-weight:500}.principles span{color:#a9b9c9;font-size:.92rem}
.tech-lines{margin-top:4rem;border-top:1px solid rgba(137,185,230,.16)}.tech-lines>div{display:grid;grid-template-columns:180px 1fr;gap:3rem;padding:1.7rem 0;border-bottom:1px solid rgba(137,185,230,.11)}.tech-lines span{color:#6e89a3;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase}.tech-lines strong{color:#d8e5f1;font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif;font-size:1rem;font-weight:400;letter-spacing:.03em}
.contact-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:9rem;padding-top:9rem;padding-bottom:9rem}.contact-copy h1{font-size:clamp(3rem,5vw,5rem);margin-bottom:1.7rem}.contact-meta{margin-top:3rem!important;color:#7289a0!important;font-size:.9rem!important}.contact-meta a{color:#c9d9e8!important;border:0}.corp-form{margin:0}.corp-form .fields{margin:0}.corp-form .field{margin-bottom:1.4rem}.corp-form label{color:#6f8ba5;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase}.corp-form input[type=text],.corp-form input[type=email],.corp-form textarea{border:0;border-bottom:1px solid rgba(137,185,230,.22);border-radius:0;background:transparent;color:#eef5fb;padding:.8rem 0;box-shadow:none}.corp-form input:focus,.corp-form textarea:focus{border-bottom-color:#6db9f6;box-shadow:none}.corp-button{margin-top:1rem;padding:.9rem 1.35rem;border:1px solid rgba(225,160,94,.55);border-radius:3px;background:transparent;color:#eef5fb;font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.corp-button span{margin-left:1rem;color:#e2a567}.corp-footer{display:flex;justify-content:space-between;max-width:1320px;margin:0 auto;padding:2rem 5rem 3rem;color:#536a80;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}
.about-hero{position:relative;min-height:76svh;padding:3rem max(5rem,calc((100vw - 1320px)/2 + 5rem));display:flex;flex-direction:column;justify-content:center;overflow:hidden;background:radial-gradient(circle at 80% 45%,rgba(40,126,203,.18),transparent 22%),radial-gradient(circle at 80% 45%,rgba(226,160,94,.09),transparent 9%),#020b15;border-bottom:1px solid rgba(137,185,230,.13)}
.about-hero:after{content:"";position:absolute;width:580px;height:580px;right:7%;top:50%;transform:translateY(-50%);border:1px solid rgba(106,183,247,.15);border-radius:50%;box-shadow:0 0 0 80px rgba(106,183,247,.025),0 0 0 160px rgba(226,160,94,.018)}
.about-brand{position:absolute;top:2.4rem;left:max(5rem,calc((100vw - 1320px)/2 + 5rem));display:flex;align-items:center;gap:1rem;border:0!important;color:#e8f0f7!important;font-size:.72rem;letter-spacing:.28em}.rings{position:relative;width:46px;height:24px}.rings i{position:absolute;width:24px;height:24px;border:1px solid #e6eef6;border-radius:50%}.rings i+ i{left:16px;border-color:#6bbcff}.about-hero-copy{position:relative;z-index:2;max-width:800px}.about-hero h1{font-size:clamp(3.5rem,6.2vw,6.8rem);margin-bottom:2rem}.about-hero-copy>p:last-child{max-width:680px}.about-orbit{position:absolute;right:17%;top:48%;z-index:2;color:#8dc9ff;font-family:serif;font-size:2rem}.narrative-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:8rem;margin-top:3.5rem}.narrative-grid h2{margin:0;color:#edf4fa;font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif;font-size:clamp(2rem,3vw,3.4rem);font-weight:400;letter-spacing:-.025em;text-transform:none;line-height:1.15}.narrative-grid p{color:#94a7b9;line-height:1.85}
@media(max-width:900px){.corp-section{padding:6rem 2rem}.section-intro,.conviction-section,.contact-section,.narrative-grid{grid-template-columns:1fr;gap:2.5rem}.section-intro{margin-bottom:3.5rem}.expertise-list article{grid-template-columns:44px 1fr;gap:1.4rem}.expertise-list article>p{grid-column:2}.approach-flow{grid-template-columns:1fr 1fr}.approach-flow>div:nth-child(2){border-right:0}.conviction-section,.contact-section{gap:4rem}.corp-footer{padding:2rem;gap:2rem}.about-hero{padding:7rem 2rem 4rem;min-height:70svh}.about-brand{left:2rem;top:2rem}.about-hero:after{right:-300px}.about-orbit{display:none}}
@media(max-width:600px){.corp-section{padding:5rem 1.35rem}.section-intro h1{font-size:2.7rem}.expertise-list article{grid-template-columns:32px 1fr;gap:1rem;padding:2rem 0}.expertise-list article:hover{padding-left:0;padding-right:0;background:none}.approach-flow{grid-template-columns:1fr}.approach-flow>div,.approach-flow>div:not(:first-child){min-height:0;padding:2rem 0;border-right:0;border-bottom:1px solid rgba(137,185,230,.12)}.tech-lines>div{grid-template-columns:1fr;gap:.55rem}.corp-footer{flex-direction:column}.about-hero h1{font-size:3.2rem}.cinematic-hero-art{object-position:50% 50%}}
\n\n/* 2026-09 — V5 fixed cinematic background + unified scrolling corporate surface */
body.paradigm-corporate.home-cinematic {
  background:#020913;
}
body.paradigm-corporate.home-cinematic::before {
  content:"";
  position:fixed;
  inset:0;
  z-index:-3;
  background-image:url("../../images/hero-cinematic.png");
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  transform:scale(1.015);
}
body.paradigm-corporate.home-cinematic::after {
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(1,8,17,.34) 0%,rgba(2,9,19,.50) 42%,rgba(2,9,19,.68) 100%),
    radial-gradient(circle at 50% 38%,rgba(4,15,28,.08),rgba(1,7,15,.34) 76%);
}
body.home-cinematic #wrapper,
body.paradigm-corporate #wrapper {background:transparent!important;overflow:visible}
body.home-cinematic .cinematic-hero {background:transparent}
body.home-cinematic .cinematic-hero-art {
  opacity:.72;
  filter:brightness(.72) saturate(.78) contrast(.96);
}
/* The content becomes one continuous high-end glass surface over the fixed visual. */
body.paradigm-corporate .corp-main {
  position:relative;
  background:linear-gradient(180deg,rgba(3,12,23,.88),rgba(3,11,21,.93) 18%,rgba(3,11,21,.90) 82%,rgba(3,11,21,.95));
  border-top:1px solid rgba(135,190,238,.14);
  box-shadow:0 -28px 90px rgba(0,0,0,.24);
  backdrop-filter:blur(9px);
  -webkit-backdrop-filter:blur(9px);
}
body.paradigm-corporate .corp-main:before {
  opacity:.62;
  background-image:linear-gradient(rgba(108,164,218,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(108,164,218,.022) 1px,transparent 1px);
  background-size:96px 96px;
}
body.paradigm-corporate .corp-section {
  background:linear-gradient(90deg,rgba(3,12,23,.18),rgba(7,20,35,.26) 50%,rgba(3,12,23,.18));
  border-bottom-color:rgba(137,185,230,.11);
}
body.paradigm-corporate .conviction-section {padding-top:9rem;padding-bottom:9rem}
body.paradigm-corporate .corp-footer {
  max-width:none;
  padding-left:max(5rem,calc((100vw - 1320px)/2 + 5rem));
  padding-right:max(5rem,calc((100vw - 1320px)/2 + 5rem));
  background:rgba(2,9,18,.94);
  border-top:1px solid rgba(137,185,230,.10);
}
@media (max-width:900px){
  body.paradigm-corporate.home-cinematic::before{background-position:center center;transform:none}
  body.home-cinematic .cinematic-hero-art{opacity:.68;filter:brightness(.68) saturate(.74)}
  body.paradigm-corporate .corp-main{backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
  body.paradigm-corporate .corp-footer{padding-left:2rem;padding-right:2rem}
}
@media (max-width:600px){
  body.paradigm-corporate.home-cinematic::after{background:linear-gradient(180deg,rgba(1,8,17,.38),rgba(2,9,19,.72))}
  body.paradigm-corporate .corp-main{background:rgba(3,11,21,.94)}
}
@media (prefers-reduced-motion:reduce){body.paradigm-corporate.home-cinematic::before{transform:none}}

/* 2026-09 — V6 wide viewport-first corporate layout */
:root {
  --corp-shell: 1560px;
  --corp-gutter: clamp(1.5rem, 4.6vw, 6rem);
  --corp-section-y: clamp(6.5rem, 8vw, 10.5rem);
}
body.paradigm-corporate .corp-main {
  width:100%;
  max-width:none;
  margin:0;
}
body.paradigm-corporate .corp-section {
  box-sizing:border-box;
  width:min(calc(100% - (2 * var(--corp-gutter))), var(--corp-shell));
  max-width:none;
  margin-inline:auto;
  padding:var(--corp-section-y) 0;
}
body.paradigm-corporate .conviction-section,
body.paradigm-corporate .contact-section {
  grid-template-columns:minmax(0,1.22fr) minmax(360px,.78fr);
  gap:clamp(4rem,8vw,10rem);
}
body.paradigm-corporate .section-intro {
  grid-template-columns:minmax(0,1.55fr) minmax(330px,.58fr);
  gap:clamp(4rem,8vw,10rem);
}
body.paradigm-corporate .section-intro h1 {
  max-width:1000px;
}
body.paradigm-corporate .section-intro p {
  max-width:500px;
  justify-self:end;
}
body.paradigm-corporate .conviction-copy h1 {
  max-width:980px;
}
body.paradigm-corporate .conviction-copy>p {
  max-width:820px;
}
body.paradigm-corporate .expertise-list article {
  grid-template-columns:72px minmax(340px,.78fr) minmax(420px,1.22fr);
  gap:clamp(2.5rem,5vw,6.5rem);
}
body.paradigm-corporate .approach-flow>div {
  padding-right:clamp(1.5rem,2.5vw,3rem);
}
body.paradigm-corporate .approach-flow>div:not(:first-child) {
  padding-left:clamp(1.5rem,2.5vw,3rem);
}
body.paradigm-corporate .tech-lines>div {
  grid-template-columns:minmax(180px,16%) 1fr;
  gap:clamp(2rem,5vw,6rem);
}
body.paradigm-corporate .corp-footer {
  box-sizing:border-box;
  width:min(calc(100% - (2 * var(--corp-gutter))), var(--corp-shell));
  max-width:none;
  margin-inline:auto;
  padding:2.2rem 0 3.2rem;
  background:transparent;
}
body.paradigm-corporate .corp-main::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  border-left:1px solid rgba(137,185,230,.045);
  border-right:1px solid rgba(137,185,230,.045);
  width:min(calc(100% - (2 * var(--corp-gutter))), var(--corp-shell));
  margin-inline:auto;
}
@media (min-width:1800px) {
  :root { --corp-shell: 1640px; }
}
@media (max-width:1100px) {
  :root { --corp-gutter: clamp(1.75rem,4vw,3.25rem); }
  body.paradigm-corporate .conviction-section,
  body.paradigm-corporate .contact-section {gap:4rem}
  body.paradigm-corporate .expertise-list article {grid-template-columns:56px minmax(260px,.8fr) 1.2fr;gap:2.5rem}
}
@media (max-width:900px) {
  :root { --corp-gutter: 2rem; --corp-section-y:6rem; }
  body.paradigm-corporate .corp-section {padding:var(--corp-section-y) 0}
  body.paradigm-corporate .section-intro,
  body.paradigm-corporate .conviction-section,
  body.paradigm-corporate .contact-section {grid-template-columns:1fr;gap:2.5rem}
  body.paradigm-corporate .section-intro p {justify-self:start;max-width:720px}
  body.paradigm-corporate .expertise-list article {grid-template-columns:44px 1fr;gap:1.4rem}
  body.paradigm-corporate .expertise-list article>p {grid-column:2}
}
@media (max-width:600px) {
  :root { --corp-gutter:1.35rem; --corp-section-y:5rem; }
  body.paradigm-corporate .corp-section {padding:var(--corp-section-y) 0}
  body.paradigm-corporate .corp-footer {padding:2rem 0 3rem}
}

/* 2026-09 — V7 return to the deployed legacy cover, with the corporate site sliding over it */
body.paradigm-corporate.home-cinematic::before {
  background-image:url("../../images/hero-cinematic.png");
  background-size:cover;
  background-position:center center;
  filter:brightness(.78) saturate(.82);
  transform:none;
}
body.paradigm-corporate.home-cinematic::after {
  background:linear-gradient(180deg,rgba(1,7,15,.06) 0%,rgba(1,7,15,.12) 72%,rgba(1,7,15,.32) 100%);
}
body.home-cinematic .cinematic-hero {
  position:relative;
  width:100vw;
  height:100vh;
  height:100svh;
  margin:0;
  overflow:hidden;
  background:#020914;
}
body.home-cinematic .cinematic-hero-art {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  opacity:1;
  filter:none;
}
body.paradigm-corporate .corp-main {
  margin-top:0;
  background:linear-gradient(180deg,rgba(3,12,23,.91),rgba(3,11,21,.94) 18%,rgba(3,11,21,.91) 82%,rgba(3,11,21,.95));
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  box-shadow:0 -30px 90px rgba(0,0,0,.28);
}
.legacy-hit,.legacy-scroll {position:absolute;z-index:5;display:block;border:0;background:transparent;text-decoration:none}
.legacy-hit:focus-visible,.legacy-scroll:focus-visible {outline:2px solid rgba(145,201,255,.95);outline-offset:2px}
.legacy-expertises {left:20.4%;bottom:0;width:5.5%;height:5.4%}
.legacy-about {left:25.7%;bottom:0;width:5.7%;height:5.4%}
.legacy-contact {left:31.3%;bottom:0;width:5.5%;height:5.4%}
.legacy-scroll {left:48.2%;top:83.3%;width:3.6%;height:8%;border-radius:50%}
/* The compact navigation appears only after leaving the cover. */
body.paradigm-corporate .floating-nav:not(.is-visible){opacity:0!important;visibility:hidden!important;transform:translateY(-8px)!important;pointer-events:none!important}
@media(max-width:736px){
  body.home-cinematic .cinematic-hero-art{object-fit:cover;object-position:50% 50%;opacity:1}
  .legacy-hit{display:none}
  .legacy-scroll{left:43%;top:81%;width:14%;height:10%}
  body.paradigm-corporate.home-cinematic::before{background-position:center center;filter:brightness(.70) saturate(.76)}
}

/* 2026-09 — V8 fixed cover: the corporate site slides over the cover */
body.home-cinematic #wrapper {
  position:relative;
  z-index:1;
  overflow:visible;
}
body.home-cinematic .cinematic-hero {
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100vh !important;
  height:100svh !important;
  margin:0 !important;
  z-index:0;
  transform:none !important;
  overflow:hidden;
}
body.home-cinematic .cinematic-hero-art {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
body.paradigm-corporate.home-cinematic .corp-main {
  position:relative;
  z-index:2;
  margin-top:100vh !important;
  margin-top:100svh !important;
}
body.paradigm-corporate.home-cinematic .corp-footer {
  position:relative;
  z-index:2;
}
/* Keep the fixed cover interactive only while it is actually exposed. */
body.home-cinematic .cinematic-hero {pointer-events:auto}
@media(max-width:736px){
  body.paradigm-corporate.home-cinematic .corp-main {
    margin-top:100vh !important;
    margin-top:100svh !important;
  }
}

/* 2026-09 — V9 typographic system: coherent, readable, restrained */
:root{
  --type-body:clamp(1rem,.96rem + .16vw,1.08rem);
  --type-small:.82rem;
  --type-label:.74rem;
  --type-h3:clamp(1.15rem,1.05rem + .35vw,1.38rem);
  --type-h2:clamp(1.65rem,1.35rem + .9vw,2.35rem);
  --type-h1:clamp(2.35rem,1.8rem + 2vw,3.9rem);
  --type-display:clamp(2.7rem,2.05rem + 2.4vw,4.6rem);
  --leading-body:1.72;
  --leading-heading:1.08;
}
body.paradigm-corporate{font-size:16px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.paradigm-corporate .section-kicker,
body.paradigm-corporate .eyebrow{font-size:var(--type-label);line-height:1.35;letter-spacing:.16em}
body.paradigm-corporate .section-intro h1,
body.paradigm-corporate .conviction-copy h1,
body.paradigm-corporate .contact-copy h1{
  font-size:var(--type-h1);
  line-height:var(--leading-heading);
  letter-spacing:-.025em;
  font-weight:450;
}
body.paradigm-corporate .section-intro p,
body.paradigm-corporate .conviction-copy>p,
body.paradigm-corporate .contact-copy>p,
body.paradigm-corporate .about-hero-copy>p:last-child,
body.paradigm-corporate .narrative-grid p{
  font-size:var(--type-body);
  line-height:var(--leading-body);
  letter-spacing:0;
}
body.paradigm-corporate .expertise-list h2{font-size:var(--type-h3);line-height:1.32;font-weight:500;letter-spacing:-.012em}
body.paradigm-corporate .expertise-list article>p,
body.paradigm-corporate .approach-flow p{font-size:clamp(.96rem,.93rem + .1vw,1.02rem);line-height:1.7}
body.paradigm-corporate .approach-flow h3{font-size:var(--type-h3);line-height:1.3;margin-top:2rem}
body.paradigm-corporate .expertise-no,
body.paradigm-corporate .approach-flow span,
body.paradigm-corporate .principles strong,
body.paradigm-corporate .tech-lines span,
body.paradigm-corporate .corp-form label{font-size:var(--type-label);line-height:1.4}
body.paradigm-corporate .principles span{font-size:.98rem;line-height:1.55}
body.paradigm-corporate .tech-lines strong{font-size:1.02rem;line-height:1.55}
body.paradigm-corporate .corp-link,
body.paradigm-corporate .corp-button{font-size:.78rem;line-height:1.25;letter-spacing:.11em}
body.paradigm-corporate .contact-meta{font-size:.95rem!important;line-height:1.7!important}
body.paradigm-corporate .about-hero h1{font-size:var(--type-display);line-height:1.04;letter-spacing:-.03em;font-weight:450}
body.paradigm-corporate .narrative-grid h2{font-size:var(--type-h2);line-height:1.15;letter-spacing:-.02em;font-weight:450}
body.paradigm-corporate .corp-footer{font-size:.72rem;line-height:1.5;letter-spacing:.09em}
body.paradigm-corporate .floating-nav-panel a{font-size:.74rem;letter-spacing:.075em}
/* Preserve readable measure even on the new wide layout. */
body.paradigm-corporate .section-intro p{max-width:34rem}
body.paradigm-corporate .conviction-copy>p{max-width:46rem}
body.paradigm-corporate .contact-copy>p{max-width:38rem}
body.paradigm-corporate .expertise-list article>p{max-width:46rem}
@media(max-width:600px){
  :root{--type-body:1rem;--type-h1:clamp(2rem,9vw,2.75rem);--type-display:clamp(2.35rem,11vw,3.25rem)}
  body.paradigm-corporate .section-intro h1{font-size:var(--type-h1)}
  body.paradigm-corporate .section-kicker,
  body.paradigm-corporate .eyebrow{letter-spacing:.13em}
}

/* 2026-09 — V10 framed sliding surface: keep the fixed cover visible at the edges */
:root{
  --corp-panel-width:min(92vw,1720px);
  --corp-panel-edge:rgba(151,198,238,.12);
}
body.paradigm-corporate.home-cinematic .corp-main{
  box-sizing:border-box;
  width:var(--corp-panel-width);
  max-width:none;
  margin-left:auto;
  margin-right:auto;
  margin-top:100vh !important;
  margin-top:100svh !important;
  overflow:hidden;
  border-left:1px solid var(--corp-panel-edge);
  border-right:1px solid var(--corp-panel-edge);
  background:linear-gradient(180deg,rgba(3,12,23,.91) 0%,rgba(3,11,21,.94) 16%,rgba(3,11,21,.925) 84%,rgba(3,11,21,.95) 100%);
  box-shadow:-34px 0 70px rgba(0,0,0,.16),34px 0 70px rgba(0,0,0,.16),0 -30px 90px rgba(0,0,0,.26);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
/* The content grid is measured against the sliding panel, not the viewport. */
body.paradigm-corporate.home-cinematic .corp-section{
  width:min(calc(100% - (2 * var(--corp-gutter))),var(--corp-shell));
}
/* Avoid a second inner frame now that the panel itself has deliberate edges. */
body.paradigm-corporate.home-cinematic .corp-main::after{display:none}
body.paradigm-corporate.home-cinematic .corp-footer{
  box-sizing:border-box;
  width:var(--corp-panel-width);
  max-width:none;
  margin-inline:auto;
  padding-left:var(--corp-gutter);
  padding-right:var(--corp-gutter);
  background:rgba(2,9,18,.95);
  border-left:1px solid var(--corp-panel-edge);
  border-right:1px solid var(--corp-panel-edge);
  border-top:1px solid rgba(137,185,230,.10);
  box-shadow:-34px 0 70px rgba(0,0,0,.14),34px 0 70px rgba(0,0,0,.14);
}
@media(min-width:2200px){
  :root{--corp-panel-width:min(88vw,1840px)}
}
@media(max-width:900px){
  :root{--corp-panel-width:calc(100vw - 2rem)}
}
@media(max-width:600px){
  :root{--corp-panel-width:100%}
  body.paradigm-corporate.home-cinematic .corp-main,
  body.paradigm-corporate.home-cinematic .corp-footer{
    border-left:0;
    border-right:0;
    box-shadow:0 -22px 60px rgba(0,0,0,.24);
  }
}

/* 2026-09 — V11 hierarchy, readable measures, technology cards and contact form polish */
:root{
  --type-section-title:clamp(1.65rem,1.35rem + .9vw,2.35rem);
  --content-safe-pad:clamp(1.25rem,2.4vw,2.75rem);
}
/* On the About page, all editorial section titles below the hero share one rank. */
body.paradigm-corporate:not(.home-cinematic) .narrative-grid h2,
body.paradigm-corporate:not(.home-cinematic) .ecosystem-section .section-intro h2,
body.paradigm-corporate:not(.home-cinematic) .contact-copy h2{
  margin:0;
  color:#f3f7fb;
  font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif;
  font-size:var(--type-section-title);
  font-weight:450;
  line-height:1.15;
  letter-spacing:-.02em;
  text-transform:none;
}
/* Keep right-column editorial copy away from the panel edge and align its measure. */
body.paradigm-corporate .section-intro>p,
body.paradigm-corporate .narrative-grid>p,
body.paradigm-corporate .expertise-list article>p{
  box-sizing:border-box;
  padding-right:var(--content-safe-pad);
}
body.paradigm-corporate .section-intro>p{
  width:100%;
  max-width:36rem;
  justify-self:end;
}
body.paradigm-corporate .narrative-grid>p{max-width:48rem}

/* Technology: return to restrained cards rather than a plain ruled list. */
body.paradigm-corporate .tech-lines{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
  margin-top:3.5rem;
  border-top:0;
}
body.paradigm-corporate .tech-lines>div{
  display:flex;
  min-height:8.5rem;
  flex-direction:column;
  justify-content:space-between;
  gap:1.6rem;
  padding:1.55rem 1.65rem;
  border:1px solid rgba(137,185,230,.14);
  background:linear-gradient(145deg,rgba(14,31,49,.58),rgba(5,17,31,.42));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018);
}
body.paradigm-corporate .tech-lines>div:hover{
  border-color:rgba(137,185,230,.24);
  background:linear-gradient(145deg,rgba(17,37,58,.64),rgba(6,19,34,.48));
}
body.paradigm-corporate .tech-lines span{color:#7894ae}
body.paradigm-corporate .tech-lines strong{
  max-width:30rem;
  color:#e0eaf3;
  font-size:clamp(.98rem,.94rem + .12vw,1.06rem);
  line-height:1.55;
  letter-spacing:.01em;
}

/* Contact: explicit fields, clear grouping, calm corporate surface. */
body.paradigm-corporate .contact-section{align-items:start}
body.paradigm-corporate .corp-form{
  box-sizing:border-box;
  padding:clamp(1.5rem,2.5vw,2.35rem);
  border:1px solid rgba(137,185,230,.14);
  background:linear-gradient(145deg,rgba(13,29,47,.62),rgba(4,15,28,.52));
}
body.paradigm-corporate .corp-form .fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.25rem;
}
body.paradigm-corporate .corp-form .field{margin:0}
body.paradigm-corporate .corp-form .field:nth-child(3){grid-column:1/-1}
body.paradigm-corporate .corp-form label{
  display:block;
  margin:0 0 .6rem;
  color:#91a8bd;
  font-weight:500;
  letter-spacing:.11em;
}
body.paradigm-corporate .corp-form input[type=text],
body.paradigm-corporate .corp-form input[type=email],
body.paradigm-corporate .corp-form textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid rgba(137,185,230,.18);
  border-radius:2px;
  background:rgba(2,10,20,.44);
  color:#eef5fb;
  padding:.9rem 1rem;
  line-height:1.5;
  box-shadow:none;
  transition:border-color .18s ease,background .18s ease;
}
body.paradigm-corporate .corp-form textarea{min-height:9.5rem;resize:vertical}
body.paradigm-corporate .corp-form input:focus,
body.paradigm-corporate .corp-form textarea:focus{
  outline:none;
  border-color:rgba(109,185,246,.7);
  background:rgba(5,18,32,.7);
  box-shadow:0 0 0 3px rgba(109,185,246,.07);
}
body.paradigm-corporate .corp-form .corp-button{
  min-width:10rem;
  margin-top:1.35rem;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:1.25rem;
}
body.paradigm-corporate .corp-form .form-status{margin:.9rem 0 0;font-size:.9rem;line-height:1.5}

@media(max-width:900px){
  body.paradigm-corporate .section-intro>p,
  body.paradigm-corporate .narrative-grid>p,
  body.paradigm-corporate .expertise-list article>p{padding-right:0}
  body.paradigm-corporate .section-intro>p{justify-self:start}
}
@media(max-width:700px){
  body.paradigm-corporate .tech-lines{grid-template-columns:1fr}
  body.paradigm-corporate .corp-form .fields{grid-template-columns:1fr}
  body.paradigm-corporate .corp-form .field:nth-child(3){grid-column:auto}
}

/* 2026-09 — V12 individual technology cards, restored from the validated earlier site */
body.paradigm-corporate .tech-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.9rem;
  margin-top:3.5rem;
}
body.paradigm-corporate .tech-grid .tech{
  box-sizing:border-box;
  min-width:0;
  min-height:7.2rem;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:1.35rem;
  padding:1.25rem 1.3rem;
  border:1px solid rgba(137,185,230,.14);
  background:linear-gradient(145deg,rgba(14,31,49,.58),rgba(5,17,31,.42));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018);
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
body.paradigm-corporate .tech-grid .tech:hover{
  transform:translateY(-2px);
  border-color:rgba(137,185,230,.26);
  background:linear-gradient(145deg,rgba(17,37,58,.66),rgba(6,19,34,.5));
}
body.paradigm-corporate .tech-grid .tech strong{
  display:block;
  overflow-wrap:anywhere;
  color:#edf4fa;
  font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif;
  font-size:clamp(1rem,.96rem + .16vw,1.12rem);
  font-weight:500;
  line-height:1.25;
  letter-spacing:-.01em;
}
body.paradigm-corporate .tech-grid .tech span{
  display:block;
  color:#7894ae;
  font-size:.78rem;
  font-weight:500;
  line-height:1.35;
  letter-spacing:.06em;
  text-transform:none;
}
@media(max-width:1100px){body.paradigm-corporate .tech-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){body.paradigm-corporate .tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}body.paradigm-corporate .tech-grid .tech{min-height:6.6rem;padding:1.05rem}}
@media(max-width:380px){body.paradigm-corporate .tech-grid{grid-template-columns:1fr}}
@media(hover:none){body.paradigm-corporate .tech-grid .tech:hover{transform:none}}

/* 2026-09 — V13 stable panel geometry + softer corporate contrast */
:root{
  --corp-panel-max:1720px;
  --corp-panel-gutter:clamp(1.5rem,4vw,6rem);
  --title-primary:#dce6ef;
  --title-secondary:#d4e0e9;
  --title-tertiary:#cbd9e5;
}
/* Stable architectural panel: fluid gutters, then a hard max-width. */
body.paradigm-corporate.home-cinematic .corp-main,
body.paradigm-corporate.home-cinematic .corp-footer{
  width:min(calc(100% - (2 * var(--corp-panel-gutter))),var(--corp-panel-max));
}
/* Major titles use a cool off-white rather than display-white on navy. */
body.paradigm-corporate .section-intro h1,
body.paradigm-corporate .conviction-copy h1,
body.paradigm-corporate .contact-copy h1,
body.paradigm-corporate .about-hero h1,
body.paradigm-corporate:not(.home-cinematic) .narrative-grid h2,
body.paradigm-corporate:not(.home-cinematic) .ecosystem-section .section-intro h2,
body.paradigm-corporate:not(.home-cinematic) .contact-copy h2{
  color:var(--title-primary);
}
body.paradigm-corporate .expertise-list h2,
body.paradigm-corporate .approach-flow h3,
body.paradigm-corporate .tech-grid .tech strong{
  color:var(--title-secondary);
}
body.paradigm-corporate .corp-link,
body.paradigm-corporate .corp-button{
  color:var(--title-tertiary)!important;
}
@media(min-width:2200px){
  :root{--corp-panel-max:1840px;--corp-panel-gutter:clamp(5rem,6vw,9rem)}
}
@media(max-width:900px){
  :root{--corp-panel-gutter:1rem}
}
@media(max-width:600px){
  :root{--corp-panel-gutter:0rem}
}

/* 2026-09 — V14 executive design audit: dimensions, typography and contact UX */
:root{
  --type-body:clamp(1.02rem,.99rem + .12vw,1.10rem);
  --type-support:clamp(.96rem,.94rem + .08vw,1.01rem);
  --type-small:.90rem;
  --type-label:.82rem;
  --type-h3:clamp(1.22rem,1.15rem + .25vw,1.42rem);
  --type-h2:clamp(1.72rem,1.52rem + .65vw,2.25rem);
  --type-h1:clamp(2.30rem,1.98rem + 1.35vw,3.35rem);
  --type-display:clamp(2.75rem,2.25rem + 1.9vw,4.15rem);
  --leading-body:1.68;
  --corp-section-y:clamp(6.75rem,7.5vw,9rem);
}
/* Nothing that carries meaning should feel like micro-copy. */
body.paradigm-corporate .section-kicker,
body.paradigm-corporate .eyebrow,
body.paradigm-corporate .expertise-no,
body.paradigm-corporate .approach-flow span,
body.paradigm-corporate .principles strong,
body.paradigm-corporate .corp-form label{
  font-size:var(--type-label);
}
body.paradigm-corporate .expertise-list article>p,
body.paradigm-corporate .approach-flow p,
body.paradigm-corporate .principles span{
  font-size:var(--type-support);
}
body.paradigm-corporate .tech-grid .tech span{
  color:#8da3b7;
  font-size:.88rem;
  line-height:1.45;
  letter-spacing:.025em;
}
body.paradigm-corporate .corp-link,
body.paradigm-corporate .corp-button{font-size:.84rem}
body.paradigm-corporate .floating-nav-panel a{font-size:.80rem}
body.paradigm-corporate .corp-footer{font-size:.80rem}

/* Executive spacing rhythm: fewer arbitrary gaps, stronger alignment. */
body.paradigm-corporate .corp-section{padding-top:var(--corp-section-y);padding-bottom:var(--corp-section-y)}
body.paradigm-corporate .section-intro{gap:clamp(3rem,5vw,6rem);margin-bottom:clamp(3.5rem,5vw,5rem)}
body.paradigm-corporate .conviction-section{gap:clamp(4rem,7vw,8rem)}
body.paradigm-corporate .contact-section{gap:clamp(4rem,7vw,7rem);padding-top:var(--corp-section-y);padding-bottom:var(--corp-section-y)}
body.paradigm-corporate .approach-flow{margin-top:clamp(3.25rem,4.5vw,4.5rem)}
body.paradigm-corporate .approach-flow>div{min-height:15rem;padding-top:2.15rem;padding-bottom:1.5rem}
body.paradigm-corporate .expertise-list article{padding-top:2.4rem;padding-bottom:2.4rem}
body.paradigm-corporate .tech-grid{margin-top:clamp(3rem,4vw,4rem);gap:1rem}
body.paradigm-corporate .tech-grid .tech{min-height:7.6rem;padding:1.4rem 1.45rem}

/* Contact becomes a deliberate conversion surface, not a utility form. */
body.paradigm-corporate .contact-copy{padding-top:.35rem}
body.paradigm-corporate .contact-copy h1,
body.paradigm-corporate:not(.home-cinematic) .contact-copy h2{margin-bottom:1.5rem}
body.paradigm-corporate .contact-meta{margin-top:2.4rem!important}
body.paradigm-corporate .corp-form{
  position:relative;
  padding:clamp(2rem,3.2vw,3rem);
  border:1px solid rgba(151,198,238,.16);
  border-radius:4px;
  background:linear-gradient(145deg,rgba(13,29,47,.76),rgba(4,14,27,.68));
  box-shadow:0 24px 70px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.025);
}
body.paradigm-corporate .corp-form:before{
  content:"";position:absolute;left:-1px;top:2.1rem;width:2px;height:3.2rem;
  background:linear-gradient(#72bdf8,#dfa15f);opacity:.75;
}
body.paradigm-corporate .corp-form .fields{gap:1.45rem 1.25rem}
body.paradigm-corporate .corp-form label{
  margin:0 0 .7rem;color:#a9bac9;font-weight:500;letter-spacing:.08em;text-transform:none;
}
body.paradigm-corporate .corp-form input[type=text],
body.paradigm-corporate .corp-form input[type=email],
body.paradigm-corporate .corp-form textarea{
  min-height:3.35rem;padding:.9rem 1rem;
  border:1px solid rgba(151,198,238,.20);border-radius:3px;
  background:rgba(1,8,17,.48);color:#e5edf4;
  font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif;font-size:1rem;line-height:1.5;
}
body.paradigm-corporate .corp-form textarea{min-height:10.5rem;padding-top:1rem}
body.paradigm-corporate .corp-form input:hover,
body.paradigm-corporate .corp-form textarea:hover{border-color:rgba(151,198,238,.32)}
body.paradigm-corporate .corp-form input:focus,
body.paradigm-corporate .corp-form textarea:focus{
  border-color:rgba(109,185,246,.72);background:rgba(4,17,31,.72);box-shadow:0 0 0 3px rgba(109,185,246,.08)
}
body.paradigm-corporate .corp-form .corp-button{
  width:100%;min-height:3.35rem;margin-top:1.5rem;padding:.9rem 1.15rem;
  border-color:rgba(225,160,94,.42);background:rgba(225,160,94,.035);
  justify-content:center;gap:.9rem;
}
body.paradigm-corporate .corp-form .corp-button:hover{background:rgba(225,160,94,.075);border-color:rgba(225,160,94,.62)}
body.paradigm-corporate .corp-form .form-status{font-size:.92rem}

@media(max-width:900px){
  :root{--corp-section-y:6rem}
  body.paradigm-corporate .approach-flow>div{min-height:0}
  body.paradigm-corporate .contact-section{gap:3.5rem}
}
@media(max-width:600px){
  :root{--type-label:.80rem;--type-small:.88rem;--corp-section-y:4.75rem}
  body.paradigm-corporate .corp-section{padding-left:1.35rem;padding-right:1.35rem}
  body.paradigm-corporate .corp-form{padding:1.4rem 1.2rem}
  body.paradigm-corporate .corp-form:before{top:1.5rem}
  body.paradigm-corporate .tech-grid .tech span{font-size:.84rem}
  body.paradigm-corporate .corp-footer{font-size:.76rem}
}

/* 2026-09 — V15 ultimate executive polish: type, rhythm, interaction, accessibility */
:root{
  --ink-1:#dce6ef;
  --ink-2:#b7c6d3;
  --ink-3:#8fa3b6;
  --line-soft:rgba(151,198,238,.13);
  --line-mid:rgba(151,198,238,.21);
  --accent-blue:#79bdf3;
  --accent-warm:#d9a064;
  --content-max:1480px;
  --measure:68ch;
}
html{scroll-behavior:smooth}
body.paradigm-corporate{
  font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif;
  font-size:17px;
  line-height:1.65;
  font-kerning:normal;
}
body.paradigm-corporate .corp-main{overflow:hidden}
body.paradigm-corporate .corp-section{
  scroll-margin-top:5.5rem;
  max-width:var(--content-max);
  margin-inline:auto;
  padding-inline:clamp(2rem,4.4vw,5.25rem);
}
body.paradigm-corporate .section-kicker{
  margin-bottom:1.55rem;
  color:#79bdf3;
  font-size:.84rem;
  line-height:1.3;
  font-weight:550;
  letter-spacing:.15em;
}
body.paradigm-corporate .section-intro h1,
body.paradigm-corporate .conviction-copy h1,
body.paradigm-corporate .contact-copy h1{
  max-width:18ch;
  font-size:clamp(2.35rem,2.05rem + 1.05vw,3.35rem);
  line-height:1.08;
  letter-spacing:-.028em;
  font-weight:430;
  text-wrap:balance;
}
body.paradigm-corporate .section-intro>p,
body.paradigm-corporate .conviction-copy>p,
body.paradigm-corporate .contact-copy>p{
  max-width:var(--measure);
  color:#a7b7c6;
  font-size:clamp(1.03rem,1rem + .08vw,1.09rem);
  line-height:1.72;
}
body.paradigm-corporate .section-intro>p{max-width:54ch}
body.paradigm-corporate .expertise-list article{
  grid-template-columns:3.2rem minmax(15rem,.72fr) minmax(20rem,1.28fr);
  column-gap:clamp(1.5rem,3vw,4.25rem);
  align-items:start;
  border-color:var(--line-soft);
}
body.paradigm-corporate .expertise-list h2{
  font-size:clamp(1.22rem,1.17rem + .18vw,1.42rem);
  line-height:1.32;
  text-wrap:balance;
}
body.paradigm-corporate .expertise-list article>p{
  max-width:64ch;
  color:#9eafbf;
  font-size:1rem;
  line-height:1.72;
}
body.paradigm-corporate .eyebrow,
body.paradigm-corporate .expertise-no,
body.paradigm-corporate .approach-flow span,
body.paradigm-corporate .principles strong{
  font-size:.83rem;
}
body.paradigm-corporate .approach-flow>div{padding-inline:clamp(1.2rem,2vw,2rem)}
body.paradigm-corporate .approach-flow h3{margin-top:1.85rem}
body.paradigm-corporate .approach-flow p{color:#9eafbf;font-size:1rem;line-height:1.68}
body.paradigm-corporate .principles span{color:#a7b7c6;font-size:1rem}
body.paradigm-corporate .tech-grid{gap:1rem}
body.paradigm-corporate .tech-grid .tech{
  min-height:7.8rem;
  padding:1.45rem 1.5rem;
  border-color:var(--line-soft);
  background:linear-gradient(145deg,rgba(13,29,47,.58),rgba(4,15,28,.45));
}
body.paradigm-corporate .tech-grid .tech strong{font-size:1.08rem;font-weight:500}
body.paradigm-corporate .tech-grid .tech span{font-size:.91rem;color:#91a6b8}
body.paradigm-corporate .contact-section{align-items:start}
body.paradigm-corporate .contact-copy{max-width:35rem}
body.paradigm-corporate .contact-meta{color:#8fa3b6!important;font-size:1rem!important}
body.paradigm-corporate .corp-form{
  max-width:46rem;
  justify-self:end;
  width:100%;
  border-color:var(--line-mid);
  background:linear-gradient(145deg,rgba(13,29,47,.82),rgba(4,14,27,.76));
  box-shadow:0 28px 80px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.025);
}
body.paradigm-corporate .corp-form label{font-size:.86rem;color:#b0bfcc;letter-spacing:.055em}
body.paradigm-corporate .corp-form input[type=text],
body.paradigm-corporate .corp-form input[type=email],
body.paradigm-corporate .corp-form textarea{
  font-size:1rem;
  border-color:rgba(151,198,238,.23);
}
body.paradigm-corporate .corp-form input::placeholder,
body.paradigm-corporate .corp-form textarea::placeholder{color:#657b8f;opacity:1}
body.paradigm-corporate .corp-form .corp-button{
  min-height:3.55rem;
  font-size:.88rem;
  font-weight:550;
  letter-spacing:.085em;
}
body.paradigm-corporate .floating-nav-panel{border-color:rgba(178,205,230,.16);background:rgba(5,16,30,.86)}
body.paradigm-corporate .floating-nav-panel a{font-size:.82rem;font-weight:550;letter-spacing:.06em;color:#cbd7e1}
body.paradigm-corporate .floating-nav-panel a[aria-current="true"]{color:#edf3f8!important;background:rgba(121,189,243,.09)}
body.paradigm-corporate .corp-footer{
  width:min(calc(100% - (2 * var(--corp-panel-gutter))),var(--corp-panel-max));
  max-width:none;
  box-sizing:border-box;
  padding-inline:clamp(2rem,4.4vw,5.25rem);
  color:#6f8497;
  font-size:.82rem;
  letter-spacing:.065em;
}
body.paradigm-corporate a:focus-visible,
body.paradigm-corporate button:focus-visible,
body.paradigm-corporate input:focus-visible,
body.paradigm-corporate textarea:focus-visible{
  outline:2px solid rgba(121,189,243,.82);
  outline-offset:3px;
}
body.paradigm-corporate .corp-link{font-size:.87rem;letter-spacing:.075em}

@media(max-width:1100px){
  body.paradigm-corporate .expertise-list article{grid-template-columns:2.8rem minmax(13rem,.8fr) minmax(17rem,1.2fr);column-gap:2rem}
}
@media(max-width:900px){
  body.paradigm-corporate .corp-section{padding-inline:clamp(1.5rem,5vw,3rem)}
  body.paradigm-corporate .expertise-list article{grid-template-columns:2.6rem 1fr;row-gap:.8rem}
  body.paradigm-corporate .expertise-list article>p{grid-column:2;max-width:60ch}
  body.paradigm-corporate .corp-form{justify-self:stretch;max-width:none}
}
@media(max-width:600px){
  body.paradigm-corporate{font-size:16px}
  body.paradigm-corporate .corp-section{padding-inline:1.35rem}
  body.paradigm-corporate .section-kicker{font-size:.80rem;margin-bottom:1.25rem}
  body.paradigm-corporate .section-intro h1,
  body.paradigm-corporate .conviction-copy h1,
  body.paradigm-corporate .contact-copy h1{font-size:clamp(2.05rem,9vw,2.65rem);line-height:1.1}
  body.paradigm-corporate .expertise-list article{grid-template-columns:2.25rem 1fr;column-gap:.8rem}
  body.paradigm-corporate .expertise-list article>p{grid-column:2;font-size:.98rem}
  body.paradigm-corporate .tech-grid .tech{min-height:6.9rem;padding:1.15rem}
  body.paradigm-corporate .tech-grid .tech span{font-size:.88rem}
  body.paradigm-corporate .corp-footer{padding-inline:1.35rem;font-size:.78rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.paradigm-corporate *{scroll-behavior:auto!important}}

/* 2026-09 — V16 readability & contact reset: modern editorial best practices */
:root{
  --v16-body:clamp(1.0625rem,1.03rem + .10vw,1.125rem);
  --v16-support:clamp(1rem,.98rem + .06vw,1.0625rem);
  --v16-label:.875rem;
  --v16-h3:clamp(1.25rem,1.18rem + .20vw,1.45rem);
  --v16-h2:clamp(1.75rem,1.58rem + .55vw,2.25rem);
  --v16-h1:clamp(2.45rem,2.12rem + 1.05vw,3.35rem);
  --v16-measure:66ch;
  --corp-panel-max:1680px;
  --corp-panel-gutter:clamp(2rem,3vw,4.5rem);
}
body.paradigm-corporate{
  font-size:18px;
  line-height:1.68;
}
/* Never full-justify editorial copy: predictable word spacing beats geometric edges. */
body.paradigm-corporate p,
body.paradigm-corporate li,
body.paradigm-corporate dd,
body.paradigm-corporate blockquote{
  text-align:left !important;
  text-justify:auto !important;
  overflow-wrap:break-word;
}
body.paradigm-corporate p{max-width:var(--v16-measure);text-wrap:pretty}
body.paradigm-corporate .section-kicker,
body.paradigm-corporate .eyebrow,
body.paradigm-corporate .expertise-no,
body.paradigm-corporate .approach-flow span,
body.paradigm-corporate .principles strong{
  font-size:var(--v16-label);
  line-height:1.4;
}
body.paradigm-corporate .section-intro h1,
body.paradigm-corporate .conviction-copy h1,
body.paradigm-corporate .contact-copy h1{
  font-size:var(--v16-h1);
  line-height:1.10;
  max-width:20ch;
  text-wrap:balance;
}
body.paradigm-corporate .section-intro>p,
body.paradigm-corporate .conviction-copy>p,
body.paradigm-corporate .contact-copy>p,
body.paradigm-corporate .about-hero-copy>p:last-child,
body.paradigm-corporate .narrative-grid p{
  font-size:var(--v16-body);
  line-height:1.70;
}
body.paradigm-corporate .expertise-list h2,
body.paradigm-corporate .approach-flow h3{font-size:var(--v16-h3)}
body.paradigm-corporate .expertise-list article>p,
body.paradigm-corporate .approach-flow p,
body.paradigm-corporate .principles span{
  font-size:var(--v16-support);
  line-height:1.68;
}
body.paradigm-corporate .tech-grid .tech strong{font-size:1.12rem;line-height:1.35}
body.paradigm-corporate .tech-grid .tech span{font-size:.96rem;line-height:1.5}
body.paradigm-corporate .corp-link{font-size:.91rem}
body.paradigm-corporate .floating-nav-panel a{font-size:.86rem}
body.paradigm-corporate .corp-footer{font-size:.84rem}

/* Contact: generous conversion surface, not a compressed utility widget. */
body.paradigm-corporate .contact-section{
  grid-template-columns:minmax(19rem,.78fr) minmax(32rem,1.22fr);
  gap:clamp(4rem,6vw,7rem);
  align-items:start;
}
body.paradigm-corporate .contact-copy{max-width:37rem;padding-top:.8rem}
body.paradigm-corporate .contact-copy>p{font-size:var(--v16-body);line-height:1.7}
body.paradigm-corporate .contact-meta{font-size:1.02rem!important;line-height:1.75!important}
body.paradigm-corporate .corp-form{
  width:100%;
  max-width:54rem;
  justify-self:end;
  box-sizing:border-box;
  padding:clamp(2rem,3.2vw,3rem);
  border:1px solid rgba(151,198,238,.20);
  border-radius:12px;
  background:linear-gradient(145deg,rgba(14,31,50,.88),rgba(5,16,30,.84));
  box-shadow:0 30px 90px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.035);
}
body.paradigm-corporate .corp-form:before{display:none}
body.paradigm-corporate .corp-form .fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.75rem 1.5rem;
  margin:0 0 1.75rem;
}
body.paradigm-corporate .corp-form .field{margin:0;min-width:0}
body.paradigm-corporate .corp-form .field:nth-child(3){grid-column:1/-1}
body.paradigm-corporate .corp-form label{
  display:block;
  margin:0 0 .65rem;
  color:#c0ccd6;
  font-size:.92rem;
  line-height:1.35;
  font-weight:500;
  letter-spacing:.02em;
  text-transform:none;
}
body.paradigm-corporate .corp-form input[type=text],
body.paradigm-corporate .corp-form input[type=email],
body.paradigm-corporate .corp-form textarea{
  width:100%;
  box-sizing:border-box;
  min-height:4rem;
  padding:.95rem 1rem;
  border:1px solid rgba(151,198,238,.24);
  border-radius:7px;
  background:rgba(2,11,22,.42);
  color:#e1eaf1;
  font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif;
  font-size:1.05rem;
  line-height:1.5;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018);
}
body.paradigm-corporate .corp-form textarea{
  min-height:13rem;
  padding-top:1rem;
  resize:vertical;
}
body.paradigm-corporate .corp-form input::placeholder,
body.paradigm-corporate .corp-form textarea::placeholder{color:#71869a;opacity:1}
body.paradigm-corporate .corp-form input:hover,
body.paradigm-corporate .corp-form textarea:hover{border-color:rgba(151,198,238,.38)}
body.paradigm-corporate .corp-form input:focus,
body.paradigm-corporate .corp-form textarea:focus{
  border-color:rgba(121,189,243,.75);
  background:rgba(4,16,30,.68);
  box-shadow:0 0 0 3px rgba(121,189,243,.09);
  outline:none;
}
body.paradigm-corporate .corp-form .corp-button{
  width:100%;
  min-height:4rem;
  margin:0;
  padding:1rem 1.4rem;
  border-radius:7px;
  font-size:.94rem;
  letter-spacing:.06em;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.75rem;
}
body.paradigm-corporate .corp-form .corp-button span{margin-left:0}
body.paradigm-corporate .corp-form .form-status{font-size:.95rem;line-height:1.55}

@media(max-width:1000px){
  body.paradigm-corporate .contact-section{grid-template-columns:1fr;gap:3rem}
  body.paradigm-corporate .contact-copy{max-width:42rem}
  body.paradigm-corporate .corp-form{max-width:none;justify-self:stretch}
}
@media(max-width:700px){
  :root{--corp-panel-gutter:0rem}
  body.paradigm-corporate{font-size:17px}
  body.paradigm-corporate .corp-form{padding:1.5rem 1.25rem;border-radius:8px}
  body.paradigm-corporate .corp-form .fields{grid-template-columns:1fr;gap:1.35rem}
  body.paradigm-corporate .corp-form .field:nth-child(3){grid-column:auto}
  body.paradigm-corporate .corp-form input[type=text],
  body.paradigm-corporate .corp-form input[type=email]{min-height:3.75rem}
  body.paradigm-corporate .corp-form textarea{min-height:11rem}
}

/* 2026-09 — V17 contact refinement */
body.paradigm-corporate .contact-section{
  grid-template-columns:minmax(18rem,.66fr) minmax(38rem,1.34fr);
  gap:clamp(3rem,5vw,6rem);
}
body.paradigm-corporate .corp-form{
  max-width:62rem;
  padding:clamp(1.75rem,2.6vw,2.6rem);
}
body.paradigm-corporate .corp-form .fields{
  width:100%;
  margin:0 0 1.6rem 0;
  padding:0;
  gap:1.5rem;
}
body.paradigm-corporate .corp-form .fields>.field{
  width:auto;
  padding:0;
  margin:0;
  min-width:0;
  flex:none;
}
body.paradigm-corporate .corp-form input[type=text],
body.paradigm-corporate .corp-form input[type=email],
body.paradigm-corporate .corp-form textarea{
  margin:0;
}
body.paradigm-corporate .corp-form .corp-button{
  width:auto;
  min-width:10.5rem;
  min-height:3.25rem;
  margin:0;
  padding:.78rem 1.35rem;
  display:inline-flex;
  justify-content:space-between;
  gap:1.5rem;
  font-size:.88rem;
}
@media(max-width:1100px){
  body.paradigm-corporate .contact-section{grid-template-columns:minmax(17rem,.72fr) minmax(30rem,1.28fr);gap:3rem}
}
@media(max-width:1000px){
  body.paradigm-corporate .contact-section{grid-template-columns:1fr;gap:3rem}
  body.paradigm-corporate .corp-form{max-width:none;justify-self:stretch}
}
@media(max-width:700px){
  body.paradigm-corporate .corp-form .corp-button{width:100%;justify-content:center}
}

/* 2026-09 — V18 verified navigation + contact geometry */
body.paradigm-corporate .contact-section{
  grid-template-columns:minmax(17rem,.56fr) minmax(42rem,1.44fr);
  gap:clamp(2.5rem,4vw,4.5rem);
}
body.paradigm-corporate .corp-form{
  width:100%;
  max-width:none;
  justify-self:stretch;
  padding:clamp(1.8rem,2.4vw,2.5rem);
}
body.paradigm-corporate .corp-form>.fields{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  width:100%;
  margin:0 0 1.5rem 0;
  padding:0;
  gap:1.4rem 1.4rem;
}
body.paradigm-corporate .corp-form>.fields>.field{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  min-width:0;
}
body.paradigm-corporate .corp-form>.fields>.field:nth-child(3){grid-column:1/-1}
body.paradigm-corporate .corp-form .corp-button{
  width:auto;
  min-width:0;
  min-height:3rem;
  margin:0;
  padding:.72rem 1.15rem;
  gap:.9rem;
  justify-content:flex-start;
  font-size:.86rem;
  letter-spacing:.055em;
}
@media(max-width:1100px){
  body.paradigm-corporate .contact-section{grid-template-columns:minmax(16rem,.62fr) minmax(34rem,1.38fr);gap:2.5rem}
}
@media(max-width:1000px){
  body.paradigm-corporate .contact-section{grid-template-columns:1fr;gap:2.75rem}
}
@media(max-width:700px){
  body.paradigm-corporate .corp-form>.fields{grid-template-columns:1fr}
  body.paradigm-corporate .corp-form>.fields>.field:nth-child(3){grid-column:auto}
  body.paradigm-corporate .corp-form .corp-button{width:auto;justify-content:flex-start}
}
body.paradigm-corporate .floating-nav-panel a.is-active,
body.paradigm-corporate .floating-nav-panel a[aria-current="page"]{
  color:#edf3f8!important;
  background:rgba(121,189,243,.11);
}


/* V20 — Ecosystem cards: restrained institutional polish */
#ecosysteme .tech-grid {
  gap: clamp(14px, 1.35vw, 22px);
}
#ecosysteme .tech-card {
  position: relative;
  min-height: 142px;
  padding: clamp(22px, 2vw, 30px);
  overflow: hidden;
  isolation: isolate;
  border: 1px solid rgba(151, 177, 201, .16);
  border-radius: 2px;
  background:
    linear-gradient(145deg, rgba(19, 38, 59, .78), rgba(8, 24, 42, .64));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025),
    0 10px 28px rgba(0, 8, 20, .08);
  transition:
    transform .28s cubic-bezier(.2,.7,.2,1),
    border-color .28s ease,
    background .28s ease,
    box-shadow .28s ease;
}
#ecosysteme .tech-card::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 42px;
  height: 1px;
  background: linear-gradient(90deg, rgba(92, 174, 230, .78), rgba(203, 154, 76, .46));
  transition: width .28s ease, opacity .28s ease;
}
#ecosysteme .tech-card::after {
  content: "";
  position: absolute;
  z-index: -2;
  width: 110px;
  height: 110px;
  right: -54px;
  bottom: -62px;
  border: 1px solid rgba(91, 166, 218, .09);
  border-radius: 50%;
  box-shadow: 0 0 0 22px rgba(91, 166, 218, .018);
  transition: transform .35s ease, border-color .28s ease;
}
#ecosysteme .tech-card h3 {
  margin: 0 0 11px;
  color: #dce6ef;
  font-size: clamp(1.02rem, .95rem + .22vw, 1.16rem);
  line-height: 1.25;
  font-weight: 600;
  letter-spacing: -.015em;
}
#ecosysteme .tech-card p {
  margin: 0;
  max-width: 26ch;
  color: rgba(196, 210, 222, .72);
  font-size: .92rem;
  line-height: 1.5;
  letter-spacing: .005em;
}
@media (hover:hover) and (pointer:fine) {
  #ecosysteme .tech-card:hover {
    transform: translateY(-3px);
    border-color: rgba(112, 177, 221, .31);
    background:
      linear-gradient(145deg, rgba(22, 44, 67, .88), rgba(9, 27, 47, .72));
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.035),
      0 16px 34px rgba(0, 8, 20, .14);
  }
  #ecosysteme .tech-card:hover::before {
    width: 72px;
  }
  #ecosysteme .tech-card:hover::after {
    transform: translate(-6px,-5px);
    border-color: rgba(203, 154, 76, .14);
  }
}
@media (max-width: 600px) {
  #ecosysteme .tech-card {
    min-height: 124px;
    padding: 20px;
  }
}
@media (prefers-reduced-motion: reduce) {
  #ecosysteme .tech-card,
  #ecosysteme .tech-card::before,
  #ecosysteme .tech-card::after {
    transition: none;
  }
}


/* V21 — Robust adaptive layout system
   Fluid where useful, bounded where necessary. 100% browser zoom is the design reference. */
:root {
  --layout-gutter: clamp(18px, 3.8vw, 76px);
  --panel-max: 1680px;
  --content-max: 1480px;
  --section-x: clamp(24px, 4.2vw, 72px);
  --section-y: clamp(76px, 7.2vw, 124px);
  --layout-gap: clamp(34px, 4.2vw, 72px);
  --copy-measure: 66ch;
}

/* The sliding surface responds to the viewport, but stops growing on large displays. */
.site-content {
  width: min(calc(100% - (2 * var(--layout-gutter))), var(--panel-max)) !important;
  max-width: var(--panel-max) !important;
  margin-inline: auto !important;
}

/* Keep editorial content from stretching just because the outer panel can. */
.site-content > section,
.site-content > footer,
.site-content .section-inner {
  box-sizing: border-box;
}

.site-content > section {
  padding-inline: var(--section-x) !important;
  padding-block: var(--section-y) !important;
}

.site-content > section > .section-inner,
.site-content > section > .inner,
.site-content > section > .content-inner {
  width: min(100%, var(--content-max));
  margin-inline: auto;
}

/* Stable reading measure. Long copy should not track the panel width. */
.site-content p:not(.tech-card p):not(.eyebrow):not(.section-kicker),
.site-content .section-copy {
  max-width: var(--copy-measure);
}

/* Grids scale by available space, not by browser zoom assumptions. */
.site-content .section-grid,
.site-content .split,
.site-content .contact-layout {
  column-gap: var(--layout-gap);
}

/* Large desktop: preserve presence without letting the site become sparse. */
@media (min-width: 1600px) {
  :root {
    --layout-gutter: clamp(56px, 4vw, 88px);
    --section-x: clamp(52px, 4vw, 76px);
    --section-y: clamp(96px, 6.5vw, 132px);
    --layout-gap: clamp(56px, 4vw, 78px);
  }
}

/* Normal desktop / laptop: this is the primary composition. */
@media (min-width: 1100px) and (max-width: 1599px) {
  :root {
    --layout-gutter: clamp(30px, 3.25vw, 52px);
    --section-x: clamp(34px, 3.6vw, 56px);
    --section-y: clamp(78px, 6.5vw, 104px);
    --layout-gap: clamp(38px, 4vw, 60px);
  }
}

/* Tablet / compact laptop: use the available width rather than shrinking the content. */
@media (min-width: 737px) and (max-width: 1099px) {
  :root {
    --layout-gutter: clamp(18px, 2.8vw, 30px);
    --section-x: clamp(24px, 3.8vw, 40px);
    --section-y: clamp(68px, 7vw, 88px);
    --layout-gap: clamp(28px, 4vw, 44px);
  }
  .site-content {
    width: calc(100% - (2 * var(--layout-gutter))) !important;
  }
}

/* Mobile: the sliding panel becomes the page surface; spacing, not scaling, does the work. */
@media (max-width: 736px) {
  :root {
    --layout-gutter: 0px;
    --section-x: clamp(20px, 5.5vw, 30px);
    --section-y: clamp(58px, 13vw, 78px);
    --layout-gap: 30px;
    --copy-measure: 100%;
  }
  .site-content {
    width: 100% !important;
    max-width: none !important;
  }
  .site-content > section {
    padding-inline: var(--section-x) !important;
  }
}

/* Very narrow screens: retain a safe minimum gutter without miniaturising type. */
@media (max-width: 390px) {
  :root {
    --section-x: 18px;
    --section-y: 54px;
  }
}

/* Wide screens should not inflate type indefinitely; narrow screens should not crush it. */
.site-content h1,
.site-content h2,
.site-content h3,
.site-content p,
.site-content input,
.site-content textarea,
.site-content button {
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

/* V25 — clean cover cue: baked legacy UI removed from hero image; cue is native HTML/CSS. */
.cover-discover {
  position:absolute; z-index:6; left:50%; bottom:clamp(28px,4.6vh,52px);
  width:120px; height:92px; transform:translateX(-50%);
  display:flex; flex-direction:column; align-items:center;
  color:rgba(220,230,239,.82); text-decoration:none; border:0; background:transparent;
}
.cover-discover-label {
  font-family:"IBM Plex Sans",Arial,sans-serif; font-size:12px; line-height:1; font-weight:500;
  letter-spacing:.19em; text-transform:uppercase; white-space:nowrap;
}
.cover-discover-arrow { position:relative; display:block; width:18px; height:48px; margin-top:13px; }
.cover-discover-arrow::before {
  content:""; position:absolute; top:0; left:50%; width:1px; height:39px;
  transform:translateX(-50%); background:rgba(220,230,239,.72);
}
.cover-discover-arrow::after {
  content:""; position:absolute; left:50%; bottom:1px; width:8px; height:8px;
  border-right:1px solid rgba(220,230,239,.82); border-bottom:1px solid rgba(220,230,239,.82);
  transform:translateX(-50%) rotate(45deg);
}
.cover-discover:focus-visible { outline:1px solid rgba(145,201,255,.9); outline-offset:8px; }
@media (hover:hover) and (pointer:fine) {
  .cover-discover { transition:color .22s ease, transform .22s ease; }
  .cover-discover:hover { color:rgba(239,245,249,.98); transform:translateX(-50%) translateY(3px); }
}
@media (max-width:736px) {
  .cover-discover { bottom:max(24px,env(safe-area-inset-bottom)); height:86px; }
  .cover-discover-label { font-size:11px; letter-spacing:.16em; }
  .cover-discover-arrow { height:43px; }
  .cover-discover-arrow::before { height:34px; }
}
@media (prefers-reduced-motion:reduce) { .cover-discover { transition:none!important; } }


/* V26 — ONLY the existing DÉCOUVRIR cue + arrow sizing is adjusted. */
.cover-discover {
  width: 150px !important;
  height: 126px !important;
}
.cover-discover-label {
  font-size: 14px !important;
  letter-spacing: .20em !important;
}
.cover-discover-arrow {
  width: 28px !important;
  height: 72px !important;
  margin-top: 16px !important;
}
.cover-discover-arrow::before {
  width: 2px !important;
  height: 58px !important;
}
.cover-discover-arrow::after {
  bottom: 2px !important;
  width: 14px !important;
  height: 14px !important;
  border-right-width: 2px !important;
  border-bottom-width: 2px !important;
}
@media (max-width:736px) {
  .cover-discover {
    width: 136px !important;
    height: 110px !important;
  }
  .cover-discover-label {
    font-size: 12px !important;
    letter-spacing: .18em !important;
  }
  .cover-discover-arrow {
    width: 24px !important;
    height: 61px !important;
    margin-top: 14px !important;
  }
  .cover-discover-arrow::before {
    height: 49px !important;
  }
  .cover-discover-arrow::after {
    width: 12px !important;
    height: 12px !important;
  }
}


/* V27 — targeted hero composition balance.
   Move only the V21/V26 hero artwork slightly lower; the DÉCOUVRIR cue stays independently anchored. */
body.home-cinematic .cinematic-hero-art {
  transform: translateY(clamp(22px, 3.2vh, 42px)) !important;
}

/* Compact viewports need less optical displacement to preserve breathing room below. */
@media (max-height: 760px) and (min-width: 737px) {
  body.home-cinematic .cinematic-hero-art {
    transform: translateY(clamp(12px, 2vh, 20px)) !important;
  }
}
@media (max-width: 736px) {
  body.home-cinematic .cinematic-hero-art {
    transform: translateY(clamp(10px, 2vh, 18px)) !important;
  }
}


/* V30 — robust mobile placement for the decorative DÉCOUVRIR cue.
   The cue keeps its validated V26 proportions and is positioned from the visual viewport
   rather than stacked above the iOS safe-area, which previously pushed it too high. */
@media (max-width: 736px) {
  .cover-discover {
    bottom: clamp(4px, 1.2svh, 10px) !important;
  }
}


/* V32 — bilingual navigation switch. */
.floating-nav-panel a.language-switch {
  margin-left: .32rem;
  padding-left: .78rem;
  padding-right: .78rem;
  border-left: 1px solid rgba(178,205,230,.18);
  color: #a9c8e8;
}
@media (max-width:736px) {
  .floating-nav-panel a.language-switch {
    margin-left: 0;
    margin-top: .18rem;
    border-left: 0;
    border-top: 1px solid rgba(178,205,230,.18);
  }
}
