/* CSC ENSEM — Digital dossier / laboratory homepage */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&display=swap');
:root{--csc-ink:#0c0317;--csc-purple:#7057e8;--csc-violet:#8f7cff;--csc-slate:#4b6376;--csc-paper:#eadcf7;--csc-gray:#737373;--csc-line:rgba(255,255,255,.15);--csc-display:'JetBrains Mono',monospace;--csc-body:'Inter',Arial,sans-serif;--csc-mono:'JetBrains Mono',monospace}
*{box-sizing:border-box}
.home-page{margin:0!important;background:var(--csc-ink)!important;color:#f8f5f8!important;font-family:var(--csc-body)!important;overflow-x:hidden}
.home-page main{padding-top:0!important;overflow:clip}
.dossier-wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}
.dossier-hero{min-height:820px;position:relative;isolation:isolate;overflow:hidden;background:var(--csc-ink);padding-top:94px}
.dossier-grid{position:absolute;inset:0;opacity:.5;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(90deg,transparent 0,black 24%,black 74%,transparent 100%);transform:perspective(900px) rotateX(65deg) scale(1.5) translateY(24%);transform-origin:center bottom;animation:grid-shift 18s linear infinite}
.dossier-glow{position:absolute;inset:0;background:radial-gradient(circle at 75% 46%,rgba(112,87,232,.23),transparent 25%),radial-gradient(circle at 8% 76%,rgba(75,99,118,.11),transparent 23%);pointer-events:none}
.hero-index-rail{position:absolute;z-index:2;left:28px;top:180px;display:flex;flex-direction:column;align-items:center;gap:16px;color:#86778b;font:9px var(--csc-mono);writing-mode:vertical-rl;letter-spacing:.12em;text-transform:uppercase}.hero-index-rail b{color:var(--csc-violet);font-size:18px;font-weight:400}.hero-index-rail i{width:1px;height:75px;background:var(--csc-purple)}
.dossier-hero-inner{min-height:640px;display:grid;grid-template-columns:minmax(0,.92fr) minmax(440px,1.08fr);align-items:center;gap:8%;position:relative;z-index:2}.dossier-copy{padding-top:10px}.eyebrow-new,.dossier-section-label,.dossier-status,.dossier-hero-foot,.final-kicker{font:10px var(--csc-mono);letter-spacing:.14em;text-transform:uppercase}.eyebrow-new{display:flex;align-items:center;gap:10px;color:#aaa0af}.eyebrow-new span{display:block;width:6px;height:6px;border-radius:50%!important;background:#a4f079;box-shadow:0 0 12px #a4f079}.eyebrow-new b{color:var(--csc-violet);font-weight:400}.dossier-copy h1{font-family:var(--csc-display)!important;font-size:clamp(68px,7.4vw,110px);font-weight:600;line-height:.84;letter-spacing:-.105em;text-transform:none;margin:31px 0 28px}.dossier-copy h1 em,.poles-head h2 em,.school-copy h2 em,.club-copy h2 em,.office-layout h2 em,.dossier-final h2 em{color:var(--csc-violet);font-style:italic}.dossier-lead{max-width:410px;color:#c0b6c3;font-size:15px;line-height:1.62;margin:0 0 29px}.dossier-actions{display:flex;align-items:center;gap:26px}.dossier-button{display:inline-flex;align-items:center;gap:17px;padding:14px 17px;border:1px solid var(--csc-purple);border-radius:3px!important;background:var(--csc-purple);color:#fff;font:10px var(--csc-mono);letter-spacing:.06em;text-transform:uppercase;transition:transform .25s,box-shadow .25s,background .25s}.dossier-button:hover{transform:translateY(-4px);box-shadow:0 14px 35px rgba(112,87,232,.34);background:#614bd1}.dossier-button span,.dossier-text-link span{color:#f2a8f7;font-size:17px}.dossier-button.outline{background:transparent}.dossier-button.light{background:#fff;color:var(--csc-ink);border-color:#fff}.dossier-button.light:hover{background:var(--csc-violet);color:#fff;border-color:var(--csc-violet)}.dossier-text-link{display:inline-flex;align-items:center;gap:10px;width:max-content;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:7px;color:#bdb4c1;font:10px var(--csc-mono);letter-spacing:.05em;text-transform:uppercase;transition:color .2s,border .2s}.dossier-text-link:hover{color:#fff;border-color:var(--csc-violet)}.dossier-status{display:flex;align-items:center;gap:10px;color:#7d6e83;margin-top:54px}.dossier-status .status-light{width:6px;height:6px;border-radius:50%!important;background:#a4f079;box-shadow:0 0 10px #a4f079}.dossier-status i{height:1px;width:28px;background:#5b4761}.dossier-status span:last-child{color:#736679}
.code-art{height:535px;position:relative;perspective:1100px;transform-style:preserve-3d;transition:transform .25s ease-out}.art-depth{position:absolute;left:50%;top:50%;border:1px solid rgba(143,124,255,.34);transform-style:preserve-3d}.art-depth-one{width:500px;height:300px;transform:translate(-50%,-50%) rotateX(57deg) rotateZ(-27deg);animation:depth-spin 18s linear infinite}.art-depth-two{width:420px;height:260px;border-color:rgba(75,99,118,.45);transform:translate(-50%,-50%) rotateX(57deg) rotateZ(44deg);animation:depth-spin-reverse 23s linear infinite}.code-panel{position:absolute;z-index:3;width:min(390px,70%);left:50%;top:50%;transform:translate(-50%,-50%) rotateX(3deg) rotateY(-14deg) rotateZ(-5deg);background:linear-gradient(145deg,#24112d,#10051a);border:1px solid rgba(255,255,255,.3);box-shadow:28px 28px 0 rgba(75,99,118,.3),0 30px 70px rgba(0,0,0,.45),inset 0 0 50px rgba(112,87,232,.18);animation:panel-hover 6s ease-in-out infinite}.code-panel:before{content:"";position:absolute;inset:-13px;border:1px solid rgba(143,124,255,.28);transform:translateZ(-18px);pointer-events:none}.code-panel-top,.code-panel-foot{height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 15px;border-bottom:1px solid rgba(255,255,255,.1);color:#8d7e93;font:9px var(--csc-mono)}.code-panel-top>span{display:flex;gap:6px}.code-panel-top i{width:7px;height:7px;border-radius:50%!important;background:#6b3a71}.code-panel-top i:nth-child(2){background:#9a679a}.code-panel-top i:nth-child(3){background:#8f7cff}.code-panel-top b{color:var(--csc-violet);font-weight:400}.code-lines{padding:28px 24px 31px;display:grid;grid-template-columns:28px 1fr;column-gap:15px;row-gap:2px;font:12px/2.05 var(--csc-mono)}.code-lines>span{color:#5c4b63;text-align:right}.code-lines p{margin:0;color:#e4dae6}.code-lines p.indent{padding-left:25px}.code-lines strong{color:#8f7cff;font-weight:400}.code-lines em{color:#92d976;font-style:normal}.code-lines b{color:#6fc8f8;font-weight:400}.code-lines mark{background:none;color:#f28ddf}.code-lines .empty{height:10px}.code-panel-foot{height:38px;border-top:1px solid rgba(255,255,255,.1);border-bottom:0;font-size:8px}.code-panel-foot i{width:6px;height:6px;border-radius:50%!important;background:#a4f079;box-shadow:0 0 10px #a4f079;margin-left:auto;margin-right:7px}.code-panel-foot b{color:#a4f079;font-weight:400}.code-glyph{position:absolute;z-index:4;right:2%;bottom:8%;color:rgba(255,255,255,.9);font:38px var(--csc-mono);text-shadow:0 0 25px var(--csc-violet);transform:rotate(-14deg)}.art-tag{position:absolute;z-index:5;color:#a392aa;font:9px var(--csc-mono);letter-spacing:.12em}.tag-a{right:0;top:15%}.tag-b{left:1%;bottom:13%;color:var(--csc-violet)}.art-crosshair{position:absolute;right:14%;top:7%;width:24px;height:24px;border:1px solid var(--csc-violet)}.art-crosshair:before,.art-crosshair:after{content:"";position:absolute;background:var(--csc-violet)}.art-crosshair:before{width:42px;height:1px;left:-10px;top:11px}.art-crosshair:after{width:1px;height:42px;left:11px;top:-10px}
.dossier-hero-foot{position:absolute;z-index:3;left:50%;bottom:28px;transform:translateX(-50%);display:flex;align-items:center;gap:13px;width:min(1180px,calc(100% - 64px));color:#7e7185}.dossier-hero-foot i{height:1px;flex:1;background:rgba(255,255,255,.22)}.dossier-hero-foot b{color:var(--csc-violet);font-weight:400;margin-left:auto}.dossier-marquee{border-block:1px solid rgba(255,255,255,.13);overflow:hidden;background:#13061d}.dossier-marquee div{width:max-content;display:flex;gap:28px;padding:16px 0;color:#9d90a2;font:11px var(--csc-mono);letter-spacing:.2em;animation:marquee 24s linear infinite}.dossier-marquee b{color:var(--csc-violet);font-weight:400}
.dossier-about{padding-block:135px}.dossier-section-label{display:flex;align-items:center;gap:11px;color:#9e91a5}.dossier-section-label b{color:var(--csc-violet);font-weight:400}.dossier-section-label i{width:36px;height:1px;background:var(--csc-purple)}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%;margin:60px 0 83px;align-items:end}.about-title small{color:#7f7185;font:9px var(--csc-mono);letter-spacing:.16em}.about-title h2,.poles-head h2,.school-copy h2,.club-copy h2,.office-layout h2,.dossier-final h2{font-family:var(--csc-display)!important;text-transform:none;font-weight:500;line-height:.88;letter-spacing:-.1em;margin:29px 0 0;font-size:clamp(55px,6.3vw,86px)}.about-title h2 em,.poles-head h2 em,.school-copy h2 em,.club-copy h2 em,.office-layout h2 em,.dossier-final h2 em{color:var(--csc-violet)}.about-body p{max-width:465px;color:#bcb2c1;font-size:17px;line-height:1.58;margin:0 0 30px}.about-body strong,.club-copy strong{color:#fff;font-weight:600}.about-data{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid rgba(255,255,255,.14)}.about-data>div{min-height:118px;border-right:1px solid rgba(255,255,255,.14);display:flex;align-items:center;gap:14px;padding:16px}.about-data>div:first-child{border-left:1px solid rgba(255,255,255,.14)}.about-data b{font-size:50px;font-weight:400;color:var(--csc-violet);letter-spacing:-.1em}.about-data span{color:#928497;font:9px/1.45 var(--csc-mono);text-transform:uppercase}.data-command{background:rgba(112,87,232,.12);color:#c6baca;font:10px/1.5 var(--csc-mono)}.data-command strong{color:var(--csc-violet);font-size:20px}.data-command em{color:var(--csc-violet);font-style:normal}
.dossier-poles{padding:128px 0 145px;background:#f5f1f7;color:var(--csc-ink)}.dossier-poles .dossier-section-label{color:#737373}.dossier-poles .dossier-section-label i{background:var(--csc-purple)}.poles-head{display:flex;align-items:end;justify-content:space-between;margin:56px 0 55px}.poles-head h2{margin:0}.poles-head p{max-width:280px;color:#737373;font-size:13px;line-height:1.58;margin:0 5% 5px 0}.poles-list{border-top:2px solid var(--csc-ink)}.pole-row{min-height:113px;display:grid;grid-template-columns:60px 50px 1.1fr 1.3fr 130px;align-items:center;gap:16px;border-bottom:1px solid rgba(12,3,23,.22);transition:background .3s,padding .3s,transform .3s}.pole-row:hover{padding-inline:15px;background:#fff;transform:translateX(5px)}.pole-number{font:10px var(--csc-mono);color:var(--csc-purple)}.pole-icon{font-size:22px}.pole-name{font-size:21px;font-weight:600;letter-spacing:-.06em}.pole-desc{color:#737373;font-size:11px;line-height:1.45}.pole-link{justify-self:end;color:var(--csc-purple);font:9px var(--csc-mono);text-transform:uppercase}
.dossier-school{padding:145px 0;background:#14061e;border-block:1px solid rgba(255,255,255,.13)}.school-layout{display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:9%}.school-image{height:590px;position:relative;padding:12px;border:1px solid rgba(143,124,255,.5);transform:rotate(-2deg);box-shadow:16px 16px 0 rgba(112,87,232,.35);overflow:hidden}.school-image:after{content:"";position:absolute;inset:30px;border:1px solid rgba(255,255,255,.22)}.school-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) contrast(1.08);transition:transform .7s,filter .5s}.school-image:hover img{transform:scale(1.06);filter:saturate(1.1)}.school-image span{position:absolute;z-index:2;left:26px;bottom:24px;color:#fff;font:9px var(--csc-mono);letter-spacing:.1em}.school-image b{position:absolute;z-index:2;right:25px;top:24px;color:var(--csc-violet);font:16px var(--csc-mono);font-weight:400}.school-copy h2{font-size:clamp(43px,5vw,68px);margin:35px 0 24px}.school-copy p{max-width:560px;color:#ada1b3;font-size:12px;line-height:1.65;margin:0 0 15px}
.dossier-club{display:grid;grid-template-columns:1fr .9fr;gap:10%;align-items:center;padding-block:150px}.club-copy h2{font-size:clamp(50px,5.8vw,80px);margin:51px 0 27px}.club-copy p{max-width:540px;color:#ada1b3;font-size:12px;line-height:1.65;margin:0 0 15px}.club-copy .dossier-button{margin-top:20px}.club-image{min-height:560px;position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;background:radial-gradient(circle at 50% 40%,rgba(112,87,232,.33),transparent 58%),#050207;border:1px solid rgba(255,255,255,.15)}.club-image:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(transparent,black 20%,transparent)}.club-image img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:grayscale(1);transition:filter .5s,transform .7s}.club-image:hover img{filter:grayscale(.15);transform:scale(1.035)}.club-image-stamp{position:absolute;z-index:4;left:20px;top:20px;display:flex;align-items:center;gap:10px;padding:10px 12px;background:rgba(12,3,23,.76);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(9px)}.club-image-stamp b{color:var(--csc-violet);font:18px var(--csc-mono);font-weight:400}.club-image-stamp span{color:#e4dce8;font:8px/1.2 var(--csc-mono);letter-spacing:.1em}.club-image>i{position:absolute;z-index:3;inset:14px;border:1px solid rgba(143,124,255,.25);pointer-events:none}
.dossier-office{padding:135px 0;background:#1a0824;border-top:1px solid rgba(255,255,255,.13)}.office-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:start;margin-top:65px}.office-layout h2{font-size:clamp(48px,5.6vw,75px);margin:0}.office-mark{display:block;color:var(--csc-violet);font:118px/.6 Georgia,serif;opacity:.65;margin-top:47px}.office-layout blockquote{margin:0;border-left:2px solid var(--csc-purple);padding:21px 0 21px 27px;color:#e8deea;font-size:19px;line-height:1.55}.office-layout cite{display:block;color:var(--csc-violet);font:10px var(--csc-mono);letter-spacing:.08em;text-transform:uppercase;font-style:normal;margin-top:29px}
.dossier-final{padding:135px 0 155px;position:relative;overflow:hidden;background:#260b31}.dossier-final:before{content:"";position:absolute;inset:0;background:linear-gradient(116deg,transparent 0 41%,rgba(255,255,255,.08) 41.2%,transparent 41.5%),linear-gradient(70deg,transparent 0 64%,rgba(255,255,255,.06) 64.1%,transparent 64.4%)}.dossier-final .dossier-wrap{position:relative}.final-kicker{color:#c9bbc9}.dossier-final h2{font-size:clamp(65px,7.2vw,100px);margin:60px 0 25px}.dossier-final h2 em{color:#fff}.dossier-final p{color:#bcb0c0;font-size:14px;margin:0 0 26px}.final-code{position:absolute;right:8%;bottom:3px;color:#8f7d96;font:10px/1.7 var(--csc-mono)}.final-code b{color:var(--csc-violet);font-weight:400}
[data-home-reveal]{opacity:0;transform:translateY(23px);transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1)}[data-home-reveal].is-home-visible{opacity:1;transform:none}
@keyframes grid-shift{to{background-position:0 58px,0 0}}@keyframes depth-spin{to{transform:translate(-50%,-50%) rotateX(57deg) rotateZ(333deg)}}@keyframes depth-spin-reverse{to{transform:translate(-50%,-50%) rotateX(57deg) rotateZ(-316deg)}}@keyframes panel-hover{0%,100%{transform:translate(-50%,-50%) rotateX(3deg) rotateY(-14deg) rotateZ(-5deg)}50%{transform:translate(-50%,-53%) rotateX(5deg) rotateY(-9deg) rotateZ(-3deg)}}@keyframes marquee{to{transform:translateX(-23%)}}
@media(max-width:950px){.dossier-wrap{width:min(720px,calc(100% - 48px))}.dossier-hero{min-height:900px}.dossier-hero-inner{grid-template-columns:1fr;gap:0;min-height:780px}.dossier-copy{padding-top:80px}.code-art{height:445px;margin-top:-35px}.dossier-hero-foot{width:calc(100% - 48px)}.about-layout,.school-layout,.dossier-club,.office-layout{grid-template-columns:1fr;gap:55px}.poles-head{align-items:start;flex-direction:column;gap:28px}.poles-head p{margin:0}.school-image{max-width:600px;height:500px}.club-image{min-height:520px;max-width:600px}.about-data{grid-template-columns:repeat(2,1fr)}.about-data>div:nth-child(3){border-left:1px solid rgba(255,255,255,.14)}.about-data .data-command{grid-column:span 2}.pole-row{grid-template-columns:45px 36px 1fr 100px}.pole-desc{display:none}}
@media(max-width:600px){.dossier-wrap{width:calc(100% - 36px)}.dossier-hero{min-height:840px;padding-top:64px}.hero-index-rail{display:none}.dossier-hero-inner{width:calc(100% - 36px);min-height:740px}.dossier-copy{padding-top:49px}.eyebrow-new{font-size:8px}.dossier-copy h1{font-size:clamp(56px,17vw,82px);margin:26px 0 24px}.dossier-lead{font-size:13px}.dossier-actions{align-items:start;flex-direction:column;gap:18px}.dossier-status{margin-top:38px;font-size:8px}.code-art{height:360px;width:118%;margin-left:-9%;transform:scale(.8)}.code-panel{width:350px}.dossier-hero-foot{width:calc(100% - 36px);bottom:19px;font-size:7px}.dossier-hero-foot>span:first-child,.dossier-hero-foot>i{display:none}.dossier-hero-foot b{margin-left:0}.dossier-about,.dossier-club{padding-block:94px}.about-layout{margin:43px 0 56px;gap:35px}.about-title h2,.poles-head h2,.club-copy h2,.office-layout h2{font-size:54px}.about-body p{font-size:15px}.about-data>div{min-height:100px;padding:12px;gap:8px}.about-data b{font-size:38px}.about-data span{font-size:8px}.dossier-poles{padding-block:94px}.poles-head{margin:43px 0 45px}.pole-row{grid-template-columns:25px 28px 1fr 23px;gap:8px;min-height:100px}.pole-icon{font-size:18px}.pole-name{font-size:15px}.pole-desc{display:none}.pole-link{font-size:0}.pole-link:after{content:'↗';font-size:18px}.dossier-school{padding-block:94px}.school-image{height:350px;padding:8px;box-shadow:9px 9px 0 rgba(112,87,232,.35)}.school-image:after{inset:20px}.school-copy h2{font-size:44px;margin-top:34px}.school-copy p,.club-copy p{font-size:12px}.club-image{min-height:390px}.dossier-office{padding-block:94px}.office-layout{margin-top:46px;gap:30px}.office-layout blockquote{font-size:16px}.office-mark{font-size:88px;margin-top:32px}.dossier-final{padding-block:100px}.dossier-final h2{font-size:65px;margin-top:50px}.final-code{position:static;margin-top:65px;font-size:8px}}
@media(prefers-reduced-motion:reduce){.dossier-grid,.art-depth,.code-panel,.dossier-marquee div{animation:none!important}[data-home-reveal]{opacity:1;transform:none}.code-art{transform:none!important}}

/* Light mode: paper dossier with the same purple signal. */
html:not(.dark) .home-page{background:var(--csc-paper)!important;color:var(--csc-ink)!important}.home-page .dossier-hero{background:var(--csc-ink)}html:not(.dark) .home-page .dossier-about,html:not(.dark) .home-page .dossier-club{background:var(--csc-paper);color:var(--csc-ink)}html:not(.dark) .home-page .about-body p,html:not(.dark) .home-page .dossier-lead{color:#514957}html:not(.dark) .home-page .about-body strong,html:not(.dark) .home-page .club-copy strong{color:var(--csc-ink)}html:not(.dark) .home-page .about-data{border-color:rgba(12,3,23,.16)}html:not(.dark) .home-page .about-data>div{border-color:rgba(12,3,23,.16)}html:not(.dark) .home-page .about-data span{color:#737373}html:not(.dark) .home-page .dossier-marquee{background:#e7dfea;border-color:rgba(12,3,23,.13)}
.home-page .dossier-copy h1{color:#f7f0fa!important}
.dossier-poles{background:linear-gradient(115deg,#10051a 0%,#16091f 58%,#0d0415 100%);color:#f8f5f8}
.dossier-poles .dossier-section-label{color:#a99bad}
.dossier-poles .poles-head p{color:#b7aabd}
.dossier-poles .poles-list{border-color:rgba(255,255,255,.34)}
.dossier-poles .pole-row{border-color:rgba(255,255,255,.16)}
.dossier-poles .pole-row:hover{background:#24102f}
.dossier-poles .pole-name{color:#f8f5f8}
.dossier-poles .pole-desc{color:#b7aabd}
.dossier-poles .pole-link{color:var(--csc-violet)}

/* The school becomes a framed editorial image instead of a tall crop. */
.school-layout{align-items:start}
.school-image{height:460px;transform:rotate(-1.2deg);box-shadow:20px 20px 0 rgba(112,87,232,.38);background:#08030d}
.school-image:after{inset:20px;border-color:rgba(255,255,255,.28)}
.school-image img{object-position:center center;filter:saturate(.82) contrast(1.08)}
.school-image:hover{transform:rotate(0) translateY(-5px)}

/* Give the bureau portrait a real focal frame and more visual presence. */
.club-image{min-height:620px;background:radial-gradient(circle at 50% 35%,rgba(143,124,255,.28),transparent 48%),linear-gradient(145deg,#190823,#050207 72%);border-color:rgba(143,124,255,.42);box-shadow:20px 20px 0 rgba(75,99,118,.3)}
.club-image img{width:112%;height:112%;transform:translateY(3%) scale(1.04);filter:grayscale(1) contrast(1.08) brightness(1.08)}
.club-image:hover img{transform:translateY(3%) scale(1.1);filter:grayscale(.15) contrast(1.08) brightness(1.05)}
.club-image:after{content:"BUREAU / CSC ENSEM";position:absolute;z-index:4;right:21px;bottom:20px;color:#d7c9db;font:8px var(--csc-mono);letter-spacing:.14em;writing-mode:vertical-rl}

/* Light mode restores the paper contrast only for the technology section. */
html:not(.dark) .home-page .dossier-poles{background:#f5f1f7;color:var(--csc-ink)}
html:not(.dark) .home-page .dossier-poles .dossier-section-label{color:#737373}
html:not(.dark) .home-page .dossier-poles .poles-head p{color:#737373}
html:not(.dark) .home-page .dossier-poles .poles-list{border-color:var(--csc-ink)}
html:not(.dark) .home-page .dossier-poles .pole-row{border-color:rgba(12,3,23,.22)}
html:not(.dark) .home-page .dossier-poles .pole-row:hover{background:#fff}
html:not(.dark) .home-page .dossier-poles .pole-name{color:var(--csc-ink)}
html:not(.dark) .home-page .dossier-poles .pole-desc{color:#737373}
html:not(.dark) .home-page .dossier-poles .pole-link{color:var(--csc-purple)}

@media(max-width:950px){.school-image{height:500px}.club-image{min-height:620px}}
@media(max-width:600px){.school-image{height:350px}.club-image{min-height:445px}}

/* =========================================================
   CSC SIGNATURE PASS — homepage hero, actions and footer
   ========================================================= */
.home-page .dossier-hero{
  min-height:clamp(760px,92vh,940px);
  background:
    radial-gradient(circle at 74% 40%,rgba(143,124,255,.22),transparent 21%),
    radial-gradient(circle at 16% 76%,rgba(75,99,118,.15),transparent 23%),
    #0c0317;
  border-bottom:1px solid rgba(143,124,255,.42);
}
.home-page .dossier-hero::after{content:"SYSTEM ONLINE  /  01";position:absolute;z-index:3;right:28px;top:126px;color:#8f7cff;font:10px var(--csc-mono);letter-spacing:.16em;writing-mode:vertical-rl}
.home-page .dossier-copy h1{font-size:clamp(76px,8.2vw,126px);line-height:.79;letter-spacing:-.12em;text-wrap:balance}
.home-page .dossier-lead{max-width:445px;color:#d0c5d3}
.home-page .dossier-actions{gap:16px;align-items:center}
.home-page .dossier-button{position:relative;isolation:isolate;min-height:56px;padding:0 17px;gap:14px;border:1px solid var(--csc-violet);border-radius:3px!important;background:linear-gradient(135deg,var(--csc-purple),#5f4bd5);box-shadow:7px 7px 0 rgba(75,99,118,.38);font:10px var(--csc-mono);letter-spacing:.08em;transition:transform .25s,box-shadow .25s,background .25s}
.home-page .dossier-button::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.35) 48%,transparent 70%);transform:translateX(-120%);transition:transform .55s}
.home-page .dossier-button:hover{transform:translate(-3px,-3px);box-shadow:11px 11px 0 rgba(75,99,118,.3);background:linear-gradient(135deg,#806ff0,#7057e8)}
.home-page .dossier-button:hover::before{transform:translateX(120%)}
.home-page .dossier-button span{display:inline-grid;place-items:center;width:24px;height:24px;border:1px solid currentColor;border-radius:50%;font-size:14px;transition:transform .25s}
.home-page .dossier-button:hover span{transform:rotate(45deg)}
.home-page .dossier-button.outline{background:rgba(255,255,255,.03);box-shadow:7px 7px 0 rgba(143,124,255,.2)}
.home-page .dossier-button.outline:hover{background:#fff;color:var(--csc-ink)}
.home-page .dossier-button.light{box-shadow:7px 7px 0 rgba(75,99,118,.45)}
.home-page .dossier-text-link{min-height:50px;padding:0 14px;border:1px solid rgba(255,255,255,.28);border-radius:3px;display:inline-flex;transition:background .25s,color .25s,border-color .25s,transform .25s}
.home-page .dossier-text-link:hover{background:rgba(255,255,255,.1);border-color:var(--csc-violet);transform:translateY(-2px)}
.home-page .dossier-status{margin-top:48px}
.home-page .code-panel{box-shadow:32px 32px 0 rgba(75,99,118,.3),0 35px 80px rgba(0,0,0,.5),inset 0 0 50px rgba(112,87,232,.2)}

.home-page #site-footer footer{position:relative;overflow:hidden;padding:30px 0 25px;background:#08020e!important;color:#f8f5f8;border-top:1px solid rgba(143,124,255,.55)}
.home-page #site-footer footer::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.2;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(90deg,transparent,black 18%,black 80%,transparent)}
.home-page #site-footer footer>.wrap{position:relative;z-index:1;width:min(1180px,calc(100% - 64px))}
.home-page #site-footer .footer-topline{display:flex;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.16);color:#8f7d96;font:9px var(--csc-mono);letter-spacing:.14em;text-transform:uppercase}
.home-page #site-footer .footer-topline span:last-child{color:var(--csc-violet)}
.home-page #site-footer .footer-feature{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:72px 0 64px;border-bottom:1px solid rgba(255,255,255,.16)}
.home-page #site-footer .footer-label{color:var(--csc-violet);font:10px var(--csc-mono);letter-spacing:.16em}
.home-page #site-footer .footer-feature h2{margin:18px 0 0;color:#fff;font:600 clamp(54px,8vw,115px)/.82 var(--csc-display);letter-spacing:-.11em;text-transform:none}
.home-page #site-footer .footer-feature h2 em{color:var(--csc-violet);font-style:normal}
.home-page #site-footer .footer-cta{display:inline-flex;align-items:center;gap:14px;min-height:54px;padding:0 17px;border:1px solid var(--csc-violet);background:var(--csc-purple);color:#fff;font:10px var(--csc-mono);letter-spacing:.08em;text-transform:uppercase;box-shadow:7px 7px 0 rgba(75,99,118,.3);transition:transform .25s,background .25s,box-shadow .25s}
.home-page #site-footer .footer-cta span{font:20px var(--csc-display)}
.home-page #site-footer .footer-cta:hover{transform:translate(-3px,-3px);background:#6651d8;box-shadow:11px 11px 0 rgba(75,99,118,.25)}
.home-page #site-footer .foot-grid{position:relative;display:grid;grid-template-columns:1.45fr .75fr .75fr;gap:3rem;padding:58px 0 52px}
.home-page #site-footer .brand{font:600 28px var(--csc-display);letter-spacing:-.09em;color:#fff}
.home-page #site-footer .brand b{color:var(--csc-violet)}
.home-page #site-footer .desc{max-width:320px;margin-top:16px;color:#a596aa;font-size:12px;line-height:1.7}
.home-page #site-footer .fcol h4{margin-bottom:13px;color:var(--csc-violet);font:10px var(--csc-mono);letter-spacing:.14em;text-transform:uppercase}
.home-page #site-footer .fcol a{display:flex;align-items:center;justify-content:space-between;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.13);color:#c8bbc9;font-size:12px;transition:color .2s,padding .2s}
.home-page #site-footer .fcol a::after{content:"↗";color:var(--csc-violet);opacity:.7;transition:transform .2s}
.home-page #site-footer .fcol a:hover{padding-left:6px;color:#fff}
.home-page #site-footer .fcol a:hover::after{transform:rotate(45deg)}
.home-page #site-footer .foot-base{display:flex;justify-content:space-between;gap:20px;padding-top:19px;border-top:1px solid rgba(255,255,255,.18);color:#76677d;font:9px var(--csc-mono);line-height:1.5}
@media(max-width:600px){
  .home-page .dossier-hero::after{right:12px;top:94px;font-size:8px}
  .home-page .dossier-copy h1{font-size:clamp(64px,18vw,88px)}
  .home-page .dossier-actions{align-items:flex-start}
  .home-page .dossier-text-link{min-height:48px}
  .home-page #site-footer .footer-topline{flex-direction:column;gap:7px}
  .home-page #site-footer .footer-feature{align-items:flex-start;flex-direction:column;padding:53px 0 47px}
  .home-page #site-footer .footer-feature h2{font-size:clamp(54px,16vw,78px)}
  .home-page #site-footer .foot-grid{grid-template-columns:1fr;gap:36px;padding:44px 0}
  .home-page #site-footer .foot-base{flex-direction:column;gap:9px}
}
@media(prefers-reduced-motion:reduce){.home-page .dossier-button,.home-page .footer-cta{transition:none!important}}

/* =========================================================
   NEW ART DIRECTION — homepage editorial poster
   ========================================================= */
.home-page,.home-page p,.home-page .dossier-lead{font-family:var(--csc-body)!important}
.home-page h1,.home-page h2,.home-page h3,.home-page .brand{font-family:var(--csc-display)!important}
.home-page header.nav,.home-page header.nav a,.home-page .theme-toggle{font-family:var(--csc-body)!important}
.home-page header.nav .brand{font-family:var(--csc-display)!important;letter-spacing:-.08em}
.home-page .dossier-hero{
  min-height:clamp(790px,94vh,980px)!important;background:#0c0317!important;border-bottom:7px solid var(--csc-purple);
}
.home-page .dossier-hero::before{content:"";position:absolute;z-index:-1;inset:-12% -3% -12% auto;width:48%;background:linear-gradient(145deg,#4b6376,#7057e8 54%,#8f7cff);clip-path:polygon(28% 0,100% 0,100% 100%,0 100%);opacity:.88}
.home-page .dossier-hero::after{content:"{ CSC / 01 }";right:4%;top:126px;color:#0c0317;font:800 12px var(--csc-mono);letter-spacing:.08em;writing-mode:horizontal-tb}
.home-page .dossier-grid{opacity:.2;background-size:42px 42px;mask-image:linear-gradient(90deg,transparent,black 20%,black 72%,transparent)}
.home-page .dossier-glow{background:radial-gradient(circle at 75% 37%,rgba(255,255,255,.18),transparent 14%),radial-gradient(circle at 14% 75%,rgba(75,99,118,.2),transparent 23%)}
.home-page .dossier-copy h1{font-family:var(--csc-display)!important;font-size:clamp(78px,9vw,140px)!important;line-height:.78!important;letter-spacing:-.13em!important;font-weight:800!important;text-shadow:10px 10px 0 rgba(75,99,118,.32)}
.home-page .dossier-copy h1 em{color:#8f7cff!important}
.home-page .eyebrow-new{font-family:var(--csc-mono)!important}
.home-page .dossier-lead{font-size:15px;line-height:1.7;color:#dcd1df}
.home-page .dossier-button,.home-page .dossier-text-link{
  min-height:56px;padding:0 19px;border:2px solid #0c0317;border-radius:999px 7px 999px 7px!important;box-shadow:5px 5px 0 #4b6376;font-family:var(--csc-body);font-weight:800;letter-spacing:0;text-transform:none;
}
.home-page .dossier-button{background:#8f7cff;color:#0c0317}
.home-page .dossier-button:hover{background:#fff;color:#0c0317;box-shadow:8px 8px 0 #7057e8}
.home-page .dossier-button.outline{background:transparent;color:#8f7cff;border-color:#8f7cff;box-shadow:5px 5px 0 rgba(75,99,118,.35)}
.home-page .dossier-button.outline:hover{background:#8f7cff;color:#0c0317;border-color:#8f7cff}
.home-page .dossier-button.light{background:#fff;color:#0c0317;border-color:#0c0317}
.home-page .dossier-text-link{border:2px solid #8f7cff;color:#8f7cff;padding-inline:18px}
.home-page .dossier-text-link:hover{background:#8f7cff;color:#0c0317;border-color:#8f7cff}
.home-page .dossier-text-link span{font-family:var(--csc-body)}
.home-page .code-panel{border:2px solid #8f7cff;background:#0c0317;box-shadow:23px 23px 0 #4b6376,0 35px 80px rgba(0,0,0,.5)}
.home-page .code-panel-top,.home-page .code-panel-foot{font-family:var(--csc-mono)}

/* Homepage footer follows the same paper/ink flip as the internal pages. */
.home-page #site-footer footer{background:#f5f1f7!important;color:#0c0317!important;border-top:9px solid #7057e8!important}
.home-page #site-footer footer::before{opacity:.35;background-image:linear-gradient(rgba(12,3,23,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(12,3,23,.08) 1px,transparent 1px);background-size:44px 44px}
.home-page #site-footer .footer-topline{border-color:rgba(12,3,23,.18);color:#737373;font-family:var(--csc-mono)}
.home-page #site-footer .footer-topline span:last-child,.home-page #site-footer .footer-label{color:#7057e8}
.home-page #site-footer .footer-feature{border-color:rgba(12,3,23,.18)}
.home-page #site-footer .footer-feature h2{color:#0c0317!important;font-family:var(--csc-display)!important;text-shadow:5px 5px 0 rgba(75,99,118,.18)}
.home-page #site-footer .footer-feature h2 em{color:#7057e8}
.home-page #site-footer .footer-cta{background:#0c0317;color:#fff;border:2px solid #0c0317;box-shadow:5px 5px 0 #7057e8;border-radius:999px 7px 999px 7px;font-family:var(--csc-body);font-weight:800;text-transform:none;letter-spacing:0}
.home-page #site-footer .footer-cta:hover{background:#7057e8;box-shadow:8px 8px 0 #4b6376}
.home-page #site-footer .brand{font-family:var(--csc-display);color:#0c0317}
.home-page #site-footer .brand b{color:#7057e8}
.home-page #site-footer .desc,.home-page #site-footer .fcol a{color:#514957;font-family:var(--csc-body)}
.home-page #site-footer .fcol h4{color:#7057e8;font-family:var(--csc-mono)}
.home-page #site-footer .fcol a{border-color:rgba(12,3,23,.18)}
.home-page #site-footer .fcol a::after{color:#7057e8}
.home-page #site-footer .fcol a:hover{color:#0c0317}
.home-page #site-footer .foot-base{border-color:rgba(12,3,23,.18);color:#737373;font-family:var(--csc-mono)}
html:not(.dark) .home-page #site-footer footer{background:#0c0317!important;color:#fff!important;border-top-color:#8f7cff!important}
html:not(.dark) .home-page #site-footer footer::before{background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px)}
html:not(.dark) .home-page #site-footer .footer-topline,html:not(.dark) .home-page #site-footer .footer-feature,html:not(.dark) .home-page #site-footer .foot-base{border-color:rgba(255,255,255,.18)}
html:not(.dark) .home-page #site-footer .footer-topline{color:#8f7d96}
html:not(.dark) .home-page #site-footer .footer-topline span:last-child,html:not(.dark) .home-page #site-footer .footer-label{color:#8f7cff}
html:not(.dark) .home-page #site-footer .footer-feature h2{color:#fff!important;text-shadow:none}
html:not(.dark) .home-page #site-footer .footer-feature h2 em{color:#8f7cff}
html:not(.dark) .home-page #site-footer .brand{color:#fff}
html:not(.dark) .home-page #site-footer .desc,html:not(.dark) .home-page #site-footer .fcol a{color:#c8bbc9}
html:not(.dark) .home-page #site-footer .fcol a:hover{color:#fff}
html:not(.dark) .home-page #site-footer .foot-base{color:#76677d}
@media(max-width:600px){
  .home-page .dossier-hero::before{width:82%;clip-path:polygon(33% 0,100% 0,100% 100%,0 100%)}
  .home-page .dossier-copy h1{font-size:clamp(65px,19vw,92px)!important}
  .home-page .dossier-actions{align-items:flex-start}
}
@media(min-width:951px){
  .home-page .dossier-copy h1{font-size:clamp(62px,5.3vw,86px)!important}
  .home-page .dossier-lead{color:#eee5f0}
}
@media(prefers-reduced-motion:reduce){.home-page .dossier-hero::before,.home-page .dossier-button,.home-page .footer-cta{transition:none!important}}

/* =========================================================
   BENTO UI PASS — homepage layout and typography only
   ========================================================= */
.home-page,.home-page p,.home-page .dossier-lead{font-family:var(--csc-body)!important}
.home-page h1,.home-page h2,.home-page h3,.home-page .eyebrow-new,.home-page .dossier-section-label,.home-page .dossier-status,.home-page .final-kicker,.home-page .dossier-button,.home-page .dossier-text-link,.home-page .footer-label,.home-page .footer-topline,.home-page .foot-base{font-family:var(--csc-mono)!important}
.home-page h1,.home-page h2,.home-page h3{letter-spacing:-.08em!important;line-height:.98!important}
.home-page main{padding:0 0 24px!important;background:var(--csc-ink)!important}
.home-page .dossier-hero{width:calc(100% - 32px);margin:16px auto 0;border-radius:24px!important;min-height:clamp(760px,92vh,940px)!important}
.home-page .dossier-marquee{width:calc(100% - 32px);margin:12px auto 0;border-radius:14px;overflow:hidden}
.home-page .dossier-about,.home-page .dossier-poles,.home-page .dossier-school,.home-page .dossier-club,.home-page .dossier-office,.home-page .dossier-final{width:calc(100% - 32px);margin:16px auto 0;border:1px solid var(--csc-line);border-radius:24px!important;overflow:clip}
.home-page .dossier-about,.home-page .dossier-poles,.home-page .dossier-school,.home-page .dossier-club,.home-page .dossier-office,.home-page .dossier-final{padding-block:72px!important}
.home-page .about-layout,.home-page .school-layout,.home-page .office-layout{gap:16px!important}
.home-page .about-title,.home-page .about-body,.home-page .school-image,.home-page .school-copy,.home-page .club-copy,.home-page .club-image,.home-page .office-layout>div,.home-page .office-layout>blockquote{border:1px solid var(--csc-line);border-radius:18px!important;padding:28px}
.home-page .about-title,.home-page .about-body,.home-page .school-copy,.home-page .club-copy,.home-page .office-layout>div,.home-page .office-layout>blockquote{background:var(--csc-ink)}
.home-page .about-title{display:flex;flex-direction:column;justify-content:center}
.home-page .about-body{padding:30px!important}
.home-page .about-data{gap:16px!important;border:0!important}
.home-page .about-data>div{border:1px solid var(--csc-line)!important;border-radius:18px!important;background:var(--csc-ink)}
.home-page .pole-row{margin:10px 0;border:1px solid rgba(255,255,255,.16)!important;border-radius:16px!important;padding:0 18px!important}
.home-page .pole-row:hover{padding-inline:28px!important}
.home-page .poles-list{border-top:0!important}
.home-page .school-image{padding:12px!important}
.home-page .club-image{padding:0!important}
.home-page .office-layout>blockquote{margin:0!important}
.home-page .dossier-final .dossier-wrap{padding:0!important}
.home-page .dossier-button,.home-page .dossier-text-link{border-radius:14px!important;box-shadow:none!important;font-family:var(--csc-mono)!important}
.home-page .dossier-button:hover,.home-page .dossier-text-link:hover{transform:translateY(-3px)}
.home-page #site-footer .footer-feature,.home-page #site-footer .foot-grid>div{border-radius:18px}
.home-page #site-footer .footer-feature{padding:54px 28px!important}
.home-page #site-footer .footer-feature h2{font-family:var(--csc-mono)!important;letter-spacing:-.09em!important}
.home-page #site-footer .footer-cta{border-radius:14px!important;font-family:var(--csc-mono)!important}
@media(max-width:950px){
  .home-page .about-title,.home-page .about-body,.home-page .school-image,.home-page .school-copy,.home-page .club-copy,.home-page .club-image,.home-page .office-layout>div,.home-page .office-layout>blockquote{padding:22px}
}
@media(max-width:600px){
  .home-page .dossier-hero,.home-page .dossier-marquee,.home-page .dossier-about,.home-page .dossier-poles,.home-page .dossier-school,.home-page .dossier-club,.home-page .dossier-office,.home-page .dossier-final{width:calc(100% - 20px);border-radius:18px!important}
  .home-page .about-data{grid-template-columns:1fr 1fr!important}
  .home-page .dossier-about,.home-page .dossier-poles,.home-page .dossier-school,.home-page .dossier-club,.home-page .dossier-office,.home-page .dossier-final{padding-block:54px!important}
  .home-page .about-data>div{min-height:100px}
  .home-page .pole-row{margin:8px 0;padding:0 12px!important}
  .home-page .pole-row:hover{padding-inline:16px!important}
}

/* =========================================================
   FINAL POLISH — homepage theme separation and footer bento
   ========================================================= */
html:not(.dark) .home-page .about-title,
html:not(.dark) .home-page .about-body,
html:not(.dark) .home-page .about-data>div,
html:not(.dark) .home-page .school-copy,
html:not(.dark) .home-page .club-copy,
html:not(.dark) .home-page .office-layout>div,
html:not(.dark) .home-page .office-layout>blockquote{
  background:var(--csc-paper)!important;
  color:var(--csc-ink)!important;
  border-color:rgba(12,3,23,.16)!important;
}
html:not(.dark) .home-page .dossier-school,
html:not(.dark) .home-page .dossier-club,
html:not(.dark) .home-page .dossier-office{
  background:var(--csc-paper)!important;
  color:var(--csc-ink)!important;
  border-color:rgba(12,3,23,.16)!important;
}
html:not(.dark) .home-page .dossier-school p,
html:not(.dark) .home-page .dossier-club p,
html:not(.dark) .home-page .dossier-office p{color:var(--csc-gray)!important}
html.dark .home-page .dossier-about,
html.dark .home-page .dossier-poles,
html.dark .home-page .dossier-school,
html.dark .home-page .dossier-club,
html.dark .home-page .dossier-office,
html.dark .home-page .dossier-final{background:var(--csc-ink)!important;color:#fff!important}

.home-page #site-footer .footer-feature{
  min-height:230px!important;
  align-items:center!important;
  border:1px solid rgba(12,3,23,.18)!important;
}
.home-page #site-footer .footer-feature h2{
  max-width:12ch;
  font-size:clamp(42px,6vw,88px)!important;
}
.home-page #site-footer .footer-cta{min-height:58px!important}
.home-page #site-footer .foot-grid{
  gap:14px!important;
  padding:40px 0!important;
}
.home-page #site-footer .foot-grid>div{
  min-height:150px;
  padding:24px!important;
  border:1px solid rgba(12,3,23,.16)!important;
  background:rgba(112,87,232,.06)!important;
}
html:not(.dark) .home-page #site-footer .foot-grid>div{
  border-color:rgba(255,255,255,.16)!important;
  background:rgba(12,3,23,.55)!important;
}
@media(max-width:600px){
  .home-page #site-footer .footer-feature{min-height:260px!important;align-items:flex-start!important}
  .home-page #site-footer .foot-grid>div{min-height:0;padding:20px!important}
}

/* =========================================================
   COMPACT SECTIONS — tighter rhythm and a clearer ENSEM image
   ========================================================= */
.home-page .dossier-about,
.home-page .dossier-poles,
.home-page .dossier-school,
.home-page .dossier-club,
.home-page .dossier-office,
.home-page .dossier-final{padding-block:56px!important}
.home-page .dossier-hero{min-height:clamp(700px,84vh,860px)!important}
.home-page .about-layout{margin:42px 0 58px!important}
.home-page .poles-head{margin:42px 0 40px!important}
.home-page .pole-row{min-height:88px!important}
.home-page .office-layout{margin-top:44px!important}

/* The campus photograph is treated as a featured editorial panel instead
   of a tall narrow crop, so the entrance and its architecture remain
   immediately recognizable. */
.home-page .school-layout{align-items:stretch!important}
.home-page .school-image{
  height:clamp(360px,32vw,450px)!important;
  min-height:0!important;
  padding:10px!important;
  transform:rotate(-1deg)!important;
  display:block!important;
}
.home-page .school-image img{
  display:block!important;
  object-position:58% 50%!important;
}
.home-page .school-copy{padding:24px!important}
.home-page .school-copy h2{margin:20px 0 18px!important}
.home-page .school-copy p{line-height:1.55!important;margin-bottom:11px!important}
.home-page .club-image{min-height:460px!important}

@media(max-width:950px){
  .home-page .school-image{height:min(420px,68vw)!important;max-width:none!important}
  .home-page .club-image{min-height:460px!important}
}
@media(max-width:600px){
  .home-page .dossier-about,
  .home-page .dossier-poles,
  .home-page .dossier-school,
  .home-page .dossier-club,
  .home-page .dossier-office,
  .home-page .dossier-final{padding-block:44px!important}
  .home-page .dossier-hero{min-height:780px!important}
  .home-page .school-image{height:310px!important}
  .home-page .school-copy{padding:20px!important}
  .home-page .club-image{min-height:390px!important}
}

/* New visual language for every homepage h2. */
.home-page main h2{
  font-family:var(--csc-body)!important;
  font-weight:800!important;
  line-height:.94!important;
  letter-spacing:-.085em!important;
  text-transform:none!important;
  text-wrap:balance;
}
.home-page main h2:not(.no-marker)::before{
  content:"";
  display:block;
  width:42px;
  height:3px;
  margin:0 0 16px;
  background:var(--csc-violet);
}
.home-page .dossier-final h2{font-size:clamp(58px,7vw,96px)!important}
.home-page #site-footer .footer-feature h2{
  font-family:var(--csc-body)!important;
  font-weight:800!important;
  line-height:.94!important;
  letter-spacing:-.085em!important;
  text-transform:none!important;
}

/* Remove the square grid from the homepage hero as requested. */
.home-page .dossier-grid{display:none!important}

/* =========================================================
   ENSEM PANORAMA — image first, compact text card below
   ========================================================= */
.home-page .school-layout{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
  align-items:start!important;
}
.home-page .school-image{
  grid-column:1!important;
  width:100%!important;
  height:clamp(360px,35vw,470px)!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  border:1px solid var(--csc-line)!important;
  border-radius:20px!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.home-page .school-image::after{
  content:""!important;
  position:absolute!important;
  z-index:1!important;
  inset:0!important;
  border:0!important;
  background:linear-gradient(180deg,transparent 45%,rgba(12,3,23,.82) 100%)!important;
  pointer-events:none!important;
}
.home-page .school-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:58% 52%!important;
  filter:saturate(.92) contrast(1.04)!important;
}
.home-page .school-copy{
  grid-column:1!important;
  position:relative!important;
  z-index:3!important;
  width:min(1000px,calc(100% - 64px))!important;
  margin:-72px auto 0!important;
  padding:34px!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:34px!important;
  align-items:start!important;
  background:var(--csc-ink)!important;
  border:1px solid var(--csc-line)!important;
  border-radius:18px!important;
}
.home-page .school-copy .dossier-section-label,
.home-page .school-copy h2{grid-column:1/-1!important}
.home-page .school-copy h2{margin:18px 0 24px!important}
.home-page .school-copy p{max-width:none!important;margin:0 0 14px!important;line-height:1.6!important}
html:not(.dark) .home-page .school-copy{
  background:var(--csc-paper)!important;
  color:var(--csc-ink)!important;
  border-color:rgba(12,3,23,.16)!important;
}

@media(max-width:760px){
  .home-page .school-image{height:300px!important;border-radius:16px!important}
  .home-page .school-copy{
    width:calc(100% - 24px)!important;
    margin:-38px auto 0!important;
    padding:22px!important;
    grid-template-columns:1fr!important;
  }
  .home-page .school-copy .dossier-section-label,
  .home-page .school-copy h2,
  .home-page .school-copy p{grid-column:1!important}
  .home-page .school-copy h2{font-size:clamp(38px,11vw,50px)!important;margin:16px 0 20px!important}
}

/* =========================================================
   RESPONSIVE HERO + MERGED ABOUT SECTION
   ========================================================= */
.home-page .dossier-hero{
  min-height:clamp(640px,80svh,790px)!important;
  padding-top:78px!important;
  display:flex;
  align-items:center;
}
.home-page .dossier-hero-inner{
  min-height:0!important;
  padding:44px 0 70px!important;
  grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr)!important;
  gap:clamp(24px,5vw,70px)!important;
}
.home-page .dossier-copy{padding-top:0!important}
.home-page .dossier-copy h1{
  margin:18px 0 22px!important;
  font-size:clamp(62px,7vw,108px)!important;
  line-height:.8!important;
}
.home-page .dossier-lead{
  max-width:500px!important;
  margin-bottom:24px!important;
  font-size:clamp(14px,1vw,16px)!important;
}
.home-page .dossier-hero .dossier-lead{color:#e4dbe7!important}
.home-page .code-art{height:clamp(350px,39vw,500px)!important}
.home-page .code-panel{width:min(430px,78%)!important}
.home-page .dossier-hero-foot{bottom:20px!important}
.home-page .about-body p{max-width:600px!important}
.home-page .about-actions{display:flex;flex-wrap:wrap;gap:12px}
.home-page .about-actions .dossier-text-link{min-height:46px!important}
.home-page .about-data b{font-size:clamp(40px,4vw,58px)!important}

@media(max-width:950px){
  .home-page .dossier-hero{min-height:0!important;padding-top:76px!important}
  .home-page .dossier-hero-inner{
    grid-template-columns:1fr!important;
    gap:0!important;
    padding:56px 0 78px!important;
  }
  .home-page .dossier-copy{max-width:620px}
  .home-page .dossier-copy h1{font-size:clamp(68px,12vw,100px)!important}
  .home-page .code-art{height:370px!important;margin:0!important}
}

@media(max-width:600px){
  .home-page .dossier-hero{padding-top:64px!important}
  .home-page .dossier-hero-inner{
    width:calc(100% - 36px)!important;
    padding:46px 0 64px!important;
  }
  .home-page .dossier-copy h1{
    margin:14px 0 20px!important;
    font-size:clamp(54px,17vw,76px)!important;
  }
  .home-page .dossier-lead{font-size:13px!important;line-height:1.58!important}
  .home-page .dossier-actions{gap:12px!important}
  .home-page .dossier-button,.home-page .dossier-text-link{min-height:48px!important}
  .home-page .code-art{width:112%!important;height:300px!important;margin:4px 0 0 -6%!important;transform:scale(.88)!important}
  .home-page .code-panel{width:min(350px,86%)!important}
  .home-page .dossier-hero-foot{bottom:14px!important}
  .home-page .about-actions{flex-direction:column;align-items:stretch}
  .home-page .about-actions .dossier-text-link{width:100%;justify-content:space-between}
  .home-page .about-data b{font-size:36px!important}
}

/* =========================================================
   LAB MODULES — poles, board note, connection request
   ========================================================= */
.home-page .dossier-poles{background:#100619!important;color:#f8f5f8!important}
.home-page .poles-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.home-page .pole-card{
  min-height:330px;
  display:flex;
  flex-direction:column;
  padding:28px;
  position:relative;
  overflow:hidden;
  border:1px solid rgba(143,124,255,.25);
  border-radius:18px;
  background:linear-gradient(145deg,#190923,#0c0317 72%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;
}
.home-page .pole-card::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--csc-violet),transparent 72%)}
.home-page .pole-card:hover{transform:translateY(-7px);border-color:rgba(143,124,255,.7);box-shadow:0 22px 45px rgba(0,0,0,.3)}
.home-page .pole-card header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.home-page .pole-path{color:#9d8da3;font:10px var(--csc-mono);letter-spacing:.08em}
.home-page .pole-icon{display:grid;place-items:center;width:52px;height:46px;border:1px solid rgba(255,255,255,.18);border-radius:9px;background:#20102b;color:var(--csc-violet);box-shadow:0 5px 0 var(--csc-slate);font:700 15px var(--csc-mono)}
.home-page .pole-card h3{max-width:13ch;margin:45px 0 16px;color:#fff;font:800 clamp(26px,2.5vw,38px)/1 var(--csc-body)!important;letter-spacing:-.06em!important}
.home-page .pole-card p{max-width:48ch;margin:0 0 30px;color:#b9abbf;font-size:13px;line-height:1.6}
.home-page .key-button{
  width:max-content;
  min-height:48px;
  margin-top:auto;
  padding:0 16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:13px;
  border:1px solid var(--csc-violet);
  border-radius:11px;
  background:var(--csc-purple);
  color:#fff;
  box-shadow:0 6px 0 var(--csc-slate),0 12px 24px rgba(0,0,0,.22);
  font:700 10px var(--csc-mono);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.home-page .key-button:hover{transform:translateY(-2px);background:#b429c1;box-shadow:0 8px 0 var(--csc-slate),0 16px 28px rgba(0,0,0,.28)}
.home-page .key-button:active{transform:translateY(5px);box-shadow:0 1px 0 var(--csc-slate)}
.home-page .key-button span{font-size:17px}

.home-page .dossier-office{background:#12061c!important}
.home-page .office-layout{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;gap:18px!important;align-items:stretch!important}
.home-page .office-mandate,.home-page .office-quote{min-height:480px;border:1px solid rgba(143,124,255,.25)!important;border-radius:18px!important;background:#0c0317!important}
.home-page .office-mandate{display:flex;flex-direction:column;padding:34px!important;background:linear-gradient(145deg,rgba(112,87,232,.24),#0c0317 66%)!important}
.home-page .office-term{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#fff;font:700 clamp(34px,4vw,58px)/1 var(--csc-mono)}
.home-page .office-term i{flex:1;color:var(--csc-violet);font-style:normal;text-align:center}
.home-page .office-mandate h2{margin:auto 0 32px!important;font-size:clamp(42px,4.7vw,68px)!important}
.home-page .office-signals{display:flex;flex-wrap:wrap;gap:8px}
.home-page .office-signals span{padding:8px 10px;border:1px solid rgba(143,124,255,.3);border-radius:999px;color:#c9bdcd;font:9px var(--csc-mono);text-transform:uppercase}
.home-page .office-quote{display:flex;flex-direction:column;margin:0!important;padding:34px!important}
.home-page .quote-command{color:var(--csc-violet);font:10px var(--csc-mono);letter-spacing:.06em}
.home-page .office-quote blockquote{margin:auto 0 30px!important;padding:0!important;border:0!important;color:#f0e8f2;font-size:clamp(18px,1.7vw,25px);line-height:1.5}
.home-page .office-quote cite{padding-top:20px;border-top:1px solid rgba(255,255,255,.14)}

.home-page .dossier-final{background:#0c0317!important}
.home-page .dossier-final::before{background:radial-gradient(circle at 80% 45%,rgba(112,87,232,.22),transparent 32%)!important}
.home-page .final-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(390px,1.1fr);gap:clamp(35px,7vw,100px);align-items:center}
.home-page .final-copy{position:relative;z-index:2}
.home-page .dossier-final h2{margin:28px 0 22px!important}
.home-page .dossier-final h2{color:#fff!important}
.home-page .final-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.home-page .final-console{position:relative;z-index:2;overflow:hidden;border:1px solid rgba(143,124,255,.45);border-radius:16px;background:#09020f;box-shadow:18px 18px 0 rgba(75,99,118,.34),0 30px 70px rgba(0,0,0,.32)}
.home-page .console-bar{height:52px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.12);color:#807184;font:9px var(--csc-mono)}
.home-page .console-bar>span{display:flex;gap:7px}.home-page .console-bar i{width:8px;height:8px;border-radius:50%;background:#5a365f}.home-page .console-bar i:nth-child(2){background:#916097}.home-page .console-bar i:nth-child(3){background:var(--csc-violet)}
.home-page .console-body{padding:32px;display:grid;grid-template-columns:26px 1fr;gap:14px;color:#66586c;font:12px var(--csc-mono)}
.home-page .console-body code{color:#d8ccdc;font:inherit}.home-page .console-body .accent{color:var(--csc-violet)}.home-page .console-body .success{color:#a4f079}

.home-page .dossier-button,.home-page .dossier-text-link,.home-page .footer-cta{
  box-shadow:0 6px 0 var(--csc-slate),0 12px 26px rgba(0,0,0,.2)!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important;
}
.home-page .dossier-button:hover,.home-page .dossier-text-link:hover,.home-page .footer-cta:hover{transform:translateY(-2px)!important;box-shadow:0 8px 0 var(--csc-slate),0 16px 30px rgba(0,0,0,.25)!important}
.home-page .dossier-button:active,.home-page .dossier-text-link:active,.home-page .footer-cta:active{transform:translateY(5px)!important;box-shadow:0 1px 0 var(--csc-slate)!important}

html:not(.dark) .home-page,
html:not(.dark) .home-page main,
html:not(.dark) .home-page .dossier-about,
html:not(.dark) .home-page .dossier-school,
html:not(.dark) .home-page .dossier-club,
html:not(.dark) .home-page .dossier-office{background:#eadcf7!important}
html:not(.dark) .home-page .dossier-poles{background:#eadcf7!important;color:var(--csc-ink)!important}
html:not(.dark) .home-page .pole-card{background:rgba(255,255,255,.26);border-color:rgba(12,3,23,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.45)}
html:not(.dark) .home-page .pole-card h3{color:var(--csc-ink)}
html:not(.dark) .home-page .pole-card p{color:#514957}
html:not(.dark) .home-page .pole-icon{background:#eadcf7;color:var(--csc-purple);border-color:rgba(12,3,23,.2)}
html:not(.dark) .home-page .office-mandate,html:not(.dark) .home-page .office-quote{background:#eadcf7!important;color:var(--csc-ink)!important;border-color:rgba(12,3,23,.18)!important}
html:not(.dark) .home-page .office-mandate{background:linear-gradient(145deg,rgba(112,87,232,.18),#eadcf7 66%)!important}
html:not(.dark) .home-page .office-term,html:not(.dark) .home-page .office-quote blockquote{color:var(--csc-ink)}
html:not(.dark) .home-page .office-signals span{color:#514957;border-color:rgba(12,3,23,.18)}

@media(max-width:900px){
  .home-page .poles-grid,.home-page .final-grid{grid-template-columns:1fr}
  .home-page .office-layout{grid-template-columns:1fr!important}
  .home-page .office-mandate,.home-page .office-quote{min-height:390px}
  .home-page .final-console{max-width:650px}
}
@media(max-width:600px){
  .home-page .pole-card{min-height:300px;padding:22px}
  .home-page .pole-card h3{margin-top:36px;font-size:28px!important}
  .home-page .pole-card .key-button{width:100%;justify-content:space-between}
  .home-page .office-mandate,.home-page .office-quote{min-height:0;padding:24px!important}
  .home-page .office-mandate h2{margin:65px 0 28px!important;font-size:42px!important}
  .home-page .office-quote blockquote{margin:55px 0 30px!important;font-size:18px}
  .home-page .final-actions{align-items:stretch;flex-direction:column}
  .home-page .final-actions>a{width:100%;justify-content:space-between}
  .home-page .final-console{box-shadow:10px 10px 0 rgba(75,99,118,.34)}
  .home-page .console-body{padding:22px 16px;font-size:10px}
}
