:root{font-family:'Century Gothic',CenturyGothic,'Avant Garde',sans-serif;color:#202638;background:#f7f8fc;--bg:#f7f8fc;--card:rgba(255,255,255,.88);--text:#202638;--muted:#657085;--line:#e2e7ef;--blue:var(--jmb-accent,#1e90ff);--soft:#eaf5ff;--red:crimson;--shadow:0 12px 40px #26374d09;color-scheme:light}*{box-sizing:border-box}body{margin:0}html[data-theme=dark]{color-scheme:dark;--bg:#111821;--card:#1b2534ed;--text:#edf2f8;--muted:#a7b4c7;--line:#314054;--blue:var(--jmb-accent,#1e90ff);--soft:#213c58;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;padding:11px 17px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--text);cursor:pointer;font-size:13px;font-weight:600;transition:background .16s,transform .16s}button:hover,.button:hover{background:var(--soft);border-color:var(--blue)}button:disabled{opacity:.5;cursor:wait}.primary{background:var(--jmb-accent,#1e90ff);color:white;border-color:var(--jmb-accent,#1e90ff)}.primary:hover{background:var(--jmb-accent,#1e90ff);color:white}.danger{color:var(--red)}.quiet{background:transparent;border-color:transparent}.icon{width:44px;padding:9px;font-size:19px}.logo{display:block;width:55px;height:55px;border-radius:15px;object-fit:contain;background:#000}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}header{height:88px;display:flex;align-items:center;gap:26px;padding:14px max(24px,calc((100vw - 1280px)/2));border-bottom:1px solid var(--line);background:var(--card);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}header nav{display:flex;align-items:center;gap:22px;flex:1}header nav a{font-size:13px;color:var(--muted);padding:10px 0}header nav a:hover,header nav a.active{color:var(--blue)}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.container{max-width:1280px;margin:auto;padding:42px 24px 70px}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center;padding:52px 0 70px}.eyebrow{font-size:11px;letter-spacing:.15em;color:var(--blue);font-weight:700;text-transform:uppercase}h1{font-size:clamp(32px,4.3vw,58px);letter-spacing:-.045em;line-height:1.1;margin:18px 0 24px}h1 span{color:var(--blue)}h2{font-size:26px;letter-spacing:-.025em}h3{font-size:17px}p{line-height:1.7;color:var(--muted);font-size:14px}.lead{font-size:16px;max-width:620px}.hero-visual{position:relative;border:1px solid var(--line);padding:28px;border-radius:30px;background:linear-gradient(140deg,var(--card),var(--soft));box-shadow:var(--shadow)}.hero-visual .tile{margin:14px 0;display:flex;align-items:center;gap:16px;background:var(--card);padding:20px;border:1px solid var(--line);border-radius:16px}.hero-visual .tile:nth-child(2){margin-left:26px}.hero-visual .tile:nth-child(3){margin-right:26px}.tile .round{width:45px;height:45px;background:var(--soft);display:grid;place-items:center;border-radius:14px;color:var(--blue)}.tile small{display:block;color:var(--muted);margin-top:6px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:24px 0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:var(--shadow)}.card:hover{border-color:color-mix(in srgb,var(--line),var(--blue) 25%)}.card .service-logo{width:50px;height:50px;object-fit:contain;border-radius:12px;background:white;padding:4px}.fallback{width:50px;height:50px;display:inline-grid;place-items:center;border-radius:12px;background:var(--soft);color:var(--blue);font-weight:700}.price{font-size:27px;font-weight:700;margin:24px 0}.price small{font-size:12px;color:var(--muted);font-weight:400}.pill{display:inline-flex;align-items:center;background:var(--soft);color:var(--blue);border-radius:30px;padding:5px 10px;font-size:11px}.muted{color:var(--muted)}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:20px 0}.toolbar input{max-width:360px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px;font-size:13px}.field input,.field select,.field textarea,.toolbar input,.toolbar select{width:100%;padding:12px 13px;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:10px;min-height:43px}.field textarea{min-height:110px;resize:vertical}.field input[type=checkbox]{min-height:18px;width:18px}.field small{color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.wide{grid-column:1/-1}.empty{border:1px dashed var(--line);border-radius:20px;text-align:center;padding:42px;color:var(--muted);grid-column:1/-1}.empty h3{color:var(--text)}footer{border-top:1px solid var(--line);padding:35px 24px;display:flex;justify-content:center;gap:22px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.notice{padding:12px 18px;border:1px solid var(--line);border-radius:12px;background:var(--soft);font-size:12px;line-height:1.6;margin-bottom:22px}.admin-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--card);border-right:1px solid var(--line);padding:24px 15px;overflow:auto}.sidebar .brand-row{display:flex;justify-content:space-between;align-items:center;padding:0 8px 24px}.sidebar details{margin-bottom:10px}.sidebar summary{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);padding:12px;cursor:pointer}.sidebar a{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;font-size:12px;margin:3px 0}.sidebar a.active{background:var(--soft);color:var(--blue);font-weight:700}.sidebar a:hover{background:var(--soft)}.admin-shell.collapsed{grid-template-columns:84px minmax(0,1fr)}.collapsed .sidebar{padding:20px 10px}.collapsed .sidebar .label,.collapsed .sidebar summary,.collapsed .sidebar .logo{display:none}.collapsed .sidebar details{display:contents}.collapsed .sidebar details>*{display:flex}.collapsed .sidebar a{justify-content:center}.admin-main{min-width:0}.admin-main header{padding:15px 30px;gap:15px}.breadcrumb{flex:1;min-width:100px;font-size:12px;color:var(--muted)}.breadcrumb strong{display:block;color:var(--text);font-size:17px;margin-top:4px}.admin-content{padding:32px;max-width:1600px;margin:auto}.admin-content h1{font-size:32px;margin-top:8px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.kpi{display:block;padding:23px;background:var(--card);border:1px solid var(--line);border-radius:17px}.kpi strong{font-size:26px;display:block;margin-top:15px}.kpi small{font-size:11px;color:var(--muted)}.two-col{display:grid;grid-template-columns:1.2fr 1fr;gap:22px;margin-top:24px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px;background:var(--card)}table{width:100%;border-collapse:collapse;font-size:12px}th,td{text-align:left;padding:15px 17px;border-bottom:1px solid var(--line);max-width:300px;overflow-wrap:anywhere}th{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;background:var(--bg)}td .actions{flex-wrap:nowrap}td button{min-height:32px;padding:7px 10px;font-size:11px}tr:last-child td{border:0}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:14px;margin-top:18px;font-size:12px}dialog{border:1px solid var(--line);border-radius:22px;padding:28px;width:min(670px,calc(100vw - 28px));max-height:90vh;background:var(--bg);color:var(--text);box-shadow:0 30px 100px #0003}dialog::backdrop{background:#10203370;backdrop-filter:blur(4px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.dialog-head h2{font-size:23px;margin:0}.error{color:var(--red);font-size:13px;white-space:pre-wrap}.preview{width:70px;height:70px;object-fit:contain;background:white;border-radius:12px;margin:10px 0}.detail{white-space:pre-wrap;line-height:1.8;overflow-wrap:anywhere;font-size:13px}.chart{height:150px;display:flex;align-items:flex-end;gap:14px;margin-top:25px}.bar{flex:1;min-height:4px;background:var(--blue);border-radius:7px 7px 0 0;position:relative}.bar small{position:absolute;bottom:-24px;font-size:10px;left:0}.chart-wrap{padding-bottom:30px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:100;background:var(--text);color:var(--bg);padding:14px 22px;border-radius:12px;max-width:90vw;display:none;font-size:13px}.skip{position:absolute;left:-10000px}.skip:focus{left:10px;top:10px;z-index:200;background:var(--card);padding:10px}:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.mobile-menu{display:none}.loading{padding:50px}.auth-box{max-width:440px;margin:25px auto}.separator{margin:25px 0;border-top:1px solid var(--line)}.honeypot{position:absolute;left:-10000px}.profile-chip{font-size:11px}.count{border-radius:20px;background:var(--soft);padding:3px 7px}.cart-row{display:flex;align-items:center;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}.cart-row .grow{flex:1}.legal{max-width:800px}.login-note{font-size:12px}.inline-list{display:flex;gap:10px;flex-wrap:wrap}.metric-red{color:var(--red)}
@media(max-width:1000px){header{padding:12px 20px;gap:15px}header nav{gap:12px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{gap:25px}.admin-shell{grid-template-columns:210px minmax(0,1fr)}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:1fr}.admin-main header .profile-chip{display:none}}
@media(max-width:720px){header{height:auto;min-height:78px;flex-wrap:wrap;gap:12px}header nav{order:3;flex-basis:100%;overflow:auto;white-space:nowrap;gap:22px}.logo{width:45px;height:45px}header>.actions{margin-left:auto}.container{padding:26px 18px 45px}.hero{display:block;padding:15px 0 30px}.hero-visual{margin-top:32px;padding:18px}.hero h1{font-size:40px}.grid{grid-template-columns:1fr}.section-head{align-items:flex-start}.section-head h2{font-size:22px}.admin-shell,.admin-shell.collapsed{display:block}.sidebar{display:none;position:fixed;top:77px;left:0;width:250px;z-index:30;height:calc(100vh - 77px);box-shadow:10px 0 35px #0002}.admin-shell.menu-open .sidebar{display:block}.mobile-menu{display:inline-flex}.admin-content{padding:22px 15px}.admin-main header{padding:15px;min-height:77px}.admin-main header .search-button{display:none}.kpis{gap:10px}.kpi{padding:17px}.kpi strong{font-size:22px}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.card{padding:22px}.cart-row{gap:10px}.toolbar{align-items:stretch}.toolbar input{max-width:none}.collapsed .sidebar .label,.collapsed .sidebar summary,.collapsed .sidebar .logo{display:initial}.collapsed .sidebar a{justify-content:flex-start}.collapsed .sidebar details{display:block}.collapsed .sidebar details>*{display:revert}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Navigation interactive et mouvement JMB SERVICES */
header nav { gap:6px; }
header nav a { display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border:1px solid transparent;border-radius:12px;position:relative;transition:color .2s,background .2s,border-color .2s,box-shadow .2s;white-space:nowrap; }
header nav a:hover { background:var(--soft);border-color:var(--line);color:var(--blue);box-shadow:0 4px 15px rgba(var(--jmb-accent-rgb,30,144,255),0.031); }
header nav a.active { color:var(--blue);background:var(--soft);border-color:color-mix(in srgb,var(--blue) 20%,transparent); }
header nav a.active::after { content:'';position:absolute;height:3px;width:18px;bottom:2px;left:calc(50% - 9px);border-radius:5px;background:var(--blue); }
.nav-symbol { font-size:16px;line-height:1;transition:transform .22s; }
header nav a:hover .nav-symbol { transform:translateY(-2px) rotate(-5deg); }
.admin-access { font-size:11px;background:transparent;border-style:dashed; }
.hero-visual { isolation:isolate;overflow:hidden; }
.hero-visual::before { content:'';position:absolute;inset:-30%;background:radial-gradient(circle at 40% 40%,rgba(var(--jmb-accent-rgb,30,144,255),0.071),transparent 48%),radial-gradient(circle at 75% 65%,#dc143c09,transparent 40%);z-index:-1;animation:ambient-shift 12s ease-in-out infinite alternate; }
.hero-visual .tile { animation:gentle-rise 7s ease-in-out infinite; }
.hero-visual .tile:nth-child(2) { animation-delay:-2s; }
.hero-visual .tile:nth-child(3) { animation-delay:-4s; }
.activity-section { margin-top:64px; }
.activity-section .section-head p { font-size:13px; }
.expertise-card { position:relative;display:flex;flex-direction:column;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s; }
.expertise-card:hover { transform:translateY(-5px);box-shadow:0 16px 35px #183b6510; }
.expertise-number { position:absolute;right:24px;top:22px;font-size:12px;color:var(--muted); }
.expertise-icon { width:53px;height:53px;display:grid;place-items:center;border-radius:16px;background:var(--soft);color:var(--blue);font-size:26px;margin-bottom:15px; }
.expertise-card:nth-child(3) .expertise-icon { color:var(--red);background:#dc143c09; }
.expertise-card h3 { font-size:18px;line-height:1.4; }
.expertise-card p { font-size:13px;flex:1; }
.expertise-link { border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--blue);margin-top:18px; }
.expertise-link b { transition:transform .2s; }
.expertise-card:hover .expertise-link b { transform:translate(3px,-3px); }
.process-section { margin:70px 0;padding:40px;border:1px solid var(--line);background:var(--card);border-radius:26px; }
.process-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:30px 0; }
.process-grid b { display:inline-flex;padding:8px 12px;border:1px solid var(--line);border-radius:10px;color:var(--blue);font-size:12px; }
.process-grid p { font-size:13px; }
.contact-band { border-top:1px solid var(--line);padding:38px 0 10px;display:flex;align-items:center;justify-content:space-between;gap:25px; }
.contact-band h2 { font-size:32px;line-height:1.3; }
.catalog-pending { grid-column:1/-1;padding:25px 28px;background:var(--card);border:1px solid var(--line);border-radius:18px; }
.catalog-pending p { font-size:12px; }
.reveal { opacity:0;transform:translateY(17px);transition:opacity .6s var(--reveal-delay),transform .6s var(--reveal-delay); }
.reveal.revealed { opacity:1;transform:translateY(0); }
#notice:empty { display:none; }
#notice:not(:empty) { border:1px solid var(--line);background:var(--card);padding:12px 20px;text-align:center;font-size:12px;color:var(--muted); }
@keyframes gentle-rise { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-5px); } }
@keyframes ambient-shift { from { transform:translate(-3%,-2%); } to { transform:translate(3%,2%); } }
@media(max-width:1100px) { header { flex-wrap:wrap;height:auto;min-height:84px;gap:12px; } header nav { order:3;flex-basis:100%;padding-bottom:6px; } header>.actions { margin-left:auto; } }
@media(max-width:720px) { header nav { gap:6px; } header nav a { font-size:11px;padding:10px; } .nav-symbol { font-size:14px; } .actions .admin-access { font-size:10px;padding:9px; } header>.actions { gap:5px; } header>.actions .button { font-size:10px;padding:9px; } .process-grid { grid-template-columns:1fr;gap:18px; } .process-section { padding:25px;margin:40px 0; } .contact-band { flex-direction:column;align-items:flex-start; } .activity-section { margin-top:38px; } .activity-section .section-head { display:block; } .reveal { transition-delay:0ms; } }
@media(prefers-reduced-motion:reduce) { .reveal { opacity:1;transform:none; } *,*::before,*::after { animation:none!important;transition:none!important; } }
/* Cartes, fiches et panier — composants commerciaux */
.catalog-heading { max-width:760px;margin-bottom:28px; }.catalog-heading h1 {font-size:clamp(31px,4vw,49px);}.catalog-heading p {max-width:650px;}.catalog-controls {padding:18px 20px;background:var(--card);border:1px solid var(--line);border-radius:18px;margin-bottom:20px;}.catalog-controls .toolbar {margin:0 0 15px;}.catalog-controls .toolbar input {max-width:none;flex:1;}.catalog-controls select {width:auto;min-width:170px;}.category-filters {display:flex;gap:8px;flex-wrap:wrap;}.category-filters button {border:1px solid transparent;background:transparent;color:var(--muted);min-height:36px;font-size:11px;}.category-filters button[aria-pressed=true] {color:var(--blue);background:var(--soft);border-color:var(--line);}.offer-card {display:flex;flex-direction:column;min-width:0;transition:transform .22s,box-shadow .22s,border-color .22s;}.offer-card:hover {transform:translateY(-4px);box-shadow:0 16px 35px #163b6510;}.offer-top {display:flex;justify-content:space-between;align-items:center;gap:12px;}.offer-top .pill {font-size:9px;}.offer-card h3 {margin:24px 0 10px;font-size:20px;}.offer-description {font-size:12px;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}.offer-price {font-size:27px;font-weight:700;margin:20px 0;}.offer-price small {font-size:11px;font-weight:400;color:var(--muted);}.offer-foot {display:flex;gap:8px;flex-wrap:wrap;padding-top:17px;border-top:1px solid var(--line);}.offer-foot button,.offer-foot .button {flex:1;font-size:11px;padding:10px;white-space:nowrap;}.back-link {display:inline-flex;margin:10px 0 24px;color:var(--muted);font-size:12px;}.back-link:hover {color:var(--blue);}.service-detail,.checkout-grid {display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,1fr);gap:34px;align-items:start;}.service-presentation {padding:25px 0;}.service-presentation .service-logo,.service-presentation .fallback {width:84px;height:84px;margin-bottom:25px;}.service-presentation .pill {margin-left:20px;}.service-presentation h1 {font-size:46px;}.service-facts {display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-top:30px;border-top:1px solid var(--line);margin-top:35px;}.service-facts small {display:block;color:var(--muted);font-size:11px;margin-bottom:10px;}.service-facts strong {font-size:13px;}.order-summary {position:sticky;top:115px;}.order-summary>.button,.order-summary>button {width:100%;margin:7px 0;}.order-summary p {font-size:12px;}.small-note {font-size:10px!important;line-height:1.6;}.summary-total {display:flex;justify-content:space-between;gap:15px;border-block:1px solid var(--line);padding:23px 0;margin:24px 0;}.summary-total span {font-size:12px;color:var(--muted);}.summary-total strong {font-size:20px;}.payment-options {display:flex;gap:8px;margin:20px 0 12px;}.payment-options span {font-size:10px;border:1px solid var(--line);border-radius:7px;padding:7px 10px;}.quantity-control {display:inline-flex;align-items:center;gap:15px;margin-top:5px;border:1px solid var(--line);border-radius:10px;}.quantity-control button {border:0;background:transparent;padding:8px 11px;min-height:34px;}.quantity-control span {font-size:12px;}.cart-row {align-items:flex-start;}.cart-row>.service-logo,.cart-row>.fallback {width:42px;height:42px;flex-shrink:0;}.cart-row p {margin:7px 0;font-size:11px;}.cart-row>div:last-child {text-align:right;font-size:13px;}.cart-row>div:last-child>button {display:block;margin-left:auto;font-size:10px;padding:6px;min-height:30px;}.cart-lines .cart-row:first-child {padding-top:0;}.cart-lines .back-link {margin-bottom:0;}
@media(max-width:850px){.service-detail,.checkout-grid {grid-template-columns:1fr;gap:20px;}.order-summary {position:static;}.catalog-controls .toolbar {flex-direction:column;}.catalog-controls select {width:100%;}.service-presentation h1 {font-size:36px;}}
@media(max-width:420px){.cart-lines {padding:17px;}.cart-row {gap:10px;flex-wrap:wrap;}.cart-row .grow {min-width:130px;}.offer-price {font-size:25px;}.service-facts {grid-template-columns:1fr;}.summary-total strong {font-size:18px;}}
@media(max-width:720px){header>.actions .admin-access {display:none;}header {padding:12px 16px;gap:10px;}header>.actions {flex-wrap:nowrap;}header nav {scrollbar-width:none;-ms-overflow-style:none;padding-bottom:4px;}header nav::-webkit-scrollbar {display:none;}header nav a {flex-shrink:0;} .service-detail .order-summary {margin-top:8px;}}
/* Identité JMB : accueil immersif, espace client et pied de page */
.brand-universe {min-height:470px;background:radial-gradient(ellipse at 48% 50%,rgba(var(--jmb-accent-rgb,30,144,255),0.043),transparent 65%);border:0;box-shadow:none;overflow:visible;isolation:isolate;}.brand-universe::before {display:none;}.orbit-line {position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);border:1px solid var(--line);border-radius:50%;z-index:-1;opacity:.65;}.orbit-line-one {width:310px;height:310px;}.orbit-line-two {width:430px;height:430px;border-style:dashed;}.universe-brand {position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:18px;}.universe-brand img {width:136px;height:136px;object-fit:contain;border-radius:31px;box-shadow:0 22px 70px rgba(var(--jmb-accent-rgb,30,144,255),0.102);}.universe-brand>span {font-size:11px;white-space:nowrap;color:var(--muted);}.orbit-card {position:absolute;width:145px;min-height:137px;border:1px solid var(--line);border-radius:22px;background:var(--card);padding:17px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;backdrop-filter:blur(8px);box-shadow:0 10px 25px #14284008;animation:gentle-rise 7s ease-in-out infinite;transition:border-color .2s,box-shadow .2s;}.orbit-card:hover {border-color:var(--blue);box-shadow:0 12px 32px rgba(var(--jmb-accent-rgb,30,144,255),0.082);}.orbit-card .service-logo,.orbit-card .fallback {width:42px;height:42px;}.orbit-card strong {font-size:12px;line-height:1.4;}.orbit-card small {font-size:9px;color:var(--muted);}.orbit-card-0 {left:0;top:18px;}.orbit-card-1 {right:0;top:40px;animation-delay:-2s;}.orbit-card-2 {left:12px;bottom:30px;animation-delay:-4s;}.orbit-card-3 {right:4px;bottom:10px;animation-delay:-1s;}.universe-caption {position:absolute;bottom:-14px;left:50%;transform:translateX(-50%);font-size:10px;color:var(--muted);white-space:nowrap;display:flex;gap:7px;align-items:center;}.universe-caption>span {width:6px;height:6px;border-radius:50%;background:var(--blue);}.hero-search {display:flex;align-items:center;gap:15px;padding:12px 14px 12px 22px;border:1px solid var(--line);background:var(--card);border-radius:17px;max-width:770px;margin:5px 0 45px;box-shadow:var(--shadow);}.hero-search>span {font-size:26px;color:var(--blue);}.hero-search input {border:0;background:transparent;min-width:0;flex:1;font-size:14px;outline:none;color:var(--text);}.hero-search button {font-size:12px;}.site-footer {display:block;padding:60px max(24px,calc((100vw - 1280px)/2)) 24px;background:var(--card);}.footer-grid {display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:45px;}.footer-brand .logo {width:65px;height:65px;}.footer-brand p {font-size:12px;line-height:1.9;max-width:280px;}.footer-grid h3 {font-size:12px;color:var(--text);margin:4px 0 23px;}.footer-grid>div>a {display:block;font-size:11px;color:var(--muted);margin:0 0 17px;line-height:1.5;}.footer-grid>div>a:hover {color:var(--blue);}.footer-bottom {display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:25px;margin-top:30px;font-size:10px;color:var(--muted);}.client-container {max-width:none;padding:0;}.client-shell {display:grid;grid-template-columns:220px minmax(0,1fr);min-height:calc(100vh - 88px);}.client-sidebar {padding:28px 14px;background:var(--card);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:6px;position:sticky;top:88px;height:calc(100vh - 88px);}.client-sidebar>.eyebrow {font-size:9px;padding:0 12px 18px;}.client-sidebar a,.client-sidebar button {display:flex;align-items:center;gap:13px;padding:12px;border-radius:11px;font-size:11px;color:var(--muted);border:0;background:transparent;}.client-sidebar a:hover,.client-sidebar a[aria-current=page] {background:var(--soft);color:var(--blue);}.client-sidebar a[aria-current=page] {font-weight:700;}.client-nav-bottom {margin-top:auto;border-top:1px solid var(--line);padding-top:15px;}.client-workspace {padding:26px 32px 48px;min-width:0;max-width:1480px;width:100%;margin:auto;}.client-topline {display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:32px;}.client-topline strong {display:block;font-size:12px;margin-top:7px;overflow-wrap:anywhere;}.client-topline .button {font-size:11px;white-space:nowrap;}.client-welcome h1 {font-size:34px;margin:13px 0;}.client-welcome p {font-size:12px;}.client-kpis {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:28px 0 35px;}.client-kpi {display:flex;align-items:center;gap:14px;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--card);transition:transform .2s,border-color .2s;}.client-kpi:hover {border-color:var(--blue);transform:translateY(-2px);}.kpi-symbol {width:42px;height:42px;display:grid;place-items:center;background:var(--soft);color:var(--blue);border-radius:12px;font-size:21px;flex-shrink:0;}.client-kpi strong {font-size:24px;display:block;}.client-kpi small {display:block;font-size:10px;line-height:1.5;color:var(--muted);margin-top:5px;}.client-section .empty {padding:48px 25px;background:var(--card);}.client-section .empty .button {margin:5px;font-size:11px;}.empty-compass {display:inline-grid;place-items:center;width:50px;height:50px;border:1px solid var(--line);border-radius:15px;color:var(--blue);font-size:24px;}.client-section h2 {font-size:20px;}.client-section .section-head>a {font-size:11px;color:var(--blue);}.client-shortcuts {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:30px;}.client-shortcuts h3 {font-size:14px;line-height:1.5;}.client-shortcuts p {font-size:11px;}.client-dossiers {display:grid;gap:14px;}.client-dossier {background:var(--card);border:1px solid var(--line);border-radius:17px;padding:22px;}.client-dossier h3 {font-size:16px;}.client-dossier p {font-size:12px;}.client-dossier details {border-top:1px solid var(--line);padding-top:14px;margin-top:17px;font-size:11px;}.client-dossier summary {cursor:pointer;color:var(--blue);}.client-dossier dt {font-weight:700;margin-top:15px;}.client-dossier dd {margin:7px 0;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;}.client-auth-intro {max-width:750px;padding:45px 0 80px;}.client-auth-intro h1 {font-size:45px;}.client-auth-intro .button,.client-auth-intro button {margin:10px 8px 0 0;}
@media(max-width:1100px){.client-kpis {grid-template-columns:repeat(2,minmax(0,1fr));}.client-shortcuts {grid-template-columns:1fr;}.brand-universe {min-height:440px;}.orbit-card {width:125px;min-height:130px;}.orbit-line-two {width:350px;height:350px;}.universe-brand img {width:110px;height:110px;}.footer-grid {gap:25px;}}
@media(max-width:760px){.hero {overflow:hidden;}.brand-universe {min-height:410px;margin-top:35px;}.orbit-card {width:120px;min-height:125px;padding:13px;}.orbit-card-0 {left:0;top:0;}.orbit-card-1 {right:0;top:35px;}.orbit-card-2 {left:0;bottom:25px;}.orbit-card-3 {right:0;bottom:0;}.universe-brand {top:49%;}.universe-brand img {width:90px;height:90px;border-radius:24px;}.universe-brand>span {font-size:9px;}.orbit-line-two {width:330px;height:330px;}.orbit-line-one {width:220px;height:220px;}.universe-caption {font-size:9px;bottom:-12px;}.hero-search {padding:10px 12px;gap:9px;}.hero-search input {font-size:11px;}.hero-search button {padding:10px;font-size:10px;}.footer-grid {grid-template-columns:1fr 1fr;gap:28px;}.footer-brand {grid-column:1/-1;}.footer-brand p {max-width:none;}.site-footer {padding:35px 20px 22px;}.footer-bottom {flex-direction:column;gap:10px;}.client-shell {display:block;}.client-sidebar {position:static;height:auto;display:flex;flex-direction:row;overflow:auto;padding:10px 12px;border-bottom:1px solid var(--line);border-right:0;}.client-sidebar>.eyebrow,.client-nav-bottom {display:none;}.client-sidebar a {white-space:nowrap;font-size:11px;padding:10px 12px;gap:7px;}.client-workspace {padding:22px 17px 35px;}.client-welcome h1 {font-size:29px;}.client-kpis {gap:10px;margin:23px 0;}.client-kpi {padding:15px;gap:10px;}.kpi-symbol {width:32px;height:32px;font-size:18px;}.client-kpi strong {font-size:22px;}.client-kpi small {font-size:9px;}.client-topline strong {font-size:11px;}.client-section .section-head {align-items:flex-start;}.client-section .empty {padding:28px 17px;}.client-auth-intro h1 {font-size:34px;}}
/* Barres invisibles ; défilement natif conservé (souris, clavier, tactile). */
html, body, * { scrollbar-width: none; -ms-overflow-style: none; }
html::-webkit-scrollbar, body::-webkit-scrollbar, *::-webkit-scrollbar { display: none; width: 0; height: 0; }
/* Panier icône et présentation animée des services. */
.cart-icon-link {position:relative;width:44px;height:44px;padding:10px!important;flex-shrink:0;}
.cart-icon-link svg {width:21px;height:21px;}
.cart-icon-link #count {position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;border-radius:10px;display:grid;place-items:center;background:var(--blue);color:white;font-size:9px;border:2px solid var(--bg);padding:0 3px;}
.catalog-spotlight {--spot-accent:var(--blue);display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,1.1fr) minmax(170px,.7fr);gap:18px 32px;align-items:center;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:28px;padding:34px 34px 22px;margin-bottom:30px;min-height:360px;background:linear-gradient(125deg,var(--card),var(--soft));transition:background .7s;}
.catalog-spotlight[data-tone=crimson] {--spot-accent:var(--red);background:linear-gradient(125deg,var(--card),color-mix(in srgb,var(--red) 7%,var(--bg)));}
.spotlight-copy {z-index:1;}
.spotlight-copy .eyebrow {font-size:9px;color:var(--spot-accent);}
.spotlight-copy h2 {font-size:clamp(27px,3.3vw,41px);margin:18px 0;line-height:1.15;}
.spotlight-copy p {font-size:12px;line-height:1.8;}
.spotlight-copy .button {font-size:10px;background:var(--card);margin-top:9px;}
.spotlight-stage {min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;perspective:700px;}
.spotlight-ring {position:absolute;width:220px;height:220px;border:1px solid color-mix(in srgb,var(--spot-accent) 14%,transparent);border-radius:50%;}
.spotlight-ring::after {content:'';position:absolute;inset:18px;border:1px dashed var(--line);border-radius:50%;}
.spotlight-mark {width:139px;height:139px;display:grid;place-items:center;border:1px solid var(--line);border-radius:30px;background:var(--card);box-shadow:0 25px 45px #10203015;z-index:1;will-change:transform;}
.spotlight-mark img {width:88px;height:88px;object-fit:contain;filter:drop-shadow(0 8px 10px #0001);}
.spotlight-mark>span {font-size:48px;color:var(--spot-accent);font-weight:600;}
.spotlight-service-name {position:relative;z-index:1;margin-top:23px;font-size:11px;font-weight:600;}
.spotlight-offer {display:flex;flex-direction:column;gap:12px;align-items:flex-start;z-index:1;}
.spotlight-rate-label {font-size:10px;color:var(--muted);}
.spotlight-offer>strong {font-size:32px;letter-spacing:-.04em;white-space:nowrap;}
.spotlight-offer>strong small {font-size:11px;letter-spacing:normal;font-weight:400;}
.spotlight-duration {font-size:11px;color:var(--muted);}
.spotlight-offer .primary {font-size:10px;margin-top:10px;padding:11px 13px;}
.spotlight-bottom {grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;border-top:1px solid var(--line);}
.spotlight-thumbnails {display:flex;gap:8px;max-width:75%;overflow-x:auto;padding:4px;}
.spotlight-thumbnails button {width:39px;height:39px;min-height:39px;flex-shrink:0;padding:8px;border-radius:11px;background:var(--card);}
.spotlight-thumbnails button img {width:23px;height:23px;object-fit:contain;}
.spotlight-thumbnails button>span {font-size:10px;}
.spotlight-thumbnails button[aria-pressed=true] {border-color:var(--spot-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--spot-accent) 12%,transparent);}
.spotlight-navigation {display:flex;gap:6px;}
.spotlight-navigation button {width:34px;min-height:34px;height:34px;border-radius:50%;padding:6px;font-size:13px;background:var(--card);}
.demo-catalog-banner {padding:10px 16px;background:var(--soft);color:var(--text);text-align:center;font-size:10px;border-bottom:1px solid var(--line);}
@media(max-width:950px){.catalog-spotlight {grid-template-columns:minmax(0,1fr) minmax(170px,1fr);padding:26px;}.spotlight-offer {grid-column:1/-1;flex-direction:row;flex-wrap:wrap;align-items:center;gap:13px;}.spotlight-offer .primary {margin:0 0 0 auto;}.spotlight-offer>strong {font-size:27px;}.spotlight-stage {min-height:200px;}}
@media(max-width:600px){.catalog-spotlight {grid-template-columns:1fr;padding:24px 21px 18px;gap:12px;border-radius:23px;}.spotlight-stage {grid-row:1;min-height:205px;}.spotlight-copy h2 {font-size:29px;margin:10px 0;}.spotlight-copy p {font-size:11px;}.spotlight-copy .button {margin-top:0;}.spotlight-offer {padding-top:13px;border-top:1px solid var(--line);gap:9px;}.spotlight-rate-label {width:100%;}.spotlight-duration {font-size:10px;}.spotlight-offer .primary {font-size:9px;padding:10px;}.spotlight-bottom {gap:9px;padding-top:13px;}.spotlight-thumbnails {max-width:62%;gap:6px;}.spotlight-navigation {gap:4px;}.spotlight-navigation button {width:31px;height:31px;min-height:31px;}.spotlight-mark {width:125px;height:125px;}.spotlight-mark img {width:78px;height:78px;}.spotlight-ring {width:195px;height:195px;}.cart-icon-link {width:39px;height:40px;}}
@media(prefers-reduced-motion:reduce){.spotlight-mark {will-change:auto;}}
/* Packs : coffrets interactifs, contenus inclus et musique au choix. */
.catalog-packs-section {margin-top:60px;}.catalog-packs-section .section-head p {font-size:12px;}.pack-offer-grid {display:grid;grid-template-columns:1fr 1fr;gap:24px;}.pack-offer-card {position:relative;overflow:hidden;padding:28px;background:linear-gradient(145deg,var(--card),var(--soft));}.pack-offer-card[data-pack=trio] {background:linear-gradient(145deg,var(--card),color-mix(in srgb,var(--red) 6%,var(--bg)));}.pack-card-top {display:flex;justify-content:space-between;align-items:center;}.pack-card-number {font-size:11px;color:var(--muted);}.pack-offer-card h3 {font-size:25px;margin:15px 0 8px;}.pack-offer-card p {font-size:12px;max-width:330px;}.pack-open-button {width:100%;justify-content:space-between;}.pack-gift {width:150px;height:150px;position:relative;margin:30px auto 10px;perspective:650px;}.pack-gift-body {position:absolute;width:120px;height:90px;bottom:12px;left:15px;border-radius:6px 6px 15px 15px;background:linear-gradient(145deg,var(--jmb-accent,#1e90ff),var(--jmb-accent,#1e90ff));box-shadow:0 17px 30px rgba(var(--jmb-accent-rgb,30,144,255),0.133);display:grid;place-items:center;transform:rotate(-5deg);border:1px solid #ffffff40;}.pack-gift-body::before,.pack-gift-lid::before {content:'';position:absolute;left:calc(50% - 10px);width:20px;top:0;bottom:0;background:#ffffff30;}.pack-gift-body>span {font-size:20px;letter-spacing:.17em;color:white;font-weight:700;z-index:1;text-shadow:0 2px 5px #0001;}.pack-gift-lid {position:absolute;width:132px;height:26px;left:9px;top:34px;border-radius:7px;background:linear-gradient(145deg,var(--jmb-accent,#1e90ff),var(--jmb-accent,#1e90ff));transform:rotate(-5deg);z-index:2;box-shadow:0 6px 10px #004b8c15;border:1px solid #ffffff50;}.pack-offer-card[data-pack=trio] .pack-gift-body,.pack-dialog[data-type=trio] .pack-gift-body {background:linear-gradient(145deg,#ec5272,#c51439);box-shadow:0 17px 30px #dc143c1b;}.pack-offer-card[data-pack=trio] .pack-gift-lid,.pack-dialog[data-type=trio] .pack-gift-lid {background:linear-gradient(145deg,#f08ba0,#df3256);}.pack-gift-glow {position:absolute;inset:5px;border:1px dashed var(--line);border-radius:50%;transform:scale(1.35);}.pack-detail-card {max-width:620px;margin:35px auto;}.pack-dialog {width:min(760px,calc(100vw - 24px));padding:30px;background:var(--bg);border:1px solid var(--line);border-radius:25px;color:var(--text);max-height:92dvh;}.pack-dialog::backdrop {background:#07152399;backdrop-filter:blur(8px);}.pack-dialog-head {display:flex;align-items:flex-start;justify-content:space-between;gap:20px;}.pack-dialog-head h2 {font-size:29px;margin:10px 0 0;}.pack-explanation {font-size:12px;max-width:570px;}.pack-reveal {height:265px;position:relative;isolation:isolate;overflow:hidden;}.pack-reveal .pack-gift {position:absolute;left:calc(50% - 75px);bottom:-12px;margin:0;transform:scale(.7);z-index:1;opacity:.65;}.pack-dialog[open] .pack-reveal .pack-gift-lid {animation:pack-lid-open .65s cubic-bezier(.2,.7,.2,1) both;}.pack-revealed-service {position:absolute;left:calc(50% - 47px);top:48px;width:94px;min-height:123px;padding:14px 8px;background:var(--card);border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;box-shadow:0 10px 25px #10203010;z-index:2;}.pack-revealed-service img {width:37px;height:37px;object-fit:contain;}.pack-revealed-service strong {font-size:10px;line-height:1.5;}.pack-revealed-service>span {font-size:8px;color:var(--blue);}.pack-music-alternative>span {color:var(--muted);}.pack-dialog[open] .pack-revealed-service {animation:pack-service-release .85s var(--pack-delay) cubic-bezier(.16,1,.3,1) both;}.pack-music-picker {border:1px solid var(--line);border-radius:14px;padding:17px;display:flex;gap:9px;flex-wrap:wrap;margin:0;}.pack-music-picker legend {font-size:11px;padding:0 7px;}.pack-music-picker label {display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);background:var(--card);border-radius:11px;cursor:pointer;flex:1;font-size:10px;}.pack-music-picker label:has(input:checked) {border-color:var(--blue);background:var(--soft);}.pack-music-picker input {accent-color:var(--blue);}.pack-music-picker img {width:22px;height:22px;object-fit:contain;}.pack-included-note {font-size:12px;text-align:center;color:var(--muted);padding:15px 0;}.pack-included-note>span {margin:0 12px;color:var(--blue);}.pack-dialog-footer {display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--line);padding-top:22px;margin-top:22px;}.pack-dialog-footer small {display:block;font-size:10px;color:var(--muted);margin-bottom:7px;}.pack-dialog-footer strong {font-size:24px;}.pack-dialog-footer strong span {font-size:10px;font-weight:400;color:var(--muted);}.pack-dialog-footer .primary {font-size:11px;}.pack-feedback {font-size:10px;margin-bottom:0;text-align:center;}.cart-pack-choice {display:block;font-size:10px;color:var(--blue);margin-top:7px;}
@keyframes pack-lid-open {from {transform:translateY(0) rotate(-5deg);opacity:1;}to {transform:translate(30px,-90px) rotate(25deg);opacity:0;}}
@keyframes pack-service-release {0% {transform:translate(0,115px) rotate(0deg) scale(.35);opacity:0;}100% {transform:translate(var(--pack-x),0) rotate(var(--pack-angle)) scale(1);opacity:1;}}
@media(max-width:650px){.pack-offer-grid {grid-template-columns:1fr;gap:18px;}.catalog-packs-section {margin-top:40px;}.pack-dialog {padding:22px 18px;}.pack-reveal {height:auto;min-height:245px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;align-items:start;padding:28px 0 15px;}.pack-revealed-service {position:relative;left:auto;top:auto;width:100%;min-height:112px;padding:12px 5px;}.pack-dialog[open] .pack-revealed-service {animation:pack-mobile-release .65s var(--pack-delay) cubic-bezier(.16,1,.3,1) both;}.pack-reveal .pack-gift {bottom:0;opacity:.1;}.pack-dialog[data-type=duo] .pack-reveal {grid-template-columns:1fr 1fr;max-width:280px;margin:auto;min-height:200px;}.pack-music-picker {padding:12px;gap:8px;}.pack-music-picker label {min-width:100%;font-size:11px;}.pack-dialog-footer {flex-wrap:wrap;gap:17px;}.pack-dialog-footer .primary {width:100%;}.pack-revealed-service strong {font-size:9px;}.pack-included-note {font-size:10px;}}
@keyframes pack-mobile-release {from {opacity:0;transform:translateY(40px) scale(.6);}to {opacity:1;transform:translateY(0) scale(1);}}
@media(prefers-reduced-motion:reduce){.pack-revealed-service {transform:translate(var(--pack-x),0) rotate(var(--pack-angle));}.pack-reveal .pack-gift-lid {display:none;}@media(max-width:650px){.pack-revealed-service {transform:none;}}}
.catalog-view-switch {display:flex;gap:6px;flex-wrap:wrap;padding:5px;border:1px solid var(--line);border-radius:15px;background:var(--card);width:max-content;max-width:100%;margin:0 0 18px;}
.catalog-view-switch button {min-height:37px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);padding:9px 15px;font-size:11px;}
.catalog-view-switch button[aria-pressed=true] {background:var(--soft);border-color:var(--line);color:var(--blue);}
.catalog-packs-section .pack-offer-grid {align-items:stretch;gap:18px;}
.pack-offer-card {display:flex;flex-direction:column;min-width:0;}
.pack-offer-card h3 {margin:16px 0 9px;}
.pack-offer-card>p {min-height:42px;line-height:1.65;}
.pack-offer-card .offer-price {margin-top:auto;padding-top:14px;}
.pack-offer-card .pack-open-button {min-height:43px;}
.catalog-packs-section {scroll-margin-top:110px;}
@media(max-width:600px){.catalog-view-switch {width:100%;}.catalog-view-switch button {flex:1;font-size:10px;padding:9px 7px;}.pack-offer-card>p {min-height:0;}}

.catalog-groups{display:grid;gap:32px}.catalog-family>.section-head{margin:0 0 17px}.catalog-family>.section-head h2{font-size:23px}.catalog-family>.section-head>span{font-size:11px;color:var(--muted)}.catalog-family .grid{margin:0}@media(max-width:650px){.catalog-groups{gap:25px}.catalog-family>.section-head h2{font-size:21px}}

/* Compact catalogue: information before decoration. */
.container{padding-top:22px;padding-bottom:30px}.catalog-view-switch{margin:0 0 15px}#catalog-count{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.catalog-spotlight,.catalog-spotlight[data-tone=crimson]{--spot-accent:var(--jmb-accent);padding:18px 22px;grid-template-columns:minmax(0,1fr) 155px 225px;gap:12px 25px;margin-bottom:20px;border-radius:20px;min-height:0}.spotlight-copy h2{font-size:25px;margin:0 0 15px}.spotlight-copy p{font-size:11px;margin:0 0 13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.spotlight-copy>.button{font-size:10px;min-height:33px;padding:8px 11px}.spotlight-stage{min-height:128px;gap:0}.spotlight-mark{width:86px;height:86px;border-radius:21px}.spotlight-mark img{width:54px;height:54px}.spotlight-ring{width:128px;height:128px}.spotlight-offer{gap:12px}.spotlight-offer>strong{font-size:25px}.spotlight-offer>strong small{font-size:10px}.spotlight-offer .primary{margin:0;min-height:35px;padding:9px 12px}.spotlight-bottom{padding-top:10px;gap:10px}.spotlight-thumbnails{gap:6px;padding:2px}.spotlight-thumbnails button{width:32px;height:32px;min-height:32px;padding:6px;border-radius:9px}.spotlight-navigation button{width:30px;height:30px;min-height:30px;font-size:11px}
.catalog-groups{gap:22px}.catalog-family>.section-head{margin-bottom:12px}.catalog-family>.section-head h2{font-size:20px}.grid{gap:14px}.grid>.offer-card{padding:17px;border-radius:17px;min-height:0}.offer-top{margin:0 0 11px}.offer-top .service-logo,.offer-top .fallback{width:36px;height:36px;border-radius:10px}.offer-card h3{font-size:16px;margin:0 0 10px}.offer-description:empty{display:none}.offer-card .offer-description{font-size:11px;margin:0 0 11px;line-height:1.55}.offer-card .offer-price{font-size:21px;margin:0 0 14px}.offer-price small{font-size:10px}.offer-foot{gap:8px;margin-top:auto}.offer-foot .button{font-size:10px;min-height:34px;padding:8px 10px}.offer-foot button[data-add]{width:34px;min-width:34px;min-height:34px;padding:5px;font-size:19px;display:grid;place-items:center}.catalog-packs-section{margin-top:23px}.pack-offer-grid{gap:14px}.pack-offer-card{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:15px;padding:19px;min-height:178px;border-radius:18px}.pack-card-visual{height:140px;display:grid;place-items:center;min-width:0}.pack-card-visual .pack-gift{margin:0;transform:scale(.78);transform-origin:center}.pack-card-info{min-width:0}.pack-card-info h3{font-size:21px;margin:0 0 12px}.pack-card-info .offer-price{font-size:23px;margin:0 0 16px}.pack-card-info .pack-open-button{min-height:35px;font-size:11px;padding:9px 12px}.pack-dialog-head h2{font-size:25px;margin:0}.pack-feedback:empty{display:none}.pack-explanation{margin:13px 0;font-size:11px}
.hero{min-height:0;padding:10px 0 22px;gap:30px}.hero h1{font-size:39px;line-height:1.1;margin:0 0 17px}.hero .lead{font-size:14px;line-height:1.65}.brand-universe{min-height:320px;margin-top:0}.universe-brand img{width:94px;height:94px;border-radius:24px}.orbit-card{width:110px;min-height:95px;padding:12px;gap:7px}.orbit-card .service-logo,.orbit-card .fallback{width:33px;height:33px}.orbit-card strong{font-size:10px}.orbit-line-one{width:210px;height:210px}.orbit-line-two{width:290px;height:290px}.orbit-card-0{top:6px}.orbit-card-1{top:21px}.orbit-card-2{bottom:15px}.orbit-card-3{bottom:5px}.activity-section{margin-top:27px}.expertise-card{padding:22px!important;min-height:0}.expertise-card h3{font-size:18px}.contact-band{margin:24px 0 0;padding:23px}.section-head h2{font-size:22px}.site-footer{padding-top:30px;padding-bottom:18px}.footer-grid h3{margin-bottom:17px}.footer-grid>div>a{margin-bottom:12px}.footer-bottom{margin-top:20px;padding-top:18px}.demo-catalog-banner{font-size:8px!important;padding:5px 10px!important}
@media(min-width:1250px){.catalog-family>.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){.catalog-spotlight{grid-template-columns:minmax(0,1fr) 110px 170px;gap:12px}.pack-offer-card{grid-template-columns:95px minmax(0,1fr);padding:16px;gap:9px}.pack-card-visual{height:110px}.pack-card-visual .pack-gift{transform:scale(.65)}.pack-card-info .offer-price{font-size:20px}.pack-card-info h3{font-size:19px}.pack-card-info .pack-open-button{font-size:10px}.hero h1{font-size:34px}}
@media(max-width:650px){.container{padding:17px 14px 25px}.catalog-spotlight{grid-template-columns:minmax(0,1fr) 90px;padding:16px;gap:13px;margin-bottom:17px}.spotlight-copy{grid-column:1;grid-row:1}.spotlight-copy h2{font-size:21px;margin-bottom:12px}.spotlight-stage{grid-column:2;grid-row:1;min-height:91px}.spotlight-mark{width:65px;height:65px;border-radius:16px}.spotlight-mark img{width:42px;height:42px}.spotlight-ring{width:88px;height:88px}.spotlight-offer{grid-column:1/-1;grid-row:2;flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.spotlight-offer>strong{font-size:21px}.spotlight-bottom{grid-row:3}.spotlight-thumbnails{max-width:67%;gap:5px}.spotlight-thumbnails button{width:28px;height:28px;min-height:28px;padding:5px}.spotlight-navigation{gap:4px}.spotlight-navigation button{width:26px;min-height:26px;height:26px}.catalog-family>.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.grid>.offer-card{padding:13px}.offer-card h3{font-size:14px}.offer-card .offer-price{font-size:18px;margin-bottom:12px}.offer-price small{font-size:8px}.offer-foot .button{font-size:9px;padding:7px 8px;min-height:32px}.offer-foot button[data-add]{width:30px;min-width:30px;min-height:32px}.offer-top .service-logo{width:32px;height:32px}.offer-card .offer-description{font-size:10px}.catalog-groups{gap:22px}.pack-offer-grid{grid-template-columns:1fr;gap:12px}.pack-offer-card{grid-template-columns:110px minmax(0,1fr);min-height:145px;padding:14px}.pack-card-visual{height:110px}.pack-card-visual .pack-gift{transform:scale(.65)}.pack-card-info h3{font-size:20px}.pack-card-info .offer-price{font-size:22px;margin-bottom:12px}.hero h1{font-size:30px}.hero .lead{font-size:12px}.hero{padding:6px 0 18px}.brand-universe{min-height:220px;margin-top:15px}.orbit-card{width:82px;min-height:75px;padding:9px;gap:5px}.orbit-card .service-logo,.orbit-card .fallback{width:26px;height:26px}.orbit-card strong{font-size:8px}.universe-brand img{width:69px;height:69px;border-radius:19px}.orbit-line-one{width:140px;height:140px}.orbit-line-two{width:210px;height:210px}.orbit-card-0{top:0}.orbit-card-1{top:14px}.orbit-card-2{bottom:8px}.orbit-card-3{bottom:0}.activity-section{margin-top:22px}.activity-section .grid{gap:12px}.expertise-card{padding:18px!important}.site-footer{padding:26px 16px 18px}.footer-grid{gap:20px}.footer-brand p{font-size:10px}.footer-grid>div>a{font-size:10px}.catalog-view-switch button{font-size:10px;min-height:34px;padding:8px 12px}}

.pack-dialog{width:min(650px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:21px;overflow:auto}.pack-dialog[open]{display:flex;flex-direction:column;gap:0}.pack-dialog-head{flex-shrink:0;align-items:flex-start;gap:15px}.pack-dialog-head h2{font-size:23px;line-height:1.2;margin:0 0 8px}.pack-dialog-price{display:block;font-size:23px;line-height:1.2;white-space:nowrap}.pack-dialog-price small{font-size:10px;font-weight:400;color:var(--muted)}.pack-dialog-head .icon{width:32px;height:32px;min-height:32px;padding:4px;border-radius:10px;font-size:20px}.pack-explanation{font-size:11px;margin:13px 0 0}.pack-explanation:empty{display:none}.pack-reveal{height:175px;min-height:145px;flex-shrink:1;margin:8px 0 0}.pack-revealed-service{top:10px;min-height:95px;padding:11px 8px;gap:7px}.pack-revealed-service img{width:30px;height:30px}.pack-revealed-service strong{font-size:9px}.pack-reveal .pack-gift{bottom:-35px;transform:scale(.48);opacity:.45}.pack-music-picker{flex-shrink:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;margin-top:8px}.pack-music-picker legend{font-size:10px}.pack-music-picker label{min-width:0!important;display:flex;align-items:center;gap:6px;padding:9px 7px;font-size:10px}.pack-music-picker img{width:23px;height:23px}.pack-music-picker input{width:14px;height:14px;min-height:0;margin:0;padding:0;flex-shrink:0}.pack-dialog-footer{position:sticky;bottom:-1px;flex-shrink:0;background:var(--bg);padding-top:13px;margin-top:13px;display:flex;justify-content:flex-end;border-top:1px solid var(--line)}.pack-dialog-footer .primary{width:100%;min-height:39px;padding:10px 14px;font-size:12px}.pack-feedback:empty{display:none}
@media(max-width:650px){.pack-dialog{padding:17px;border-radius:20px}.pack-dialog-head h2{font-size:21px}.pack-dialog-price{font-size:23px}.pack-reveal{height:auto;min-height:0;grid-template-columns:repeat(3,minmax(0,1fr));padding:13px 0 6px;gap:7px;flex-shrink:1}.pack-revealed-service{min-height:83px;padding:9px 5px;gap:6px;top:auto}.pack-revealed-service img{width:27px;height:27px}.pack-revealed-service strong{font-size:9px}.pack-revealed-service>span{font-size:8px}.pack-dialog[data-type=duo] .pack-reveal{min-height:0;padding:18px 0 12px;max-width:260px;width:100%;grid-template-columns:1fr 1fr;margin:0 auto}.pack-dialog[data-type=duo] .pack-revealed-service{min-height:101px}.pack-reveal .pack-gift{display:none}.pack-music-picker{padding:10px;gap:6px;margin-top:10px}.pack-music-picker label{flex-direction:column;position:relative;gap:6px;padding:10px 5px 8px;font-size:9px}.pack-music-picker input{align-self:flex-start;position:absolute;left:5px;top:5px}.pack-music-picker img{width:22px;height:22px;margin:4px 0}.pack-dialog-footer{flex-wrap:nowrap;gap:0;padding-top:12px;margin-top:12px}.pack-dialog-footer .primary{min-height:39px;width:100%}}

.pack-offer-card{grid-template-columns:100px minmax(0,1fr);padding:15px;gap:14px;min-height:142px}.pack-card-visual{width:100px;height:110px;min-height:0;padding:0;border:0;background:transparent;border-radius:14px;color:inherit;cursor:pointer}.pack-card-visual .pack-gift{transform:scale(.62)}.pack-card-info h3{font-size:19px;margin-bottom:10px}.pack-card-info .offer-price{font-size:21px;margin-bottom:12px}.pack-detail-card{max-width:490px;margin:20px auto}.pack-card-visual:focus-visible{outline:2px solid var(--blue);outline-offset:3px}@media(max-width:650px){.pack-offer-card{grid-template-columns:88px minmax(0,1fr);padding:12px;gap:12px;min-height:130px}.pack-card-visual{width:88px;height:98px}.pack-card-visual .pack-gift{transform:scale(.54)}.pack-card-info h3{font-size:18px}.pack-card-info .offer-price{font-size:20px}}

.pack-cart-mark{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:12px;background:var(--soft);color:var(--blue)}.pack-cart-mark svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

/* Balanced pack tiles, with a complete illustration and a dedicated action row. */
.pack-offer-grid{width:100%;max-width:880px;margin:0 auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.pack-offer-card{display:grid;grid-template-columns:112px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:12px 18px;min-height:185px;padding:18px;border-radius:19px}.pack-card-visual{display:flex;align-items:center;justify-content:center;width:112px;height:110px;min-height:110px;margin:0;padding:0;border:0;background:transparent!important;box-shadow:none!important;transform:none!important;overflow:visible;line-height:1}.pack-card-visual .pack-gift{width:108px;height:108px;flex-shrink:0;margin:0;transform:none;perspective:none}.pack-card-visual .pack-gift-body{width:86px;height:65px;left:11px;bottom:9px;border-radius:5px 5px 12px 12px}.pack-card-visual .pack-gift-lid{width:96px;height:20px;left:6px;top:19px;border-radius:5px}.pack-card-visual .pack-gift-body>span{font-size:16px}.pack-card-visual .pack-gift-body::before,.pack-card-visual .pack-gift-lid::before{left:calc(50% - 7px);width:14px}.pack-card-visual .pack-gift-glow{inset:3px;transform:scale(1.05)}.pack-card-info{display:flex;flex-direction:column;justify-content:center;align-self:stretch;min-width:0;padding:0}.pack-card-info h3{font-size:20px;line-height:1.2;margin:0 0 13px}.pack-card-info .offer-price{font-size:22px;line-height:1.3;margin:0;white-space:normal}.pack-card-info .offer-price small{display:inline;font-size:9px;white-space:nowrap}.pack-offer-card>.pack-open-button{grid-column:1/-1;width:100%;min-height:36px;padding:9px 12px;font-size:11px;margin:0;align-self:end;justify-content:space-between}
.hero-visual.brand-universe{width:100%;max-width:450px;min-height:300px;padding:0;justify-self:center}.brand-universe .orbit-card{width:103px;height:92px;min-height:92px;padding:11px;gap:7px}.brand-universe .orbit-card .service-logo,.brand-universe .orbit-card .fallback{width:32px;height:32px}.brand-universe .orbit-card strong{font-size:10px}.brand-universe .universe-brand img{width:86px;height:86px}.brand-universe .orbit-line-one{width:190px;height:190px}.brand-universe .orbit-line-two{width:275px;height:275px}.brand-universe .orbit-card-0{top:5px;left:0}.brand-universe .orbit-card-1{top:18px;right:0}.brand-universe .orbit-card-2{bottom:14px;left:0}.brand-universe .orbit-card-3{bottom:0;right:0}
@media(max-width:900px){.pack-offer-grid{gap:14px}.pack-offer-card{grid-template-columns:100px minmax(0,1fr);padding:16px;gap:12px}.pack-card-info h3{font-size:19px}.pack-card-info .offer-price{font-size:20px}.pack-card-visual{width:100px}.hero-visual.brand-universe{max-width:350px;min-height:275px}.brand-universe .orbit-card{width:88px;height:83px;min-height:83px;padding:9px}.brand-universe .universe-brand img{width:74px;height:74px}}
@media(max-width:650px){.pack-offer-grid{grid-template-columns:1fr;max-width:390px;gap:14px}.pack-offer-card{grid-template-columns:105px minmax(0,1fr);min-height:180px;padding:16px;gap:12px 15px}.pack-card-visual{width:105px;height:106px;min-height:106px}.pack-card-info h3{font-size:20px}.pack-card-info .offer-price{font-size:22px}.pack-offer-card>.pack-open-button{min-height:37px;font-size:11px}.hero-visual.brand-universe{max-width:320px;min-height:230px;margin:15px auto 0}.brand-universe .orbit-card{width:80px;height:74px;min-height:74px;padding:8px;gap:5px}.brand-universe .orbit-card .service-logo,.brand-universe .orbit-card .fallback{width:25px;height:25px}.brand-universe .orbit-card strong{font-size:8px}.brand-universe .universe-brand img{width:66px;height:66px}.brand-universe .orbit-line-one{width:145px;height:145px}.brand-universe .orbit-line-two{width:210px;height:210px}.brand-universe .orbit-card-0{top:1px}.brand-universe .orbit-card-1{top:14px}.brand-universe .orbit-card-2{bottom:9px}.brand-universe .orbit-card-3{bottom:0}}

.offer-card .offer-top{display:flex;align-items:center;justify-content:flex-start;gap:10px;margin:0 0 14px;min-width:0}.offer-card .offer-top h3{font-size:15px;line-height:1.3;margin:0;min-width:0;overflow-wrap:anywhere}.offer-card .offer-top .service-logo,.offer-card .offer-top .fallback{width:34px;height:34px;flex-shrink:0;border-radius:50%}.offer-card .offer-top img{border-radius:50%}.offer-card .offer-price{margin-top:0}@media(max-width:650px){.offer-card .offer-top{gap:8px;margin-bottom:12px}.offer-card .offer-top h3{font-size:13px}.offer-card .offer-top .service-logo,.offer-card .offer-top .fallback{width:29px;height:29px}}
/* Three-position offer showcase. */
.catalog-spotlight.spotlight-v2{display:block;min-height:0;padding:24px 30px 16px;margin:16px 0 24px;overflow:hidden;border-radius:24px;background:linear-gradient(120deg,var(--panel),var(--soft));isolation:isolate}.showcase-track{display:grid;grid-template-columns:minmax(65px,1fr) minmax(220px,2fr) minmax(65px,1fr);align-items:center;gap:24px;max-width:960px;margin:auto}.showcase-current{display:flex;align-items:center;flex-direction:column;min-width:0;padding:12px 0 18px}.showcase-current h2{font-size:25px;line-height:1.2;margin:15px 0 18px;text-align:center}.showcase-logo{width:124px;height:124px;border-radius:50%;display:grid;place-items:center;background:var(--panel);border:1px solid var(--line);box-shadow:0 9px 30px #0001;overflow:hidden}.showcase-logo img{width:82px;height:82px;border-radius:50%;object-fit:contain}.showcase-logo>span{font-size:26px;font-weight:700}.showcase-neighbor{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;background:transparent!important;box-shadow:none!important;border:0!important;color:var(--muted)!important;padding:12px!important;min-width:0;opacity:.65;transition:opacity .2s,transform .2s}.showcase-neighbor:hover,.showcase-neighbor:focus-visible{opacity:1;transform:translateY(-3px)}.showcase-neighbor>span{font-size:13px;text-align:center;overflow-wrap:anywhere}.showcase-neighbor .showcase-logo{width:78px;height:78px}.showcase-neighbor .showcase-logo img{width:52px;height:52px}.showcase-buy{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px 20px;width:100%}.showcase-buy>strong{font-size:25px;white-space:nowrap}.showcase-buy small{font-size:11px;font-weight:400}.showcase-buy .primary{font-size:12px;min-height:40px;padding:11px 17px}.showcase-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;border-top:1px solid var(--line)}.showcase-dots{display:flex;flex-wrap:wrap;gap:2px}.showcase-dots button{padding:6px!important;width:20px;height:24px;min-height:24px!important;border:0!important;background:transparent!important;box-shadow:none!important}.showcase-dots button span{display:block;width:6px;height:6px;border-radius:50%;background:var(--muted);opacity:.4}.showcase-dots button[aria-pressed=true] span{background:var(--blue);opacity:1;transform:scale(1.4)}.spotlight-v2 .spotlight-navigation{display:flex;gap:7px}.spotlight-v2 .spotlight-navigation button{width:33px;height:33px;min-height:33px;padding:0;font-size:14px;border-radius:50%}.showcase-gift{position:relative;width:124px;height:124px;display:grid;place-items:center}.showcase-gift .pack-gift{width:108px;height:108px;transform:none;margin:0}.showcase-gift .pack-gift-body{width:86px;height:65px;left:11px;bottom:9px;border-radius:6px 6px 13px 13px}.showcase-gift .pack-gift-lid{width:96px;height:20px;left:6px;top:19px;border-radius:5px}.showcase-gift .pack-gift-body span{font-size:16px}.showcase-gift .pack-gift-glow{inset:0}.showcase-pack-contents{display:flex;gap:7px;position:absolute;top:15px;left:50%;transform:translateX(-50%);pointer-events:none}.showcase-pack-contents>span{width:32px;height:32px;border-radius:50%;background:var(--panel);border:1px solid var(--line);display:grid;place-items:center;opacity:0;animation:showcase-content .65s .5s both}.showcase-pack-contents img{width:25px;height:25px;object-fit:contain;border-radius:50%}.showcase-music{color:var(--blue)}.showcase-gift.is-opening .pack-gift-lid{animation:showcase-lid .65s .15s both}.showcase-neighbor .showcase-gift{transform:scale(.7);margin:-14px 0}.showcase-current{animation:showcase-arrive .4s ease-out}@keyframes showcase-content{from{opacity:0;translate:0 26px;scale:.6}to{opacity:1;translate:0 -15px;scale:1}}@keyframes showcase-lid{to{transform:translateY(-38px) rotate(-14deg);opacity:.35}}@keyframes showcase-arrive{from{opacity:.35;translate:0 7px}to{opacity:1;translate:0 0}}
@media(max-width:650px){.catalog-spotlight.spotlight-v2{padding:18px 14px 12px;border-radius:21px;margin:12px 0 20px}.showcase-track{grid-template-columns:48px minmax(0,1fr) 48px;gap:10px}.showcase-current{padding:8px 0 16px}.showcase-current h2{font-size:19px;margin:13px 0}.showcase-current .showcase-logo{width:94px;height:94px}.showcase-current .showcase-logo img{width:66px;height:66px}.showcase-neighbor{padding:0!important;gap:9px}.showcase-neighbor .showcase-logo{width:43px;height:43px}.showcase-neighbor .showcase-logo img{width:32px;height:32px}.showcase-neighbor>span{font-size:9px;line-height:1.35}.showcase-buy{gap:10px;flex-direction:column}.showcase-buy>strong{font-size:21px}.showcase-buy small{font-size:9px}.showcase-buy .primary{min-height:36px;padding:10px 12px;font-size:10px;white-space:nowrap}.showcase-neighbor .showcase-gift{transform:scale(.43);width:44px;margin:-25px 0}.showcase-footer{gap:5px}.showcase-dots{max-width:55%;gap:0}.showcase-dots button{width:15px;padding:4px!important}.spotlight-v2 .spotlight-navigation{gap:4px}.spotlight-v2 .spotlight-navigation button{width:29px;height:29px;min-height:29px}.showcase-current .showcase-gift{height:105px}}
@media(prefers-reduced-motion:reduce){.showcase-current,.showcase-gift.is-opening .pack-gift-lid,.showcase-pack-contents>span{animation:none}.showcase-pack-contents>span{opacity:1;translate:0 -15px}.showcase-gift.is-opening .pack-gift-lid{transform:translateY(-38px)}}
.showcase-gift{isolation:isolate}.showcase-gift>.pack-gift{z-index:1}.showcase-pack-contents{z-index:3;top:2px}.showcase-pack-contents>span{box-shadow:0 3px 10px #0002}.showcase-gift.is-opening .pack-gift-lid{z-index:2}
.showcase-neighbor>span{max-width:100%}@media(max-width:650px){.showcase-neighbor>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}}
/* Active offer zoom uses transforms only: no reflow of the surrounding cards. */
.spotlight-v2{--spotlight-zoom:1.07}.spotlight-v2 .showcase-current{transform-origin:50% 50%;animation:showcase-arrive .4s ease-out,showcase-focus 8s ease-in-out both}.spotlight-v2[data-playing=false] .showcase-current,.spotlight-v2[data-hover=true] .showcase-current,.spotlight-v2:focus-within .showcase-current{animation-play-state:paused}@keyframes showcase-focus{0%{scale:1}75%,88%{scale:var(--spotlight-zoom)}100%{scale:1}}@media(max-width:650px){.spotlight-v2{--spotlight-zoom:1.04}}@media(prefers-reduced-motion:reduce){.spotlight-v2 .showcase-current{animation:none;scale:1}}
.catalog-unavailable{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:16px 0;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:var(--card);font-size:13px}.catalog-unavailable button{min-height:36px;padding:9px 14px;white-space:nowrap}
[data-admin-access][hidden]{display:none!important}

/* Original decorative media scenes, no implied playback or catalogue availability. */
.service-scene{position:relative;box-sizing:border-box;width:min(260px,100%);height:166px;border:1px solid var(--line);border-radius:18px;padding:13px;background:var(--panel);overflow:hidden;isolation:isolate}.scene-service{display:flex;align-items:center;gap:8px;position:relative;z-index:3;font-size:12px;font-weight:600;min-width:0}.scene-service>img{width:25px;height:25px;object-fit:contain;border-radius:50%}.scene-service>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scene-equalizer{display:flex;align-items:center;gap:2px;margin-left:auto;height:17px}.scene-equalizer i,.music-spectrum i{display:block;width:3px;height:100%;border-radius:3px;background:var(--blue);transform-origin:50% 50%;animation:media-beat 1.4s ease-in-out infinite alternate;animation-delay:calc(var(--i)*-127ms)}.music-artwork{width:67px;height:67px;margin:10px auto 8px;position:relative}.music-artwork>svg{position:relative;z-index:2;width:67px;height:67px;object-fit:cover;border-radius:10px}.music-vinyl{position:absolute;width:60px;height:60px;border-radius:50%;right:-22px;top:4px;background:repeating-radial-gradient(circle,#10171d 0 3px,#34414c 4px 5px);box-shadow:0 3px 8px #0002;animation:media-vinyl 8s linear infinite}.music-vinyl:after{content:'';position:absolute;inset:24px;background:var(--blue);border-radius:50%}.music-spectrum{display:flex;align-items:center;justify-content:center;gap:5px;height:15px}.scene-scan{position:absolute;left:0;right:0;height:1px;top:0;background:var(--blue);opacity:.18;pointer-events:none;animation:media-scan 4s ease-in-out infinite}.cinema-posters{position:relative;height:111px;margin-top:8px;perspective:600px}.cinema-poster{position:absolute;width:64px;height:94px;top:6px;left:calc(50% - 32px);border-radius:8px;overflow:hidden;border:1px solid #ffffff20;box-shadow:0 6px 13px #0003;animation:poster-arrive .6s both}.cinema-poster svg{width:100%;height:100%;object-fit:cover}.poster-0{--poster-x:-61px;--poster-angle:-13deg;z-index:1;animation-delay:.08s}.poster-1{--poster-x:0px;--poster-angle:0deg;z-index:3;top:0;animation-delay:.16s}.poster-2{--poster-x:61px;--poster-angle:13deg;z-index:2;animation-delay:.24s}@keyframes poster-arrive{from{opacity:0;transform:translateX(0) scale(.8)}to{opacity:1;transform:translateX(var(--poster-x)) rotate(var(--poster-angle))}}@keyframes media-beat{0%{scale:1 .25}45%{scale:1 .9}100%{scale:1 .45}}@keyframes media-vinyl{to{rotate:360deg}}@keyframes media-scan{to{translate:0 168px}}
.spotlight-v2[data-playing=false] .service-scene *,.spotlight-v2[data-hover=true] .service-scene *{animation-play-state:paused}
@media(max-width:650px){.service-scene{height:150px;padding:10px;border-radius:14px}.scene-service{font-size:10px;gap:5px}.scene-service>img{width:21px;height:21px}.scene-equalizer{gap:1px}.scene-equalizer i{width:2px}.music-artwork{margin-top:8px}.music-spectrum{gap:3px}.cinema-poster{width:48px;height:78px;left:calc(50% - 24px)}.poster-0{--poster-x:-35px}.poster-2{--poster-x:35px}.cinema-posters{height:92px}.showcase-current:has(.service-scene){min-width:0}}
@media(prefers-reduced-motion:reduce){.service-scene *{animation:none!important}.cinema-poster{opacity:1;transform:translateX(var(--poster-x)) rotate(var(--poster-angle))}.scene-scan{display:none}.music-spectrum i,.scene-equalizer i{scale:1 .6}}

/* Coffret JMB : même construction dans les cartes, le carrousel et la fiche. */
.pack-gift{isolation:isolate;filter:drop-shadow(0 9px 8px #0003)}
.pack-gift>.pack-gift-body{width:74%;height:49%;left:13%;top:38%;bottom:auto;border-radius:3px 3px 9px 9px;border:1px solid #6a747b;background:linear-gradient(125deg,#2d3338,#111619 75%);box-shadow:7px 8px 0 #0b1013;transform:rotate(-9deg) skewY(5deg);overflow:hidden}
.pack-gift>.pack-gift-body::before{inset:5px 5px 23px;width:auto;background:linear-gradient(140deg,color-mix(in srgb,var(--blue) 55%,#171c20),color-mix(in srgb,var(--blue) 25%,#171c20));clip-path:polygon(0 0,100% 0,100% 100%,50% 76%,0 100%);border:1px solid #ffffff15}
.pack-gift>.pack-gift-body::after{content:'';position:absolute;inset:5px 5px 23px;background:linear-gradient(25deg,transparent 49%,#080d1244 50%,transparent 51%)}
.pack-gift>.pack-gift-body>span{position:absolute;bottom:6px;font-size:11px;letter-spacing:.16em;color:#e8eef3;font-weight:600;text-shadow:none}
.pack-gift>.pack-gift-lid{box-sizing:border-box;width:80%;height:49%;left:10%;top:26%;border-radius:4px;border:1px solid #646e75;background:linear-gradient(135deg,#373e43,#171c20 70%);transform:rotate(-9deg) skewY(5deg);box-shadow:5px 6px 0 #101619,0 5px 8px #0004;display:grid;place-items:center;z-index:4}
.pack-gift>.pack-gift-lid::before{inset:4px;width:auto;background:repeating-linear-gradient(0deg,#ffffff02 0 1px,transparent 1px 3px);border:1px solid #ffffff05}
.pack-gift-lid>.pack-case-brand{position:relative;z-index:1;width:35%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:24%;opacity:.94}
.pack-gift>.pack-gift-glow{display:none}
.showcase-gift.is-opening .pack-gift-lid,.pack-dialog[open] .pack-reveal .pack-gift-lid{animation:coffret-open .85s .15s cubic-bezier(.2,.7,.2,1) both;z-index:2}
.pack-reveal .pack-gift{opacity:1}.showcase-pack-contents{top:8px}
@keyframes coffret-open{from{transform:rotate(-9deg) skewY(5deg);opacity:1}to{transform:translate(26px,-43px) rotate(13deg) skewY(5deg);opacity:.76}}
@media(prefers-reduced-motion:reduce){.showcase-gift.is-opening .pack-gift-lid,.pack-dialog[open] .pack-reveal .pack-gift-lid{animation:none;transform:translate(26px,-43px) rotate(13deg) skewY(5deg)}}
/* La surface des deux coffrets reste anthracite, quel que soit le pack. */
.pack-offer-card[data-pack] .pack-gift>.pack-gift-body,.pack-dialog[data-type] .pack-gift>.pack-gift-body{background:linear-gradient(125deg,#2d3338,#111619 75%);box-shadow:7px 8px 0 #0b1013}
.pack-offer-card[data-pack] .pack-gift>.pack-gift-lid,.pack-dialog[data-type] .pack-gift>.pack-gift-lid{background:linear-gradient(135deg,#373e43,#171c20 70%)}

.cinema-poster-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center;background:#151a1e}

.cinema-poster-image.poster-logo{object-fit:contain;box-sizing:border-box;padding:7px;background:var(--panel)}

.music-artwork:has(.music-cover-image){width:92px;height:75px;margin:6px auto}.music-cover-image{position:relative;z-index:2;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 8%;border-radius:10px;box-shadow:0 4px 10px #0003}.music-artwork:has(.music-cover-image) .music-vinyl{top:8px}
@media(max-width:650px){.music-artwork:has(.music-cover-image){width:84px;height:68px;margin:5px auto}}

/* Fluidité : éviter le recalcul du flou sur toutes les cartes au défilement. */
.card,.offer-card,.pack-offer-card,.client-kpi,.client-dossier,.service-scene{backdrop-filter:none;-webkit-backdrop-filter:none}.service-scene{contain:layout paint}.showcase-current .music-vinyl,.showcase-current .music-spectrum i,.showcase-current .scene-equalizer i{will-change:auto}
@media(hover:none){.card:hover,.offer-card:hover,.client-kpi:hover{transform:none}}

.profile-editor{max-width:620px;margin:16px auto}.profile-editor h1{font-size:28px}.profile-editor .card{display:grid;gap:16px}.profile-editor .field{display:grid;gap:7px}.legal-document,.about-jmb{max-width:1000px;margin:auto}.legal-document h1,.about-jmb h1{font-size:clamp(27px,4vw,40px)}.legal-document h2,.about-jmb h2{font-size:20px;margin-top:25px}.legal-document p,.about-jmb p{line-height:1.8;font-size:14px}.legal-nav{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}.legal-nav .button{font-size:11px;padding:9px 11px}

.profile-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.profile-heading h1{margin:0}.profile-heading .client-icon-button{flex:0 0 40px;width:40px;height:40px;display:grid;place-items:center}.profile-heading svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.8;fill:none}

.catalog-view-switch{flex-wrap:wrap}.offer-description{line-height:1.6;font-size:12px}

/* Carrousel : transitions courtes, rendu isolé et préchargement discret des voisins. */
.catalog-spotlight.spotlight-v2{contain:layout paint;backface-visibility:hidden;transform:translateZ(0)}
.spotlight-v2 .showcase-track{min-height:210px;contain:layout paint;transition:opacity .18s ease,transform .18s ease}
.spotlight-v2.is-changing .showcase-track{opacity:.62;transform:translate3d(0,4px,0) scale(.997)}
.spotlight-v2 .showcase-current{contain:layout paint;will-change:transform,opacity}
.spotlight-v2 .showcase-neighbor{will-change:transform,opacity;transition:opacity .16s ease,transform .16s ease}
.spotlight-v2 .showcase-current .cinema-poster-image,.spotlight-v2 .showcase-current .music-cover-image{backface-visibility:hidden}
.spotlight-v2 img{image-rendering:auto}
@media(prefers-reduced-motion:reduce){.spotlight-v2 .showcase-track{transition:none}.spotlight-v2.is-changing .showcase-track{opacity:1;transform:none}}

html{overflow-anchor:none}html.jmb-booting body>header,html.jmb-booting body>main,html.jmb-booting body>footer{visibility:hidden;pointer-events:none}html.jmb-booting .commerce-contact-float,body.login-mode .commerce-contact-float{display:none!important}.nav-symbol svg{display:block;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.google-mark{width:22px;height:22px;border-radius:50%;object-fit:contain}

/* Carrousel fluide : rotation courte et transition synchronisée. */
.spotlight-v2 .showcase-track{transition:opacity .24s ease,transform .24s ease}
.spotlight-v2 .showcase-current{animation:showcase-arrive .35s ease-out,showcase-focus 5s ease-in-out both}
.spotlight-v2.is-changing .showcase-track{opacity:.7;transform:translate3d(0,3px,0) scale(.998)}
@media(prefers-reduced-motion:reduce){.spotlight-v2 .showcase-current{animation:none}.spotlight-v2.is-changing .showcase-track{opacity:1;transform:none}}

/* Services vivants : profondeur légère, feedback clair et interaction stable. */
.offer-card,.pack-offer-card{position:relative;isolation:isolate;will-change:transform;transition:transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s ease,border-color .24s ease,background-color .24s ease}
.offer-card::after,.pack-offer-card::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;background:linear-gradient(112deg,transparent 25%,color-mix(in srgb,var(--blue) 12%,transparent) 50%,transparent 75%);transform:translateX(-120%);transition:opacity .2s ease}
.offer-card:hover,.offer-card:focus-within,.pack-offer-card:hover,.pack-offer-card:focus-within{transform:translateY(-6px);border-color:color-mix(in srgb,var(--blue) 62%,var(--line));box-shadow:0 18px 38px color-mix(in srgb,var(--blue) 13%,transparent)}
.offer-card:hover::after,.offer-card:focus-within::after,.pack-offer-card:hover::after,.pack-offer-card:focus-within::after{opacity:1;animation:service-sheen .72s ease-out both}
.offer-card .offer-top .service-logo,.offer-card .offer-top .fallback{transition:transform .24s ease,box-shadow .24s ease}
.offer-card:hover .offer-top .service-logo,.offer-card:hover .offer-top .fallback,.offer-card:focus-within .offer-top .service-logo,.offer-card:focus-within .offer-top .fallback{transform:scale(1.08) rotate(-2deg);box-shadow:0 7px 16px color-mix(in srgb,var(--blue) 18%,transparent)}
.offer-card .offer-foot .button,.offer-card .offer-foot button,.pack-offer-card .pack-open-button{transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
.offer-card:hover .offer-foot .button,.offer-card:focus-within .offer-foot .button,.offer-card:hover .offer-foot button,.offer-card:focus-within .offer-foot button,.pack-offer-card:hover .pack-open-button,.pack-offer-card:focus-within .pack-open-button{transform:translateY(-2px)}
.offer-card .offer-price,.pack-offer-card .offer-price{transition:color .2s ease,transform .2s ease}
.offer-card:hover .offer-price,.offer-card:focus-within .offer-price,.pack-offer-card:hover .offer-price,.pack-offer-card:focus-within .offer-price{color:var(--blue);transform:translateX(2px)}
.spotlight-v2 .showcase-current{transition:filter .24s ease}
.spotlight-v2 .showcase-current:hover{filter:brightness(1.04)}
.spotlight-v2 .showcase-neighbor svg,.spotlight-v2 .spotlight-navigation svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.spotlight-v2 .spotlight-navigation button{display:grid;place-items:center}
@keyframes service-sheen{from{transform:translateX(-120%)}to{transform:translateX(120%)}}
@media(hover:none){.offer-card:hover,.offer-card:focus-within,.pack-offer-card:hover,.pack-offer-card:focus-within{transform:none;box-shadow:var(--shadow)}.offer-card:hover::after,.offer-card:focus-within::after,.pack-offer-card:hover::after,.pack-offer-card:focus-within::after{animation:none;opacity:0}}
@media(max-width:650px){.offer-card,.pack-offer-card{will-change:auto}.offer-card:hover .offer-top .service-logo,.offer-card:hover .offer-top .fallback{transform:none}.spotlight-v2 .showcase-current:hover{filter:none}}
@media(prefers-reduced-motion:reduce){.offer-card::after,.pack-offer-card::after{display:none}.offer-card,.pack-offer-card,.offer-card .offer-top .service-logo,.offer-card .offer-top .fallback,.offer-card .offer-foot .button,.offer-card .offer-foot button,.pack-offer-card .pack-open-button,.offer-card .offer-price,.pack-offer-card .offer-price{transition:none!important}.offer-card:hover .offer-price,.offer-card:focus-within .offer-price,.pack-offer-card:hover .offer-price,.pack-offer-card:focus-within .offer-price{transform:none}}

/* Univers d'offres : orbite dynamique, future-proof pour les services ajoutés dans l'admin. */
.brand-universe{contain:layout paint;min-height:clamp(360px,42vw,540px);perspective:900px;perspective-origin:50% 48%}
.orbit-services{position:absolute;inset:0;z-index:1;animation:jmb-orbit-spin 44s linear infinite;transform-origin:50% 48%;transform-style:preserve-3d;will-change:transform}
.orbit-service{position:absolute;left:var(--orbit-left);top:var(--orbit-top);width:clamp(92px,10vw,145px);min-height:clamp(84px,9vw,128px);padding:clamp(9px,1.2vw,15px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transform:translate(-50%,-50%) translateZ(var(--orbit-depth,0px)) rotateY(var(--orbit-tilt,0deg));transform-style:preserve-3d;border:1px solid var(--line);border-radius:clamp(14px,1.6vw,22px);background:color-mix(in srgb,var(--card) 86%,transparent);color:var(--text);box-shadow:0 12px 30px rgba(11,26,42,.10);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);text-align:center;animation:jmb-orbit-counter 44s linear infinite,jmb-orbit-focus 44s ease-in-out infinite;animation-delay:var(--orbit-delay),var(--orbit-focus-delay);transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease,background .24s ease}
.orbit-service:hover,.orbit-service:focus-visible{z-index:3;transform:translate(-50%,-50%) translateZ(28px) rotateY(0deg) scale(1.1);border-color:var(--jmb-accent,var(--blue));background:var(--card);box-shadow:0 22px 42px rgba(var(--jmb-accent-rgb,30,144,255),.22);outline:none}
.orbit-service .service-logo,.orbit-service .fallback{width:clamp(30px,3.4vw,52px);height:clamp(30px,3.4vw,52px);border-radius:clamp(8px,1vw,13px);object-fit:contain;flex:0 0 auto}
.orbit-service strong{max-width:100%;font-size:clamp(9px,1vw,12px);line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.orbit-services:hover,.orbit-services:focus-within{animation-play-state:paused}.orbit-services:hover .orbit-service,.orbit-services:focus-within .orbit-service{animation-play-state:paused}
@keyframes jmb-orbit-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes jmb-orbit-counter{from{transform:translate(-50%,-50%) translateZ(var(--orbit-depth,0px)) rotateY(var(--orbit-tilt,0deg)) rotate(0deg)}to{transform:translate(-50%,-50%) translateZ(var(--orbit-depth,0px)) rotateY(var(--orbit-tilt,0deg)) rotate(-360deg)}}
@keyframes jmb-orbit-focus{0%,35%,100%{scale:1;filter:saturate(.92) brightness(.98)}45%,56%{scale:1.13;filter:saturate(1.12) brightness(1.08)}}
@media(min-width:1500px){.brand-universe{min-height:560px}.orbit-service{width:150px;min-height:132px}.universe-brand img{width:150px;height:150px}.orbit-line-one{width:360px;height:360px}.orbit-line-two{width:500px;height:500px}}
@media(max-width:760px){.brand-universe{min-height:390px;margin-top:20px}.orbit-service{width:clamp(76px,24vw,108px);min-height:76px;padding:8px;gap:5px;border-radius:14px}.orbit-service strong{font-size:9px}.orbit-service .service-logo,.orbit-service .fallback{width:34px;height:34px}.orbit-services{animation-duration:52s}.orbit-service{animation-duration:52s}.orbit-line-one{width:205px;height:205px}.orbit-line-two{width:310px;height:310px}}
@media(max-width:430px){.brand-universe{min-height:340px}.orbit-service{width:73px;min-height:68px;padding:6px}.orbit-service .service-logo,.orbit-service .fallback{width:28px;height:28px}.orbit-service strong{font-size:8px}.orbit-line-one{width:170px;height:170px}.orbit-line-two{width:260px;height:260px}.universe-brand img{width:78px;height:78px;border-radius:20px}}
@media(prefers-reduced-motion:reduce){.orbit-services,.orbit-service{animation:none!important}.orbit-service,.orbit-service:hover,.orbit-service:focus-visible{transition:none;transform:translate(-50%,-50%) translateZ(0) rotateY(0)}}

/* Orbite 3D compacte : chaque service reste lisible sans toucher le cadre, quelle que soit la résolution. */
.brand-universe{overflow:hidden;isolation:isolate;perspective:1100px;perspective-origin:50% 48%;background:radial-gradient(ellipse at 50% 48%,color-mix(in srgb,var(--jmb-accent,var(--blue)) 8%,transparent),transparent 68%)}
.orbit-services{inset:5% 4% 4%;transform-style:preserve-3d}
.universe-brand{z-index:4;pointer-events:none}
.orbit-service{width:clamp(68px,6.2vw,110px);min-height:clamp(62px,5.8vw,96px);padding:7px;gap:5px;border-color:transparent;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;backface-visibility:hidden;pointer-events:auto;text-shadow:0 1px 10px color-mix(in srgb,var(--jmb-bg,#0f151b) 75%,transparent)}
.orbit-service:hover,.orbit-service:focus-visible{animation-play-state:paused;transform:translate(-50%,-50%) translateZ(34px) rotateY(0deg) scale(1.12);border-color:transparent;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.orbit-service:focus-visible{outline:2px solid var(--jmb-accent,var(--blue));outline-offset:5px;border-radius:50%}
.orbit-service .service-logo,.orbit-service .fallback{width:clamp(29px,2.9vw,46px);height:clamp(29px,2.9vw,46px)}
.orbit-service .service-logo,.orbit-service .fallback{transition:transform .24s ease,filter .24s ease}
.orbit-service:hover .service-logo,.orbit-service:focus-visible .service-logo,.orbit-service:hover .fallback,.orbit-service:focus-visible .fallback{transform:scale(1.12);filter:drop-shadow(0 5px 12px color-mix(in srgb,var(--jmb-accent,var(--blue)) 34%,transparent))}
.orbit-service strong{display:none}
.orbit-line{border-color:color-mix(in srgb,var(--jmb-accent,var(--blue)) 26%,var(--line));opacity:.52}
.universe-brand img{box-shadow:0 20px 58px color-mix(in srgb,var(--jmb-accent,var(--blue)) 18%,transparent)}
.theme-toggle .theme-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(min-width:1500px){.orbit-services{inset:8% 8% 7%}.orbit-service{width:clamp(82px,5.5vw,110px);min-height:clamp(74px,5vw,96px)}}
@media(max-width:760px){.brand-universe{min-height:370px}.orbit-services{inset:5% 3% 4%;animation-duration:52s}.orbit-service{width:clamp(68px,20vw,94px);min-height:clamp(62px,18vw,86px);padding:6px;gap:4px}.orbit-service .service-logo,.orbit-service .fallback{width:32px;height:32px}.orbit-service strong{font-size:8px}.orbit-line-one{width:190px;height:190px}.orbit-line-two{width:285px;height:285px}}
@media(max-width:430px){.brand-universe{min-height:320px}.orbit-services{inset:4% 2% 3%}.orbit-service{width:66px;min-height:60px;padding:5px}.orbit-service .service-logo,.orbit-service .fallback{width:28px;height:28px}.orbit-service strong{font-size:7.5px}.orbit-line-one{width:165px;height:165px}.orbit-line-two{width:245px;height:245px}}

/* Dernier niveau de fluidité : une seule animation composite pour l'orbite,
   sans flou ni filtre par élément. Le clic reste porté par chaque logo. */
.brand-universe.jmb-offscreen .orbit-services,.catalog-spotlight.jmb-offscreen .showcase-track{animation-play-state:paused!important}
.brand-universe .orbit-services{contain:layout paint;transform:translateZ(0);backface-visibility:hidden}
.brand-universe .orbit-service{animation:jmb-orbit-counter 52s linear infinite;filter:none;will-change:transform;contain:layout paint}
.brand-universe .orbit-service:hover,.brand-universe .orbit-service:focus-visible{filter:none;will-change:transform}
.theme-toggle{display:inline-grid;place-items:center;width:44px;min-width:44px;height:44px;padding:10px}
.theme-toggle .theme-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:760px){.brand-universe .orbit-services{inset:7% 5% 6%}.brand-universe .orbit-service{animation-duration:58s;will-change:auto}.theme-toggle{width:40px;min-width:40px;height:40px;padding:9px}}
@media(prefers-reduced-motion:reduce){.brand-universe .orbit-service{animation:none!important;will-change:auto}.brand-universe .orbit-services{animation:none!important}}
/* Champ anti-robot invisible pour les vrais visiteurs et ignoré par les
   technologies d'assistance. Il reste hors écran mais présent dans le DOM. */
.security-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;padding:0!important;margin:0!important}
