/* Feuille de style du site de la MSP du Triolo — générée depuis la maquette validée (v5)
   par scripts/refonte/convertir-css.py. Ne pas modifier à la main : modifier la maquette
   ou le script, puis régénérer. */
:root{--navy:#1b3a6b; --navy-2:#2a4c86; --ink:#16233d; --ink-2:#3b4863; --mute:#667391; --line:#e4e8f0; --bg:#f4f6fa; --card:#fff;
  --teal:#1a9bb5; --lime:#8cc63f; --green:#3ea55b; --orange:#f39a1e; --pink:#e0406a; --coral:#f2665a; --blue:#1e7fd0; --purple:#7b4fb3;
  --display:'Baloo 2',system-ui,sans-serif; --body:'Atkinson Hyperlegible',system-ui,-apple-system,sans-serif;
  --r:18px; --r-s:12px; --sh:0 2px 6px rgba(27,58,107,.06),0 8px 24px rgba(27,58,107,.06); --sh-l:0 24px 60px -24px rgba(27,58,107,.45);
  --pink-d:#c8325a; --blue-d:#1668b3; --green-d:#2f7d45;
  --maxw:1180px; --u:#1a9bb5; --u-ink:#0f7584; --u-bg:#e6f5f8;}
.mspapp,.mspapp *{box-sizing:border-box}
html,.mspapp{margin:0}
.mspapp{font-family:var(--body);color:var(--ink);font-size:calc(17px * var(--mspfs));line-height:1.6;-webkit-font-smoothing:antialiased}
.mspapp button{font:inherit;color:inherit;cursor:pointer}
.mspapp a{color:var(--blue-d)}
.mspapp :focus-visible{outline:3px solid var(--blue-d);outline-offset:2px;border-radius:8px}
.mspapp h1,.mspapp h2,.mspapp h3,.mspapp h4{font-family:var(--display);font-weight:700;line-height:1.15;margin:0}
.mspapp .sr{position:absolute;left:-9999px}
.mspapp mark{background:#ffe8a3;color:inherit;border-radius:3px;padding:0 1px}
.mspapp svg.i{width:22px;height:22px;flex:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none}
.mspapp .roofbar{height:5px;background:linear-gradient(90deg,var(--lime) 0 25%,var(--teal) 25% 50%,var(--pink) 50% 75%,var(--orange) 75% 100%)}
.mspapp .hd{position:sticky;top:0;z-index:60;background:#fff;box-shadow:0 1px 0 var(--line)}
.mspapp .hd-in{max-width:var(--maxw);margin:auto;display:flex;align-items:center;gap:10px;padding:10px 24px;min-height:70px}
.mspapp .brand{display:flex;align-items:center;border:0;background:none;padding:0;margin-inline-end:auto}
.mspapp .brand svg{height:48px;width:auto;display:block}
.mspapp .nav{display:flex;gap:2px}
.mspapp .nav button{border:0;background:none;font-family:var(--display);font-weight:600;font-size:calc(16px * var(--mspfs));color:var(--ink-2);padding:8px 12px;border-radius:10px;white-space:nowrap}
.mspapp .nav button:hover,.mspapp .nav button.on{background:#eef2f8;color:var(--navy)}
.mspapp .nav .n-urg{color:var(--pink)}
.mspapp .hbtn{display:inline-flex;align-items:center;gap:7px;border:0;background:#eef2f8;color:var(--navy);border-radius:999px;padding:9px 14px;font-weight:700;font-size:calc(14.5px * var(--mspfs));white-space:nowrap}
.mspapp .hbtn .count{background:var(--pink-d);color:#fff;border-radius:999px;font-size:max(12px, calc(11px * var(--mspfs)));padding:0 6px;min-width:18px;text-align:center}
.mspapp .cta{border:0;background:var(--pink-d);color:#fff;font-family:var(--display);font-weight:700;font-size:calc(15.5px * var(--mspfs));padding:10px 18px;border-radius:999px;white-space:nowrap;box-shadow:0 6px 16px -8px rgba(224,64,106,.8)}
.mspapp .urgpill{display:none;border:0;background:#fde8ee;color:#b0284f;border-radius:999px;padding:7px 11px;font-weight:700;font-size:max(12px, calc(13.5px * var(--mspfs)))}
@media (max-width:1180px){html:root .mspapp .hbtn .t{display:none}
.mspapp .nav button{padding:8px 9px;font-size:calc(15px * var(--mspfs))}}
@media (max-width:980px){.mspapp .nav{display:none}}
.mspapp .tabbar{display:none}
.mspapp .tabbar button{flex:1;border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:max(12px, calc(12px * var(--mspfs)));min-height:48px;font-weight:700;color:var(--mute);padding:4px 0;position:relative}
.mspapp .tabbar button.on{color:var(--navy)}
.mspapp .tabbar button.on::before{content:"";position:absolute;top:-9px;width:26px;height:3px;border-radius:3px;background:var(--pink)}
.mspapp .tabbar .count{position:absolute;top:0;left:55%;background:var(--pink-d);color:#fff;border-radius:999px;font-size:max(12px, calc(10px * var(--mspfs)));padding:0 5px}
.mspapp .wrap{max-width:var(--maxw);margin:auto;padding-inline:24px}
.mspapp .view[hidden]{display:none!important}
.mspapp section.blk{padding-block:48px}
.mspapp .shead{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.mspapp .kicker{font-weight:700;font-size:calc(14.5px * var(--mspfs));color:var(--pink-d);letter-spacing:.02em}
.mspapp .h2{font-size:calc(clamp(25px,3vw,34px) * var(--mspfs));margin-top:4px;color:var(--navy)}
.mspapp .lead{color:var(--ink-2);font-size:calc(17.5px * var(--mspfs));max-width:64ch;margin:8px 0 0}
.mspapp .grid{display:grid;gap:16px}
.mspapp .grid>*,.mspapp .hero-in>*,.mspapp .fbody>*,.mspapp .promo>*{min-width:0}
.mspapp .link{display:inline-flex;align-items:center;gap:6px;border:0;background:none;padding:8px 0;color:var(--blue-d);font-weight:700;font-size:calc(15.5px * var(--mspfs))}
.mspapp .link svg{width:18px;height:18px}
.mspapp .c2{grid-template-columns:repeat(2,1fr)}
.mspapp .c3{grid-template-columns:repeat(3,1fr)}
.mspapp .c4{grid-template-columns:repeat(4,1fr)}
@media (max-width:980px){.mspapp .c3,.mspapp .c4{grid-template-columns:repeat(2,1fr)}}
.mspapp .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:11px 18px;font-family:var(--display);font-weight:700;font-size:calc(15.5px * var(--mspfs));text-decoration:none}
.mspapp .btn svg{width:19px;height:19px}
.mspapp .btn.pink{background:var(--pink-d);color:#fff}
.mspapp .btn.navy{background:var(--navy);color:#fff}
.mspapp .btn.soft{background:#eef2f8;color:var(--navy)}
.mspapp .btn.line{background:#fff;border:1.5px solid var(--line);color:var(--navy)}
.mspapp .btn.u{background:var(--u-ink);color:#fff}
.mspapp .soon{display:inline-block;font-size:max(12px, calc(11.5px * var(--mspfs)));font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--mute);background:#eef1f6;border-radius:999px;padding:2px 9px;margin-inline-start:6px;vertical-align:middle}
.mspapp .hero{background:var(--navy);color:#fff;position:relative;z-index:5}
.mspapp .hero-in{display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:center;padding-block:52px 56px}
.mspapp .hero h1{font-size:calc(clamp(34px,4.6vw,54px) * var(--mspfs));font-weight:800;color:#fff;letter-spacing:-.01em}
.mspapp .hero h1 em{font-style:normal;color:#ffd166}
.mspapp .hero .lead{color:#d6e0f2;font-size:calc(18px * var(--mspfs))}
.mspapp .hero .art svg{width:100%;height:auto;display:block}
.mspapp .bigsearch{position:relative;margin-top:24px}
.mspapp .bigsearch .box{display:flex;align-items:center;gap:10px;background:#fff;border-radius:14px;padding:6px 6px 6px 18px;box-shadow:0 12px 40px -12px rgba(0,0,0,.45)}
.mspapp .bigsearch .box{color:var(--mute)}
.mspapp .bigsearch .box svg.i{width:24px;height:24px}
.mspapp .bigsearch input{flex:1;min-width:0;border:0;outline:0;font:inherit;font-size:calc(19px * var(--mspfs));padding:13px 0;color:var(--ink);background:transparent}
.mspapp .bigsearch input::placeholder{color:#8e98ae}
.mspapp .bigsearch .go{border:0;background:var(--pink-d);color:#fff;border-radius:10px;font-family:var(--display);font-weight:700;font-size:calc(16.5px * var(--mspfs));padding:12px 22px}
.mspapp .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.mspapp .chip{border:0;background:rgba(255,255,255,.14);color:#fff;border-radius:999px;padding:8px 14px;min-height:40px;font-weight:700;font-size:calc(14px * var(--mspfs))}
.mspapp .chip:hover{background:rgba(255,255,255,.22)}
.mspapp .results{position:absolute;left:0;right:0;top:calc(100% + 8px);background:#fff;color:var(--ink);border-radius:16px;box-shadow:var(--sh-l);max-height:min(560px,70vh);overflow:auto;z-index:40;padding:6px}
.mspapp .results[hidden]{display:none}
.mspapp .rgroup{padding:10px 12px 4px;font-weight:700;font-size:max(12px, calc(12.5px * var(--mspfs)));letter-spacing:.05em;text-transform:uppercase;color:var(--mute)}
.mspapp .ritem{display:flex;gap:12px;align-items:flex-start;padding:9px 12px;border-radius:12px;border:0;background:none;width:100%;text-align:start}
.mspapp .ritem:hover,.mspapp .ritem.sel{background:#f1f4f9}
.mspapp .ritem .ric{flex:none;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--c,#1a9bb5);color:#fff}
.mspapp .ritem .ric svg{width:20px;height:20px}
.mspapp .ritem.sec .ric{background:var(--c-bg,#eef2f8);color:var(--c-ink,var(--navy))}
.mspapp .ritem b{display:block;font-family:var(--display);font-weight:700;font-size:calc(16.5px * var(--mspfs));line-height:1.25}
.mspapp .ritem small{display:block;color:var(--mute);font-size:calc(14.5px * var(--mspfs));line-height:1.35;margin-top:2px}
.mspapp .ritem .where{font-weight:700;color:var(--c-ink,var(--blue))}
.mspapp .urgent{display:flex;gap:12px;align-items:center;background:#fde8ee;border-radius:12px;padding:12px 14px;margin:6px}
.mspapp .urgent b{font-family:var(--display);font-size:calc(17px * var(--mspfs));color:#b0284f}
.mspapp .urgent a{margin-inline-start:auto;background:var(--pink-d);color:#fff;text-decoration:none;font-weight:700;border-radius:999px;padding:8px 15px;white-space:nowrap}
.mspapp .answer{background:#e6f5f8;border-radius:12px;padding:12px 14px;margin:6px}
.mspapp .answer b{font-family:var(--display);font-size:calc(16.5px * var(--mspfs));color:var(--navy)}
.mspapp .nores{padding:18px;color:var(--mute)}
.mspapp .rfoot{display:flex;justify-content:space-between;gap:10px;padding:8px 12px 4px;border-top:1px solid var(--line);margin-top:4px;font-size:max(12px, calc(12.5px * var(--mspfs)));color:var(--mute)}
.mspapp .quick{margin-top:-28px;position:relative;z-index:6}
.mspapp .quick-in{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.mspapp .qa{border:0;background:#fff;border-radius:16px;box-shadow:var(--sh);padding:16px 12px;display:flex;flex-direction:column;align-items:center;gap:8px;font-weight:700;font-size:calc(14.5px * var(--mspfs));color:var(--navy);text-align:center}
.mspapp .qa:hover{transform:translateY(-2px);transition:transform .15s}
.mspapp .qa .qi{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;color:#fff}
.mspapp .qa .qi svg{width:24px;height:24px}
.mspapp .ugrid{grid-template-columns:repeat(5,1fr);margin-top:22px}
@media (max-width:1100px){.mspapp .ugrid{grid-template-columns:repeat(3,1fr)}}
.mspapp .ucard{border:0;text-align:start;background:#fff;border-radius:var(--r);padding:16px;box-shadow:var(--sh);display:flex;flex-direction:column;gap:10px;transition:transform .15s,box-shadow .15s}
.mspapp .ucard:hover{transform:translateY(-3px);box-shadow:var(--sh-l)}
.mspapp .ucard .tile{width:52px;height:52px;border-radius:14px;background:var(--c);color:#fff;display:grid;place-items:center}
.mspapp .ucard .tile svg{width:28px;height:28px}
.mspapp .ucard h3{font-size:calc(17px * var(--mspfs));color:var(--navy);line-height:1.2}
.mspapp .ucard p{margin:0;color:var(--mute);font-size:max(12px, calc(13.5px * var(--mspfs)));line-height:1.4}
.mspapp .ucard .n{font-weight:700;font-size:calc(14px * var(--mspfs));color:var(--c-ink)}
.mspapp .card{background:#fff;border-radius:var(--r);padding:20px;box-shadow:var(--sh)}
.mspapp .card h3{font-size:calc(18.5px * var(--mspfs));color:var(--navy)}
.mspapp .card p{margin:8px 0 0;color:var(--ink-2);font-size:calc(15.5px * var(--mspfs))}
.mspapp .card ul{margin:10px 0 0;padding-inline-start:18px;color:var(--ink-2);font-size:calc(15px * var(--mspfs))}
.mspapp .card li{margin:3px 0}
.mspapp .card .top{display:flex;gap:12px;align-items:center}
.mspapp .card .ci{width:42px;height:42px;border-radius:12px;background:var(--c,#1a9bb5);color:#fff;display:grid;place-items:center;flex:none}
.mspapp .card .ci svg{width:22px;height:22px}
.mspapp .card .acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.mspapp .pill{display:inline-block;font-size:max(12px, calc(13.5px * var(--mspfs)));font-weight:700;border-radius:999px;padding:3px 10px;background:var(--c-bg,#eef2f8);color:var(--c-ink,var(--navy));margin:10px 6px 0 0}
.mspapp .stat{background:#fff;border-radius:var(--r);padding:18px;box-shadow:var(--sh);border-top:4px solid var(--c,#1a9bb5)}
.mspapp .stat b{display:block;font-family:var(--display);font-weight:800;font-size:calc(32px * var(--mspfs));color:var(--navy);line-height:1.1}
.mspapp .stat span{font-size:calc(14.5px * var(--mspfs));color:var(--ink-2)}
.mspapp .fav{border:0;background:#fff;width:44px;height:44px;border-radius:999px;display:grid;place-items:center;color:var(--mute);box-shadow:0 0 0 1.5px var(--line);flex:none}
.mspapp .fav svg{width:21px;height:21px}
.mspapp .fav[aria-pressed="true"]{color:var(--pink);box-shadow:0 0 0 1.5px #f7c3d2;background:#fff0f4}
.mspapp .fav[aria-pressed="true"] svg{fill:currentColor}
.mspapp .event{display:flex;gap:16px;background:#fff;border-radius:var(--r);padding:16px;box-shadow:var(--sh);align-items:flex-start}
.mspapp .date{flex:none;width:64px;border-radius:14px;background:var(--green-d);color:#fff;text-align:center;padding:8px 0;font-family:var(--display);line-height:1.05}
.mspapp .date b{display:block;font-size:calc(26px * var(--mspfs));font-weight:800}
.mspapp .date span{font-size:max(12px, calc(12.5px * var(--mspfs)));font-weight:700;text-transform:uppercase}
.mspapp .event h3{font-size:calc(17.5px * var(--mspfs));color:var(--navy)}
.mspapp .event p{margin:4px 0 0;color:var(--ink-2);font-size:calc(14.5px * var(--mspfs))}
.mspapp .event .grow{flex:1;min-width:0}
.mspapp .event .acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.mspapp .event .btn{padding:8px 14px;font-size:calc(14px * var(--mspfs))}
.mspapp .tag{display:inline-flex;align-items:center;gap:6px;font-size:max(12px, calc(13.5px * var(--mspfs)));font-weight:700;color:var(--c-ink,var(--navy));background:var(--c-bg,#eef2f8);border-radius:999px;padding:2px 10px}
.mspapp .full{color:var(--mute)}
.mspapp .team{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));margin-top:14px}
.mspapp .pro{display:flex;gap:12px;align-items:center;background:#fff;border-radius:14px;padding:12px 14px;box-shadow:var(--sh)}
.mspapp .pro .av{width:52px;height:52px;border-radius:50%;background:var(--c-bg);color:var(--c-ink);display:grid;place-items:center;font-family:var(--display);font-weight:800;flex:none;overflow:hidden}
.mspapp .pro .av img{width:100%;height:100%;object-fit:cover}
.mspapp .pro b{display:block;font-family:var(--display);font-weight:700;font-size:calc(16px * var(--mspfs));line-height:1.2;color:var(--navy)}
.mspapp .pro small{color:var(--c-ink);font-weight:700;font-size:max(12px, calc(13px * var(--mspfs)))}
.mspapp .pro small{display:block}
.mspapp .pro .rdv{display:inline-flex;align-items:center;gap:6px;margin-top:6px;border:0;background:#eef2f8;color:var(--navy);border-radius:999px;padding:8px 12px;min-height:40px;font-weight:700;font-size:max(12px, calc(13px * var(--mspfs)));white-space:nowrap}
.mspapp .pro .rdv svg{width:15px;height:15px}
.mspapp .site{margin-top:26px}
.mspapp .site h3{font-size:calc(19px * var(--mspfs));color:var(--navy);display:flex;gap:10px;align-items:center}
.mspapp .site h3 i{width:12px;height:12px;border-radius:4px;background:var(--c);display:inline-block}
.mspapp .site .addr{color:var(--mute);font-size:calc(14.5px * var(--mspfs));margin:2px 0 0}
.mspapp .promo{display:grid;grid-template-columns:1fr 280px;gap:24px;align-items:center;background:linear-gradient(0deg,#fff,#fff);border-radius:24px;padding:28px;box-shadow:var(--sh);overflow:hidden;position:relative}
.mspapp .promo::before{content:"";position:absolute;inset:0 auto 0 0;width:8px;background:linear-gradient(180deg,var(--lime),var(--teal),var(--pink),var(--orange))}
.mspapp .promo .art svg{width:100%;height:auto}
.mspapp .form{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.mspapp .form input[type=email],.mspapp .form input[type=text],.mspapp .form textarea,.mspapp .form select{flex:1;min-width:220px;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;font:inherit;font-size:calc(16px * var(--mspfs));background:#fff}
.mspapp .form textarea{min-height:110px;width:100%}
.mspapp .check{display:flex;gap:8px;align-items:flex-start;font-size:max(12px, calc(13.5px * var(--mspfs)));color:var(--ink-2);margin-top:10px}
.mspapp .ok{background:#e9f6ec;color:#256b39;border-radius:12px;padding:10px 14px;font-weight:700;margin-top:12px}
.mspapp .warn{background:#fff4e2;color:#7a4b00;border-radius:12px;padding:10px 14px;font-size:calc(14px * var(--mspfs));margin-top:12px}
.mspapp .ubanner{background:var(--u-bg);padding-block:34px 30px;position:relative;overflow:hidden}
.mspapp .ubanner .big{position:absolute;right:6%;top:50%;transform:translateY(-50%);width:170px;height:170px;border-radius:40px;background:var(--u);color:#fff;display:grid;place-items:center;opacity:.95}
.mspapp .ubanner .big svg{width:90px;height:90px;stroke-width:1.4}
.mspapp .ubanner h1{font-size:calc(clamp(30px,4.2vw,46px) * var(--mspfs));color:var(--navy);max-width:20ch}
.mspapp .crumbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:calc(14px * var(--mspfs));color:var(--mute);margin-bottom:12px}
.mspapp .crumbs button{border:0;background:none;padding:0;color:var(--u-ink);font-weight:700}
.mspapp .usearch{margin-top:16px;max-width:480px}
.mspapp .usearch input{width:100%;border:0;background:#fff;border-radius:12px;padding:12px 16px;font:inherit;font-size:calc(16px * var(--mspfs));box-shadow:var(--sh)}
.mspapp .fgrid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
.mspapp .fcard{display:flex;gap:14px;align-items:flex-start;background:#fff;border-radius:var(--r);padding:18px;box-shadow:var(--sh);border:0;text-align:start}
.mspapp .fcard .bar{width:6px;align-self:stretch;border-radius:6px;background:var(--c);flex:none}
.mspapp .fcard .grow{flex:1;min-width:0}
.mspapp .fcard h3{font-size:calc(18px * var(--mspfs));color:var(--navy)}
.mspapp .fcard p{margin:4px 0 0;color:var(--ink-2);font-size:calc(14.5px * var(--mspfs));line-height:1.45}
.mspapp .fcard .meta{display:flex;gap:14px;font-size:calc(14px * var(--mspfs));font-weight:700;color:var(--mute);margin-top:8px}
.mspapp .fcard .meta span{display:inline-flex;gap:5px;align-items:center}
.mspapp .fcard .meta svg{width:15px;height:15px}
.mspapp .fbanner{background:var(--u-bg);padding-block:26px 24px}
.mspapp .fbanner .kick{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:calc(14px * var(--mspfs));color:var(--u-ink)}
.mspapp .fbanner .kick span{width:28px;height:28px;border-radius:8px;background:var(--u);color:#fff;display:grid;place-items:center}
.mspapp .fbanner .kick svg{width:17px;height:17px}
.mspapp .fbanner h1{font-size:calc(clamp(30px,4vw,44px) * var(--mspfs));color:var(--navy);margin-top:10px;max-width:24ch}
.mspapp .fbanner .lead{font-size:calc(17px * var(--mspfs))}
.mspapp .factions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;align-items:center}
.mspapp .factions .btn{padding:9px 15px;font-size:calc(14.5px * var(--mspfs))}
.mspapp .factions .meta{font-size:max(12px, calc(13.5px * var(--mspfs)));font-weight:700;color:var(--mute);display:inline-flex;gap:6px;align-items:center;margin-inline-end:6px}
.mspapp .factions .meta svg{width:16px;height:16px}
.mspapp .subnav{position:sticky;z-index:50;top:70px;background:#fff;border-bottom:1px solid var(--line)}
.mspapp .subnav-in{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:10px 24px;max-width:var(--maxw);margin:auto}
.mspapp .subnav button{flex:none;border:0;background:#f1f4f9;border-radius:999px;padding:7px 14px;min-height:40px;font-weight:700;font-size:calc(14px * var(--mspfs));color:var(--ink-2);white-space:nowrap}
.mspapp .subnav button.on{background:var(--u);color:#fff}
.mspapp .fbody{display:grid;grid-template-columns:260px 1fr;gap:32px;padding-block:28px 60px}
@media (max-width:980px){.mspapp .fbody{grid-template-columns:1fr}
.mspapp .toc{display:none}}
.mspapp .toc{position:sticky;top:140px;align-self:start;background:#fff;border-radius:var(--r);padding:14px;box-shadow:var(--sh);font-size:calc(14.5px * var(--mspfs));max-height:calc(100vh - 170px);overflow:auto}
.mspapp .toc b{font-family:var(--display);display:block;margin:0 0 6px 8px;color:var(--navy)}
.mspapp .toc button{display:block;width:100%;text-align:start;border:0;background:none;padding:5px 8px;border-radius:8px;color:var(--ink-2);line-height:1.35}
.mspapp .toc button:hover{background:var(--u-bg);color:var(--u-ink)}
.mspapp .fsec{background:#fff;border-radius:var(--r);padding:22px 24px;box-shadow:var(--sh);margin-bottom:14px;scroll-margin-top:150px}
.mspapp .fsec h2{font-size:calc(23px * var(--mspfs));color:var(--navy);display:flex;gap:10px;align-items:center}
.mspapp .fsec h2::before{content:"";width:6px;height:24px;border-radius:4px;background:var(--u);flex:none}
.mspapp .fsec .ex{color:var(--ink-2);font-size:calc(16px * var(--mspfs));line-height:1.65;margin:10px 0 0}
.mspapp .note{background:#fff8e8;border-radius:14px;padding:12px 16px;font-size:calc(14.5px * var(--mspfs));color:#6b4a0c;margin-bottom:14px}
.mspapp .empty{text-align:center;background:#fff;border-radius:24px;padding:30px 20px;box-shadow:var(--sh)}
.mspapp .empty svg{width:200px;height:auto}
.mspapp .empty h3{color:var(--navy);font-size:calc(21px * var(--mspfs));margin-top:10px}
.mspapp .phone{display:flex;align-items:center;gap:12px;background:#fff;border-radius:14px;padding:12px 14px;box-shadow:var(--sh);text-decoration:none;color:var(--ink)}
.mspapp .phone .pi{width:40px;height:40px;border-radius:12px;background:var(--c,#1a9bb5);color:#fff;display:grid;place-items:center;flex:none}
.mspapp .phone b{display:block;font-family:var(--display);font-size:calc(16px * var(--mspfs));color:var(--navy)}
.mspapp .phone small{color:var(--mute);font-weight:700}
.mspapp .map{width:100%;border-collapse:collapse;font-size:calc(15px * var(--mspfs));background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh)}
.mspapp .map th{text-align:start;font-family:var(--display);background:var(--navy);color:#fff;padding:11px 14px}
.mspapp .map td{padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.mspapp .map .okc{color:#2f8a4a;font-weight:700;white-space:nowrap}
.mspapp .tblwrap{overflow-x:auto;margin-top:22px}
.mspapp .logo-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}
.mspapp .logo-box{background:#fff;border-radius:var(--r);padding:24px;box-shadow:var(--sh);display:grid;place-items:center;min-height:200px}
.mspapp .logo-box.dark{background:var(--navy)}
.mspapp .logo-box svg{max-width:100%;height:auto;max-height:200px}
.mspapp .logo-box{min-width:0;overflow:hidden}
.mspapp .ft{background:var(--navy);color:#cdd7ea;padding-block:38px;font-size:calc(14.5px * var(--mspfs))}
.mspapp .ft b{font-family:var(--display);color:#fff;font-size:calc(16.5px * var(--mspfs))}
.mspapp .ft-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:24px}
.mspapp .ft p{margin:6px 0 0}
.mspapp .ft .u{color:#ffb3c6;font-weight:700}
.mspapp .palette,.mspapp .sheet{position:fixed;inset:0;z-index:300;background:rgba(14,26,51,.5);display:flex;justify-content:center;align-items:flex-start;padding:9vh 16px 16px}
.mspapp .palette[hidden],.mspapp .sheet[hidden]{display:none}
.mspapp .pbox{width:min(740px,100%);background:#fff;border-radius:20px;box-shadow:var(--sh-l);overflow:hidden;display:flex;flex-direction:column;max-height:80vh}
.mspapp .ptop{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);color:var(--mute)}
.mspapp .ptop input{flex:1;border:0;outline:0;font:inherit;font-size:calc(19px * var(--mspfs));color:var(--ink)}
.mspapp .close{border:0;background:#eef2f8;border-radius:999px;padding:6px 12px;font-weight:700;font-size:max(12px, calc(13px * var(--mspfs)));color:var(--navy)}
.mspapp .pbox .results{position:static;box-shadow:none;border-radius:0;max-height:none;flex:1}
.mspapp .sbox{width:min(560px,100%);background:#fff;border-radius:22px;box-shadow:var(--sh-l);padding:22px 22px 26px}
.mspapp .sbox h3{font-size:calc(21px * var(--mspfs));color:var(--navy)}
.mspapp .toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:var(--navy);color:#fff;border-radius:999px;padding:10px 18px;font-weight:700;z-index:400;box-shadow:var(--sh-l)}
.mspapp .toast[hidden]{display:none}
.mspapp .pchips .chip[aria-pressed="true"]{background:var(--navy);color:#fff}
.mspapp .doc{display:grid;grid-template-columns:auto 1fr auto;gap:12px 14px;align-items:start;background:#fff;border-radius:16px;padding:14px 16px;box-shadow:var(--sh)}
.mspapp .doc .av{width:56px;height:56px;border-radius:50%;background:var(--c-bg);color:var(--c-ink);display:grid;place-items:center;font-family:var(--display);font-weight:800;overflow:hidden}
.mspapp .doc .av img{width:100%;height:100%;object-fit:cover}
.mspapp .doc b{display:block;font-family:var(--display);font-size:calc(17px * var(--mspfs));color:var(--navy);line-height:1.2}
.mspapp .doc .role{display:inline-flex;align-items:center;gap:6px;color:var(--c-ink);font-weight:700;font-size:calc(14px * var(--mspfs))}
.mspapp .doc .role svg{width:17px;height:17px}
.mspapp .doc .hours{display:block;color:var(--ink-2);font-size:calc(14.5px * var(--mspfs));margin-top:2px}
.mspapp .doc .acts{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}
.mspapp .doc .web{display:inline-flex;align-items:center;gap:4px;font-weight:700;font-size:calc(14px * var(--mspfs));color:var(--blue-d);margin:2px 0;min-height:28px}
.mspapp .doc .web svg{width:14px;height:14px}
.mspapp .doc .acts .more{margin-inline-start:auto}
.mspapp .doc .more .car{display:inline-block;margin-inline-start:4px;transition:transform .2s}
.mspapp .doc .more[aria-expanded="true"] .car{transform:rotate(180deg)}
.mspapp .doc .pdet{grid-column:1/-1;border-top:1px solid var(--line);padding-top:10px;display:grid;gap:6px}
.mspapp .doc .pdet[hidden]{display:none}
.mspapp .doc .pdet p{margin:0;color:var(--ink-2);font-size:calc(15px * var(--mspfs));line-height:1.5}
.mspapp .doc .pdet .dl{display:flex;gap:8px;align-items:flex-start}
.mspapp .doc .pdet .dl svg{width:18px;height:18px;flex:none;margin-top:3px;color:var(--c-ink)}
.mspapp .doc .pdet .acts{margin-top:4px}
.mspapp .doc .acts .btn{padding:9px 14px;font-size:calc(14.5px * var(--mspfs));min-height:44px}
.mspapp .todo{display:inline-flex;align-items:center;font-size:max(12px, calc(13.5px * var(--mspfs)));font-weight:700;color:#7a4b00;background:#fff4e2;border-radius:999px;padding:8px 12px}
.mspapp .urgnum{display:flex;gap:12px;align-items:center;background:#fff;border-radius:14px;padding:12px 14px;box-shadow:var(--sh);text-decoration:none;color:var(--ink)}
.mspapp .urgnum b{font-family:var(--display);font-size:calc(24px * var(--mspfs));color:var(--pink-d);min-width:74px}
.mspapp .urgnum span{font-size:calc(14.5px * var(--mspfs));line-height:1.3}
.mspapp .rgpd h3{font-size:calc(19px * var(--mspfs));color:var(--navy)}
.mspapp .rgpd dl{display:grid;grid-template-columns:170px 1fr;gap:6px 14px;margin:10px 0 0;font-size:calc(15px * var(--mspfs))}
.mspapp .rgpd dt{font-weight:700;color:var(--ink-2)}
.mspapp .rgpd dd{margin:0;color:var(--ink-2)}
:root{--mspfsb:1;--mspfsu:1;--mspfs:calc(var(--mspfsb) * var(--mspfsu))}
html[data-ts="l"]{--mspfsu:1.15}
html[data-ts="xl"]{--mspfsu:1.3}
html[data-ts="xxl"]{--mspfsu:1.5}
.mspapp input,.mspapp textarea,.mspapp select{font-size:max(16px, calc(17px * var(--mspfs))) !important}
html[data-ct="high"]{--ink:#000;--ink-2:#111;--mute:#333;--line:#1b3a6b}
html[data-ct="high"] .mspapp .card,html[data-ct="high"] .mspapp .ucard,html[data-ct="high"] .mspapp .fcard,html[data-ct="high"] .mspapp .event,html[data-ct="high"] .mspapp .pro,html[data-ct="high"] .mspapp .fsec,html[data-ct="high"] .mspapp .qa,html[data-ct="high"] .mspapp .stat,html[data-ct="high"] .mspapp .phone,html[data-ct="high"] .mspapp .doc{box-shadow:none;outline:2px solid #1b3a6b}
.mspapp .util{background:var(--navy);color:#d6e0f2;font-size:calc(14px * var(--mspfs))}
.mspapp .util-in{max-width:var(--maxw);margin:auto;display:flex;flex-wrap:wrap;gap:6px 18px;justify-content:flex-end;align-items:center;padding:6px 24px}
.mspapp .util .g{display:inline-flex;gap:4px;align-items:center}
.mspapp .util .g>span{opacity:.8;margin-inline-end:4px}
.mspapp .util button{border:0;background:transparent;color:#fff;border-radius:8px;padding:5px 9px;font-weight:700;font-size:calc(14px * var(--mspfs));min-height:34px}
.mspapp .util button[aria-pressed="true"]{background:#fff;color:var(--navy)}
.mspapp .aa{display:none}
@media (prefers-reduced-motion:reduce){.mspapp,.mspapp *{transition:none!important}}
.mspapp .gview[hidden]{display:none}
.mspapp .gmeta{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.mspapp .gmeta span{display:inline-flex;align-items:center;gap:6px;background:#fff;border-radius:999px;padding:6px 12px;font-size:calc(14px * var(--mspfs));font-weight:600;color:var(--ink-2)}
.mspapp .gmeta svg{width:16px;height:16px;color:var(--u-ink)}
.mspapp .gnav{position:sticky;z-index:50;top:70px;background:#fff;border-bottom:1px solid var(--line)}
.mspapp .gnav-in{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:10px 24px;max-width:var(--maxw);margin:auto}
.mspapp .gnav button{flex:none;border:0;background:#f1f4f9;border-radius:999px;padding:7px 14px;min-height:44px;font-weight:700;font-size:calc(14px * var(--mspfs));color:var(--ink-2);white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.mspapp .gnav button .n{font-size:max(12px, calc(12px * var(--mspfs)));opacity:.7}
.mspapp .gnav button.on{background:var(--u-ink);color:#fff}
.mspapp .gbody{display:grid;grid-template-columns:270px 1fr;gap:32px;padding-block:26px 60px}
@media (max-width:980px){.mspapp .gbody{grid-template-columns:1fr}
.mspapp .gbody .toc{display:none}}
.mspapp .gbody .toc button{display:flex;gap:8px;align-items:baseline}
.mspapp .gbody .toc button .n{color:var(--mute);font-size:max(12px, calc(12.5px * var(--mspfs)));min-width:18px}
.mspapp .gbody .toc button.on{background:var(--u-bg);color:var(--u-ink);font-weight:700}
.mspapp .gbody>*{min-width:0}
.mspapp .gess{background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:20px 22px;border-top:5px solid var(--u)}
.mspapp .gess h2{font-size:calc(22px * var(--mspfs));color:var(--navy)}
.mspapp .gess ol{margin:12px 0 0;padding:0;list-style:none;counter-reset:e;display:grid;gap:10px}
.mspapp .gess li{counter-increment:e;display:grid;grid-template-columns:30px 1fr;gap:10px;font-size:calc(16.5px * var(--mspfs));line-height:1.5;color:var(--ink)}
.mspapp .gess li::before{content:counter(e);width:30px;height:30px;border-radius:50%;background:var(--u-bg);color:var(--u-ink);font-weight:800;display:grid;place-items:center;font-size:calc(15px * var(--mspfs))}
.mspapp .gess .val{margin:14px 0 0;font-size:calc(14px * var(--mspfs));color:var(--mute)}
.mspapp .gage{margin-top:22px}
.mspapp .gage h2,.mspapp .gall h2{font-size:calc(21px * var(--mspfs));color:var(--navy);margin-bottom:10px}
.mspapp .gseg{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mspapp .gseg button{border:2px solid var(--u);background:#fff;border-radius:14px;padding:12px 8px;min-height:64px;font-weight:800;font-size:calc(17px * var(--mspfs));color:var(--u-ink);display:grid;gap:2px;justify-items:center}
.mspapp .gseg button small{font-weight:600;font-size:max(12px, calc(13px * var(--mspfs)));color:var(--ink-2)}
.mspapp .gseg button:hover{background:var(--u-bg)}
.mspapp .gquick{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.mspapp .gquick button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;min-height:44px;font-weight:700;font-size:calc(14.5px * var(--mspfs));color:var(--ink-2)}
.mspapp .gquick button:hover{border-color:var(--u);color:var(--u-ink)}
.mspapp .gall{margin-top:26px}
.mspapp .gall .sub{margin:-4px 0 12px;color:var(--mute);font-size:calc(15px * var(--mspfs))}
.mspapp .gchs{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.mspapp .gch{border:0;text-align:start;background:#fff;border-radius:16px;box-shadow:var(--sh);padding:14px 16px;display:grid;grid-template-columns:38px 1fr;gap:4px 12px;align-items:start}
.mspapp .gch:hover{box-shadow:var(--sh-l)}
.mspapp .gch .n{grid-row:span 3;width:38px;height:38px;border-radius:12px;background:var(--u-bg);color:var(--u-ink);font-weight:800;display:grid;place-items:center;font-size:calc(16px * var(--mspfs))}
.mspapp .gch b{font-size:calc(17px * var(--mspfs));color:var(--navy);line-height:1.3}
.mspapp .gch span.d{font-size:calc(15px * var(--mspfs));color:var(--ink-2);line-height:1.45}
.mspapp .gch .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.mspapp .gch .tags i{font-style:normal;font-size:max(12px, calc(12.5px * var(--mspfs)));font-weight:700;padding:3px 9px;border-radius:999px;background:#f1f4f9;color:var(--ink-2)}
.mspapp .gch .tags i.hot{background:#fdeaf0;color:#a8284c}
.mspapp .gchap{scroll-margin-top:140px}
.mspapp .gchap+.gchap{margin-top:34px;padding-top:30px;border-top:2px dashed var(--line)}
.mspapp .gchap-h{margin-bottom:16px}
.mspapp .gchap-h .k{font-size:calc(14px * var(--mspfs));font-weight:700;color:var(--u-ink);text-transform:uppercase;letter-spacing:.04em}
.mspapp .gchap-h h2{font-size:calc(clamp(25px,3vw,32px) * var(--mspfs));color:var(--navy);margin-top:4px;line-height:1.15}
.mspapp .gchap-h p{margin:6px 0 0;color:var(--ink-2);font-size:calc(16.5px * var(--mspfs))}
.mspapp .gtext{font-size:calc(16.5px * var(--mspfs));line-height:1.6;color:var(--ink)}
.mspapp .gtext p{margin:0 0 10px}
.mspapp .gtext ul{margin:6px 0 4px;padding-inline-start:20px}
.mspapp .gtext li{margin:4px 0}
.mspapp .gtext b,.mspapp .gtext strong{color:var(--navy)}
.mspapp .gtext .g-foods,.mspapp .gtext .g-nos{padding:0;margin:10px 0}
.mspapp .gtext .g-foods>li,.mspapp .gtext .g-nos>li,.mspapp .gtext .g-steps>li,.mspapp .gtext .g-tex>li,.mspapp .gtext .g-timeline>li{margin:0}
.mspapp .gtext details.g-faq{background:#fff;border-radius:14px;box-shadow:var(--sh);margin:8px 0;padding:0 16px}
.mspapp .gtext details.g-faq>summary{cursor:pointer;list-style:none;padding:14px 30px 14px 0;font-weight:700;color:var(--navy);position:relative;min-height:44px}
.mspapp .gtext details.g-faq>summary::-webkit-details-marker{display:none}
.mspapp .gtext details.g-faq>summary::after{content:"+";position:absolute;right:0;top:10px;font-size:calc(22px * var(--mspfs));color:var(--u-ink)}
.mspapp .gtext details.g-faq[open]>summary::after{content:"–"}
.mspapp .gtext details.g-faq>div{padding:0 0 12px}
.mspapp .g-toolbox{display:grid;grid-template-columns:30px 1fr;gap:12px;margin:14px 0;padding:16px 18px;border-radius:16px;background:var(--u-bg);border:2px dashed var(--u)}
.mspapp .g-toolbox small{display:block;font-weight:800;color:var(--u-ink);text-transform:uppercase;letter-spacing:.03em;font-size:max(12px, calc(12.5px * var(--mspfs)))}
.mspapp .g-toolbox b{display:block;color:var(--navy);font-size:calc(17px * var(--mspfs));margin-top:2px}
.mspapp .g-toolbox p{margin:4px 0 10px;color:var(--ink-2)}
.mspapp .g-toolbox .g-ci{color:var(--u-ink)}
.mspapp .g-toolbox .g-ci svg{width:26px;height:26px}
.mspapp .gtext .g-links,.mspapp .gtext .g-nums{list-style:none;padding:0;margin:10px 0;display:grid;gap:8px}
.mspapp .g-links li{background:#fff;border-radius:12px;box-shadow:var(--sh);padding:10px 14px;display:grid;gap:2px}
.mspapp .g-links a{font-weight:700;color:var(--blue-d)}
.mspapp .g-links span{color:var(--ink-2);font-size:calc(15px * var(--mspfs))}
.mspapp .gtext .g-nums{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.mspapp .g-nums li{background:#fff5f7;border-radius:12px;padding:10px 14px;display:grid;gap:2px;border:1px solid #f3c3cf}
.mspapp .g-nums a{font-family:var(--display);font-weight:800;font-size:calc(24px * var(--mspfs));color:#a8284c;text-decoration:none}
.mspapp .g-nums span{color:var(--ink-2);font-size:calc(14.5px * var(--mspfs))}
.mspapp .g-figure{margin:12px 0}
.mspapp .g-figure img{max-width:100%;height:auto;border-radius:12px;display:block}
.mspapp .g-figure figcaption{color:var(--mute);font-size:max(12px, calc(13.5px * var(--mspfs)));margin-top:6px}
.mspapp .g-h{font-size:calc(19px * var(--mspfs));color:var(--navy);margin:26px 0 10px;display:flex;gap:10px;align-items:center;line-height:1.3}
.mspapp .g-h::before{content:"";width:5px;height:22px;border-radius:4px;background:var(--u);flex:none}
.mspapp .g-card,.mspapp .g-alert{display:grid;grid-template-columns:30px 1fr;gap:12px;border-radius:16px;padding:14px 16px;margin:12px 0;background:#fff;box-shadow:var(--sh);border-inline-start:5px solid var(--tone)}
.mspapp .g-card>*,.mspapp .g-alert>*{min-width:0}
.mspapp .g-card h3{font-size:calc(17px * var(--mspfs));color:var(--navy);margin:2px 0 6px;line-height:1.3}
.mspapp .g-card .g-cb>*:last-child,.mspapp .g-alert p{margin-bottom:0}
.mspapp .g-ci{color:var(--tone);padding-top:1px}
.mspapp .g-ci svg{width:26px;height:26px}
.mspapp .g-ok{--tone:#2f7d45}
.mspapp .g-info{--tone:#1668b3}
.mspapp .g-accent{--tone:var(--u-ink)}
.mspapp .g-warn{--tone:#b86e00}
.mspapp .g-danger,.mspapp .g-alert{--tone:#c8325a}
.mspapp .g-warn{background:#fffaf0}
.mspapp .g-danger,.mspapp .g-alert{background:#fff5f7}
.mspapp .g-alert p{margin:0;font-size:calc(16.5px * var(--mspfs))}
.mspapp .g-mini-warn{display:block;position:relative;padding-inline-start:28px;color:#a8284c;font-weight:600;font-size:calc(15px * var(--mspfs)) !important;margin-top:10px !important}
.mspapp .g-mini-warn>span[data-i]{position:absolute;inset-inline-start:0;top:2px}
.mspapp .g-mini-warn svg{width:20px;height:20px}
.mspapp .gtext{overflow-wrap:break-word}
.mspapp .g-table{overflow-x:auto;margin:8px 0;border-radius:12px;border:1px solid var(--line);background:#fff}
.mspapp .g-table table{width:100%;border-collapse:collapse;font-size:calc(15.5px * var(--mspfs));line-height:1.45}
.mspapp .g-table th{background:var(--u-bg);color:var(--u-ink);text-align:start;padding:10px 12px;font-size:calc(14px * var(--mspfs))}
.mspapp .g-table td{padding:10px 12px;border-top:1px solid var(--line);vertical-align:top}
.mspapp .g-foods{list-style:none;margin:8px 0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.mspapp .g-food{background:#fff;border-radius:14px;box-shadow:var(--sh);padding:12px 14px;display:grid;gap:4px;border-top:4px solid var(--tone)}
.mspapp .g-food.is-ok{--tone:#2f7d45}
.mspapp .g-food.is-caution{--tone:#b86e00}
.mspapp .g-food.is-no{--tone:#c8325a}
.mspapp .g-food b{font-size:calc(16px * var(--mspfs));color:var(--navy);line-height:1.35}
.mspapp .g-food>span:last-child{font-size:calc(15px * var(--mspfs));color:var(--ink-2);line-height:1.5}
.mspapp .g-pill{justify-self:start;display:inline-flex;align-items:center;gap:5px;font-size:max(12px, calc(13.5px * var(--mspfs)));font-weight:800;color:var(--tone);background:color-mix(in srgb,var(--tone) 10%,#fff);border-radius:999px;padding:3px 10px 3px 6px}
.mspapp .g-pill svg{width:17px;height:17px}
.mspapp .g-steps{list-style:none;margin:10px 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;counter-reset:s}
.mspapp .g-steps li{background:#fff;border-radius:14px;box-shadow:var(--sh);padding:12px 14px;display:grid;gap:4px;position:relative;font-size:calc(15px * var(--mspfs));line-height:1.45;color:var(--ink-2)}
.mspapp .g-steps li b{color:var(--navy);font-size:calc(16px * var(--mspfs))}
.mspapp .g-age{justify-self:start;background:var(--u-ink);color:#fff;border-radius:999px;padding:3px 11px;font-weight:800;font-size:calc(14px * var(--mspfs))}
.mspapp .g-tex{list-style:none;margin:10px 0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:4px}
.mspapp .g-tex li{background:var(--u-bg);padding:10px 12px;display:grid;gap:2px;font-size:calc(14.5px * var(--mspfs));color:var(--ink-2)}
.mspapp .g-tex li:first-child{border-radius:12px 0 0 12px}
.mspapp .g-tex li:last-child{border-radius:0 12px 12px 0}
.mspapp .g-tex li b{color:var(--u-ink);font-size:calc(15.5px * var(--mspfs))}
.mspapp .g-tex li:nth-child(2){background:color-mix(in srgb,var(--u) 22%,#fff)}
.mspapp .g-tex li:nth-child(3){background:color-mix(in srgb,var(--u) 34%,#fff)}
.mspapp .g-tex li:nth-child(4){background:color-mix(in srgb,var(--u) 46%,#fff)}
.mspapp .g-tex li:nth-child(5){background:color-mix(in srgb,var(--u) 58%,#fff)}
.mspapp .g-tiles,.mspapp .g-doses,.mspapp .g-compare,.mspapp .g-qa,.mspapp .g-day{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin:10px 0}
.mspapp .g-tile,.mspapp .g-dose,.mspapp .g-cmp,.mspapp .g-qa>div,.mspapp .g-meal{background:#fff;border-radius:14px;box-shadow:var(--sh);padding:14px 16px;display:grid;gap:4px;align-content:start;font-size:calc(15px * var(--mspfs));line-height:1.5;color:var(--ink-2)}
.mspapp .g-tile small,.mspapp .g-dose small{font-weight:800;color:var(--u-ink);font-size:max(12px, calc(13.5px * var(--mspfs)));text-transform:uppercase;letter-spacing:.03em}
.mspapp .g-tile b{color:var(--navy);font-size:calc(16.5px * var(--mspfs))}
.mspapp .g-tile.is-no{background:#fff5f7;border:2px solid #f3c3cf}
.mspapp .g-tile.is-no small,.mspapp .g-tile.is-no b{color:#a8284c}
.mspapp .g-dose{border-top:4px solid var(--u)}
.mspapp .g-dose>b{font-family:var(--display);font-size:calc(34px * var(--mspfs));line-height:1;color:var(--navy)}
.mspapp .g-dose .g-unit{font-weight:700;color:var(--ink-2)}
.mspapp .g-dose p{margin:4px 0 0}
.mspapp .g-cmp{border-top:5px solid var(--tone)}
.mspapp .g-cmp.is-good{--tone:#2f7d45}
.mspapp .g-cmp.is-ok{--tone:#1668b3}
.mspapp .g-cmp.is-bad{--tone:#c8325a}
.mspapp .g-cmp h4{display:flex;gap:8px;align-items:flex-start;color:var(--navy);font-size:calc(16.5px * var(--mspfs));line-height:1.3}
.mspapp .g-cmp h4 svg{width:22px;height:22px;flex:none;color:var(--tone)}
.mspapp .g-cmp ul{margin:4px 0;padding-inline-start:18px}
.mspapp .g-verdict{margin:6px 0 0;padding:8px 10px;border-radius:10px;background:color-mix(in srgb,var(--tone) 9%,#fff);color:var(--navy);font-weight:700;font-size:calc(14.5px * var(--mspfs))}
.mspapp .g-qa h4,.mspapp .g-meal h4{color:var(--navy);font-size:calc(16.5px * var(--mspfs));line-height:1.3}
.mspapp .g-qa p{margin:0}
.mspapp .g-meal ul{margin:4px 0 0;padding-inline-start:18px}
.mspapp .g-meal{border-top:4px solid var(--u)}
.mspapp .g-timeline{list-style:none;margin:12px 0;padding:0 0 0 18px;border-inline-start:3px solid var(--u-bg);display:grid;gap:12px}
.mspapp .g-timeline li{position:relative;display:grid;gap:4px;font-size:calc(15.5px * var(--mspfs));line-height:1.5;color:var(--ink-2)}
.mspapp .g-timeline li::before{content:"";position:absolute;left:-27px;top:6px;width:14px;height:14px;border-radius:50%;background:var(--u);border:3px solid #fff;box-shadow:0 0 0 2px var(--u)}
.mspapp .g-timeline p{margin:0}
.mspapp .g-nos{list-style:none;margin:10px 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.mspapp .g-nos li{background:#fff;border-radius:12px;box-shadow:var(--sh);padding:10px 12px;display:grid;grid-template-columns:24px 1fr;gap:2px 10px;align-items:start;--tone:#c8325a}
.mspapp .g-nos li.is-caution{--tone:#b86e00}
.mspapp .g-nos li svg{width:22px;height:22px;color:var(--tone);grid-row:span 2}
.mspapp .g-nos b{color:var(--navy);font-size:calc(15.5px * var(--mspfs));line-height:1.3}
.mspapp .g-nos small{color:var(--ink-2);font-size:calc(14px * var(--mspfs))}
.mspapp .gpager{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}
.mspapp .gpager button{border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px 14px;min-height:60px;text-align:start;display:grid;gap:2px}
.mspapp .gpager button small{color:var(--mute);font-weight:700;font-size:max(12px, calc(13px * var(--mspfs)))}
.mspapp .gpager button b{color:var(--navy);font-size:calc(15.5px * var(--mspfs));line-height:1.3}
.mspapp .gpager .nx{text-align:end}
.mspapp .gpager button:hover{border-color:var(--u)}
.mspapp .gtools{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center;margin-bottom:16px}
.mspapp .gsrc{margin-top:30px;background:#fff;border-radius:var(--r);padding:16px 18px;box-shadow:var(--sh);font-size:calc(15px * var(--mspfs));color:var(--ink-2);display:grid;grid-template-columns:30px 1fr;gap:12px}
.mspapp .gsrc svg{width:26px;height:26px;color:var(--u-ink)}
.mspapp .gsrc b{color:var(--navy)}
.mspapp .gsrc p{margin:4px 0 0}
.mspapp .gask{margin-top:14px;background:var(--navy);color:#fff;border-radius:var(--r);padding:18px 20px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.mspapp .gask p{margin:0;font-size:calc(16.5px * var(--mspfs));color:#e5ecf8;flex:1 1 260px}
.mspapp .gask b{color:#fff}
@media print{.mspapp .hd,.mspapp .tabbar,.mspapp .gnav,.mspapp .gbody .toc,.mspapp .gpager,.mspapp .gtools,.mspapp .gask,.mspapp .util,.mspapp .fbanner .factions{display:none !important}
.mspapp .gchap{display:block !important}
.mspapp .gbody{display:block}}
.mspapp a.phone{text-decoration:none;color:inherit}
.mspapp{--navy:#1b3a6b; --navy-2:#2a4c86; --ink:#16233d; --ink-2:#3b4863; --mute:#667391; --line:#e4e8f0; --bg:#f4f6fa; --card:#fff;
  --teal:#1a9bb5; --lime:#8cc63f; --green:#3ea55b; --orange:#f39a1e; --pink:#e0406a; --coral:#f2665a; --blue:#1e7fd0; --purple:#7b4fb3;
  --display:'Baloo 2',system-ui,sans-serif; --body:'Atkinson Hyperlegible',system-ui,-apple-system,sans-serif;
  --r:18px; --r-s:12px; --sh:0 2px 6px rgba(27,58,107,.06),0 8px 24px rgba(27,58,107,.06); --sh-l:0 24px 60px -24px rgba(27,58,107,.45);
  --pink-d:#c8325a; --blue-d:#1668b3; --green-d:#2f7d45;
  --maxw:1180px; --u:#1a9bb5; --u-ink:#0f7584; --u-bg:#e6f5f8}
html[data-ct="high"] .mspapp,html[data-ct="high"] body.mspapp{--ink:#000;--ink-2:#111;--mute:#333;--line:#1b3a6b}
@media (max-width:760px){
html:root .mspapp .hd-in{padding:50px 16px 10px;min-height:0}
html:root .mspapp .brand svg{height:40px}
html:root .mspapp .nav,html:root .mspapp .hd .cta,html:root .mspapp .hbtn .t{display:none}
html:root .mspapp .urgpill{display:inline-flex}
html:root .mspapp .hd .hbtn[data-go="favoris"]{display:none}
html:root .mspapp .hbtn{padding:9px}
html:root .mspapp .tabbar{display:flex;position:absolute;left:0;right:0;bottom:0;z-index:80;background:#fff;border-top:1px solid var(--line);padding:8px 6px 26px}
html:root .mspapp .wrap{padding-inline:16px}
html:root .mspapp section.blk{padding-block:28px}
html:root .mspapp .h2{font-size:calc(24px * var(--mspfs))}
html:root .mspapp .c2,html:root .mspapp .c3,html:root .mspapp .c4{grid-template-columns:1fr}
html:root .mspapp .hero-in{grid-template-columns:1fr;padding-block:22px 26px;gap:0}
html:root .mspapp .hero h1{font-size:calc(30px * var(--mspfs))}
html:root .mspapp .hero .lead{font-size:calc(16px * var(--mspfs))}
html:root .mspapp .hero .art{margin:18px auto 0;max-width:330px}
html:root .mspapp .bigsearch input{font-size:calc(17px * var(--mspfs))}
html:root .mspapp .bigsearch .go{padding:12px 14px;font-size:0}
html:root .mspapp .bigsearch .go::after{content:"OK";font-size:calc(15px * var(--mspfs))}
html:root .mspapp .chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:-16px;padding-inline:16px}
html:root .mspapp .chip{white-space:nowrap}
html:root .mspapp .quick{margin-top:16px}
html:root .mspapp .quick-in{grid-template-columns:repeat(3,1fr);gap:10px}
html:root .mspapp .qa{padding:12px 6px;font-size:max(12px, calc(12.5px * var(--mspfs)))}
html:root .mspapp .qa:nth-child(n+4){display:none}
html:root .mspapp .ugrid{grid-template-columns:repeat(2,1fr);gap:10px}
html:root .mspapp .ucard p{display:none}
html:root .mspapp .team{grid-template-columns:1fr}
html:root .mspapp .promo{grid-template-columns:1fr;padding:22px}
html:root .mspapp .promo .art{display:none}
html:root .mspapp .ubanner .big{width:70px;height:70px;border-radius:20px;right:16px;top:auto;bottom:20px;transform:none}
html:root .mspapp .ubanner .big svg{width:38px;height:38px}
html:root .mspapp .usearch{max-width:calc(100% - 84px)}
html:root .mspapp .fgrid{grid-template-columns:1fr}
html:root .mspapp .subnav{top:101px}
html:root .mspapp .fbody{grid-template-columns:1fr;gap:14px}
html:root .mspapp .toc{display:none}
html:root .mspapp .logo-row{grid-template-columns:1fr}
html:root .mspapp .ft-grid{grid-template-columns:1fr}
html:root .mspapp .palette,html:root .mspapp .sheet{position:absolute;padding:52px 10px 10px}
html:root .mspapp .sheet{align-items:flex-end;padding:0}
html:root .mspapp .sbox{border-radius:22px 22px 0 0;padding-bottom:36px}
html:root .mspapp .toast{position:absolute;bottom:100px;white-space:nowrap}
html:root .mspapp .pchips .chip{background:#eef2f8;color:var(--navy)}
html:root .mspapp .rgpd dl{grid-template-columns:1fr}
html:root{--mspfsb:.9}
html:root .mspapp .util{display:none}
html:root .mspapp .aa{display:inline-flex}
html:root .mspapp .hero-in{grid-template-columns:1fr 132px;grid-template-areas:"h art" "l l" "s s" "c c";column-gap:12px;align-items:center}
html:root .mspapp .hero-in>div:first-child{display:contents}
html:root .mspapp .hero h1{grid-area:h;font-size:calc(27px * var(--mspfs));line-height:1.12}
html:root .mspapp .hero .lead{grid-area:l;margin-top:12px}
html:root .mspapp .hero .bigsearch{grid-area:s}
html:root .mspapp .hero .chips{grid-area:c}
html:root .mspapp .hero .art{grid-area:art;margin:0;max-width:none;width:132px}
html:root .mspapp .gnav{top:101px}
html:root .mspapp .gbody{grid-template-columns:1fr;padding-block:18px 40px}
html:root .mspapp .gbody .toc{display:none}
html:root .mspapp .gchs{grid-template-columns:1fr}
html:root .mspapp .g-table{border:0;background:none}
html:root .mspapp .g-table thead{display:none}
html:root .mspapp .g-table tr{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:8px;padding:6px 12px}
html:root .mspapp .g-table td{display:grid;grid-template-columns:38% 1fr;gap:10px;border:0;padding:6px 0}
html:root .mspapp .g-table td::before{content:attr(data-l);font-weight:700;color:var(--u-ink);font-size:max(12px, calc(13.5px * var(--mspfs)));line-height:1.35;padding-top:2px}
html:root .mspapp .g-table td:first-child{grid-template-columns:1fr;font-size:calc(16.5px * var(--mspfs))}
html:root .mspapp .g-table td:first-child::before{display:none}
html:root .mspapp .g-foods{grid-template-columns:1fr}
html:root .mspapp .g-steps{grid-template-columns:1fr}
html:root .mspapp .g-tex{grid-template-columns:1fr}
html:root .mspapp .g-tex li{border-radius:10px !important;grid-template-columns:1fr auto;align-items:center}
html:root .mspapp .tabbar{position:fixed;padding-bottom:max(10px,env(safe-area-inset-bottom))}
html:root .mspapp .palette,html:root .mspapp .sheet{position:fixed}
html:root .mspapp .toast{position:fixed;bottom:calc(84px + env(safe-area-inset-bottom))}
html:root body.mspapp-page{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
html:root .mspapp .hd-in{padding:10px 16px;padding-top:max(10px,env(safe-area-inset-top))}
html:root .mspapp .subnav,html:root .mspapp .gnav{top:61px}
}
body.mspapp-page{margin:0;background:var(--bg)}
/* Compléments « vrai site » (liens au lieu des boutons de la maquette, fiches actuelles). */
.mspapp .nav a{font-family:var(--display);font-weight:600;font-size:calc(16px * var(--mspfs));color:var(--ink-2);padding:8px 12px;border-radius:10px;white-space:nowrap;text-decoration:none}
.mspapp .nav a:hover,.mspapp .nav a[aria-current]{background:#eef2f8;color:var(--navy)}
.mspapp .nav a.n-urg{color:var(--pink-d)}
.mspapp a.hbtn,.mspapp a.cta,.mspapp a.urgpill,.mspapp a.brand{text-decoration:none}
.mspapp .util a{color:#fff;border-radius:8px;padding:5px 9px;font-weight:700;font-size:calc(14px * var(--mspfs));min-height:34px;display:inline-flex;align-items:center;text-decoration:none}
.mspapp .util a[aria-current="true"]{background:#fff;color:var(--navy)}
.mspapp .tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:max(12px, calc(12px * var(--mspfs)));min-height:48px;font-weight:700;color:var(--mute);padding:4px 0;position:relative;text-decoration:none}
.mspapp .tabbar a.on{color:var(--navy)}
.mspapp .tabbar a.on::before{content:"";position:absolute;top:-9px;width:26px;height:3px;border-radius:3px;background:var(--pink)}
.mspapp .ft a{color:#fff;text-decoration:none}
.mspapp .ft a:hover{text-decoration:underline}
.mspapp a.ritem{text-decoration:none;color:inherit}
.mspapp .hd{position:relative}
.mspapp.msp-top{position:sticky;top:0;z-index:9990}
.mspapp.msp-bottom{position:relative;z-index:9989}
.mspapp.msp-bottom.msp-ov{z-index:100001}
.mspapp .palette,.mspapp .sheet{z-index:99999}
.mspapp .toast{z-index:100000}
.mspapp a.fcard,.mspapp a.ucard,.mspapp a.qa,.mspapp a.gch{text-decoration:none;color:inherit}
@media (max-width:760px){
  html:root .mspapp .nav{display:none}
  html:root .mspapp .util{display:none}
  html:root .mspapp .aa{display:inline-flex}
  html:root .mspapp .urgpill{display:inline-flex}
  html:root .mspapp .hd .cta,html:root .mspapp .hbtn .t,html:root .mspapp .hd .fav-link{display:none}
  html:root .mspapp .tabbar{display:flex;left:0;right:0;bottom:0;z-index:9995;background:#fff;border-top:1px solid var(--line);padding:8px 6px}
  html:root body[data-mspapp-fiche]{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
}
@media (min-width:761px){ .mspapp .aa{display:none} }
@media print{ .mspapp.msp-top,.mspapp .tabbar,.mspapp .ft,.mspapp .palette,.mspapp .sheet{display:none !important} }
.mspapp .sbox .g.reg{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;align-items:center;color:var(--ink-2)}
.mspapp .sbox .g.reg>span{width:100%;font-weight:700}
.mspapp .sbox .reg button,.mspapp .sbox .reg a{background:#eef2f8;color:var(--navy);border:0;border-radius:10px;padding:10px 14px;font-weight:700;min-height:44px;display:inline-flex;align-items:center;text-decoration:none}
.mspapp .sbox .reg [aria-pressed="true"],.mspapp .sbox .reg [aria-current="true"]{background:var(--navy);color:#fff}
.mspapp [hidden]{display:none !important}
.mspapp .crumbs a{color:var(--u-ink);font-weight:700;text-decoration:none}
.mspapp .crumbs a:hover{text-decoration:underline}
.mspapp .empty svg{max-width:200px;height:auto}
.mspapp .pchips .chip{background:#eef2f8;color:var(--navy);border:0}
.mspapp .pchips .chip[aria-pressed="true"]{background:var(--navy);color:#fff}
/* Garde-fous : les fiches actuelles ont des règles globales (header, nav, footer, a, svg…)
   qui ne doivent pas déteindre sur l'habillage commun. */
.mspapp .hd,.mspapp .util,.mspapp .roofbar{margin:0;border:0;float:none;width:auto;max-width:none;min-height:0;height:auto;text-align:start;transform:none}
.mspapp .hd{display:block;padding:0;position:relative;background:#fff}
.mspapp .util{display:block;padding:0}
.mspapp .roofbar{height:5px;padding:0}
.mspapp .hd-in{height:auto;border:0;background:none}
.mspapp .nav{padding:0;margin:0;border:0;background:none;height:auto;width:auto;position:static;box-shadow:none;flex-wrap:nowrap;align-items:center}
.mspapp .brand{padding:0;margin:0 auto 0 0;background:none;border:0;height:auto;width:auto;flex:none}
[dir="rtl"] .mspapp .brand,.mspapp[dir="rtl"] .brand{margin:0 0 0 auto}
.mspapp .brand svg{height:48px;width:auto;max-width:none;max-height:none;display:block}
.mspapp .hbtn,.mspapp .cta,.mspapp .urgpill{margin:0;line-height:1.2;height:auto;text-transform:none;letter-spacing:normal;box-sizing:border-box}
.mspapp .hbtn{display:inline-flex}
.mspapp svg.i{max-width:none;height:22px}
.mspapp .ft{margin:0;border:0;padding-inline:0;text-align:start;width:auto;max-width:none}
.mspapp .tabbar{margin:0}
.mspapp footer,.mspapp header,.mspapp nav{box-sizing:border-box}
@media (max-width:760px){ html:root .mspapp .brand svg{height:40px} html:root .mspapp .hd .cta{display:none} html:root .mspapp .util{display:none} }
.mspapp .tabbar{top:auto;height:auto;min-height:0;width:auto;max-width:none;transform:none}
.mspapp .brand svg,.mspapp .ft svg{direction:ltr}
.mspapp .palette,.mspapp .sheet{top:0;right:0;bottom:0;left:0;height:auto;width:auto}
@media (min-width:761px){ html:root .mspapp .hbtn.aa{display:none} }
/* Fiches actuelles sans réglage de taille propre : agrandissement de secours du contenu. */
/* Uniquement sur ordinateur : sur téléphone, la mise en page rigide des fiches anciennes
   déborderait (le zoom au doigt reste disponible ; les guides réécrits auront leur propre réglage). */
@media (min-width:761px){
html[data-ts="l"] body[data-mspapp-zoom]>:not(.mspapp):not(script):not(style){zoom:1.12;width:calc(100% / 1.12);max-width:calc(100% / 1.12);box-sizing:border-box}
html[data-ts="xl"] body[data-mspapp-zoom]>:not(.mspapp):not(script):not(style){zoom:1.25;width:calc(100% / 1.25);max-width:calc(100% / 1.25);box-sizing:border-box}
html[data-ts="xxl"] body[data-mspapp-zoom]>:not(.mspapp):not(script):not(style){zoom:1.4;width:calc(100% / 1.4);max-width:calc(100% / 1.4);box-sizing:border-box}
}
/* L'habillage (en-tête, onglets, bandeau) ne grossit que jusqu'à A+ : c'est le texte
   à lire qui doit grossir, les boutons restent à leur place sans déborder. */
.mspapp .hd,.mspapp .util,.mspapp .tabbar{--mspfs:min(calc(var(--mspfsb) * var(--mspfsu)), 1.1)}
@media (min-width:761px){ .mspapp .hd{--mspfs:1} }
@media (max-width:760px){
  html:root .mspapp .hd-in{gap:6px;padding-inline:12px}
  html:root .mspapp .urgpill{padding:7px 9px}
  html:root .mspapp .tabbar a{line-height:1.15;text-align:center}
}
@media (max-width:360px){ html:root .mspapp .brand svg{height:34px} }
/* Écrans moyens : « Rechercher » et « Mes guides » en pictogramme seul (libellé lu par les lecteurs d'écran). */
@media (max-width:1440px){ html:root .mspapp .hd .hbtn .t{display:none} html:root .mspapp .hd .hbtn{padding:9px} }
@media (max-width:1100px){ html:root .mspapp .nav a{padding:8px 8px;font-size:calc(15px * var(--mspfs))} }
/* Tablettes et petits écrans : barre d'onglets en bas (comme l'application), menu du haut masqué. */
@media (min-width:761px) and (max-width:1040px){
  html:root .mspapp .nav{display:none}
  html:root .mspapp .tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:9995;background:#fff;border-top:1px solid var(--line);padding:8px 6px max(10px,env(safe-area-inset-bottom))}
  html:root body.mspapp-page,html:root body[data-mspapp-fiche]{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
}
/* ---------- Étape 2 : pages de la maison de santé ---------- */
/* Tests « Suis-je concerné ? » dans la fenêtre commune. */
.mspapp .test{margin-top:12px;display:grid;gap:10px}
.mspapp .test .q{display:flex;gap:11px;align-items:flex-start;font-size:calc(15.5px * var(--mspfs));color:var(--ink);cursor:pointer;line-height:1.4}
.mspapp .test .q input{width:22px;height:22px;flex:none;margin:1px 0 0;accent-color:var(--c,var(--teal))}
.mspapp .test fieldset{border:0;border-bottom:1px solid var(--line);margin:0;padding:0 0 12px;min-width:0}
.mspapp .test legend{padding:0;font-size:calc(15px * var(--mspfs));color:var(--ink);font-weight:600;margin-bottom:8px}
.mspapp .test .ech{display:flex;flex-wrap:wrap;gap:6px}
.mspapp .test .ech label{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line);border-radius:10px;padding:7px 11px;font-size:calc(14px * var(--mspfs));cursor:pointer;min-height:40px}
.mspapp .test .ech label:has(input:checked){border-color:var(--c,var(--purple));background:var(--c-bg,#f3eefa);font-weight:700}
.mspapp .test .ech input{accent-color:var(--c,var(--purple))}
.mspapp .test .score{margin:6px 0 0;font-size:calc(16px * var(--mspfs))}
.mspapp .test .score b{font-size:calc(22px * var(--mspfs));color:var(--c,var(--purple))}
.mspapp .resultat{margin:8px 0 0;padding:13px 15px;border-radius:12px;border:1.5px solid var(--line);background:#f5f7fb;font-size:calc(15px * var(--mspfs));color:var(--ink)}
.mspapp .resultat.haut{border-color:var(--c,var(--teal));background:var(--c-bg,#e8f6f8)}
.mspapp .resultat.moyen{border-color:#e08a12;background:#fff4e3}
.mspapp .sheet .enc{margin-top:14px;background:#f5f7fb;border-radius:12px;padding:13px 15px}
.mspapp .sheet .enc h4{margin:0 0 6px;font-size:calc(15.5px * var(--mspfs));color:var(--navy)}
.mspapp .sheet .enc ul{margin:0;padding-inline-start:18px;display:grid;gap:4px}
.mspapp .sheet .petit{font-size:calc(14px * var(--mspfs));color:var(--mute);margin:10px 0 0}
.mspapp .sheet .acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.mspapp .sheet .age{border:1.5px solid var(--line);border-radius:12px;padding:11px 13px;display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}
.mspapp .sheet .age b{background:var(--c,var(--green));color:#fff;border-radius:999px;padding:3px 11px;font-size:calc(14px * var(--mspfs))}
.mspapp .sbox{max-height:88vh;overflow:auto;overscroll-behavior:contain}
/* Séances d'ateliers terminées : grisées. */
.mspapp .event.passee{opacity:.7}
/* Repères du bandeau d'accueil (secteur 1, PMR, métro). */
.mspapp .reperes{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.mspapp .reperes span,.mspapp .reperes a{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:calc(14px * var(--mspfs));font-weight:600;color:var(--ink-2);text-decoration:none}
.mspapp .reperes i{width:9px;height:9px;border-radius:50%;flex:none}
/* Internes du semestre. */
.mspapp .interne{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start}
.mspapp .interne .av{width:60px;height:60px;border-radius:16px;background:var(--purple);color:#fff;display:grid;place-items:center;font-weight:800;font-size:20px;overflow:hidden}
.mspapp .interne .av img{width:100%;height:100%;object-fit:cover}
.mspapp .pastille{display:inline-block;width:11px;height:11px;border-radius:50%;background:var(--blue);vertical-align:middle;margin-inline-end:6px}
.mspapp .ancre{scroll-margin-top:90px}
@media (max-width:760px){ html:root .mspapp .reperes{gap:6px;margin-top:12px} html:root .mspapp .reperes span{padding:4px 9px;font-size:calc(12.5px * var(--mspfs))} }
/* ---------- Étape 3 : guides réécrits ---------- */
/* Liens à la place des boutons de la maquette (chapitres, sommaire, pages). */
.mspapp .gnav a{flex:none;border:0;background:#f1f4f9;border-radius:999px;padding:7px 14px;min-height:44px;font-weight:700;font-size:calc(14px * var(--mspfs));color:var(--ink-2);white-space:nowrap;display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.mspapp .gnav a .n{font-size:max(12px, calc(12px * var(--mspfs)));opacity:.7}
.mspapp .gnav a.on{background:var(--u-ink);color:#fff}
.mspapp .gnav a svg{width:16px;height:16px}
.mspapp .gnav{top:var(--mspH,70px)}
.mspapp .toc a,.mspapp .toc .gall-btn{display:flex;gap:8px;align-items:baseline;width:100%;text-align:start;border:0;background:none;padding:5px 8px;border-radius:8px;color:var(--ink-2);line-height:1.35;text-decoration:none;font:inherit}
.mspapp .toc a .n{color:var(--mute);font-size:max(12px, calc(12.5px * var(--mspfs)));min-width:18px}
.mspapp .toc a:hover{background:var(--u-bg);color:var(--u-ink)}
.mspapp .toc a.on{background:var(--u-bg);color:var(--u-ink);font-weight:700}
.mspapp .toc .gall-btn{margin-top:6px;color:var(--u-ink);font-weight:700;cursor:pointer}
.mspapp .toc{top:calc(var(--mspH,70px) + 70px)}
.mspapp a.gch{text-decoration:none;color:inherit}
.mspapp .gseg a{border:2px solid var(--u);background:#fff;border-radius:14px;padding:12px 8px;min-height:64px;font-weight:800;font-size:calc(17px * var(--mspfs));color:var(--u-ink);display:grid;gap:2px;justify-items:center;align-content:center;text-align:center;text-decoration:none}
.mspapp .gseg a small{font-weight:600;font-size:max(12px, calc(13px * var(--mspfs)));color:var(--ink-2)}
.mspapp .gseg a:hover{background:var(--u-bg)}
.mspapp .gquick a{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;min-height:44px;display:inline-flex;align-items:center;font-weight:700;font-size:calc(14.5px * var(--mspfs));color:var(--ink-2);text-decoration:none}
.mspapp .gquick a:hover{border-color:var(--u);color:var(--u-ink)}
.mspapp .gpager a{text-decoration:none;color:inherit}
.mspapp .gtools a.link{display:inline-flex;align-items:center;gap:6px}
.mspapp .gchap{scroll-margin-top:calc(var(--mspH,70px) + 70px)}
.mspapp .gmain>.gchap:first-of-type,.mspapp .gmain>.gtools+.gchap{margin-top:0}
/* Avec JavaScript : un chapitre à la fois (le pager n'a de sens que dans ce mode). */
.mspapp .gview.js .gchap[hidden],.mspapp .gview.js .gsom[hidden],.mspapp .gtools[hidden]{display:none}
.mspapp .gview.js .gchap.seul{margin-top:0;padding-top:0;border-top:0}
.mspapp .gview:not(.js) .gpager,.mspapp .gview .gchap:not(.seul) .gpager{display:none}
.mspapp .gview:not(.js) .gall-btn,.mspapp .gview:not(.js) [data-gall]{display:none}
.mspapp .gsom+.gchap{margin-top:34px}
/* Outils refaits : cadre commun. */
.mspapp .g-outil{margin:18px 0;background:#fff;border:2px solid var(--u);border-radius:var(--r);padding:18px 18px 20px}
.mspapp .g-outil-h{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;margin-bottom:14px}
.mspapp .g-outil-h .g-ci{width:42px;height:42px;border-radius:12px;background:var(--u);color:#fff;display:grid;place-items:center}
.mspapp .g-outil-h .g-ci svg{width:22px;height:22px}
.mspapp .g-outil-h small{color:var(--u-ink);font-weight:700;font-size:max(12px, calc(13px * var(--mspfs)))}
.mspapp .g-outil-h h3{margin:2px 0 4px;color:var(--navy);font-size:calc(19px * var(--mspfs))}
.mspapp .g-outil-h p{margin:0;color:var(--ink-2)}
/* Quiz. */
.mspapp .qz-bar{height:8px;border-radius:99px;background:var(--u-bg);overflow:hidden;margin-bottom:10px}
.mspapp .qz-bar span{display:block;height:100%;background:var(--u);transition:width .3s}
.mspapp .qz-n{margin:0;color:var(--mute);font-weight:700;font-size:max(12px, calc(13.5px * var(--mspfs)))}
.mspapp .qz-q{margin:6px 0 12px;font-size:calc(19px * var(--mspfs));color:var(--navy);outline:none}
.mspapp .qz-opts{display:grid;gap:8px}
.mspapp .qz-opt{text-align:start;border:2px solid var(--line);background:#fff;border-radius:14px;padding:12px 14px;min-height:52px;font:inherit;font-weight:700;color:var(--ink);cursor:pointer}
.mspapp .qz-opt:hover:not(:disabled){border-color:var(--u)}
.mspapp .qz-opt.bon{border-color:#2f8f4e;background:#e9f6ee}
.mspapp .qz-opt.faux{border-color:#c8325a;background:#fdeef2}
.mspapp .qz-opt:disabled{cursor:default}
.mspapp .qz-fb{margin:12px 0;font-weight:600}
.mspapp .qz-fb.ok{color:#236b3a}.mspapp .qz-fb.ko{color:#a8284c}
.mspapp .qz-res{text-align:center;padding:10px 0}
.mspapp .qz-score{font-size:calc(40px * var(--mspfs));font-weight:800;color:var(--u-ink);margin:0}
.mspapp .qz-res h4{font-size:calc(22px * var(--mspfs));color:var(--navy);margin:4px 0 6px;outline:none}
/* Impression d'un guide : tout le texte, sans la navigation. */
@media print{
  .mspapp .gnav,.mspapp .toc,.mspapp .factions,.mspapp .gpager,.mspapp .gtools,.mspapp .gask .btn,.mspapp .fbanner .crumbs,.mspapp .g-outil .btn{display:none !important}
  .mspapp .gview.js .gchap[hidden],.mspapp .gview.js .gsom[hidden]{display:block !important}
  .mspapp .gbody{display:block !important;padding:0}
  .mspapp .gchap{break-inside:auto}
  .mspapp details.g-faq>div{display:block !important}
}
/* La route /fiche/ embarque aussi l'ancienne feuille theme.css (section{padding:…}) : neutralisée dans les guides. */
.mspapp .gview section{padding:0}
/* Questions à choix des outils refaits. */
.mspapp .g-q{border:0;margin:0 0 14px;padding:0;min-width:0}
.mspapp .g-q[hidden]{display:none}
.mspapp .g-q legend{padding:0;margin-bottom:8px;font-weight:700;color:var(--navy);font-size:calc(16px * var(--mspfs))}
.mspapp .g-choix{display:flex;flex-wrap:wrap;gap:8px}
.mspapp .g-choix label{display:inline-flex;align-items:center;gap:8px;border:2px solid var(--line);border-radius:12px;padding:9px 13px;min-height:46px;cursor:pointer;background:#fff;font-size:calc(15px * var(--mspfs))}
.mspapp .g-choix label:has(input:checked){border-color:var(--u);background:var(--u-bg);font-weight:700;color:var(--u-ink)}
.mspapp .g-choix input{accent-color:var(--u);width:18px;height:18px;margin:0}
.mspapp .op-res .g-card{margin-top:12px}
.mspapp .op-res ol{margin:8px 0 0;padding-inline-start:20px;display:grid;gap:6px}
.mspapp .op-pied{margin:12px 0 0;padding-top:10px;border-top:1px solid var(--line)}
.mspapp .op-pied.urg{border-top:2px solid var(--pink)}
/* Moteur d'origine des conseils IST : ses classes, au design v5. */
.mspapp [data-ist] .f-step{padding:12px 0;border-bottom:1px solid var(--line)}
.mspapp [data-ist] .f-step .lab{font-weight:700;color:var(--navy);font-size:calc(16px * var(--mspfs));display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.mspapp [data-ist] .f-step .lab .n{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--u-bg);color:var(--u-ink);font-size:calc(13px * var(--mspfs));flex:none}
.mspapp [data-ist] .f-step .hint{color:var(--mute);font-size:calc(14px * var(--mspfs));margin:4px 0 0 34px}
.mspapp [data-ist] .f-opts{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0 34px}
.mspapp [data-ist] .f-opt{border:2px solid var(--line);background:#fff;border-radius:12px;padding:9px 13px;min-height:44px;font:inherit;font-weight:600;color:var(--ink);cursor:pointer}
.mspapp [data-ist] .f-opt.on{border-color:var(--u);background:var(--u-bg);color:var(--u-ink);font-weight:800}
.mspapp [data-ist] .f-result{margin-top:16px}
.mspapp [data-ist] .alert,.mspapp [data-ist] .urg-banner{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;border-radius:14px;padding:13px 15px;margin:12px 0;border:1.5px solid}
.mspapp [data-ist] .a-amber{background:#fff4e3;border-color:#e08a12}
.mspapp [data-ist] .a-red,.mspapp [data-ist] .urg-banner{background:#fdeef2;border-color:#c8325a;color:#6e1330}
.mspapp [data-ist] .urg-banner h4{margin:0 0 4px;font-size:calc(17px * var(--mspfs))}
.mspapp [data-ist] .urg-banner p{margin:0}
.mspapp [data-ist] .ai svg,.mspapp [data-ist] .big svg,.mspapp [data-ist] .rd svg{width:24px;height:24px}
.mspapp [data-ist] .res-band{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;border-radius:16px;padding:14px 16px;margin:12px 0;background:#f5f7fb;border-inline-start:6px solid #2f8f4e}
.mspapp [data-ist] .res-band.lvl1{border-inline-start-color:#d9a300;background:#fffaeb}
.mspapp [data-ist] .res-band.lvl2{border-inline-start-color:#e08a12;background:#fff4e3}
.mspapp [data-ist] .res-band.lvl3{border-inline-start-color:#c8325a;background:#fdeef2}
.mspapp [data-ist] .res-band h4{margin:0 0 4px;color:var(--navy);font-size:calc(18px * var(--mspfs))}
.mspapp [data-ist] .res-band p{margin:0}
.mspapp [data-ist] .res-sub{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 14px}
.mspapp [data-ist] .res-chip{background:#f1f4f9;border-radius:999px;padding:6px 12px;font-size:calc(13.5px * var(--mspfs));color:var(--mute)}
.mspapp [data-ist] .res-chip b{margin-inline-start:6px;color:var(--ink)}
.mspapp [data-ist] .reco-list{display:grid;gap:12px}
.mspapp [data-ist] .reco-block{background:#fff;border:1px solid var(--line);border-inline-start:5px solid var(--ac,var(--u));border-radius:14px;padding:12px 16px}
.mspapp [data-ist] .reco-block h5{margin:0 0 6px;font-size:calc(16px * var(--mspfs));color:var(--navy)}
.mspapp [data-ist] .reco-block ul{margin:0;padding-inline-start:20px;display:grid;gap:5px}
.mspapp [data-ist] .tag-flag{display:inline-block;font-size:calc(12px * var(--mspfs));font-weight:700;border-radius:999px;padding:1px 8px;background:#f1f4f9;color:var(--mute);margin-inline-start:4px}
.mspapp [data-ist] .tag-flag.reg{background:#e9f6ee;color:#236b3a}
.mspapp [data-ist] .res-actions{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.mspapp [data-ist] .btn2{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:10px 16px;min-height:44px;font:inherit;font-weight:700;cursor:pointer;border:2px solid var(--u);text-decoration:none}
.mspapp [data-ist] .b-solid{background:var(--u-ink);border-color:var(--u-ink);color:#fff}
.mspapp [data-ist] .b-soft{background:#fff;color:var(--u-ink)}
.mspapp [data-ist] .copybox{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#f8fafc}
.mspapp [data-ist] .cb-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;background:#fff;border-bottom:1px solid var(--line)}
.mspapp [data-ist] .cb-head h5{margin:0;font-size:calc(15px * var(--mspfs));color:var(--navy)}
.mspapp [data-ist] .mini-copy{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-weight:700;cursor:pointer}
.mspapp [data-ist] .mini-copy.ok{border-color:#2f8f4e;color:#236b3a}
.mspapp [data-ist] pre{margin:0;padding:12px 14px;white-space:pre-wrap;font-size:calc(13px * var(--mspfs));overflow-wrap:anywhere}
.mspapp [data-ist] .disclaimer{color:var(--mute);font-size:calc(14px * var(--mspfs))}
/* Accueil : la liste des résultats de recherche passe devant les raccourcis (Urgences, Rendez-vous…). */
.mspapp .hero.msp-res,.mspapp .hero:has(.results:not([hidden])){z-index:20}
/* Pager des guides (liens). */
.mspapp .gpager a{border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px 14px;min-height:60px;text-align:start;display:grid;gap:2px;align-content:center}
.mspapp .gpager a small{color:var(--mute);font-weight:700;font-size:max(12px, calc(13px * var(--mspfs)))}
.mspapp .gpager a b{color:var(--navy);font-size:calc(15.5px * var(--mspfs));line-height:1.3}
.mspapp .gpager a.nx{text-align:end}
.mspapp .gpager a:hover{border-color:var(--u)}
/* Niveaux de risque dans les tableaux. */
.mspapp .g-niv{display:inline-block;border-radius:999px;padding:2px 10px;font-weight:700;font-size:calc(13.5px * var(--mspfs));white-space:nowrap}
.mspapp .g-niv.n-3{background:#fdeaf0;color:#a8284c}
.mspapp .g-niv.n-2{background:#fff1dc;color:#9a5b00}
.mspapp .g-niv.n-1{background:#e9f6ee;color:#236b3a}
.mspapp .g-niv.n-0{background:#f1f4f9;color:var(--mute);white-space:normal}
/* Accueil : plan du quartier (repères du secteur). */
.mspapp .plan{margin:0}
.mspapp .plan img{display:block;width:100%;height:auto;border-radius:var(--r);border:1.5px solid var(--line);box-shadow:var(--sh)}
.mspapp .plan figcaption{margin-top:10px;color:var(--mute);font-size:calc(14.5px * var(--mspfs))}
/* Calculateurs (tabac, alcool) : champs, score, jauges. */
.mspapp .g-champs{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:6px 0 12px}
.mspapp .g-champs label{display:grid;gap:4px;font-weight:700;color:var(--navy);font-size:calc(14.5px * var(--mspfs))}
.mspapp .g-champs input{font:inherit;font-weight:600;border:2px solid var(--line);border-radius:12px;padding:10px 12px;min-height:46px;width:100%;box-sizing:border-box;background:#fff}
.mspapp .g-champs input:focus{border-color:var(--u);outline:none}
.mspapp .g-outil .acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.mspapp .tb-res,.mspapp .op-res{margin-top:12px}
.mspapp .g-score{border-radius:16px;padding:14px 16px;background:#f5f7fb;border-inline-start:6px solid #2f8f4e}
.mspapp .g-score.n-med{border-inline-start-color:#e08a12;background:#fff4e3}
.mspapp .g-score.n-hi{border-inline-start-color:#c8325a;background:#fdeef2}
.mspapp .g-score-n{margin:0;color:var(--mute)}
.mspapp .g-score-n b{font-size:calc(30px * var(--mspfs));color:var(--navy)}
.mspapp .g-jauge{height:8px;border-radius:99px;background:#e6eaf1;overflow:hidden;margin:6px 0 10px}
.mspapp .g-jauge span{display:block;height:100%;background:#2f8f4e}
.mspapp .n-med .g-jauge span{background:#e08a12}.mspapp .n-hi .g-jauge span{background:#c8325a}
.mspapp .g-score h4{margin:0 0 4px;color:var(--navy);font-size:calc(18px * var(--mspfs))}
.mspapp .g-score p{margin:0 0 6px}
.mspapp .g-sav{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}
.mspapp .g-sav div{background:var(--u-bg);border-radius:14px;padding:12px;text-align:center}
.mspapp .g-sav b{display:block;font-size:calc(22px * var(--mspfs));color:var(--u-ink)}
.mspapp .g-sav span{color:var(--mute);font-size:calc(14px * var(--mspfs))}
.mspapp .g-sav-p{display:block;margin-top:10px;padding:12px 14px}
.mspapp .al-f{margin:0 0 10px;color:var(--ink-2)}
.mspapp .al-t{font-weight:700;color:var(--navy);margin:6px 0 8px}
.mspapp .al-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.mspapp .al-b{border:2px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.mspapp .al-b.on{border-color:var(--u);background:var(--u-bg)}
.mspapp .al-nom{display:grid;gap:2px;width:100%;text-align:start;border:0;background:none;padding:10px 12px;font:inherit;cursor:pointer;color:var(--ink)}
.mspapp .al-nom span{font-size:calc(13px * var(--mspfs));color:var(--mute)}
.mspapp .al-q{display:flex;align-items:center;justify-content:center;gap:10px;padding:0 0 10px}
.mspapp .al-q button{width:40px;height:40px;border-radius:50%;border:2px solid var(--u);background:#fff;color:var(--u-ink);font-size:20px;font-weight:800;cursor:pointer}
.mspapp .al-q output{min-width:24px;text-align:center;font-weight:800}
.mspapp .al-perso{margin:12px 0}
.mspapp .al-perso summary{cursor:pointer;font-weight:700;color:var(--u-ink)}
.mspapp .al-tot{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0 8px}
.mspapp .al-tot div{background:#f5f7fb;border-radius:14px;padding:12px;text-align:center}
.mspapp .al-tot b{display:block;font-size:calc(22px * var(--mspfs));color:var(--navy)}
.mspapp .al-tot span{font-size:calc(13px * var(--mspfs));color:var(--mute)}
.mspapp .al-verdict{border-radius:12px;padding:12px 14px;font-weight:700;margin:8px 0}
.mspapp .al-verdict.n-ok{background:#e9f6ee;color:#236b3a}
.mspapp .al-verdict.n-moderate{background:#fff1dc;color:#8a5200}
.mspapp .al-verdict.n-high{background:#fdeaf0;color:#a8284c}
.mspapp .al-verdict.n-critical{background:#a8284c;color:#fff}
.mspapp .al-proj{margin:0 0 8px}
.mspapp .al-jauge{margin:12px 0}
.mspapp .al-jauge p{margin:0 0 6px}
.mspapp .al-leg{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;font-size:calc(13px * var(--mspfs));color:var(--mute)}
.mspapp .al-barre{height:10px;border-radius:99px;background:#e6eaf1;overflow:hidden;margin-top:6px}
.mspapp .al-barre span{display:block;height:100%;width:0;background:#2f8f4e}
.mspapp .al-barre span.n-moderate{background:#e08a12}.mspapp .al-barre span.n-high{background:#c8325a}
.mspapp .al-note{font-size:calc(13px * var(--mspfs));color:var(--mute);margin-top:4px}
@media (max-width:480px){ html:root .mspapp .al-tot{grid-template-columns:1fr} }

