/* ==========================================================================
   COUCHE APP MOBILE — andorregestoria.fr (03/09/2026)
   Additive : rien ne change au-dessus de 980 px (le bureau reste tel quel).
   Chargée après app.css. Le JS associé : /assets/js/app-mobile.js.
   --------------------------------------------------------------------------
   00. Défauts (tout masqué hors mobile)      07. Hub guides en liste
   01. Barre d'onglets (.abar)                08. Articles : sommaire, progression, partage
   02. En-tête intelligent + bouton Appeler   09. Simulateur : épingle de résultat
   03. Tiroir (menu)                          10. Pied de page accordéon + villes
   04. Feuille de contact                     11. Cibles tactiles, retours au toucher
   05. Tableaux → cartes                      12. Rythme vertical, zones sûres, PWA
   06. Rails de cartes (défilement horizontal)
   ========================================================================== */

/* 00 — DÉFAUTS (bureau : rien de visible) ================================ */
.abar,.nav__call,.mtoc,.rprog,.sim-pin,.share-btn,.drawer__tools{display:none}

/* ======================================================================== */
@media (max-width:980px){
  :root{--abar-h:62px;--sab:env(safe-area-inset-bottom,0px)}

  /* 01 — BARRE D'ONGLETS ================================================= */
  .abar{position:fixed;left:0;right:0;bottom:0;z-index:78;
    display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;
    height:calc(var(--abar-h) + var(--sab));padding:0 .2rem var(--sab);
    background:rgba(246,242,233,.94);-webkit-backdrop-filter:saturate(160%) blur(16px);backdrop-filter:saturate(160%) blur(16px);
    border-top:1px solid var(--line);box-shadow:0 -10px 26px -18px rgba(15,34,51,.4);
    transition:transform .3s var(--ease),opacity .3s var(--ease)}
  .abar__it{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.28rem;
    height:var(--abar-h);min-width:0;padding:0;border:0;background:none;cursor:pointer;
    font-family:var(--sans);font-size:.75rem;font-weight:600;letter-spacing:.01em;line-height:1;color:var(--text-mute);
    text-decoration:none;-webkit-tap-highlight-color:transparent;transition:color .2s var(--ease)}
  .abar__it>svg{width:1.45rem;height:1.45rem;color:var(--ink-700);transition:transform .18s var(--ease),color .2s var(--ease)}
  .abar__it>span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .abar__it.is-active{color:var(--gold-700)}
  .abar__it.is-active>svg{color:var(--gold-700)}
  .abar__it.is-active::before{content:"";position:absolute;top:0;left:50%;width:22px;height:3px;border-radius:0 0 3px 3px;background:var(--gold-500);transform:translateX(-50%)}
  .abar__it:active>svg{transform:scale(.88)}
  .abar__it--cta{color:var(--ink-800)}
  .abar__it--cta.is-active::before{display:none}
  .abar__cta{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;margin-top:-30px;
    background:linear-gradient(180deg,var(--gold-400),var(--gold-500));color:var(--ink-900);
    box-shadow:0 12px 24px -10px rgba(140,106,44,.65),0 0 0 5px var(--paper);
    transition:transform .18s var(--ease)}
  .abar__cta svg{width:1.55rem;height:1.55rem;color:var(--ink-900)}
  .abar__it--cta:active .abar__cta{transform:scale(.94)}
  body.menu-open .abar,body.cp-open .abar,html.kb-open .abar{transform:translateY(120%);opacity:0;pointer-events:none}
  .site-footer{padding-bottom:calc(var(--abar-h) + var(--sab) + 10px)}
  .mobile-cta{display:none !important}

  /* 02 — EN-TÊTE INTELLIGENT + APPELER =================================== */
  .site-header{transition:transform .32s var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease),border-color var(--dur) var(--ease);will-change:transform}
  .site-header.is-away{transform:translateY(-102%);box-shadow:none}
  body.menu-open .site-header,body.cp-open .site-header{transform:none}
  .nav__actions{gap:.5rem}
  .nav__call{display:grid;place-items:center;width:46px;height:46px;border-radius:var(--r-sm);border:1px solid var(--line-strong);
    background:var(--paper-card);color:var(--ink-800);-webkit-tap-highlight-color:transparent}
  .nav__call svg{width:1.15rem;height:1.15rem;color:var(--gold-700)}
  .nav__call:active,.burger:active{background:var(--paper-200)}

  /* 03 — TIROIR ========================================================== */
  .drawer__panel{width:min(86vw,380px);height:100dvh;padding:1.15rem 1.15rem calc(1.15rem + var(--sab));
    overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .drawer__head{margin-bottom:.9rem}
  .drawer__tools{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:0 0 .9rem}
  .drawer__tool{display:flex;align-items:center;gap:.55rem;min-height:54px;padding:.55rem .7rem;
    border:1px solid var(--gold-200);border-radius:var(--r);background:var(--gold-100);
    font-family:var(--sans);font-size:.86rem;font-weight:700;line-height:1.2;color:var(--ink-800);text-decoration:none}
  .drawer__tool svg{flex:0 0 auto;width:1.15rem;height:1.15rem;color:var(--gold-700)}
  .drawer__tool:active{background:var(--gold-200)}
  .drawer__acc{font-size:1.18rem;padding:.8rem 0;min-height:54px}
  .drawer__group.is-open .drawer__sub{max-height:720px}
  .drawer__nav .drawer__sub a{display:flex;align-items:center;min-height:46px;padding:.35rem 0 .35rem 1rem}
  .drawer__nav .drawer__sub a:last-child{margin-bottom:.6rem;padding-bottom:.35rem}
  .drawer__nav .drawer__sub a:active{color:var(--ink-800);border-color:var(--gold-400);background:var(--paper-200)}
  .drawer__foot .btn{min-height:52px}

  /* 04 — FEUILLE DE CONTACT ============================================== */
  .contact-panel__scroll{overscroll-behavior:contain;padding-bottom:calc(1.6rem + var(--sab))}
  .cp-form{gap:.9rem}
  .cp-submit{min-height:54px}

  /* 08 — ARTICLES : SOMMAIRE, PROGRESSION, PARTAGE ======================= */
  .rprog{display:block;position:fixed;top:0;left:0;height:3px;width:0;z-index:85;pointer-events:none;
    background:linear-gradient(90deg,var(--gold-500),var(--gold-400));transition:width .12s linear}
  html[dir="rtl"] .rprog{left:auto;right:0}
  .mtoc{display:block;background:var(--paper-card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-sm);margin:0 0 1.4rem}
  .mtoc>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:.6rem;min-height:54px;padding:.7rem 1rem;
    font-family:var(--sans);font-weight:700;font-size:.95rem;color:var(--ink-800);-webkit-tap-highlight-color:transparent}
  .mtoc>summary::-webkit-details-marker{display:none}
  .mtoc>summary>svg:first-child{width:1.1rem;height:1.1rem;color:var(--gold-700)}
  .mtoc>summary>b{font-family:var(--serif);font-weight:600;color:var(--gold-700);font-size:.95rem}
  .mtoc>summary>.chev{margin-inline-start:auto;width:1.1rem;height:1.1rem;color:var(--gold-600);transition:transform .3s var(--ease)}
  .mtoc[open]>summary{border-bottom:1px solid var(--line)}
  .mtoc[open]>summary>.chev{transform:rotate(180deg)}
  .mtoc>ol{list-style:none;margin:0;padding:.35rem .5rem .5rem;counter-reset:toc;display:grid;gap:0}
  .mtoc>ol>li{margin:0;padding:0}
  .mtoc>ol>li::before{display:none}
  .mtoc>ol a{display:flex;align-items:baseline;gap:.6rem;min-height:44px;padding:.55rem .5rem;border-radius:8px;
    font-size:.93rem;font-weight:500;line-height:1.35;color:var(--text);text-decoration:none;counter-increment:toc}
  .mtoc>ol a::before{content:counter(toc,decimal-leading-zero);flex:0 0 auto;font-family:var(--serif);font-weight:600;font-size:.82rem;color:var(--gold-700);min-width:1.4rem}
  .mtoc>ol a:active{background:var(--paper-200)}
  .share-btn{display:inline-flex;align-items:center;gap:.4rem;min-height:40px;padding:.3rem .8rem;margin-inline-start:auto;
    border:1px solid rgba(255,255,255,.35);border-radius:var(--r-pill);background:rgba(255,255,255,.08);color:#fff;
    font-family:var(--sans);font-size:.82rem;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .share-btn svg{width:1rem;height:1rem;color:var(--gold-400)}
  .share-btn:active{background:rgba(255,255,255,.18)}
  .guide-meta{align-items:center}
  main [id]{scroll-margin-top:calc(64px + 1rem)}

  /* 11 — CIBLES TACTILES, RETOURS AU TOUCHER ============================= */
  .crumb a{display:inline-flex;align-items:center;min-height:40px;padding:0 .3rem;margin:0 -.15rem}
  .prose a,.faq__answer a,p.muted a,.substance-note p a,.cv p a,.type-card p a,.ticklist a,.compare tfoot a,.compare th a,.compare td a,.lead a,.sim__note a,.cmp-intro a,.footer-about a,.info-cols p a,.split__content p a,.step p a,.provide-card a,.guide-key a,.side-facts a{padding:.6em 0}
  .sim__note a,.cmp-intro a,.footer-about a,.side-facts a{padding:.8em 0}
  .brand{min-height:44px;align-items:center}
  .footer-bottom nav a{padding-inline:.3rem;margin-inline:-.3rem}
  sup{font-size:max(.75em,12px)}
  .sim__opt{font-size:1rem}
  .sim__opt input{width:1.5rem;height:1.5rem;min-width:1.5rem;margin-top:.05rem}
  .faq__item summary{min-height:56px;-webkit-tap-highlight-color:transparent}
  .container{padding-inline:max(var(--gutter),env(safe-area-inset-left,0px)) max(var(--gutter),env(safe-area-inset-right,0px))}
  html{-webkit-tap-highlight-color:transparent}
  ::selection{background:var(--gold-200)}
}

/* ======================================================================== */
@media (max-width:980px) and (hover:none){
  /* Sur écran tactile, l'élévation au survol se bloque après le tap : on la remplace par un retour au toucher. */
  .card:hover,.service:hover,.why-card:hover,.type-card:hover,.guide-card:hover,.gtheme:hover,.btn:hover,.svc:hover,.footer-social a:hover{transform:none}
  .guide-card:hover .guide-card__media img{transform:none}
  .btn:hover{box-shadow:none}
  .btn--gold:hover{box-shadow:var(--sh-gold)}
  .card:active,.why-card:active,.type-card:active,.guide-card:active,.gtheme:active,.svc:active,.cv:active,.side-links a:active,.footer-col a:active{transform:scale(.985);transition-duration:.08s}
  .btn:active{transform:scale(.97);transition-duration:.08s}
}

/* ======================================================================== */
@media (max-width:640px){
  /* 02 — EN-TÊTE COMPACT ================================================= */
  .topbar{display:none}
  .nav{height:60px;gap:.75rem}
  .brand{gap:.55rem}
  .brand__mark{height:38px}
  .brand__name{font-size:1.18rem}
  .burger{width:44px;height:44px}
  .nav__call{width:44px;height:44px}

  /* 05 — TABLEAUX → CARTES =============================================== */
  .tscroll.tb-cards{overflow:visible;padding-bottom:0;margin-inline:0}
  .tscroll.tb-cards::before{display:none !important}
  table.compare.tb-cards{display:block;width:100%;min-width:0 !important;background:none;border:0;border-radius:0;box-shadow:none;table-layout:auto}
  .tb-cards>thead{display:none}
  .tb-cards>tbody{display:grid;gap:.75rem}
  .tb-cards>tbody>tr{display:block;background:var(--paper-card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-sm)}
  .tb-cards>tbody>tr>th,.tb-cards>tbody>tr>td{display:block;width:auto !important;border:0;padding:.7rem .95rem;text-align:start;overflow-wrap:anywhere;word-break:normal}
  .tb-cards>tbody>tr>th{font-family:var(--sans);font-weight:700;font-size:.98rem;color:var(--ink-800);background:var(--paper-200);border-bottom:1px solid var(--line);padding:.8rem .95rem}
  .tb-cards>tbody>tr>th::before{display:none}
  .tb-cards>tbody>tr>td{display:flex;align-items:center;justify-content:space-between;gap:.9rem;font-size:.95rem;color:var(--text);border-top:1px solid var(--line)}
  .tb-cards>tbody>tr>th+td{border-top:0}
  .tb-cards>tbody>tr>td::before{content:attr(data-th);flex:0 0 44%;font-family:var(--sans);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1.3;color:var(--text-mute)}
  .tb-cards>tbody>tr>td>*{min-width:0}
  .tb-cards>tbody>tr>td>.tb-val{flex:1 1 auto;text-align:end}
  .tb-cards>tbody>tr>th>.tb-val{display:block}
  .tb-cards .tb-val small{display:block;margin-top:.15rem;font-size:.8em;font-weight:400;color:var(--text-mute)}
  .tb-cards>tbody>tr>td.col-ad{background:rgba(194,161,95,.11);color:var(--ink-800);font-weight:700;border-left:0;border-right:0}
  .tb-cards>tbody>tr>td.col-ad::before{color:var(--gold-700)}
  .tb-cards .big{font-size:1.15rem}
  /* 2 colonnes (libellé / valeur) : une ligne */
  .tb-cards.tb-cols2>tbody>tr{display:flex;align-items:stretch}
  .tb-cards.tb-cols2>tbody>tr>th{flex:0 0 46%;border-bottom:0;border-right:1px solid var(--line);display:flex;align-items:center}
  .tb-cards.tb-cols2>tbody>tr>td{flex:1 1 auto;border-top:0;justify-content:flex-start}
  .tb-cards.tb-cols2>tbody>tr>td::before{display:none}
  .tb-cards.tb-cols2>tbody>tr>td>.tb-val,.tb-cards.tb-cols3>tbody>tr>td>.tb-val{text-align:start}
  /* 3 colonnes (libellé / A / B) : les deux valeurs côte à côte */
  .tb-cards.tb-cols3>tbody>tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .tb-cards.tb-cols3>tbody>tr>th{grid-column:1/-1}
  .tb-cards.tb-cols3>tbody>tr>td{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.3rem;border-top:0;padding:.75rem .9rem}
  .tb-cards.tb-cols3>tbody>tr>td+td{border-inline-start:1px solid var(--line)}
  .tb-cards.tb-cols3>tbody>tr>td::before{flex:none;font-size:.68rem}
  .tb-cards.tb-cols3>tbody>tr>td:first-child{grid-column:1/-1}
  .tb-cards>tfoot{display:block}
  .tb-cards>tfoot>tr{display:block}
  .tb-cards>tfoot>tr>td{display:block;width:auto !important;padding:.75rem .25rem 0;font-size:.82rem;line-height:1.5;color:var(--text-mute);background:none;border:0}
  .compare.mt-4.tb-cards{margin-top:1.5rem}

  /* 06 — RAILS DE CARTES ================================================= */
  .guide-grid:not(#guidesGrid){display:flex;gap:.75rem;overflow-x:auto;overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);
    padding:.35rem var(--gutter) 1rem;margin-inline:calc(-1 * var(--gutter));
    scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch}
  .guide-grid:not(#guidesGrid)::-webkit-scrollbar{display:none}
  .guide-grid:not(#guidesGrid)>.guide-card{flex:0 0 min(78%,300px);scroll-snap-align:start}
  .guide-grid:not(#guidesGrid)>.guide-card:last-child{margin-inline-end:var(--gutter)}
  .guide-grid:not(#guidesGrid) .guide-card__media{aspect-ratio:16/9}
  .guide-grid:not(#guidesGrid) .guide-card__body{padding:.9rem 1rem 1.05rem}
  .guide-grid:not(#guidesGrid) .guide-card__body h3{font-size:1.05rem}
  .guide-grid:not(#guidesGrid) .guide-card__body p{font-size:.88rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .guide-grid:not(#guidesGrid) .guide-card__more{margin-top:.7rem;font-size:.82rem}
  .related-rail{padding-block:2.4rem 1.6rem}

  /* 07 — HUB GUIDES : LISTE ============================================== */
  #guidesGrid{display:grid;gap:.6rem}
  #guidesGrid .guide-card{flex-direction:row;align-items:stretch;border-radius:var(--r);min-height:112px}
  #guidesGrid .guide-card__media{flex:0 0 118px;aspect-ratio:auto;min-height:100%}
  #guidesGrid .guide-card__media img{position:absolute;inset:0;height:100%}
  #guidesGrid .guide-card__cap{display:none}
  #guidesGrid .guide-card__body{padding:.7rem .85rem .7rem .95rem;min-width:0;justify-content:center}
  #guidesGrid .guide-card__body h3{font-size:1rem;line-height:1.22}
  #guidesGrid .guide-card__body p{margin-top:.3rem;font-size:.84rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:0 0 auto}
  #guidesGrid .guide-card__more{margin-top:.45rem;font-size:.78rem}
  .guides-toolbar__in{gap:.55rem;padding-block:.6rem}
  .gfilter{min-height:42px}
  .guides-count{margin:-.2rem 0 .9rem}

  /* 09 — SIMULATEUR : ÉPINGLE DE RÉSULTAT ================================ */
  .sim-pin{display:flex;position:fixed;left:.75rem;right:.75rem;z-index:79;align-items:center;gap:.7rem;
    bottom:calc(var(--abar-h) + var(--sab) + 10px + var(--kb,0px));
    padding:.7rem .95rem;border:1px solid rgba(214,189,132,.35);border-radius:var(--r);
    background:linear-gradient(165deg,var(--ink-700),var(--ink-900));color:#fff;box-shadow:var(--sh-lg);
    font-family:var(--sans);text-align:start;cursor:pointer;-webkit-tap-highlight-color:transparent;
    animation:pinIn .3s var(--ease-out) both;transition:bottom .15s var(--ease)}
  .sim-pin[hidden]{display:none}
  html.kb-open .sim-pin{bottom:calc(10px + var(--kb,0px))}
  .sim-pin__l{flex:1 1 auto;min-width:0;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-400);line-height:1.2}
  .sim-pin__v{flex:0 0 auto;font-family:var(--serif);font-weight:600;font-size:1.35rem;line-height:1;color:#fff}
  .sim-pin__go{flex:0 0 auto;display:inline-flex;align-items:center;gap:.25rem;font-size:.74rem;font-weight:600;color:var(--gold-300)}
  .sim-pin__go svg{width:.9rem;height:.9rem}
  @keyframes pinIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
  .sim{padding:1.15rem 1rem 1.3rem}
  .sim__modes{margin-bottom:1.2rem}
  .sim__mode{padding:.7rem .5rem;font-size:.88rem;min-height:46px}
  .sim__inwrap input{font-size:1.5rem;padding:.8rem 2.3rem .8rem .95rem}
  .sim__results{margin-top:1.4rem}
  .sim__card{padding:1rem 1rem}
  .sim__cards--3{gap:.6rem}

  /* 10 — PIED DE PAGE ACCORDÉON + VILLES ================================= */
  .site-footer .footer-grid{grid-template-columns:minmax(0,1fr);gap:0}
  .site-footer .footer-grid>.footer-col:last-child{grid-column:auto}
  .footer-brand{padding-bottom:1.2rem}
  .footer-col.fa>.footer-col__h{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0;padding:.95rem 0;min-height:52px;
    border-top:1px solid var(--line-dark);cursor:pointer;-webkit-tap-highlight-color:transparent;user-select:none}
  .footer-col.fa>.footer-col__h::after{content:"";flex:0 0 auto;width:.5rem;height:.5rem;margin-inline-end:.35rem;border-right:2px solid var(--gold-400);border-bottom:2px solid var(--gold-400);transform:rotate(45deg) translateY(-2px);transition:transform .25s var(--ease)}
  .footer-col.fa.is-open>.footer-col__h::after{transform:rotate(-135deg) translateY(-2px)}
  .footer-col.fa>ul{display:none;padding:0 0 .9rem;gap:0}
  .footer-col.fa.is-open>ul{display:grid}
  .footer-col.fa>ul a{min-height:44px}
  .footer-col:not(.fa)>.footer-col__h{margin:0;padding:1rem 0 .9rem;border-top:1px solid var(--line-dark)}
  .footer-contact{padding-bottom:.5rem}
  .footer-main{padding-block:2.2rem 1.2rem}
  .footer-cities{display:block;margin-top:1.4rem;padding-block:1.2rem 0;border-top:1px solid var(--line-dark)}
  .footer-cities__label{display:block;margin-bottom:.55rem}
  .footer-cities__links{display:flex;flex-wrap:nowrap;gap:.45rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;
    padding:.15rem var(--gutter) .6rem;margin-inline:calc(-1 * var(--gutter))}
  .footer-cities__links::-webkit-scrollbar{display:none}
  .footer-cities__links a{flex:0 0 auto;min-height:40px;padding:0 .9rem;margin:0;border:1px solid var(--line-dark-strong);border-radius:var(--r-pill);font-size:.88rem;color:var(--text-on-dark)}
  .footer-cities__links a:active{background:rgba(255,255,255,.1)}
  .footer-bottom{padding-block:1.2rem;gap:.6rem}
  .footer-bottom nav{width:100%;gap:.1rem 1rem}
  .footer-cta{padding:1.8rem 1.2rem 1.6rem}
  .footer-cta .btn-row{margin-top:1.3rem;gap:.6rem}

  /* 12 — RYTHME VERTICAL, HÉROS, MÉDIAS ================================== */
  :root{--section-y:3.1rem}
  .section--tight{padding-block:2.4rem}
  .mt-5{margin-top:2rem}
  .section-head .lead{margin-top:.85rem}
  .hero__inner{padding-block:1.9rem 1.6rem}
  .hero h1{font-size:clamp(1.85rem,1.2rem + 3.6vw,2.3rem)}
  .hero__sub{font-size:1.02rem;line-height:1.5;margin-top:.8rem}
  .hero__cta{margin-top:1.2rem;gap:.6rem}
  .hero__cta .btn{flex:1 1 100%}
  .hero__note{font-size:.84rem}
  .guide-meta{margin-top:.9rem}
  .split{gap:1.6rem}
  .split__media .figure img{height:clamp(210px,58vw,290px);object-fit:cover}
  .figure__badge{left:12px;right:12px;bottom:12px;max-width:none;padding:.8rem 1rem}
  .figure__badge .fb-num{font-size:1.5rem}
  .steps{--sgap:1.15rem}
  .step h3{font-size:1.08rem}
  .faq{gap:.6rem}
  .faq__item summary{font-size:1.02rem;padding:1rem 1.05rem}
  .faq__answer{padding:0 1.05rem 1.15rem}
  .type-grid,.cabinet-values,.why-grid{gap:.7rem}
  .type-card{padding:1.25rem 1.15rem}
  .provide-grid{gap:.75rem}
  .provide-card{padding:1.25rem 1.15rem}
  .substance-note{padding:1.1rem 1rem;gap:.8rem}
  .guide-key{padding:1.15rem 1.15rem;margin:1.6rem 0}
  .article-side{gap:.75rem;margin-top:1.6rem}
  .side-card{padding:1.1rem 1.15rem}
  .prose{font-size:1.02rem}
  .prose p{line-height:1.7}
  .prose h2{margin-top:2.1rem}
  .guides-stats{gap:.4rem;margin-top:1rem}
  .guides-stats .chip{min-height:38px;padding:.4rem .75rem;font-size:.8rem}
  .cp-coords{gap:.4rem}
  .btn-row{gap:.6rem}
  .btn-row .btn{flex:1 1 auto}
}

/* ======================================================================== */
@media (max-width:360px){
  .abar__it{font-size:.7rem}
  .abar__cta{width:52px;height:52px;margin-top:-28px}
  .brand__name{font-size:1rem;white-space:nowrap}
  .brand__mark{height:34px}
  .brand{gap:.45rem}
  .nav{gap:.5rem}
  .tb-cards.tb-cols3>tbody>tr{grid-template-columns:minmax(0,1fr)}
  .tb-cards.tb-cols3>tbody>tr>td+td{border-inline-start:0;border-top:1px solid var(--line)}
}

/* ======================================================================== */
/* PWA : en mode « écran d'accueil » (standalone), la barre d'état est opaque
   (apple-mobile-web-app-status-bar-style=black) : rien ne passe dessous. */
@media (display-mode:standalone){
  html{overscroll-behavior-y:none}
}
