:root{--soft-shadow:0 16px 48px rgba(24,57,108,.08);--lift-shadow:0 24px 60px rgba(24,57,108,.14)}
.hero{position:relative;isolation:isolate}.hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:48px;background:radial-gradient(ellipse at 78% 28%,rgba(111,166,255,.17),transparent 55%),radial-gradient(ellipse at 50% 80%,rgba(177,132,245,.10),transparent 52%);animation:ambient-arrival 1.8s ease-out both}
.hero-stock-dev,.hero-stock-design{box-shadow:var(--lift-shadow)}
.formation-card,.qualification-card,.publication-card,.project-card,.testimonial-card{box-shadow:var(--soft-shadow);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.formation-card{background:linear-gradient(145deg,#fff 54%,#edf4ff)}.formation-card.infographie{background:linear-gradient(145deg,#fff 54%,#f4edff)}
@media(hover:hover){.formation-card:hover,.qualification-card:hover,.publication-card:hover,.project-card:hover{transform:translateY(-5px);box-shadow:var(--lift-shadow);border-color:#a8bff5}.diploma-frame:hover img{transform:scale(1.015)}}
.button{box-shadow:0 7px 20px rgba(32,83,217,.12);transition:background .2s ease,box-shadow .2s ease,transform .2s ease}.button:hover{box-shadow:0 12px 28px rgba(32,83,217,.2)}
.latest-notice{display:flex;align-items:center;gap:28px;border:1px solid #cad9f4;border-radius:20px;padding:24px 28px;background:linear-gradient(115deg,#eef4ff,#fff 65%,#f7f2ff);box-shadow:var(--soft-shadow);margin-bottom:32px}.notice-label{font-size:10px;letter-spacing:1.5px;font-weight:700;color:#224eb7;white-space:nowrap;display:flex;gap:10px;align-items:center}.notice-label i{width:8px;height:8px;border-radius:50%;background:#2b95ce;box-shadow:0 0 0 5px #dde7ff}.latest-notice>div{flex:1}.latest-notice strong{font-size:18px;letter-spacing:-.3px}.latest-notice p{font-size:14px;margin:5px 0 0;color:#526174}.latest-notice>a{white-space:nowrap}
.institution-facts{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:24px;margin-bottom:45px;padding-top: 25px;}.institution-facts>div{display:flex;flex-direction:column;border-left:2px solid #d9e4fa;padding:6px 0 6px 22px}.institution-facts strong{font-size:19px;letter-spacing:-.4px}.institution-facts span{font-size:12px;color:#526174;margin-top:4px}
.school-history{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:start}.school-history .lead{font-size:21px;line-height:1.45}.history-milestones{border-left:1px solid #d4e0f5;padding-left:32px}.history-milestones article{position:relative;padding:0 0 28px}.history-milestones article::before{content:"";width:10px;height:10px;border:3px solid #fff;border-radius:50%;background:#2b95ce;position:absolute;left:-38px;top:9px;box-shadow:0 0 0 1px #bdd0f4}.history-milestones strong{color:#2b95ce;font-size:36px;letter-spacing:-1.5px}.history-milestones h3{margin:8px 0}.history-milestones p{font-size:14px;margin:0;color:#526174}
.curriculum-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:30px 0}.curriculum-step{padding:28px;border:1px solid #d9e3f4;border-radius:18px;background:linear-gradient(145deg,#fff,#f2f6fe);box-shadow:0 8px 28px rgba(24,57,108,.04)}.curriculum-step:nth-child(2){background:linear-gradient(145deg,#fff,#f6f0fc)}.curriculum-step h3{font-size:23px;line-height:1.2;letter-spacing:-.6px;margin:14px 0}.curriculum-step p,.curriculum-step li{font-size:14px;line-height:1.7;color:#526174}.curriculum-step ul{padding-left:18px;margin-bottom:0}.curriculum-step li{padding:3px 0}.course-tools{padding:22px 26px;background:#112940;color:#fff;border-radius:14px}.course-tools .eyebrow{color:#a6c7ff}.course-tools p{color:#fff;margin:8px 0 0}
.career-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}.career-grid article{display:flex;align-items:center;gap:15px;padding:20px;border:1px solid #dbe5f5;border-radius:13px;background:#fff}.career-grid span{color:#2b95ce;font-size:26px}.career-grid h3{font-size:17px;letter-spacing:-.3px;margin:0;line-height:1.35}.further-study{padding:28px;border-radius:18px;background:linear-gradient(110deg,#eef4ff,#f6f0fc);border:1px solid #dce4f5}.further-study h3{margin:14px 0}.further-study p{font-size:15px}
.application-documents{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;margin:25px 0}.application-documents>div{padding:22px 16px;background:linear-gradient(150deg,#f5f8fe,#fff);border:1px solid #d9e3f4;border-radius:13px;display:flex;flex-direction:column;gap:12px}.application-documents strong{font-size:30px;color:#2b95ce;letter-spacing:-1px}.application-documents span{font-size:14px;line-height:1.5}
.document-showcase{display:grid;grid-template-columns:1.45fr 1fr;gap:48px;align-items:center}.diploma-frame{display:block;background:linear-gradient(145deg,#e5edfa,#f9fbff);padding:18px;border-radius:24px;border:1px solid #ccd9ef;box-shadow:var(--soft-shadow);overflow:hidden;text-decoration:none}.diploma-frame img{display:block;width:100%;height:auto;border-radius:7px;box-shadow:0 9px 22px rgba(16,38,63,.12);transition:transform .5s ease}.diploma-frame>span{display:block;margin:18px 4px 3px;font-size:13px;font-weight:700;color:#214ca6}.document-information .accreditation-badge{width:150px;height:auto;object-fit:contain;margin-bottom:18px}.document-information h3{font-size:28px;letter-spacing:-.8px;line-height:1.2}.document-information>p{font-size:15px;line-height:1.7}.document-information .caption{font-size:12px}.document-information .text-link{display:block;margin-top:18px;line-height:1.4}.accreditation-identity{max-width:270px;margin:auto}.accreditation-identity img{width:100%;height:auto;border-radius:50%;box-shadow:var(--lift-shadow)}
.calendar-confirmed{padding:26px;border:1px solid #cbdaf4;border-radius:18px;background:linear-gradient(130deg,#edf4ff,#faf7ff);margin:30px 0}.calendar-confirmed h2{font-size:32px;letter-spacing:-1px;margin:15px 0}.calendar-confirmed p{font-size:15px}
.motion-arrived{animation:gentle-arrival .7s cubic-bezier(.2,.65,.3,1) both}
@keyframes gentle-arrival{from{opacity:.65;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes ambient-arrival{from{opacity:.25;transform:scale(.95)}to{opacity:1;transform:scale(1)}}
@media(max-width:1000px){.school-history{gap:38px}.document-showcase{gap:28px}.latest-notice{flex-wrap:wrap;gap:18px}.latest-notice .notice-label{width:100%}.institution-facts strong{font-size:16px}.institution-facts{gap:15px}}
@media(max-width:700px){.latest-notice{padding:22px;gap:16px}.latest-notice strong{font-size:17px}.latest-notice p{font-size:13px}.latest-notice>a{font-size:13px}.institution-facts{grid-template-columns:1fr;gap:13px;margin-bottom:30px}.institution-facts>div{padding:3px 0 3px 17px}.institution-facts span{font-size:12px}.school-history,.document-showcase{grid-template-columns:1fr;gap:34px}.school-history{padding-top:38px}.history-milestones{padding-left:25px;margin-left:5px}.history-milestones article::before{left:-31px}.curriculum-grid,.career-grid{grid-template-columns:1fr}.curriculum-step{padding:24px}.curriculum-step h3{font-size:22px}.document-information h3{font-size:26px}.document-information .accreditation-badge{width:120px}.diploma-frame{padding:12px;border-radius:18px}.calendar-confirmed{padding:22px}.calendar-confirmed h2{font-size:27px}.accreditation-identity{max-width:200px}}
@media(prefers-reduced-motion:reduce){.hero::before,.motion-arrived{animation:none!important}.formation-card,.qualification-card,.publication-card,.project-card,.testimonial-card,.button,.diploma-frame img{transition:none!important}.formation-card:hover,.qualification-card:hover,.publication-card:hover,.project-card:hover,.diploma-frame:hover img{transform:none!important}}
