/* Keep the emblem, eight tabs and account controls together on desktop. */
:is(body.home-photo,body.metier-photo,body) .site-header .header-cart {
  position:relative;
  flex:0 0 44px;
  width:44px;
  min-width:44px;
  padding:0;
}
:is(body.home-photo,body.metier-photo,body) .site-header .header-cart svg {
  display:block;
  width:21px;
  height:21px;
}
.site-header .header-cart-count {
  position:absolute;
  top:-7px;
  right:-4px;
  border:2px solid #15364d;
  line-height:1;
  pointer-events:none;
}
@media (min-width:981px) and (max-width:1399px) {
  :is(body.home-photo,body.metier-photo,body) .site-header {
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:8px;
    padding:10px 14px;
  }
  :is(body.home-photo,body.metier-photo,body) .site-header .public-header-actions {
    grid-row:1;
    grid-column:3;
    gap:4px;
  }
  :is(body.home-photo,body.metier-photo,body) .site-header .main-nav {
    grid-row:1;
    grid-column:2;
  }
  :is(body.home-photo,body.metier-photo,body) .site-header .main-nav>a {
    flex:1 1 auto;
    padding:9px 4px;
    font-size:clamp(13px,1.13vw,15px);
    line-height:1.25;
  }
  :is(body.home-photo,body.metier-photo,body) .site-header .header-action:not(.header-cart) {
    padding:8px;
  }
}
@media (min-width:981px) and (max-width:1199px) {
  :is(body.home-photo,body.metier-photo,body) .site-header {padding:8px 10px;gap:5px}
  :is(body.home-photo,body.metier-photo,body) .site-header .brand {gap:7px}
  :is(body.home-photo,body.metier-photo,body) .site-header .brand-emblem {width:51px;height:51px;flex-basis:51px}
  :is(body.home-photo,body.metier-photo,body) .site-header .brand-word {font-size:24px}
  :is(body.home-photo,body.metier-photo,body) .site-header .brand-word small {font-size:10px}
  :is(body.home-photo,body.metier-photo,body) .site-header .header-action:not(.header-cart) {padding:7px;font-size:13px}
  :is(body.home-photo,body.metier-photo,body) .site-header .main-nav :is(#tab-logiciel,#tab-applications) {
    white-space:normal;
    max-width:91px;
  }
}
#panel-applications {
  padding:0;
  background:#0a2135;
  color:#eef6ff;
}
.applications-hero {
  padding:clamp(32px,5vw,80px) 6%;
  border-top:4px solid #61d5e4;
  border-bottom:1px solid #58819a;
  background:linear-gradient(90deg,#0a2237 10%,#0a2237f2 38%,#0a2237bc 60%,#0a223729 100%),
    url('/assets/v45-metier-developpement.png') right 47% / cover no-repeat;
}
.applications-heading {max-width:670px}
.applications-heading .v10-eyebrow {margin:0 0 18px;color:#94e4f3}
.applications-heading h2 {margin:0}
#panel-applications .applications-heading em {color:#8de5ef}
.applications-heading>p:last-child {max-width:560px;margin:18px 0 0;font-size:clamp(16px,1.4vw,21px);line-height:1.6;color:#e8f2fc}
.applications-catalogue {padding:clamp(24px,3.6vw,58px) 6% clamp(35px,6vw,90px);min-height:170px}
#public-applications-list {display:grid;gap:16px}
.application-card {
  --app-accent:100,226,172;
  --app-surface:#14514f;
  --app-base:#0e2d42;
  --app-ink:#07332a;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-items:center;
  gap:clamp(14px,2.3vw,38px);
  padding:clamp(17px,2.5vw,34px);
  border:1px solid rgba(var(--app-accent),.48);
  border-top:3px solid rgb(var(--app-accent));
  border-radius:18px;
  background:linear-gradient(115deg,var(--app-surface),var(--app-base) 87%);
  box-shadow:inset 0 1px #ffffff18,0 14px 30px #00122235;
}
.application-card:nth-child(4n+2) {
  --app-accent:241,191,99;
  --app-surface:#4b4434;
  --app-base:#192f42;
  --app-ink:#392c10;
}
.application-card:nth-child(4n+3) {
  --app-accent:106,204,255;
  --app-surface:#174e70;
  --app-base:#112b45;
  --app-ink:#102c41;
}
.application-card:nth-child(4n) {
  --app-accent:193,165,248;
  --app-surface:#463a66;
  --app-base:#232943;
  --app-ink:#302442;
}
.application-card.has-icon {grid-template-columns:auto minmax(0,1fr)}
.application-card.has-store {grid-template-columns:minmax(0,1fr) auto}
.application-card.has-icon.has-store {grid-template-columns:auto minmax(0,1fr) auto}
.application-icon {
  align-self:start;
  width:clamp(112px,10vw,160px);
  height:auto;
  aspect-ratio:1/1;
  object-fit:contain;
  border-radius:21%;
  background:#0e2436;
}
.application-icon-link {display:block;align-self:start;line-height:0;border-radius:21%}
.application-icon-link:focus-visible {outline:3px solid #8de5ef;outline-offset:4px}
.application-details {align-self:start;min-width:0;overflow-wrap:anywhere}
#panel-applications .application-details h3 {font-size:clamp(21px,2vw,30px);margin:0}
.application-description {margin:12px 0 0;white-space:pre-line;font-size:clamp(15px,1.2vw,18px);line-height:1.55;color:#e2edf5}
.application-devices {display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:8px 0 0}
.application-devices li {border:1px solid rgba(var(--app-accent),.48);border-radius:20px;background:#071f2a44;color:rgb(var(--app-accent));padding:2px 9px;font-size:13px}
#panel-applications .application-store {
  white-space:normal;
  text-align:center;
  color:var(--app-ink);
  text-shadow:none;
  border:1px solid rgb(var(--app-accent));
  background:linear-gradient(180deg,rgba(255,255,255,.33),transparent 75%),rgb(var(--app-accent));
  box-shadow:inset 0 2px 1px #ffffff77,0 4px 0 rgba(var(--app-accent),.35),0 8px 16px #00172460;
}
.application-card:focus-within {
  border-color:rgb(var(--app-accent));
  box-shadow:0 0 0 2px rgba(var(--app-accent),.26),0 16px 30px #00122265;
}
.application-card a:focus-visible {outline:3px solid #fff;outline-offset:4px}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .application-card {transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
  .application-icon {transition:transform .35s ease}
  #panel-applications .application-store {transition:transform .2s ease,filter .2s ease}
  .application-card:hover {
    transform:translateY(-4px);
    border-color:rgb(var(--app-accent));
    box-shadow:0 0 0 2px rgba(var(--app-accent),.18),0 20px 38px #00122275;
  }
  .application-card:hover .application-icon {transform:scale(1.025)}
  #panel-applications .application-store:hover {filter:brightness(1.07);transform:translateY(-1px)}
}
@media (hover:none), (pointer:coarse), (prefers-reduced-motion:reduce) {
  #panel-applications .application-store {transition:none;transform:none}
}
.applications-status {font-size:17px;margin:0;color:#d4e9f4}
.applications-status:empty {display:none}
#public-applications-retry {margin-top:14px}
@media (max-width:700px) {
  .applications-hero {background-image:linear-gradient(90deg,#0a2237ee,#0a2237d6 60%,#0a2237be),url('/assets/v45-metier-developpement.png')}
  .application-card,.application-card.has-store {grid-template-columns:minmax(0,1fr);align-items:start}
  .application-card.has-icon,.application-card.has-icon.has-store {grid-template-columns:auto minmax(0,1fr)}
  .application-icon {width:clamp(76px,16vw,112px)}
  .application-store {grid-column:1/-1;justify-self:start}
}
@media (min-width:1400px) and (max-width:1699px) {
  :is(body.home-photo,body.metier-photo,body) .site-header {
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:12px;
    padding-inline:20px;
  }
  :is(body.home-photo,body.metier-photo,body) .site-header .main-nav>a {padding-inline:6px}
}
@media (min-width:981px) and (max-width:1099px) {
  :is(body.home-photo,body.metier-photo,body) .site-header .header-action:not(.header-cart) svg {display:none}
  :is(body.home-photo,body.metier-photo,body) .site-header .main-nav>a {
    flex:1 0 auto;
    padding-inline:2px;
  }
  :is(body.home-photo,body.metier-photo,body) .site-header .main-nav :is(#tab-metier,#tab-logiciel,#tab-applications) {
    flex:0 1 auto;
    white-space:normal;
    min-width:min-content;
  }
}
.application-store::after {
  content:'';
  width:.64em;
  height:.64em;
  border-top:2px solid currentColor;
  border-right:2px solid currentColor;
  background:linear-gradient(135deg,transparent 44%,currentColor 45% 58%,transparent 59%);
}

/* V95 · One shared identity, only the platforms actually supplied. */
.application-card {display:block;padding:clamp(18px,2.2vw,30px);}
.application-heading-area {display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start;}
.application-heading-area.has-icon {grid-template-columns:auto minmax(0,1fr);}
.application-icon {width:clamp(100px,9vw,128px);}
.application-platform-list {display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin-top:22px;padding-top:19px;border-top:1px solid rgba(var(--app-accent),.25);}
.application-platform-list.has-both {grid-template-columns:repeat(2,minmax(0,1fr));}
.application-platform {display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0;padding:0 4px;}
.application-platform-list.has-both .application-platform:first-child {padding-right:24px;}
.application-platform-list.has-both .application-platform+.application-platform {padding-left:24px;border-left:1px solid rgba(var(--app-accent),.7);box-shadow:-7px 0 12px -13px rgb(var(--app-accent));}
.application-platform-copy {min-width:0;}
#panel-applications .application-platform h4 {font-size:19px;line-height:1.25;color:#fff;margin:0 0 4px;}
.application-platform .application-devices {margin:6px 0 10px;}
.application-platform .application-devices li {font-size:14px;line-height:1.4;}
.application-store-badge {display:inline-flex;max-width:100%;padding:11px;border:1px solid #d3b16a;border-radius:13px;background:linear-gradient(145deg,#252e36,#101820);box-shadow:0 3px 12px #0003,inset 0 1px #f3dc9b66;vertical-align:middle;}
.application-store-badge img {display:block;width:auto;max-width:100%;height:44px;object-fit:contain;}
#panel-applications .application-platform .application-store {min-height:44px;max-width:100%;padding:10px 15px;font-size:16px;}
.application-qr {display:flex;flex:0 0 auto;align-items:center;flex-direction:column;gap:6px;margin:0;padding:7px 7px 5px;border:1px solid #d4bd82;border-radius:12px;color:#e7e8e7;background:#071722;cursor:pointer;box-shadow:0 4px 12px #0002;}
.application-qr img {display:block;width:120px;height:120px;background:#fff;border-radius:3px;}
.application-qr span {font:600 12px/1.35 system-ui,sans-serif;}
.application-qr:focus-visible {outline:3px solid #fff;outline-offset:4px;}
.application-qr-dialog {box-sizing:border-box;width:min(520px,calc(100vw - 28px));max-height:calc(100dvh - 32px);padding:22px;border:1px solid #c9b276;border-radius:20px;background:linear-gradient(145deg,#153e50,#091e30);color:#eef9fa;box-shadow:0 24px 70px #0009;overflow:auto;text-align:center;}
.application-qr-dialog::backdrop {background:#03131dc9;backdrop-filter:blur(7px);}
.application-qr-dialog header {display:flex;justify-content:space-between;gap:15px;align-items:center;text-align:left;margin-bottom:20px;}
.application-qr-dialog h3 {margin:0;font:700 20px/1.4 system-ui,sans-serif;overflow-wrap:anywhere;}
.application-qr-dialog .danger {flex-shrink:0;min-height:44px;background:linear-gradient(#a94358,#81233a);color:#fff;border:1px solid #d68090;border-radius:10px;padding:10px 15px;cursor:pointer;font-weight:700;}
.application-qr-large {display:block;width:min(100%,380px);height:auto;aspect-ratio:1;margin:auto;background:#fff;}
.application-qr-dialog p {font:400 16px/1.5 system-ui,sans-serif;margin:16px 0;color:#e0edf1;}
.application-qr-dialog .application-store {display:inline-flex;align-items:center;gap:10px;color:#143c32;background:#b0eed4;border:1px solid #c6f8e3;padding:12px 18px;border-radius:10px;text-decoration:none;font-weight:700;}
.application-qr-dialog a:focus-visible,.application-qr-dialog button:focus-visible {outline:3px solid #fff;outline-offset:4px;}
@media(max-width:1000px) {
  .application-platform-list.has-both {grid-template-columns:minmax(0,1fr);gap:18px;}
  .application-platform-list.has-both .application-platform:first-child {padding-right:4px;}
  .application-platform-list.has-both .application-platform+.application-platform {padding:18px 4px 0;border-left:0;border-top:1px solid rgba(var(--app-accent),.55);box-shadow:none;}
}
@media(max-width:480px) {
  .application-heading-area {gap:13px;}
  .application-icon {width:76px;}
  .application-heading-area.has-icon {grid-template-columns:76px minmax(0,1fr);}
  .application-heading-area .application-description {font-size:16px;}
  .application-platform {gap:10px;padding:0;}
  .application-qr {padding:5px 5px 4px;}
  .application-qr img {width:96px;height:96px;}
  .application-store-badge {padding:8px;border-radius:10px;}
  .application-store-badge img {height:auto;width:135px;max-height:44px;}
  .application-platform .application-devices li {font-size:13px;padding:2px 7px;}
  .application-platform-list.has-both .application-platform:first-child {padding-right:0;}
  .application-platform-list.has-both .application-platform+.application-platform {padding-inline:0;}
  .application-qr-dialog {padding:16px;}
}
@media(max-width:360px) {
  .application-heading-area.has-icon {grid-template-columns:62px minmax(0,1fr);}
  .application-icon {width:62px;}
  #panel-applications .application-details h3 {font-size:21px;}
  .application-qr img {width:80px;height:80px;}
  .application-qr span {font-size:11px;}
  .application-platform {gap:8px;}
  .application-store-badge {padding:8px;}
  .application-platform .application-devices {gap:4px;}
}
/* Preserve official badge dimensions; allow the QR to wrap on small phones. */
.application-platform {flex-wrap:wrap;}
.application-platform-copy {flex:1 1 175px;}
.application-store-badge img {height:44px;width:auto;max-width:none;max-height:none;}
@media(max-width:480px) {
  .application-store-badge {padding:11px;}
  .application-heading-area .application-details {display:contents;}
  .application-heading-area.has-icon h3 {grid-column:2;align-self:center;}
  .application-heading-area .application-description {grid-column:1/-1;margin-top:0;}
  .application-platform-list {margin-top:17px;padding-top:16px;}
}
