/* Identité commune GMVT pour l'espace partenaire. Les états métier restent gérés par les vues. */
:root { --pro-rust:#bf522e; --pro-ink:#29221e; --pro-muted:#70655e; --pro-paper:#fbf9f5; --pro-rule:#e4ded7; }
.pro-hero { background:#f2dcd5; color:#3c465a; border-bottom:1px solid #e5baab; }
.pro-hero-layout { display:grid; grid-template-columns:180px minmax(220px,1fr) auto auto; align-items:center; gap:36px; padding-block:32px; }
.pro-hero-logo img { display:block; width:130px; height:auto; opacity:1; }
.pro-hero-welcome { min-width:0; }
.pro-hero-welcome .pro-eyebrow { color:#a94425; font-size:9px; letter-spacing:1.8px; margin:0 0 10px; }
.pro-hero-welcome>div { display:block; margin:0; }
.pro-hero-welcome h1 { font-size:25px; line-height:1.25; letter-spacing:-.5px; color:#1d3753; overflow-wrap:anywhere; }
.pro-hero-welcome>div>span { display:block; padding:0; margin-top:9px; border:0; border-radius:0; background:none!important; color:#51576a; font-size:11px; font-weight:400; }
.pro-hero-welcome>p:not(.pro-eyebrow) { color:#51576a; font-size:11px; line-height:1.6; }
/* Sélecteur de fiche quand le contact en gère plusieurs (cf. Auth::fichesAccessibles). */
.pro-fiche-switch { display:flex; flex-wrap:wrap; align-items:center; gap:6px 8px; margin-top:9px; color:#51576a; font-size:11px; }
.pro-fiche-switch select { max-width:100%; padding:5px 28px 5px 10px; border:1px solid #e5baab; border-radius:999px; background:#fff9f5; color:#1d3753; font:600 12px/1.3 inherit; cursor:pointer; }
.pro-fiche-switch select:focus-visible { outline:2px solid #a94425; outline-offset:2px; }
.pro-hero-referent { width:auto; max-width:280px; padding:17px 19px; border:0; border-radius:16px; background:#fff9f5!important; }
.pro-hero-referent>p { color:#a94425; font-size:9px; letter-spacing:1.3px; margin-bottom:9px; }
.pro-hero-referent>div { gap:11px; }
.pro-hero-referent img { width:36px; height:36px; }
.pro-hero-referent .truncate { white-space:normal; font-size:13px; }
.pro-hero-referent .truncate { color:#1d3753; }
.pro-hero-referent .min-w-0>p:not(.truncate) { color:#51576a; }
.pro-hero-referent .bg-white\/15 { background:#bf522e; color:white; }
.pro-hero-referent button { background:#e5baab; color:#884329; }
.pro-hero-referent button:hover { background:#d99782; }
.pro-hero-referent a { color:#51576a; font-size:11px; }
.pro-hero-actions { display:flex; flex-direction:column; gap:14px; min-width:165px; }
.pro-hero-actions>button { display:flex; align-items:center; justify-content:center; gap:9px; padding:13px 18px; border-radius:100px; background:#3c465a; color:#3e2d23; font-size:12px; font-weight:600; }
.pro-hero-actions>button:hover { background:white; }
.pro-hero-links { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-inline:8px; color:#51576a; font-size:11px; }
.pro-hero-links a:hover { color:white; text-decoration:underline; text-underline-offset:4px; }
.pro-hero :is(a,button):focus-visible { outline-color:#a94425; }
.pro-hero-local-summary { display:flex; flex-wrap:wrap; align-items:center; gap:6px 16px; margin-top:14px; color:#51576a; font-size:11px; line-height:1.6; }
.pro-hero-local-summary i { margin-right:5px; color:#a94425; }
.pro-hero-local-summary:hover { color:#884329; }
.pro-hero .pro-hero-layout { grid-template-columns:140px minmax(220px,1fr) auto; }
.pro-account-card { min-width:260px; max-width:320px; }
.pro-account-card .pro-hero-referent { width:100%; max-width:none; border-radius:16px 16px 0 0; }
.pro-account-menu { display:grid; grid-template-columns:1fr 48px; overflow:hidden; border-radius:16px; background:#e5baab; }
.has-referent .pro-account-menu { border-radius:0 0 16px 16px; border-top:1px solid #e5baab; }
.pro-account-menu button,.pro-account-menu a { display:flex; align-items:center; justify-content:center; gap:9px; min-height:44px; padding:12px; color:#3c465a; font-size:12px; font-weight:500; }
.pro-account-menu a { border-left:1px solid #d99782; background:#efcec2; }
.pro-account-menu button:hover,.pro-account-menu a:hover { background:#efcec2; }
@media(max-width:1250px) {
  .pro-hero-layout { grid-template-columns:145px minmax(190px,1fr) auto auto; gap:22px; }
  .pro-hero-logo img { width:120px; }
  .pro-hero-welcome h1 { font-size:22px; }
}
@media(max-width:1050px) {
  .pro-hero .pro-hero-layout { grid-template-columns:150px minmax(0,1fr); }
  .pro-account-card { grid-column:2; width:100%; max-width:360px; }
  .pro-hero-layout { grid-template-columns:180px 1fr; gap:26px 32px; }
  .pro-hero-logo img { width:120px; }
  .pro-hero-welcome { grid-column:2; }
  .pro-hero-referent { grid-column:2; grid-row:2; max-width:none; }
  .pro-hero-actions { grid-column:1; grid-row:2; }
}
@media(max-width:600px) {
  .pro-hero .pro-hero-layout { grid-template-columns:1fr; }
  .pro-account-card { grid-column:1; min-width:0; max-width:none; width:100%; }
  .pro-hero-layout { grid-template-columns:1fr; gap:23px; padding-block:26px; }
  .pro-hero-logo img { width:105px; }
  .pro-hero-welcome,.pro-hero-referent,.pro-hero-actions { grid-column:1; grid-row:auto; }
  .pro-hero-welcome h1 { font-size:25px; }
  .pro-hero-referent { width:100%; padding:15px 17px; }
  .pro-hero-referent>div>button { margin-left:auto; }
  .pro-hero-actions { gap:16px; }
  .pro-hero-links { justify-content:space-between; }
}
.pro-app { margin:0; background:var(--pro-paper); color:var(--pro-ink); font-family:'Work Sans',Arial,sans-serif; }
.pro-app h1,.pro-app h2,.pro-app h3,.pro-app h4,.pro-eyebrow { font-family:'Bricolage Grotesque',Arial,sans-serif; }
.pro-app :is(a,button,input,select,textarea):focus-visible { outline:3px solid var(--pro-rust); outline-offset:3px; }
.pro-app button,.pro-app a,.pro-app input { -webkit-tap-highlight-color:transparent; }
.pro-shell { width:calc(100% - 48px); max-width:1416px; margin-inline:auto; }
.pro-skip:not(:focus) { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.pro-skip:focus { display:block; padding:16px; background:white; }
.pro-topbar { background:var(--pro-rust); color:white; }
.pro-topbar-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-block:10px; }
.pro-network-name { font-family:'Bricolage Grotesque',Arial,sans-serif; font-size:10px; font-weight:700; letter-spacing:1.1px; text-transform:uppercase; text-decoration:none; }
.pro-structures { display:flex; gap:22px; align-items:center; }
.pro-structures a { display:inline-flex; align-items:center; gap:7px; font-size:11px; font-weight:600; white-space:nowrap; text-decoration:none; }
.pro-structures img { width:24px; height:24px; border-radius:50%; background:white; }
.pro-topbar a:hover { text-decoration:underline; text-underline-offset:4px; }
.pro-topbar a:focus-visible { outline-color:white; }
.pro-masthead { display:flex; justify-content:space-between; align-items:center; padding-block:24px; gap:24px; border-bottom:1px solid var(--pro-rule); }
.pro-logo img { display:block; width:240px; height:64px; object-fit:contain; }
.pro-account-nav { display:flex; align-items:center; gap:16px; }
/* En-tête connecté compact : marque, accueil, référent et actions sur une ligne. */
.pro-dashboard .pro-masthead { display:flex; gap:24px; padding-block:22px; }
.pro-dashboard .pro-masthead>.pro-logo { flex:0 0 190px; }
.pro-dashboard .pro-masthead>.pro-logo img { width:190px; height:54px; }
.pro-dashboard .pro-masthead>.pro-welcome-copy { flex:1 1 260px; min-width:0; }
.pro-dashboard .pro-masthead .pro-welcome-copy h1 { font-size:23px; line-height:1.2; letter-spacing:-.6px; color:var(--pro-ink); overflow-wrap:anywhere; }
.pro-dashboard .pro-masthead .pro-welcome-copy .pro-eyebrow { font-size:9px; margin-bottom:7px; }
.pro-dashboard .pro-masthead .pro-welcome-copy>p:not(.pro-eyebrow) { font-size:11px; color:var(--pro-muted); }
.pro-dashboard .pro-masthead .pro-welcome-copy>div>span { color:var(--pro-rust); background:#f4e6dc!important; border-color:#e6c9b8; font-size:10px; padding:3px 8px; }
.pro-dashboard .pro-masthead>.pro-referent { width:auto; padding:14px 16px; border-radius:18px; }
.pro-dashboard .pro-masthead>.pro-referent>p { margin-bottom:7px; font-size:9px; }
.pro-dashboard .pro-masthead>.pro-referent img { width:36px; height:36px; }
.pro-dashboard .pro-masthead>.pro-account-nav { flex:0 0 auto; display:grid; grid-template-columns:1fr 40px; gap:8px; }
.pro-dashboard .pro-masthead .pro-space-label { display:none; }
.pro-dashboard .pro-masthead .pro-local-shortcut { grid-column:1 / -1; text-align:right; font-size:11px; }
.pro-dashboard .pro-masthead .pro-button { padding:10px 14px; }
@media(max-width:1199px) {
  .pro-dashboard .pro-masthead { flex-wrap:wrap; gap:18px; }
  .pro-dashboard .pro-masthead>.pro-welcome-copy { flex-basis:calc(100% - 220px); }
  .pro-dashboard .pro-masthead>.pro-account-nav { margin-left:auto; }
}
@media(max-width:767px) {
  .pro-dashboard .pro-masthead>.pro-logo { flex-basis:145px; order:0; }
  .pro-dashboard .pro-masthead>.pro-logo img { width:145px; height:44px; }
  .pro-dashboard .pro-masthead>.pro-account-nav { order:1; }
  .pro-dashboard .pro-masthead>.pro-welcome-copy { order:2; flex-basis:100%; }
  .pro-dashboard .pro-masthead>.pro-referent { order:3; width:100%; }
  .pro-dashboard .pro-masthead .pro-local-shortcut { max-width:none; }
  .pro-dashboard .pro-masthead .pro-button { padding:0; }
}
.pro-space-label { color:var(--pro-muted); font-size:10px; text-transform:uppercase; letter-spacing:1.6px; margin-right:12px; }
.pro-button { display:inline-flex; align-items:center; justify-content:center; gap:10px; border-radius:100px; padding:12px 20px; font-size:12px; font-weight:600; text-decoration:none; }
.pro-button-outline { background:white; border:1px solid #d9c7bb; color:var(--pro-rust); }
.pro-button-outline:hover { background:#f5e8de; border-color:var(--pro-rust); }
.pro-icon-button { display:flex; align-items:center; justify-content:center; width:42px; height:42px; border:1px solid var(--pro-rule); border-radius:50%; color:var(--pro-muted); }
.pro-icon-button:hover { color:var(--pro-rust); background:#f5e8de; }
.pro-eyebrow { color:var(--pro-rust); font-size:11px; letter-spacing:1.8px; text-transform:uppercase; font-weight:700; margin-bottom:18px; }
.pro-login-layout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); align-items:center; gap:clamp(50px,7vw,110px); padding-block:56px 64px; max-width:1240px; }
.pro-login-story h1 { font-size:clamp(34px,3.6vw,48px); font-weight:700; line-height:1.12; letter-spacing:-1.4px; margin:0 0 24px; }
.pro-login-story em { font-style:normal; color:var(--pro-rust); }
.pro-login-intro { max-width:460px; color:var(--pro-muted); line-height:1.75; font-size:15px; }
.pro-login-photo { aspect-ratio:2 / 1; border-radius:22px; overflow:hidden; position:relative; margin-top:28px; }
.pro-login-photo img { display:block; width:100%; height:100%; object-fit:contain; }
.pro-login-photo:after { content:''; position:absolute; inset:0; background:linear-gradient(transparent,#29221e99); }
.pro-login-photo span { position:absolute; bottom:22px; left:24px; z-index:1; color:white; font-size:14px; }
.pro-login-perks { display:flex; flex-wrap:wrap; gap:12px 20px; padding-top:22px; font-size:11px; color:var(--pro-muted); }
.pro-login-perks i { color:var(--pro-rust); margin-right:6px; }
.pro-login-form { background:white; border:1px solid var(--pro-rule); border-radius:26px; padding:46px; box-shadow:0 18px 65px #633c2110; }
.pro-login-form>.max-w-sm { max-width:none; }
.pro-login-form h2 { font-size:38px; font-weight:700; line-height:1.12; letter-spacing:-1.2px; }
.pro-login-form .pro-eyebrow { font-size:10px; }
.pro-login-form input { padding-top:15px; padding-bottom:15px; border-color:var(--pro-rule); background:#fcfaf7; border-radius:12px; }
.pro-login-form input::placeholder { color:#93877e; }
.pro-login-form input:-webkit-autofill { -webkit-box-shadow:0 0 0 1000px #fcfaf7 inset; -webkit-text-fill-color:var(--pro-ink); }
.pro-login-form button[type=submit] { background:var(--pro-rust)!important; padding-block:16px; border-radius:100px; box-shadow:none; }
.pro-login-form button[type=submit]:hover { background:#a44224!important; }
.pro-login-form .text-gray-300 { color:#776a60; }
.pro-footer { display:flex; align-items:center; justify-content:space-between; gap:22px; padding-block:26px; border-top:1px solid var(--pro-rule); color:var(--pro-muted); font-size:11px; }
.pro-footer img { object-fit:contain; }
.pro-footer a:hover { color:var(--pro-rust); }
/* Accueil connecté : salutation et référent, puis informations locales et offres. */
.pro-welcome { background:none!important; }
.pro-welcome>.absolute { display:none; }
.pro-welcome>div.relative { padding-top:44px; padding-bottom:40px; }
.pro-welcome h1 { font-size:clamp(30px,3vw,46px); line-height:1.16; letter-spacing:-1.4px; color:var(--pro-ink); }
.pro-welcome-copy { flex:1 1 520px; }
.pro-welcome-copy>div>span { color:var(--pro-rust); border-color:#e6c9b8; background:#f4e6dc!important; }
.pro-welcome-copy>p:not(.pro-eyebrow) { color:var(--pro-muted); line-height:1.7; }
.pro-referent { background:#f1e5dc!important; border:1px solid #e4d1c3; border-radius:22px; padding:22px; }
.pro-referent p,.pro-referent a { color:var(--pro-ink); }
.pro-referent>p { color:var(--pro-rust); }
.pro-referent button { background:var(--pro-rust); color:white; width:42px; height:42px; }
.pro-referent button:hover { background:#a44224; }
.pro-referent .bg-white\/15 { background:var(--pro-rust); }
.pro-local-shortcut { font-size:12px; color:#365b4c; text-decoration:none; }
.pro-local-shortcut:hover { text-decoration:underline; text-underline-offset:4px; }
.pro-local-shortcut i { margin-right:5px; }
/* Onglet « Pour vos visiteurs » : cartes et boutons alignés sur l'onglet ressources. */
.pro-visiteurs #carrousel>a { border-radius:22px; box-shadow:none; }
.pro-visiteurs #carrousel>a:hover { box-shadow:0 8px 28px #633c2110; }
.pro-visiteurs-meteo>div.rounded-2xl { background:white!important; border-color:var(--pro-rule); border-radius:22px; box-shadow:none; }
.pro-visiteurs-action { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:10px 18px; border:1px solid var(--pro-rule); border-radius:100px; background:white; color:var(--pro-ink); font-size:12px; font-weight:600; transition:border-color .2s ease,color .2s ease; }
.pro-visiteurs-action:hover { border-color:#cdaa93; color:var(--pro-rust); }
.pro-visiteurs-meteo .pro-visiteurs-action { display:flex; }
.pro-tabs { flex-wrap:wrap; margin-inline:auto; justify-content:center; }
.pro-tabs .btn-onglet-espace { display:inline-flex; align-items:center; justify-content:center; gap:9px; }
.pro-tabs .btn-onglet-espace i { flex-shrink:0; font-size:14px; }
@media(max-width:600px) { .pro-tabs { border-radius:20px; } .pro-tabs .btn-onglet-espace { flex:1 1 130px; } }
@media(max-width:767px) {
  .pro-local-shortcut { font-size:10px; max-width:62px; text-align:center; }
  .pro-local-shortcut i { display:none; }
}
.pro-main { padding-top:36px; }
.pro-tabs { width:fit-content; max-width:100%; padding:6px; gap:6px; border:1px solid var(--pro-rule); border-radius:100px; background:#f0ebe4; }
.pro-tabs button { border:0; border-radius:100px; padding:13px 22px; color:var(--pro-muted); font-size:13px; }
.pro-tabs button.border-brand { background:white; color:var(--pro-rust); box-shadow:0 2px 8px #633c2110; }
.pro-tabs { position:relative; isolation:isolate; }
.pro-tabs-cursor { position:absolute; top:0; left:0; z-index:0; pointer-events:none; background:white; box-shadow:0 2px 8px #633c2110; }
.pro-tabs.cursor-ready .pro-tabs-cursor { transition:transform .32s cubic-bezier(.22,1,.36,1),width .32s cubic-bezier(.22,1,.36,1),height .32s cubic-bezier(.22,1,.36,1),border-radius .32s ease; }
.pro-tabs.has-sliding-cursor button { position:relative; z-index:1; transition:color .2s ease; }
.pro-tabs.has-sliding-cursor button.border-brand { background:transparent; box-shadow:none; }
.pro-section-title { font-size:clamp(26px,3vw,38px); font-weight:700; line-height:1.15; letter-spacing:-1px; }
.pro-main [data-onglet-espace-panel]>p.text-xs { font-size:13px; line-height:1.8; color:var(--pro-muted); margin-bottom:26px; }
.pro-main .pro-eyebrow { margin-bottom:12px; }
.pro-comparison { padding:12px; border:1px solid var(--pro-rule); border-radius:24px; background:white; }
.pro-comparison [data-pack].relative { border-radius:18px; }
.pro-comparison [data-pack] p.font-bold { font-family:'Bricolage Grotesque',Arial,sans-serif; font-size:19px; }
.pro-comparison [data-pack] p.text-2xl { font-family:'Bricolage Grotesque',Arial,sans-serif; font-size:32px; }
.pro-comparison-intro { padding:22px; font-family:'Bricolage Grotesque',Arial,sans-serif; font-size:25px; line-height:1.25; }
.pro-comparison-intro .pro-eyebrow { font-size:9px; letter-spacing:1px; }
.pro-pack-heading { min-height:245px; color:var(--pack-color); box-shadow:none; }
.pro-pack-copy { padding:23px 18px 76px; }
.pro-pack-number { display:block; font-size:10px; letter-spacing:2px; margin-bottom:18px; }
.pro-pack-heading .pack-overlay { inset:auto 16px 18px!important; background:transparent!important; opacity:1!important; pointer-events:auto!important; }
.pro-pack-heading .btn-choisir-pack { width:100%; padding:12px 16px; background:var(--pack-color)!important; color:white!important; box-shadow:none; }
/* Comparatif aligné sur la landing : colonnes continues et séparateurs neutres. */
.pro-comparison-landing { padding:0; background:var(--pro-paper); border-radius:22px; }
.pro-comparison-landing>.grid { column-gap:0!important; }
.pro-comparison-landing>.grid>div,
.pro-comparison-landing>.grid>button { border-left:0!important; border-right:1px solid #e4ded780!important; border-bottom:1px solid var(--pro-rule)!important; border-radius:0!important; }
.pro-comparison-landing .pro-pack-heading { min-height:320px; }
.pro-comparison-landing .pro-pack-copy { padding:26px 20px 80px; }
.pro-comparison-landing .pro-pack-copy>p.font-bold { min-height:46px; font-size:21px; }
.pro-pack-benefit { font-size:12px; line-height:1.6; min-height:40px; margin:10px 0 18px; }
.pro-comparison-landing .pro-pack-copy>p.text-2xl { font-size:36px; font-weight:500; margin-top:8px; }
.pro-comparison-landing .pro-offer-group { background:#e9dfd5!important; color:var(--pro-ink)!important; margin:0!important; padding:14px 20px!important; text-align:left; letter-spacing:1.4px; }
.pro-comparison-landing .pro-offer-group>span { color:var(--pro-muted); letter-spacing:0; }
.pro-comparison-landing .pro-group-end { display:none; }
.pro-comparison-landing .sticky { background:var(--pro-paper)!important; }
.pro-comparison-landing .btn-famille-services.sticky { font-size:12px; font-weight:500; }
.pro-comparison-landing .btn-famille-services.sticky>span:first-of-type { color:var(--pro-ink)!important; }
.pro-comparison-landing [data-pack]:not(.pro-pack-heading) { padding-top:16px; padding-bottom:16px; }

.pro-mobile-pack-picker { display:none; }
.pro-comparison-intro.pro-pack-guide { display:flex; flex-direction:column; align-self:stretch; padding:26px 22px; }
.pro-pack-guide h4 { margin:0 0 22px; font-size:25px; line-height:1.2; font-weight:600; }
.pro-pack-guide-list { list-style:none; padding:0; margin:0 0 24px; display:grid; gap:18px; }
.pro-pack-guide-list li { border-left:3px solid var(--guide-color); padding-left:12px; font-family:'Work Sans',Arial,sans-serif; font-size:12px; line-height:1.5; }
.pro-pack-guide-list li>span { display:block; color:#5b6069; }
.pro-pack-guide-list strong { display:block; color:var(--guide-color); font-size:13px; font-weight:600; margin-top:3px; }
.pro-pack-guide-contact { align-self:flex-start; margin-top:auto; font-family:'Work Sans',Arial,sans-serif; font-size:12px; line-height:1.5; font-weight:600; color:#bf522e; text-underline-offset:4px; }
.pro-comparison-landing .pro-offer-group.pro-offer-discovery { display:grid; align-items:center; padding:0!important; cursor:pointer; }
.pro-offer-discovery-label { padding:14px 20px; text-align:left; }
.pro-comparison-landing .pro-offer-discovery .pro-offer-discovery-hint { grid-column:2 / -1; justify-self:center; padding:10px 18px; font-size:12px; font-weight:600; text-transform:none; letter-spacing:0; color:#884329; }
.pro-offer-discovery-hint i { margin-left:8px; font-size:10px; }
.pro-offer-discovery:hover .pro-offer-discovery-hint { text-decoration:underline; text-underline-offset:4px; }
.pro-offer-discovery[aria-expanded="true"] .pro-offer-discovery-hint { visibility:hidden; }
@media (max-width:760px) {
  .pro-mobile-ready { min-width:0; }
  .pro-mobile-ready .pro-mobile-pack-picker { display:flex; flex-direction:column; gap:8px; margin-bottom:18px; }
  .pro-mobile-pack-picker>span { font-weight:600; }
  .pro-mobile-pack-picker select { width:100%; min-height:48px; padding:12px; border:1px solid #bf522e; border-radius:10px; background:#fff; color:#29221e; font:inherit; }
  .pro-mobile-pack-picker small { color:#70655e; font-size:12px; }
  .pro-mobile-ready .pro-comparison { overflow:visible; padding:0; border-radius:12px; }
  .pro-mobile-ready .pro-comparison>.grid { min-width:0!important; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)!important; }
  .pro-mobile-ready .pro-comparison>.grid>* { min-width:0; overflow-wrap:anywhere; }
  .pro-mobile-ready .pro-comparison-intro,
  .pro-mobile-ready .pro-comparison .pro-mobile-pack-hidden { display:none!important; }
  .pro-mobile-ready .pro-pack-heading { grid-column:1 / -1; min-height:0; }
  .pro-mobile-ready .pro-comparison .pro-pack-copy { padding:22px 20px 84px; }
  .pro-mobile-ready .pro-pack-copy>p.font-bold { min-height:0; font-size:23px; }
  .pro-mobile-ready .pro-pack-benefit { min-height:0; }
  .pro-mobile-ready .pro-comparison .sticky { position:static; padding:12px 10px; flex-wrap:wrap; }
  .pro-mobile-ready .pro-comparison .pro-offer-group { padding:14px 12px!important; letter-spacing:.6px; }
  .pro-mobile-ready .pro-comparison .btn-produit-info { width:28px; height:28px; }
  .pro-mobile-ready .pro-comparison .pro-offer-discovery { grid-template-columns:minmax(0,1fr)!important; padding:0!important; }
  .pro-mobile-ready .pro-offer-discovery-label { padding:14px 12px 8px; }
  .pro-mobile-ready .pro-comparison .pro-offer-discovery-hint { grid-column:1; justify-self:start; padding:0 12px 14px; }
  .pro-mobile-ready .pro-offer-discovery[aria-expanded="true"] .pro-offer-discovery-hint { display:none; }
}
.pro-app [data-onglet-espace-panel=ressources] a.group { border-color:var(--pro-rule); border-radius:22px; box-shadow:none; }
.pro-app [data-onglet-espace-panel=ressources] a.group:hover { border-color:#cdaa93; box-shadow:0 8px 28px #633c2110; }
.pro-app [data-onglet-espace-panel=ressources] h3 { font-size:18px; line-height:1.25; margin-bottom:10px; }
.pro-app [data-onglet-espace-panel=ressources] p.text-gray-400 { color:var(--pro-muted); line-height:1.8; }
.pro-app [id^=modal-].fixed>.bg-white { border-radius:24px; border:1px solid var(--pro-rule); box-shadow:0 24px 80px #29221e30; }
.pro-app [id^=modal-] h3.text-lg { font-size:25px; line-height:1.2; letter-spacing:-.6px; }
.pro-app .option-card,.pro-app .option-container { border-color:var(--pro-rule); border-radius:16px; }
@media(min-width:1536px) { .pro-shell { max-width:1416px; } }
@media(max-width:1100px) {
  .pro-topbar-inner { flex-direction:column; gap:9px; }
  .pro-space-label { display:none; }
  .pro-login-layout { gap:40px; }
  .pro-login-form { padding:32px; }
}
@media(max-width:767px) {
  .pro-shell { width:calc(100% - 36px); }
  .pro-topbar-inner { align-items:stretch; padding-block:12px; gap:12px; }
  .pro-network-name { text-align:center; font-size:9px; }
  .pro-structures { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 12px; }
  .pro-structures a { font-size:11px; padding-block:3px; }
  .pro-structures img { width:22px; height:22px; }
  .pro-masthead { padding-block:18px; gap:12px; }
  .pro-logo img { width:175px; height:48px; }
  .pro-account-nav { gap:8px; }
  .pro-button { font-size:11px; padding:10px 14px; text-align:center; }
  .pro-dashboard .pro-button span { display:none; }
  .pro-dashboard .pro-button { width:40px; height:40px; padding:0; }
  .pro-icon-button { width:40px; height:40px; }
  .pro-login-layout { grid-template-columns:1fr; padding-top:30px; gap:30px; }
  .pro-login-story h1 { font-size:37px; letter-spacing:-1.2px; }
  .pro-login-story h1 br:last-child { display:none; }
  .pro-login-intro { font-size:14px; }
  .pro-login-photo { display:none; }
  .pro-login-perks { padding-top:18px; gap:10px 15px; }
  .pro-login-form { padding:28px 23px; }
  .pro-login-form h2 { font-size:32px; }
  .pro-footer { flex-wrap:wrap; gap:16px; }
  .pro-footer p { order:3; width:100%; }
  .pro-footer img { width:145px; height:auto; }
  .pro-welcome>div.relative { padding:30px 18px; }
  .pro-welcome h1 { overflow-wrap:anywhere; }
  .pro-main { padding-left:18px; padding-right:18px; }
  .pro-tabs { width:100%; border-radius:20px; }
  .pro-tabs button { flex:1; padding:12px 10px; font-size:12px; border-radius:16px; }
  .pro-comparison { padding:8px; border-radius:20px; }
}
@media(max-width:360px) {
  .pro-logo img { width:140px; }
  .pro-login .pro-button { font-size:10px; padding-inline:10px; }
}
@media(prefers-reduced-motion:reduce) { .pro-app *, .pro-app *:before, .pro-app *:after { scroll-behavior:auto!important; animation:none!important; transition:none!important; } }
