.lootus-experience .expertise-return-band { display: grid; grid-template-columns: 60px minmax(0,1fr) auto; align-items: center; gap: 22px; margin: 28px 0 0; padding: 24px 28px; background: #FFFEFF; }
.lootus-experience .expertise-return-band > svg { display: none; }
.lootus-experience .expertise-return-band > .ls-icon { width: 56px; height: 56px; margin: 0; }
.lootus-experience .expertise-return-copy h3 { font: 500 20px/1.35 var(--police-titre); margin: 0 0 6px; }
.lootus-experience .expertise-return-copy p { font-size: 16px; margin: 0; }
.lootus-experience .expertise-return-action { display: inline-flex; align-items: center; gap: 10px; padding: 8px 14px; background: #003B56; color: #FFFEFF; font-size: 14px; white-space: nowrap;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 0 100%); }
.lootus-experience a.expertise-return-action { color: #FFFEFF; }
.lootus-experience .expertise-return-action svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; }
@media (max-width: 760px) {
  .lootus-experience .expertise-return-band { grid-template-columns: 48px minmax(0,1fr); padding: 22px 20px; }
  .lootus-experience .expertise-return-action { grid-column: 1 / -1; justify-self: start; }
}

#lootus-conception-gallery{color:#2b2b2b;font:400 17px/1.65 'Futura BT',Futura,sans-serif}
#lootus-conception-gallery *{box-sizing:border-box}
#lootus-conception-gallery h2{font:400 clamp(28px,3vw,38px)/1.35 Orbitron,sans-serif!important;color:#003B56!important;margin:0 0 18px!important;padding:0!important;text-align:left!important}
#lootus-conception-gallery .gallery-lead{font-size:19px;max-width:78ch;margin:0 0 34px;padding:0}
#lootus-conception-gallery .gallery-a{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 36px}
#lootus-conception-gallery .step{min-width:0}
#lootus-conception-gallery .photo{display:block;padding:0;position:relative;width:100%;border:0;background:#003B56;color:#FFFEFF;text-align:left;clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,0 100%);aspect-ratio:1.65;overflow:hidden;cursor:zoom-in;box-shadow:none;text-decoration:none}
#lootus-conception-gallery .photo:after{position:absolute;inset:0;content:"";pointer-events:none;background:#3EB9C2;clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,0 100%,0 0,1px 1px,1px calc(100% - 1px),calc(100% - 1px) calc(100% - 1px),calc(100% - 1px) 24px,calc(100% - 24px) 1px,1px 1px)}
#lootus-conception-gallery .photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .25s}
#lootus-conception-gallery .photo:hover img{transform:scale(1.025)}
#lootus-conception-gallery .photo.contain{background:#FFFEFF}
#lootus-conception-gallery .photo.contain img{object-fit:contain;padding:12px}
#lootus-conception-gallery .zoom{position:absolute;right:14px;bottom:12px;width:30px;height:30px;display:grid;place-items:center;border:1px solid #3EB9C2;background:#003B56;color:#FFFEFF;font:22px/1 Arial,sans-serif}
#lootus-conception-gallery .step-copy{display:grid;grid-template-columns:48px 1fr;gap:14px;margin-top:22px}
#lootus-conception-gallery .step-copy h3{font:700 25px/1.25 'Futura BT',Futura,sans-serif!important;color:#003B56!important;margin:0 0 8px!important;padding:0!important}
#lootus-conception-gallery .step-copy p{font:400 17px/1.65 'Futura BT',Futura,sans-serif!important;color:#2b2b2b!important;margin:0!important;padding:0!important;max-width:53ch}
#lootus-conception-gallery .number{font:400 24px/1.4 Orbitron,sans-serif;color:#3EB9C2;white-space:nowrap}
#lootus-conception-gallery .more{display:flex;gap:12px;margin:16px 0 0 62px;flex-wrap:wrap}
#lootus-conception-gallery .photo.thumb{width:100px;aspect-ratio:1.45;flex-shrink:0;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%)}
#lootus-conception-gallery .thumb .zoom{display:none}
#lootus-conception-gallery .thumb:after{clip-path:none;background:transparent;border:1px solid #3EB9C2}
#lootus-conception-gallery .photo:focus-visible{outline:3px solid #EE7965;outline-offset:4px}
@media(max-width:980px){
#lootus-conception-gallery .gallery-a{gap:30px 24px}
#lootus-conception-gallery .more{margin-left:0}
#lootus-conception-gallery .photo.thumb{width:80px}
}
@media(max-width:600px){
#lootus-conception-gallery .gallery-a{grid-template-columns:1fr;gap:32px}
#lootus-conception-gallery .step-copy{grid-template-columns:38px 1fr;gap:10px}
#lootus-conception-gallery .step-copy h3{font-size:24px!important}
#lootus-conception-gallery .gallery-lead{font-size:17px}
}

.lootus-experience #orbit-entry { padding: 22px 0; background: #003B56; color: #FFFEFF;
  background-image: radial-gradient(#3EB9C229 .7px, transparent .7px); background-size: 26px 26px; }
#orbit-entry .orbit-wrap { width: min(1440px, calc(100% - 96px)); margin: 0 auto; }
#orbit-entry .orbit-heading { text-align: left; margin: 0; }
.lootus-experience #orbit-entry .orbit-heading h2 { font: 400 clamp(23px, 2.3vw, 31px)/1.2 var(--police-titre); color: #FFFEFF; margin: 0; padding: 0 0 10px;
  border: 0; background: linear-gradient(#EE7965, #EE7965) left bottom / 160px 4px no-repeat; }
.lootus-experience #orbit-entry .orbit-heading h2::after { display: none; }
#orbit-entry .orbit-intro { margin: 22px 0 0; max-width: 580px; padding: 2px 0; font-size: 19px; line-height: 1.6; color: #FFFEFF; }
#orbit-entry .mockup-orbit-wrap { width: 100%; max-width: 1040px; margin: 6px auto 0; }
#orbit-entry .mockup-orbit { display: block; width: 100%; height: auto; overflow: visible; }
#orbit-entry .cyber-center-title { font: 700 17px var(--police-titre); fill: #FFFEFF; stroke: #fff; stroke-width: .15px; paint-order: stroke fill; }
#orbit-entry .cyber-center-sub { font: 700 11px var(--police); fill: #FFFEFF; letter-spacing: 1px; }
#orbit-entry .cyber-bold-core circle[fill]:not([fill="none"]) { fill: #003B56; }
#orbit-entry .cyber-segment-rotor { transform-origin: 310px 250px; animation: cyber-segment-turn 36s linear infinite; }
#orbit-entry :is(.cyber-outer-rotor, .cyber-inner-rotor, .cyber-tick-rotor) { transform-origin: 310px 250px; animation: cyber-segment-turn 46s linear infinite reverse; }
#orbit-entry .cyber-inner-rotor { animation-duration: 30s; }
#orbit-entry .cyber-tick-rotor { animation-duration: 56s; animation-direction: normal; }
@keyframes cyber-segment-turn { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  #orbit-entry :is(.cyber-segment-rotor, .cyber-outer-rotor, .cyber-inner-rotor, .cyber-tick-rotor) { animation: none; }
}
#orbit-entry .env-frame { fill: #003B56; stroke: #3EB9C2; stroke-width: 1.25; vector-effect: non-scaling-stroke; transition: stroke .18s ease; }
#orbit-entry .env-name { font: 700 24px var(--police-titre); fill: #3EB9C2; }
#orbit-entry .env-detail { font: 400 13px var(--police); fill: #fff; }
#orbit-entry .env-link { font: 700 13px var(--police); fill: #3EB9C2; }
#orbit-entry .mockup-env-card { cursor: pointer; outline: none; }
#orbit-entry .mockup-env-card:hover .env-frame, #orbit-entry .mockup-env-card:focus-visible .env-frame { stroke: #EE7965; }
#orbit-entry .mobile-orbit { display: none; }

.lootus-experience #orbit-entry { padding: 34px 0 38px; }
#orbit-entry .mockup-orbit-wrap { max-width: 1180px; margin: 0 auto; }
@media (max-width: 760px) {
  #orbit-entry .orbit-wrap { width: calc(100% - 40px); }
}
@media (max-width: 600px) {
  .lootus-experience #orbit-entry .orbit-heading h2 { font-size: 22px; }
  #orbit-entry .orbit-intro { font-size: 14px; }
  #orbit-entry .mockup-orbit-wrap { display: none; }
  #orbit-entry .mobile-orbit { display: block; }
  #orbit-entry .mobile-orbit-core { display: block; width: 190px; height: 194px; margin: 0 auto; }
  #orbit-entry .mobile-env-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 4px 0 8px; }
  .lootus-experience #orbit-entry .mobile-env { position: relative; display: grid; grid-template-columns: 36px 1fr; gap: 2px 8px; padding: 10px; border: 1px solid #3EB9C2;
    background: #003B56; text-decoration: none; clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 0 100%); }
  #orbit-entry .mobile-env::after { content: ""; position: absolute; top: 4px; right: -2px; width: 15px; border-top: 1px solid #3EB9C2; transform: rotate(45deg); }
  .lootus-experience #orbit-entry .mobile-env:hover { border-color: #EE7965; }
  #orbit-entry .mobile-env svg { grid-row: 1 / 4; align-self: center; }
  #orbit-entry .mobile-env strong { font: 700 20px/1.1 var(--police-titre); color: #3EB9C2; }
  #orbit-entry .mobile-env span { font-size: 12px; line-height: 1.2; color: #fff; }
  #orbit-entry .mobile-env b { font-size: 11px; line-height: 1.3; color: #3EB9C2; }
}

.es-niveau, .lootus-experience .es-famille { position: relative; isolation: isolate; border: 0; background: var(--filet, #3EB9C2);
  clip-path: polygon(0 0, calc(100% - var(--biseau)) 0, 100% var(--biseau), 100% 100%, 0 100%); }
.es-niveau::before, .lootus-experience .es-famille::before { content: ""; position: absolute; inset: 1px; z-index: -1; background: #FFFEFF;
  clip-path: polygon(0 0, calc(100% - var(--biseau)) 0, 100% var(--biseau), 100% 100%, 0 100%); }

.es-niveaux { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 22px; margin: 0 0 26px;
  background: linear-gradient(#3EB9C2, #3EB9C2) center 50% / calc(100% - 120px) 2px no-repeat; }
.es-niveau { --biseau: 14px; padding: 22px 14px; text-align: center; }
.es-niveau .ls-icon { margin: 0 auto 12px; width: 54px; height: 54px; }
.lootus-experience .es-niveau h3 { font: 700 16px/1.25 var(--police-titre); color: #003B56; margin: 0 0 8px; }
.es-niveau p { margin: 0; font-size: 15px; line-height: 1.45; }

.es-familles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.lootus-experience .es-famille { --biseau: 16px; display: grid; grid-template-columns: 66px 1fr; gap: 0 20px; align-items: center; padding: 22px 24px;
  color: inherit; text-decoration: none; transition: background-color .15s; }
.lootus-experience .es-famille:hover, .lootus-experience .es-famille:focus-visible { --filet: #003B56; color: inherit; }
.lootus-experience .es-famille .ls-icon { grid-row: 1 / span 2; margin: 0; width: 64px; height: 64px; }
.lootus-experience .es-famille strong { font: 500 20px/1.3 var(--police-titre); color: #003B56; margin-bottom: 8px; }
.lootus-experience .es-famille span { font-size: 16px; line-height: 1.55; }

@media (max-width: 1100px) {
  .es-niveaux { grid-template-columns: repeat(3, minmax(0, 1fr)); background: none; }
}
@media (max-width: 760px) {
  .es-niveaux, .es-familles { grid-template-columns: 1fr; }
  .es-niveaux { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.lootus-experience .es-famille strong, main.lootus-experience .section .es-familles .es-famille strong { color: #2A9FA8; }
.lootus-experience .es-famille span, main.lootus-experience .section .es-familles .es-famille span { color: #2b2b2b; }
