/* CSC ENSEM — secondary pages / digital laboratory system */
@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{
  --page-ink:#0c0317;
  --page-plum:#160820;
  --page-plum-2:#24102f;
  --page-violet:#8f7cff;
  --page-purple:#7057e8;
  --page-slate:#4b6376;
  --page-paper:#eadcf7;
  --page-gray:#737373;
  --page-line:rgba(255,255,255,.14);
  --page-display:'JetBrains Mono',monospace;
  --page-body:'Inter',Arial,sans-serif;
  --page-mono:'JetBrains Mono',monospace;
}

/* Physical key actions shared by every internal page. */
.site-page .btn,
.site-page .footer-cta{
  overflow:visible!important;
  border:1px solid var(--page-violet)!important;
  border-radius:12px!important;
  box-shadow:0 6px 0 var(--page-slate),0 12px 28px rgba(12,3,23,.2)!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important;
}
.site-page .btn:hover,
.site-page .footer-cta:hover{transform:translateY(-2px)!important;box-shadow:0 8px 0 var(--page-slate),0 16px 32px rgba(12,3,23,.24)!important}
.site-page .btn:active,
.site-page .footer-cta:active{transform:translateY(5px)!important;box-shadow:0 1px 0 var(--page-slate)!important}
html:not(.dark) .site-page,
html:not(.dark) .site-page main,
html:not(.dark) .site-page main>section:not(.pagehead):not(.team-hero){background:#eadcf7!important}

.site-page{background:var(--page-ink)!important;color:#f8f5f8!important;font-family:var(--page-body)!important;line-height:1.55}
.site-page main{padding-top:78px!important;min-height:100svh;background:var(--page-ink);overflow:clip}
.site-page .wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}
.site-page section{padding:clamp(92px,10vw,150px) 0}
.site-page h1,.site-page h2,.site-page h3{font-family:var(--page-display)!important;text-transform:none!important;letter-spacing:-.09em;line-height:.9;font-weight:600}
.site-page p{font-family:var(--page-body);font-weight:400}
.site-page .eyebrow{font:10px var(--page-mono);letter-spacing:.16em;color:var(--page-violet);text-transform:uppercase}
.site-page .eyebrow::before{width:30px;height:1px;background:var(--page-purple)}

/* Shared page opener: a quiet interface frame around each page's thesis. */
.site-page .pagehead,.site-page .team-hero{min-height:405px;position:relative;isolation:isolate;overflow:hidden;padding:112px 0 78px;background:linear-gradient(125deg,#0c0317 20%,#190725 72%,#0c0317);border-bottom:1px solid rgba(143,124,255,.22)}
.site-page .pagehead::before,.site-page .team-hero::before{content:"";position:absolute;inset:0;z-index:-2;opacity:.48;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(90deg,transparent,black 18%,black 82%,transparent);transform:perspective(800px) rotateX(58deg) scale(1.45) translateY(20%);transform-origin:center bottom;animation:page-grid-shift 18s linear infinite}
.site-page .pagehead::after,.site-page .team-hero::after{content:"// CSC / ENSEM";position:absolute;right:5%;bottom:38px;color:rgba(143,124,255,.65);font:10px var(--page-mono);letter-spacing:.16em}
.site-page .pagehead .wrap,.site-page .team-hero .wrap{position:relative;z-index:2}
.site-page .pagehead .wrap > *,.site-page .team-hero .wrap > *{opacity:1!important;transform:none!important}
.site-page .pagehead h1,.site-page .team-hero h1{max-width:760px;margin:28px 0 22px;color:#f8f5f8;font-size:clamp(52px,7vw,106px);font-weight:600}
.site-page .pagehead p,.site-page .team-hero p{max-width:590px;color:#bfb2c4;font-size:15px;line-height:1.65}
.site-page .pagehead .logo-wm,.site-page .team-hero .logo-wm{position:absolute!important;z-index:1!important;right:8%!important;top:50%!important;width:min(24vw,270px)!important;opacity:.2!important;transform:translateY(-50%) rotate(8deg)!important;filter:drop-shadow(0 0 30px rgba(143,124,255,.58))!important;pointer-events:none}
.site-page .pagehead--sm{min-height:350px;padding-block:94px 65px}
.site-page .pagehead--tight{min-height:300px;padding-block:84px 52px}
.site-page .pagehead--tight h1{font-size:clamp(48px,6vw,82px)}

/* About / institutional readout */
.site-page .about-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr);gap:10%;align-items:center}
.site-page .about-grid>div:first-child{padding:34px 0 34px 34px;border-left:2px solid var(--page-purple);background:linear-gradient(90deg,rgba(112,87,232,.12),transparent 55%)}
.site-page .about p.body{max-width:600px;color:#c4b7c7;font-size:17px;line-height:1.68;margin-bottom:22px}
.site-page .stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.16);border-radius:16px!important;overflow:hidden}
.site-page .stat{min-height:154px;padding:26px 22px;background:var(--page-plum);position:relative;transition:transform .35s,background .35s}
.site-page .stat::after{content:"";position:absolute;right:18px;top:18px;width:7px;height:7px;border:1px solid var(--page-violet);border-radius:50%!important}
.site-page .stat:hover{background:var(--page-plum-2);transform:translateY(-5px)}
.site-page .stat .num{font:600 clamp(42px,5vw,65px)/.9 var(--page-display);letter-spacing:-.1em;color:var(--page-violet)}
.site-page .stat .lbl{margin-top:15px;color:#a99bad;font:10px var(--page-mono);letter-spacing:.05em;text-transform:uppercase}

/* Events: tickets become protocol cards rather than generic white cards. */
.site-page .ticket-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.site-page .ticket{min-height:440px;background:linear-gradient(150deg,#1d0a28,#10051a);border:1px solid rgba(143,124,255,.28);border-radius:14px!important;color:#f8f5f8;box-shadow:none;transition:transform .35s,box-shadow .35s,border-color .35s}
.site-page .ticket:hover{transform:translateY(-9px) rotate(-.5deg);border-color:var(--page-violet);box-shadow:18px 20px 0 rgba(75,99,118,.2),0 28px 55px rgba(0,0,0,.28)}
.site-page .ticket .stub-top{aspect-ratio:16/10;background:radial-gradient(circle at 50% 45%,rgba(143,124,255,.38),transparent 52%),#0b0314;border-bottom:1px solid rgba(255,255,255,.12);padding:24px}
.site-page .ticket .stub-top img{filter:grayscale(.15) contrast(1.05);mix-blend-mode:screen}
.site-page .ticket .perf{border-color:rgba(255,255,255,.18);margin-inline:20px}
.site-page .ticket .perf::before,.site-page .ticket .perf::after{background:var(--page-ink)}
.site-page .ticket .stub-bottom{padding:24px;gap:12px}
.site-page .ticket .cat{align-self:flex-start;padding:6px 8px;border:1px solid rgba(143,124,255,.45);border-radius:4px!important;background:transparent;color:var(--page-violet);font:9px var(--page-mono);letter-spacing:.12em}
.site-page .ticket h3{font-size:28px;font-weight:600}
.site-page .ticket .date{align-self:flex-start;margin-top:auto;padding:8px 10px;border-radius:4px!important;background:rgba(143,124,255,.12);color:#e8d7eb;font:10px var(--page-mono)}
.site-page .ticket .date::before{background:#a4f079}

/* Actualités: a calm editorial feed with a strong scan line. */
.site-page .news-list{border-top:1px solid rgba(255,255,255,.3)}
.site-page .news-item{grid-template-columns:70px 1fr 50px;min-height:116px;padding:22px 12px;border-bottom:1px solid rgba(255,255,255,.13);transition:background .3s,padding .3s,transform .3s}
.site-page .news-item:hover{padding-left:26px;background:linear-gradient(90deg,rgba(112,87,232,.2),transparent);transform:translateX(7px)}
.site-page .news-item .idx{font:12px var(--page-mono);color:var(--page-violet)}
.site-page .news-item h3{font-size:clamp(24px,3vw,42px);font-weight:500}
.site-page .news-item .go{color:var(--page-violet);font-size:25px}

/* Gallery: index cards on a dark archive wall. */
.site-page .gal{columns:3 280px;column-gap:18px}
.site-page .shot{margin-bottom:18px;border:1px solid rgba(143,124,255,.25);border-radius:10px!important;background:#10051a;box-shadow:12px 12px 0 rgba(75,99,118,.16);transition:transform .4s,box-shadow .4s,border-color .4s}
.site-page .shot:nth-child(3n+1){transform:rotate(-1.2deg)}
.site-page .shot:nth-child(3n+2){transform:rotate(1deg)}
.site-page .shot:hover{transform:rotate(0) translateY(-8px) scale(1.02);border-color:var(--page-violet);box-shadow:18px 20px 0 rgba(112,87,232,.28)}
.site-page .shot img{filter:saturate(.82) contrast(1.05);transition:filter .5s,transform .6s}
.site-page .shot:hover img{filter:saturate(1.1);transform:scale(1.04)}
.site-page .shot .cap{padding:18px;background:linear-gradient(transparent,rgba(12,3,23,.92));font:11px var(--page-mono);letter-spacing:.08em;text-transform:uppercase}
.site-page .shot .zoom-ic{opacity:1;transform:none;border:1px solid rgba(255,255,255,.25);border-radius:50%!important;background:rgba(12,3,23,.68);font-size:18px}
.site-page .shot .fill{min-height:190px;padding:18px;background:linear-gradient(135deg,#24102f,#0c0317)!important;font:18px var(--page-display);letter-spacing:-.04em}

/* Bureau: people first, then the operating system behind them. */
.site-page .story-row{gap:20px;padding:16px 8px 32px;border-bottom:1px solid rgba(255,255,255,.14)}
.site-page .story{min-width:220px;gap:13px}
.site-page .story .ring{width:220px;height:300px;padding:8px;border-radius:10px!important;background:linear-gradient(145deg,var(--page-violet),var(--page-slate));box-shadow:14px 14px 0 rgba(75,99,118,.22)}
.site-page .story .photo{width:100%;border-radius:5px!important;background:#0c0317}
.site-page .story .photo img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:grayscale(1);transition:filter .4s,transform .6s}
.site-page .story:hover .photo img{filter:grayscale(.1);transform:scale(1.04)}
.site-page .story b{font:600 19px var(--page-display);letter-spacing:-.06em}
.site-page .story>span:last-child{font:9px var(--page-mono);letter-spacing:.1em;color:var(--page-violet)}
.site-page .cellules-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.site-page .cellule{min-height:280px;padding:24px;background:linear-gradient(145deg,#1b0925,#10051a);border:1px solid rgba(255,255,255,.14);border-radius:10px!important;transition:transform .3s,border-color .3s,background .3s}
.site-page .cellule::before{width:2px;background:var(--page-violet)}
.site-page .cellule:hover{transform:translateY(-7px);border-color:rgba(143,124,255,.7);background:#24102f;box-shadow:12px 14px 0 rgba(112,87,232,.18)}
.site-page .cellule h3{font-size:24px;margin-bottom:15px;color:#f8f5f8}
.site-page .cellule p.desc{color:#b8abbc;font-size:12px;line-height:1.55}
.site-page .cellule li{color:#8f8194;font:10px var(--page-mono)}
.site-page .cellule li::before{color:var(--page-violet)}

/* Podcast: a broadcast console with one central object. */
.site-page .podcast-block{padding:62px clamp(28px,6vw,92px);border:1px solid rgba(143,124,255,.34);border-radius:16px!important;background:linear-gradient(115deg,#160820,#0c0317 68%);box-shadow:20px 20px 0 rgba(75,99,118,.18)}
.site-page .podcast-block::before{background:radial-gradient(circle at 20% 50%,rgba(143,124,255,.35),transparent 50%);transform:none;opacity:1}
.site-page .pod-grid{grid-template-columns:.8fr 1.2fr;gap:11%;}
.site-page .pod-grid h2{font-size:clamp(42px,6vw,76px);font-weight:600}
.site-page .pod-grid p{max-width:550px;color:#c2b5c5;line-height:1.7}
.site-page .disc{width:min(330px,82%);background:repeating-radial-gradient(circle,#1a0b24 0 7px,#0c0317 8px 10px);border:1px solid rgba(143,124,255,.7);box-shadow:0 0 0 18px rgba(112,87,232,.08),25px 25px 0 rgba(75,99,118,.24);animation:disc-float 6s ease-in-out infinite}
.site-page .disc::before{border-color:rgba(143,124,255,.45)}
.site-page .disc .center{background:var(--page-violet);box-shadow:0 0 0 7px #0c0317}

/* Partnerships: product rail + details as a proper selection interface. */
.site-page .sponsor-formats,.site-page .published-partners{background:var(--page-ink);border-top:1px solid rgba(255,255,255,.1)}
.site-page .sponsor-intro{display:grid;grid-template-columns:1fr .7fr;gap:10%;align-items:end;margin-bottom:55px}
.site-page .sponsor-intro h2{margin-top:24px;color:#f8f5f8;font-size:clamp(46px,6vw,82px);font-weight:600}
.site-page .sponsor-intro p{color:#b7aabd;font-size:14px;line-height:1.65}
.site-page .sponsor-showcase{display:grid;grid-template-columns:.75fr 1.25fr;min-height:550px;border:1px solid rgba(143,124,255,.34);background:#160820}
.site-page .sponsor-rail{display:grid;grid-template-columns:1fr;gap:1px;padding:18px;background:#0c0317;border-right:1px solid rgba(255,255,255,.12)}
.site-page .sponsor-format-card{display:grid;grid-template-columns:35px 1fr;grid-template-rows:1fr auto;gap:10px;padding:14px;border:1px solid transparent;background:#160820;color:#f8f5f8;cursor:pointer;text-align:left;transition:background .3s,border-color .3s,transform .3s}
.site-page .sponsor-format-card:hover,.site-page .sponsor-format-card.is-active{border-color:var(--page-violet);background:#24102f;transform:translateX(7px)}
.site-page .sponsor-format-card .format-index{font:10px var(--page-mono);color:var(--page-violet)}
.site-page .sponsor-format-card img{grid-column:2;width:100%;height:130px;object-fit:contain;mix-blend-mode:screen;opacity:.88}
.site-page .sponsor-format-card .format-name{grid-column:2;font:600 20px var(--page-display);letter-spacing:-.06em}
.site-page .sponsor-details{position:relative;padding:clamp(30px,5vw,72px);display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 80% 15%,rgba(143,124,255,.18),transparent 42%),#160820}
.site-page .sponsor-status{position:absolute;top:25px;right:30px;font:11px var(--page-mono);color:#a99bad}
.site-page .sponsor-status span:first-child{color:var(--page-violet);font-size:22px}
.site-page .sponsor-panel h3{margin:20px 0 16px;color:#f8f5f8;font-size:clamp(38px,5vw,68px);font-weight:600}
.site-page .sponsor-panel p{max-width:510px;color:#c2b5c5;font-size:15px;line-height:1.65}
.site-page .sponsor-panel ul{display:grid;gap:10px;margin:28px 0;list-style:none;color:#b7aabd;font:11px var(--page-mono)}
.site-page .sponsor-panel li::before{content:"+";color:var(--page-violet);margin-right:11px}
.site-page .sponsor-contact{align-self:flex-start}
.site-page .sponsor-intro.compact{margin-bottom:30px}
.site-page .sponsor-intro.compact h2{font-size:clamp(42px,5vw,68px)}
.site-page .plogos{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.site-page .plogo{min-height:150px;display:grid;place-items:center;border:1px solid rgba(143,124,255,.27)!important;border-radius:8px!important;background:#160820;color:#a99bad;font:11px var(--page-mono);transition:transform .3s,border-color .3s,background .3s}
.site-page .plogo:hover{transform:translateY(-6px);border-color:var(--page-violet)!important;background:#24102f}
.site-page .plogo img{filter:grayscale(1) brightness(2);transition:filter .3s}
.site-page .plogo:hover img{filter:none}
.site-page .cta-band{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:50px;padding:34px;border:1px solid rgba(143,124,255,.34);background:linear-gradient(100deg,#24102f,#160820)}
.site-page .cta-band h3{margin-top:12px;font-size:32px;color:#f8f5f8}

/* Forms: one clear column for choices, one clear column for action. */
.site-page .join-grid,.site-page .contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;align-items:start}
.site-page .join-grid>div:first-child,.site-page .cinfo{padding:28px;border:1px solid rgba(143,124,255,.28);background:linear-gradient(145deg,#1b0925,#10051a)}
.site-page .join-grid label,.site-page .contact-grid label{display:block;margin-bottom:10px;color:#cbbdce;font:10px var(--page-mono);letter-spacing:.1em;text-transform:uppercase}
.site-page .chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 28px}
.site-page .chip{padding:10px 12px;border:1px solid rgba(143,124,255,.3);border-radius:5px!important;color:#b7aabd;font:10px var(--page-mono);cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .2s}
.site-page .chip:hover,.site-page .chip.on{background:var(--page-purple);border-color:var(--page-violet);color:#fff;transform:translateY(-2px)}
.site-page .join-grid>div:first-child p{color:#9e91a5!important;font-size:12px!important;line-height:1.6}
.site-page form{padding:34px;background:#160820;border:1px solid rgba(143,124,255,.3);border-radius:10px!important}
.site-page .field{margin-bottom:20px}
.site-page input,.site-page textarea,.site-page select{width:100%;padding:14px 0;border:0;border-bottom:1px solid rgba(255,255,255,.23);border-radius:0!important;background:transparent;color:#f8f5f8;outline:none;font:14px var(--page-display);transition:border-color .25s,transform .25s}
.site-page textarea{min-height:150px;resize:vertical}
.site-page input:focus,.site-page textarea:focus,.site-page select:focus{border-bottom-color:var(--page-violet);box-shadow:none;background:transparent}
.site-page select option{background:#160820;color:#fff}
.site-page .consent{display:flex;align-items:flex-start;gap:10px}
.site-page .consent input{width:17px;margin-top:2px;accent-color:var(--page-purple)}
.site-page .consent label{font:12px var(--page-display);letter-spacing:0;text-transform:none;color:#b7aabd}
.site-page .btn{min-height:48px;padding:13px 17px;border:1px solid var(--page-purple);border-radius:4px!important;background:var(--page-purple);color:#fff;font:10px var(--page-mono);letter-spacing:.07em;text-transform:uppercase;box-shadow:8px 8px 0 rgba(75,99,118,.25);transition:transform .25s,background .25s,box-shadow .25s}
.site-page .btn:hover{background:#6651d8;border-color:var(--page-violet);transform:translate(-2px,-3px);box-shadow:12px 12px 0 rgba(75,99,118,.22)}
.site-page .btn.ghost{background:transparent;color:#f8f5f8;border-color:rgba(255,255,255,.35)}
.site-page .form-msg,.site-page .err{color:#ff9bdc;font:11px var(--page-mono)}
.site-page .form-msg{margin-top:14px}
.site-page .cinfo{display:grid;gap:0;padding:0;background:transparent;border:0}
.site-page .cline{display:grid;grid-template-columns:50px 1fr;gap:16px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.14);color:#d8ccda}
.site-page .cline .ic{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--page-violet);border-radius:50%!important;color:var(--page-violet);font:16px var(--page-mono)}
.site-page .cline b{display:block;margin-bottom:5px;color:var(--page-violet);font:10px var(--page-mono);letter-spacing:.1em;text-transform:uppercase}
.site-page .cline span:last-child{font-size:14px;line-height:1.55}

/* Footer, light mode and responsive rules */
.site-page #site-footer footer{padding:75px 0 28px;background:#08020e;border-top:1px solid rgba(143,124,255,.2);color:#f8f5f8}
.site-page #site-footer .wrap{width:min(1180px,calc(100% - 64px))}
.site-page #site-footer .brand{font:600 23px var(--page-display);letter-spacing:-.07em}
.site-page #site-footer .brand b{color:var(--page-violet)}
.site-page #site-footer .desc{max-width:310px;margin-top:15px;color:#97899d;font-size:12px}
.site-page #site-footer .fcol h4{color:var(--page-violet);font:10px var(--page-mono);letter-spacing:.12em;text-transform:uppercase}
.site-page #site-footer .fcol a{color:#b7aabd;font-size:12px;transition:color .2s}
.site-page #site-footer .fcol a:hover{color:#fff}
.site-page #site-footer .foot-base{border-top-color:rgba(255,255,255,.14);color:#76677d;font:9px var(--page-mono)}

html:not(.dark) .site-page,html:not(.dark) .site-page main{background:var(--page-paper)!important;color:var(--page-ink)!important}
html:not(.dark) .site-page section:not(.pagehead):not(.team-hero){background:var(--page-paper)}
html:not(.dark) .site-page .about-grid>div:first-child{background:linear-gradient(90deg,rgba(112,87,232,.09),transparent 55%)}
html:not(.dark) .site-page .about p.body{color:#514957}
html:not(.dark) .site-page .stats{background:rgba(12,3,23,.18);border-color:rgba(12,3,23,.18)}
html:not(.dark) .site-page .stat{background:#fff;color:var(--page-ink)}
html:not(.dark) .site-page .stat .lbl{color:#737373}
html:not(.dark) .site-page .news-list{border-color:var(--page-ink)}
html:not(.dark) .site-page .news-item{border-color:rgba(12,3,23,.17)}
html:not(.dark) .site-page .news-item:hover{background:rgba(112,87,232,.08)}
html:not(.dark) .site-page .news-item h3{color:var(--page-ink)}
html:not(.dark) .site-page .join-grid>div:first-child,html:not(.dark) .site-page .cinfo,html:not(.dark) .site-page form{background:#fff;border-color:rgba(12,3,23,.16)}
html:not(.dark) .site-page .join-grid label,html:not(.dark) .site-page .contact-grid label{color:#514957}
html:not(.dark) .site-page .chip{color:#514957;border-color:rgba(12,3,23,.2)}
html:not(.dark) .site-page input,html:not(.dark) .site-page textarea,html:not(.dark) .site-page select{color:var(--page-ink);border-color:rgba(12,3,23,.22)}
html:not(.dark) .site-page .consent label,html:not(.dark) .site-page .cline,html:not(.dark) .site-page .join-grid>div:first-child p{color:#514957!important}
html:not(.dark) .site-page .cline{border-color:rgba(12,3,23,.16)}
html:not(.dark) .site-page .sponsor-format-card,html:not(.dark) .site-page .sponsor-details,html:not(.dark) .site-page .plogo{background:#fff;color:var(--page-ink)}
html:not(.dark) .site-page .sponsor-formats,html:not(.dark) .site-page .published-partners{background:var(--page-paper);color:var(--page-ink);border-color:rgba(12,3,23,.16)}
html:not(.dark) .site-page .sponsor-showcase{background:#fff;border-color:rgba(12,3,23,.2)}
html:not(.dark) .site-page .sponsor-rail{background:#eee8f0;border-color:rgba(12,3,23,.14)}
html:not(.dark) .site-page .sponsor-format-card:hover,html:not(.dark) .site-page .sponsor-format-card.is-active{background:#f4e5f5}
html:not(.dark) .site-page .sponsor-intro h2,html:not(.dark) .site-page .sponsor-panel h3,html:not(.dark) .site-page .cta-band h3{color:var(--page-ink)}
html:not(.dark) .site-page .sponsor-intro p,html:not(.dark) .site-page .sponsor-panel p,html:not(.dark) .site-page .sponsor-panel ul{color:#737373}
html:not(.dark) .site-page .cta-band{background:#fff;border-color:rgba(12,3,23,.18)}

@keyframes page-grid-shift{to{background-position:0 52px,0 0}}
@keyframes disc-float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(5deg)}}
@media(max-width:1040px){
  .site-page .ticket-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-page .cellules-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-page .sponsor-showcase{grid-template-columns:1fr}
  .site-page .sponsor-rail{grid-template-columns:repeat(3,1fr);border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}
  .site-page .sponsor-format-card{min-height:150px}
  .site-page .sponsor-format-card:hover,.site-page .sponsor-format-card.is-active{transform:translateY(-4px)}
}
@media(max-width:760px){
  .site-page .wrap,.site-page #site-footer .wrap{width:calc(100% - 36px)}
  .site-page .pagehead,.site-page .team-hero{min-height:390px;padding:110px 0 64px}
  .site-page .pagehead .logo-wm,.site-page .team-hero .logo-wm{display:none}
  .site-page .pagehead h1,.site-page .team-hero h1{font-size:clamp(48px,15vw,72px)}
  .site-page .pagehead p,.site-page .team-hero p{font-size:13px}
  .site-page section{padding-block:86px}
  .site-page .about-grid,.site-page .join-grid,.site-page .contact-grid,.site-page .pod-grid,.site-page .sponsor-intro{grid-template-columns:1fr;gap:34px}
  .site-page .about-grid>div:first-child{padding:24px 0 24px 20px}
  .site-page .about p.body{font-size:15px}
  .site-page .ticket-grid{grid-template-columns:1fr}
  .site-page .ticket{min-height:390px}
  .site-page .cellules-grid{grid-template-columns:1fr}
  .site-page .cellule{min-height:auto}
  .site-page .podcast-block{padding:42px 24px}
  .site-page .disc{width:220px}
  .site-page .sponsor-intro{margin-bottom:35px}
  .site-page .sponsor-rail{grid-template-columns:1fr}
  .site-page .sponsor-format-card{min-height:100px;grid-template-columns:30px 1fr;grid-template-rows:auto}
  .site-page .sponsor-format-card img{display:none}
  .site-page .sponsor-format-card .format-name{grid-column:2}
  .site-page .plogos{grid-template-columns:repeat(2,1fr)}
  .site-page .cta-band{align-items:flex-start;flex-direction:column;padding:24px}
  .site-page .cta-band h3{font-size:25px}
  .site-page form{padding:24px}
}

/* Footer heading follows the same new h2 treatment without the section marker. */
.site-page #site-footer .footer-feature h2{
  font-family:var(--page-body)!important;
  font-weight:800!important;
  line-height:.94!important;
  letter-spacing:-.085em!important;
  text-transform:none!important;
}

@media(prefers-reduced-motion:reduce){.site-page .pagehead::before,.site-page .disc{animation:none!important}.site-page .shot,.site-page .ticket,.site-page .cellule{transition:none!important}}

/* =========================================================
   CSC SIGNATURE PASS — heroes, actions and footer
   ========================================================= */
.site-page .pagehead,.site-page .team-hero{
  min-height:clamp(500px,66vh,690px)!important;
  padding:150px 0 92px!important;
  display:flex;align-items:flex-end;
  background:
    radial-gradient(circle at 78% 32%,rgba(143,124,255,.22),transparent 18%),
    radial-gradient(circle at 92% 88%,rgba(75,99,118,.17),transparent 26%),
    linear-gradient(120deg,#0c0317 0%,#14051f 58%,#0c0317 100%)!important;
  border-bottom:1px solid rgba(143,124,255,.42)!important;
}
.site-page .pagehead::before,.site-page .team-hero::before{
  inset:0!important;top:0!important;right:auto!important;width:100%!important;height:100%!important;
  opacity:.36!important;z-index:-1!important;transform:none!important;mask-image:linear-gradient(90deg,transparent,black 18%,black 76%,transparent)!important;
  background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px)!important;
  background-size:48px 48px!important;animation:signature-grid 18s linear infinite!important;
}
.site-page .pagehead::after,.site-page .team-hero::after{
  content:"CSC ENSEM  /  OPEN LAB"!important;right:5%!important;bottom:34px!important;
  color:rgba(143,124,255,.82)!important;font:10px var(--page-mono)!important;letter-spacing:.18em!important;
}
.site-page .pagehead .wrap,.site-page .team-hero .wrap{width:min(1180px,calc(100% - 64px));min-height:335px;display:flex;flex-direction:column;justify-content:flex-end}
.site-page .pagehead .wrap::before,.site-page .team-hero .wrap::before{
  content:"/ interface active";position:absolute;top:0;left:0;color:#87768f;font:10px var(--page-mono);letter-spacing:.13em;text-transform:uppercase;
}
.site-page .pagehead .wrap::after,.site-page .team-hero .wrap::after{
  content:"";position:absolute;right:23%;top:8%;height:260px;width:1px;background:linear-gradient(transparent,rgba(143,124,255,.6),transparent);transform:rotate(24deg);transform-origin:center;
}
.site-page .pagehead .eyebrow,.site-page .team-hero .eyebrow{color:#8f7cff;font:10px var(--page-mono);letter-spacing:.18em}
.site-page .pagehead .eyebrow::before,.site-page .team-hero .eyebrow::before{width:34px;height:1px;background:#8f7cff}
.site-page .pagehead h1,.site-page .team-hero h1{
  max-width:940px!important;margin:30px 0 25px!important;color:#fff!important;
  font-family:var(--page-display)!important;font-size:clamp(64px,8.7vw,136px)!important;font-weight:600!important;line-height:.82!important;letter-spacing:-.105em!important;text-transform:none!important;
  text-wrap:balance;
}
.site-page .pagehead p,.site-page .team-hero p{max-width:560px!important;margin:0!important;padding:15px 0 0 18px;color:#c2b5c7!important;border-left:2px solid var(--page-purple);font-size:15px!important;line-height:1.6!important}
.site-page .pagehead .logo-wm,.site-page .team-hero .logo-wm{
  width:min(26vw,330px)!important;right:8%!important;top:50%!important;opacity:.22!important;
  filter:drop-shadow(0 0 42px rgba(143,124,255,.72))!important;transform:translateY(-50%) rotate(10deg)!important;
  mix-blend-mode:screen;
}
.site-page .pagehead--sm h1,.site-page .pagehead--tight h1{font-size:clamp(64px,8.7vw,136px)!important}

/* One premium action language across internal pages. */
.site-page .btn{
  position:relative;isolation:isolate;min-height:54px;padding:0 18px!important;gap:14px;
  border:1px solid var(--page-violet)!important;border-radius:3px!important;background:linear-gradient(135deg,var(--page-purple),#5f4bd5)!important;color:#fff!important;
  box-shadow:7px 7px 0 rgba(75,99,118,.42)!important;font:10px var(--page-mono)!important;letter-spacing:.08em;text-transform:uppercase;
  transition:transform .25s,box-shadow .25s,background .25s,border-color .25s!important;
}
.site-page .btn::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.35) 48%,transparent 70%);transform:translateX(-120%);transition:transform .55s,opacity .3s}
.site-page .btn:hover{transform:translate(-3px,-3px)!important;box-shadow:11px 11px 0 rgba(75,99,118,.3)!important;background:linear-gradient(135deg,#806ff0,#7057e8)!important}
.site-page .btn:hover::before{opacity:1;transform:translateX(120%)}
.site-page .btn:active{transform:translate(2px,2px)!important;box-shadow:2px 2px 0 rgba(75,99,118,.34)!important}
.site-page .btn.ghost{background:rgba(255,255,255,.03)!important;color:#f8f5f8!important;border-color:rgba(255,255,255,.36)!important;box-shadow:7px 7px 0 rgba(143,124,255,.2)!important}
.site-page .btn.ghost:hover{background:#fff!important;color:var(--page-ink)!important;border-color:#fff!important}
.site-page .btn .arrow{display:inline-grid;place-items:center;width:24px;height:24px;margin-left:auto;border:1px solid currentColor;border-radius:50%;font-size:0;transition:transform .25s,background .25s}
.site-page .btn .arrow::after{content:"↗";font-size:14px;line-height:1}
.site-page .btn:hover .arrow{transform:rotate(45deg);background:rgba(255,255,255,.18)}
.site-page button.btn::after{content:"↗";margin-left:auto;font:16px var(--page-display);transition:transform .25s}
.site-page button.btn:hover::after{transform:rotate(45deg)}
.site-page .btn.full{justify-content:space-between}

/* Footer: a closing statement rather than a utility block. */
.site-page #site-footer footer{
  position:relative;overflow:hidden;padding:30px 0 25px!important;background:#08020e!important;color:#f8f5f8!important;border-top:1px solid rgba(143,124,255,.55)!important;
}
.site-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)}
.site-page #site-footer footer>.wrap{position:relative;z-index:1}
.site-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(--page-mono);letter-spacing:.14em;text-transform:uppercase}
.site-page #site-footer .footer-topline span:last-child{color:var(--page-violet)}
.site-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)}
.site-page #site-footer .footer-label{color:var(--page-violet);font:10px var(--page-mono);letter-spacing:.16em}
.site-page #site-footer .footer-feature h2{margin:18px 0 0;color:#fff;font:600 clamp(54px,8vw,115px)/.82 var(--page-display);letter-spacing:-.11em;text-transform:none}
.site-page #site-footer .footer-feature h2 em{color:var(--page-violet);font-style:normal}
.site-page #site-footer .footer-cta{display:inline-flex;align-items:center;gap:14px;min-height:54px;padding:0 17px;border:1px solid var(--page-violet);background:var(--page-purple);color:#fff;font:10px var(--page-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}
.site-page #site-footer .footer-cta span{font:20px var(--page-display)}
.site-page #site-footer .footer-cta:hover{transform:translate(-3px,-3px);background:#6651d8;box-shadow:11px 11px 0 rgba(75,99,118,.25)}
.site-page #site-footer .foot-grid{position:relative;display:grid;grid-template-columns:1.45fr .75fr .75fr;gap:3rem;padding:58px 0 52px}
.site-page #site-footer .brand{font:600 28px var(--page-display);letter-spacing:-.09em;color:#fff}
.site-page #site-footer .brand b{color:var(--page-violet)}
.site-page #site-footer .desc{max-width:320px;margin-top:16px;color:#a596aa;font-size:12px;line-height:1.7}
.site-page #site-footer .fcol h4{margin-bottom:13px;color:var(--page-violet);font:10px var(--page-mono);letter-spacing:.14em;text-transform:uppercase}
.site-page #site-footer .fcol a{position:relative;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}
.site-page #site-footer .fcol a::after{content:"↗";color:var(--page-violet);opacity:.7;transition:transform .2s}
.site-page #site-footer .fcol a:hover{padding-left:6px;color:#fff}
.site-page #site-footer .fcol a:hover::after{transform:rotate(45deg)}
.site-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(--page-mono);line-height:1.5}

@keyframes signature-grid{to{background-position:0 48px,0 0}}
@media(max-width:760px){
  .site-page .pagehead,.site-page .team-hero{min-height:500px!important;padding:126px 0 70px!important}
  .site-page .pagehead .wrap,.site-page .team-hero .wrap{width:calc(100% - 36px);min-height:310px}
  .site-page .pagehead .wrap::after,.site-page .team-hero .wrap::after{right:8%;height:180px}
  .site-page .pagehead h1,.site-page .team-hero h1,.site-page .pagehead--sm h1,.site-page .pagehead--tight h1{font-size:clamp(57px,16vw,84px)!important}
  .site-page .pagehead p,.site-page .team-hero p{max-width:86%!important;font-size:13px!important}
  .site-page .pagehead .logo-wm,.site-page .team-hero .logo-wm{display:block!important;right:-12%!important;top:26%!important;width:47vw!important;opacity:.14!important}
  .site-page .footer-topline{flex-direction:column;gap:7px}
  .site-page #site-footer .footer-feature{align-items:flex-start;flex-direction:column;padding:53px 0 47px}
  .site-page #site-footer .footer-feature h2{font-size:clamp(54px,16vw,78px)}
  .site-page #site-footer .foot-grid{grid-template-columns:1fr;gap:36px;padding:44px 0}
  .site-page #site-footer .foot-base{flex-direction:column;gap:9px}
}
@media(prefers-reduced-motion:reduce){.site-page .pagehead::before,.site-page #site-footer footer::before{animation:none!important}.site-page .btn,.site-page .footer-cta{transition:none!important}}

/* =========================================================
   NEW ART DIRECTION — editorial lab / poster system
   ========================================================= */
.site-page header.nav,.site-page header.nav a,.site-page .theme-toggle{font-family:var(--page-body)!important}
.site-page header.nav .brand{font-family:var(--page-display)!important;letter-spacing:-.08em}
.site-page .pagehead,.site-page .team-hero{
  min-height:clamp(540px,72vh,760px)!important;padding:166px 0 104px!important;
  background:#0c0317!important;border-bottom:7px solid var(--page-purple)!important;
}
.site-page .pagehead::before,.site-page .team-hero::before{
  content:""!important;inset:-8% -3% -8% auto!important;width:53%!important;height:116%!important;opacity:1!important;z-index:-1!important;mask-image:none!important;transform:none!important;animation:none!important;
  clip-path:polygon(24% 0,100% 0,100% 100%,0 100%);
  background:
    linear-gradient(135deg,rgba(255,255,255,.16),transparent 32%),
    repeating-linear-gradient(125deg,transparent 0 22px,rgba(255,255,255,.1) 23px 24px),
    linear-gradient(145deg,#4b6376 0%,#7057e8 46%,#8f7cff 100%);
}
.site-page .pagehead::after,.site-page .team-hero::after{
  content:"{  CSC / 00  }"!important;right:4%!important;bottom:28px!important;color:#0c0317!important;font:800 12px var(--page-mono)!important;letter-spacing:.08em!important;writing-mode:horizontal-tb!important;
}
.site-page .pagehead .wrap,.site-page .team-hero .wrap{min-height:350px!important}
.site-page .pagehead .wrap::before,.site-page .team-hero .wrap::before{content:"EDITORIAL MODULE / OPEN LAB";top:0;color:#8f7cff;font:500 10px var(--page-mono);letter-spacing:.12em}
.site-page .pagehead .wrap::after,.site-page .team-hero .wrap::after{right:28%;top:8%;height:300px;width:2px;background:#f5f1f7;opacity:.7;transform:rotate(26deg)}
.site-page .pagehead .eyebrow,.site-page .team-hero .eyebrow{width:max-content;padding:7px 10px;background:#8f7cff;color:#0c0317!important;font:800 10px var(--page-mono)!important;letter-spacing:.1em!important}
.site-page .pagehead .eyebrow::before,.site-page .team-hero .eyebrow::before{display:none}
.site-page .pagehead h1,.site-page .team-hero h1,.site-page .pagehead--sm h1,.site-page .pagehead--tight h1{
  max-width:900px!important;margin:25px 0 28px!important;font-family:var(--page-display)!important;font-size:clamp(66px,9.2vw,142px)!important;font-weight:800!important;line-height:.82!important;letter-spacing:-.11em!important;color:#fff!important;text-shadow:10px 10px 0 rgba(75,99,118,.32);text-wrap:balance;
}
.site-page .pagehead p,.site-page .team-hero p{max-width:520px!important;padding:14px 0 0!important;border-left:0!important;border-top:1px solid #8f7cff;color:#ddd3df!important;font:500 14px/1.65 var(--page-body)!important}
.site-page .pagehead .logo-wm,.site-page .team-hero .logo-wm{right:7%!important;top:54%!important;width:min(24vw,310px)!important;opacity:.47!important;filter:grayscale(1) contrast(1.25) brightness(1.7)!important;mix-blend-mode:screen;transform:translateY(-50%) rotate(9deg)!important}

.site-page .btn{
  min-height:56px!important;padding:0 19px!important;border:2px solid var(--page-ink)!important;border-radius:999px 7px 999px 7px!important;background:#8f7cff!important;color:#0c0317!important;box-shadow:5px 5px 0 #4b6376!important;font:800 11px var(--page-body)!important;letter-spacing:.01em!important;text-transform:none!important;
}
.site-page .btn:hover{background:#fff!important;color:#0c0317!important;border-color:#fff!important;box-shadow:8px 8px 0 #7057e8!important;transform:translate(-3px,-3px)!important}
.site-page .btn.ghost{background:transparent!important;color:var(--page-violet)!important;border-color:var(--page-violet)!important;box-shadow:5px 5px 0 rgba(75,99,118,.35)!important}
.site-page .btn.ghost:hover{background:var(--page-violet)!important;color:#0c0317!important;border-color:var(--page-violet)!important}
.site-page .btn .arrow{width:27px;height:27px;border:2px solid currentColor}
.site-page button.btn::after{font:800 17px var(--page-body)}

/* The closing scene flips to paper in dark mode and ink in light mode. */
.site-page #site-footer footer{background:#f5f1f7!important;color:#0c0317!important;border-top:9px solid #7057e8!important}
.site-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;mask-image:linear-gradient(90deg,transparent,black 15%,black 90%,transparent)}
.site-page #site-footer .footer-topline{border-color:rgba(12,3,23,.18);color:#737373}
.site-page #site-footer .footer-topline span:last-child,.site-page #site-footer .footer-label{color:#7057e8}
.site-page #site-footer .footer-feature{border-color:rgba(12,3,23,.18)}
.site-page #site-footer .footer-feature h2{color:#0c0317!important;font-family:var(--page-display)!important;text-shadow:5px 5px 0 rgba(75,99,118,.18)}
.site-page #site-footer .footer-feature h2 em{color:#7057e8}
.site-page #site-footer .footer-cta{border:2px solid #0c0317;background:#0c0317;color:#fff;box-shadow:5px 5px 0 #7057e8;font-family:var(--page-body);font-weight:800;text-transform:none;letter-spacing:0;border-radius:999px 7px 999px 7px}
.site-page #site-footer .footer-cta:hover{background:#7057e8;color:#fff;box-shadow:8px 8px 0 #4b6376}
.site-page #site-footer .brand{font-family:var(--page-display);color:#0c0317}
.site-page #site-footer .brand b{color:#7057e8}
.site-page #site-footer .desc{color:#514957;font-family:var(--page-body)}
.site-page #site-footer .fcol h4{color:#7057e8;font-family:var(--page-mono)}
.site-page #site-footer .fcol a{border-color:rgba(12,3,23,.18);color:#514957;font-family:var(--page-body)}
.site-page #site-footer .fcol a::after{color:#7057e8}
.site-page #site-footer .fcol a:hover{color:#0c0317}
.site-page #site-footer .foot-base{border-color:rgba(12,3,23,.18);color:#737373}

html:not(.dark) .site-page #site-footer footer{background:#0c0317!important;color:#fff!important;border-top-color:#8f7cff!important}
html:not(.dark) .site-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) .site-page #site-footer .footer-topline,html:not(.dark) .site-page #site-footer .footer-feature,html:not(.dark) .site-page #site-footer .foot-base{border-color:rgba(255,255,255,.18)}
html:not(.dark) .site-page #site-footer .footer-topline{color:#8f7d96}
html:not(.dark) .site-page #site-footer .footer-topline span:last-child,html:not(.dark) .site-page #site-footer .footer-label{color:#8f7cff}
html:not(.dark) .site-page #site-footer .footer-feature h2{color:#fff!important;text-shadow:none}
html:not(.dark) .site-page #site-footer .footer-feature h2 em{color:#8f7cff}
html:not(.dark) .site-page #site-footer .brand{color:#fff}
html:not(.dark) .site-page #site-footer .desc,html:not(.dark) .site-page #site-footer .fcol a{color:#c8bbc9}
html:not(.dark) .site-page #site-footer .fcol a:hover{color:#fff}
html:not(.dark) .site-page #site-footer .foot-base{color:#76677d}

@media(max-width:760px){
  .site-page .pagehead,.site-page .team-hero{min-height:530px!important;padding:140px 0 76px!important}
  .site-page .pagehead::before,.site-page .team-hero::before{width:82%!important;clip-path:polygon(32% 0,100% 0,100% 100%,0 100%)}
  .site-page .pagehead .wrap,.site-page .team-hero .wrap{min-height:320px!important}
  .site-page .pagehead h1,.site-page .team-hero h1,.site-page .pagehead--sm h1,.site-page .pagehead--tight h1{font-size:clamp(57px,17vw,88px)!important}
  .site-page .pagehead p,.site-page .team-hero p{max-width:78%!important;font-size:13px!important}
  .site-page .pagehead .logo-wm,.site-page .team-hero .logo-wm{right:-12%!important;top:25%!important;width:48vw!important;opacity:.35!important}
}
@media(prefers-reduced-motion:reduce){.site-page .pagehead::before,.site-page #site-footer footer::before{animation:none!important}}

/* =========================================================
   BENTO UI PASS — layout and typography only
   ========================================================= */
.site-page,.site-page p,.site-page input,.site-page textarea,.site-page select{font-family:var(--page-body)!important}
.site-page h1,.site-page h2,.site-page h3,.site-page .eyebrow,.site-page .btn,.site-page .fcol h4,.site-page .footer-label,.site-page .footer-topline,.site-page .foot-base{font-family:var(--page-mono)!important}
.site-page h1,.site-page h2,.site-page h3{letter-spacing:-.085em!important;line-height:.98!important}
.site-page main{padding:94px 0 28px!important;background:var(--page-ink)!important}
.site-page main>.pagehead,.site-page main>.team-hero{width:min(1180px,calc(100% - 48px));margin:16px auto 0;border-radius:24px!important}
.site-page main>section:not(.pagehead):not(.team-hero){width:min(1180px,calc(100% - 48px));margin:18px auto 0;border:1px solid var(--page-line);border-radius:24px!important;overflow:clip}
.site-page main>section:not(.pagehead):not(.team-hero)> .wrap{width:min(1080px,calc(100% - 52px))}
.site-page .pagehead h1,.site-page .team-hero h1{font-weight:700!important;text-transform:none!important}
.site-page .pagehead p,.site-page .team-hero p{font-family:var(--page-body)!important}
.site-page .pagehead .eyebrow,.site-page .team-hero .eyebrow{font-family:var(--page-mono)!important}

/* Content cards share one radius and one spatial rhythm. */
.site-page .about-grid,.site-page .join-grid,.site-page .contact-grid,.site-page .pod-grid,.site-page .story-row{gap:16px!important}
.site-page .about-grid>div,.site-page .join-grid>div,.site-page .contact-grid>div,.site-page .story,.site-page .pod-grid>div{border-radius:18px!important}
.site-page .about-grid>div:first-child{padding:32px!important;border-left:0!important;border-top:3px solid var(--page-purple);background:linear-gradient(90deg,rgba(112,87,232,.12),transparent 70%)}
.site-page .stats{gap:16px!important;background:transparent!important;border:0!important;border-radius:0!important;overflow:visible!important}
.site-page .stat{border:1px solid var(--page-line);border-radius:18px!important;min-height:170px}
.site-page .ticket-grid{display:grid!important;gap:16px!important}
.site-page .ticket{border-radius:20px!important;min-height:420px;box-shadow:none!important}
.site-page .ticket .stub-top{border-radius:18px 18px 0 0!important}
.site-page .news-list{display:grid!important;gap:12px;border:0!important}
.site-page .news-item{border:1px solid var(--page-line)!important;border-radius:18px!important;background:var(--page-plum);padding:22px!important;transform:none!important}
.site-page .news-item:hover{padding:22px 26px!important;transform:translateY(-4px)!important}
.site-page .gal{column-gap:16px!important}
.site-page .shot{border-radius:20px!important;box-shadow:none!important}
.site-page .cellules-grid{gap:16px!important}
.site-page .cellule{border-radius:18px!important}
.site-page .podcast-block{border-radius:20px!important}
.site-page .sponsor-showcase{gap:16px!important}
.site-page .sponsor-rail{gap:16px!important;border:0!important;background:transparent!important}
.site-page .sponsor-format-card{border-radius:18px!important}
.site-page .sponsor-details,.site-page .sponsor-showcase,.site-page .published-partners .wrap{border-radius:20px!important}
.site-page .cta-band{border-radius:20px!important}
.site-page form,.site-page .cinfo{border-radius:20px!important}
.site-page .chip{border-radius:999px!important}
.site-page .btn{border-radius:14px!important;box-shadow:none!important;min-height:50px!important;font-family:var(--page-mono)!important}
.site-page .btn:hover{transform:translateY(-3px)!important;box-shadow:none!important}
.site-page .btn .arrow{border-radius:8px!important}
.site-page #site-footer .footer-feature,.site-page #site-footer .foot-grid>div{border-radius:18px}
.site-page #site-footer .footer-feature{padding:54px 28px!important}
.site-page #site-footer .footer-feature h2{font-family:var(--page-mono)!important;letter-spacing:-.09em!important}
.site-page #site-footer .footer-cta{border-radius:14px!important;font-family:var(--page-mono)!important}

@media(max-width:760px){
  .site-page main{padding-top:82px!important}
  .site-page main>.pagehead,.site-page main>.team-hero,.site-page main>section:not(.pagehead):not(.team-hero){width:calc(100% - 24px);border-radius:18px!important}
  .site-page main>section:not(.pagehead):not(.team-hero)> .wrap{width:calc(100% - 32px)}
  .site-page .about-grid>div:first-child{padding:22px!important}
  .site-page .stats{grid-template-columns:1fr 1fr!important}
  .site-page .stat{min-height:130px;padding:18px!important}
  .site-page .news-item{grid-template-columns:38px 1fr!important}
  .site-page .news-item .arrow{display:none}
}

/* =========================================================
   FINAL POLISH — clear heroes, stronger theme contrast, footer bento
   ========================================================= */

/* The club mark remains available elsewhere in the site, but no longer
   competes with the message inside any page hero. */
.site-page .pagehead .logo-wm,
.site-page .team-hero .logo-wm{display:none!important}

.site-page main>.pagehead,
.site-page main>.team-hero{
  min-height:clamp(500px,62vh,650px)!important;
  padding:132px 0 76px!important;
}
.site-page .pagehead .wrap,
.site-page .team-hero .wrap{
  min-height:300px!important;
  justify-content:center!important;
}
.site-page .pagehead h1,
.site-page .team-hero h1{
  max-width:780px!important;
  font-size:clamp(54px,7.6vw,118px)!important;
  margin:22px 0!important;
}
.site-page .pagehead p,
.site-page .team-hero p{max-width:520px!important}

/* Light mode gets paper cards; dark mode keeps the ink canvas and its
   plum cards. This makes the same content read as two intentional themes. */
html:not(.dark) .site-page main>section:not(.pagehead):not(.team-hero){
  background:var(--page-paper)!important;
  color:var(--page-ink)!important;
  border-color:rgba(12,3,23,.16)!important;
}
html.dark .site-page main>section:not(.pagehead):not(.team-hero){
  background:var(--page-ink)!important;
  color:#fff!important;
}
html:not(.dark) .site-page .ticket,
html:not(.dark) .site-page .news-item,
html:not(.dark) .site-page .cellule,
html:not(.dark) .site-page .podcast-block,
html:not(.dark) .site-page .sponsor-details,
html:not(.dark) .site-page .cta-band{
  background:#fff!important;
  color:var(--page-ink)!important;
  border-color:rgba(12,3,23,.15)!important;
}
html:not(.dark) .site-page .ticket h3,
html:not(.dark) .site-page .news-item h3,
html:not(.dark) .site-page .cellule h3,
html:not(.dark) .site-page .podcast-block h2,
html:not(.dark) .site-page .sponsor-details h3,
html:not(.dark) .site-page .cta-band h3{color:var(--page-ink)!important}

/* Footer: one editorial feature card plus smaller navigation cards. */
.site-page #site-footer .footer-feature{
  min-height:230px!important;
  align-items:center!important;
  border:1px solid rgba(12,3,23,.18)!important;
}
.site-page #site-footer .footer-feature h2{
  max-width:12ch;
  font-size:clamp(42px,6vw,88px)!important;
}
.site-page #site-footer .footer-cta{min-height:58px!important}
.site-page #site-footer .foot-grid{
  gap:14px!important;
  padding:40px 0!important;
}
.site-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) .site-page #site-footer .foot-grid>div{
  border-color:rgba(255,255,255,.16)!important;
  background:rgba(12,3,23,.55)!important;
}

@media(max-width:760px){
  .site-page main>.pagehead,
  .site-page main>.team-hero{min-height:440px!important;padding:112px 0 58px!important}
  .site-page .pagehead .wrap,
  .site-page .team-hero .wrap{min-height:260px!important}
  .site-page .pagehead h1,
  .site-page .team-hero h1{font-size:clamp(48px,14vw,72px)!important}
  .site-page #site-footer .footer-feature{min-height:260px!important;align-items:flex-start!important}
  .site-page #site-footer .foot-grid>div{min-height:0;padding:20px!important}
}

/* =========================================================
   CLEAN HERO — no grid, no decorative grey bars
   ========================================================= */
.site-page .pagehead::before,
.site-page .team-hero::before,
.site-page .pagehead::after,
.site-page .team-hero::after,
.site-page .pagehead .wrap::before,
.site-page .team-hero .wrap::before,
.site-page .pagehead .wrap::after,
.site-page .team-hero .wrap::after{display:none!important;content:none!important}

.site-page main>.pagehead,
.site-page main>.team-hero{
  min-height:clamp(430px,52svh,560px)!important;
  padding:100px 0 54px!important;
  align-items:center!important;
  background:var(--page-ink)!important;
}
.site-page .pagehead .wrap,
.site-page .team-hero .wrap{
  width:min(1080px,calc(100% - 64px))!important;
  min-height:250px!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.site-page .pagehead .eyebrow,
.site-page .team-hero .eyebrow{margin-inline:auto!important}
.site-page .pagehead h1,
.site-page .team-hero h1,
.site-page .pagehead--sm h1,
.site-page .pagehead--tight h1{
  max-width:1040px!important;
  margin:20px auto 24px!important;
  font-size:clamp(68px,8.7vw,132px)!important;
  line-height:.84!important;
}
.site-page .pagehead p,
.site-page .team-hero p{
  max-width:680px!important;
  margin-inline:auto!important;
  padding:18px 0 0!important;
  border-top:1px solid var(--page-violet)!important;
  font-size:clamp(15px,1.15vw,17px)!important;
  text-align:center!important;
}

@media(max-width:760px){
  .site-page main>.pagehead,
  .site-page main>.team-hero{min-height:400px!important;padding:92px 0 44px!important}
  .site-page .pagehead .wrap,
  .site-page .team-hero .wrap{width:calc(100% - 32px)!important;min-height:235px!important}
  .site-page .pagehead h1,
  .site-page .team-hero h1,
  .site-page .pagehead--sm h1,
  .site-page .pagehead--tight h1{font-size:clamp(48px,14vw,72px)!important}
  .site-page .pagehead p,
  .site-page .team-hero p{max-width:94%!important;font-size:14px!important}
}
