/* ========================================================================== 
   Histriphy 20.0.46 · launch phone presentation
   One phone layer. No inherited v23/v24/v28/v35/v36/v40 phone stack.
   Breakpoint: <=699px. Desktop is untouched; tablet compatibility lives in
   the tablet-only legacy links loaded by functions.php.
   ========================================================================== */

@media (max-width:699px){
  :root{
    --phone-gutter:16px;
    --phone-content:calc(100vw - 32px);
    --phone-max:430px;
  }

  html,body{width:100%;max-width:100%;overflow-x:hidden}
  @supports (overflow:clip){html,body{overflow-x:clip}}
  body{font-size:15px}
  .site-shell{width:100%;max-width:100%;overflow-x:clip}

  /* One alignment axis on every normal phone page. */
  .section-inner,
  .footer-inner,
  .map-library-wide,
  .map-experience-current .section-inner,
  .country-compare-page .section-inner,
  .country-compare-content .section-inner,
  .account-dashboard-page .section-inner{
    width:var(--phone-content)!important;
    max-width:var(--phone-max)!important;
    margin-inline:auto!important;
    padding-inline:0!important;
    min-width:0!important;
  }

  /* -----------------------------------------------------------------------
     HEADER
     ----------------------------------------------------------------------- */
  .site-header{
    position:sticky!important;top:0!important;z-index:10020!important;
    height:56px!important;min-height:56px!important;
    border-bottom:1px solid var(--border-soft)!important;
    background:color-mix(in srgb,var(--bg) 96%,transparent)!important;
    backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  }
  .admin-bar .site-header{top:46px!important}
  .site-header .header-inner{
    width:100%!important;max-width:none!important;height:56px!important;min-height:56px!important;
    margin:0!important;padding:0 var(--phone-gutter)!important;display:flex!important;align-items:center!important;
  }
  .site-header .brand{display:flex!important;position:static!important;inset:auto!important;transform:none!important;align-items:center!important;gap:9px!important;min-width:0!important;margin:0!important;text-decoration:none!important}
  .site-header .brand-mark{width:30px!important;height:30px!important;min-width:30px!important;flex:0 0 30px!important}
  .site-header .brand-name{display:block!important;font:700 16px/1 var(--font-body)!important;letter-spacing:-.025em!important;white-space:nowrap!important}
  .desktop-nav,.theme-control,.account-link,.submit-link{display:none!important}
  .site-header .header-actions{display:flex!important;position:static!important;inset:auto!important;transform:none!important;width:auto!important;max-width:none!important;margin-left:auto!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important}
  .site-header .mobile-header-cta{
    display:inline-flex!important;position:static!important;inset:auto!important;transform:none!important;align-items:center!important;justify-content:center!important;
    width:auto!important;height:36px!important;min-height:36px!important;padding:0 12px!important;
    border-radius:8px!important;font:700 12px/1 var(--font-body)!important;text-decoration:none!important;
  }
  .site-header .menu-button{
    display:grid!important;position:static!important;inset:auto!important;transform:none!important;place-items:center!important;width:40px!important;height:40px!important;min-width:40px!important;
    margin:0!important;padding:0!important;border-radius:9px!important;
  }
  .site-header .menu-button svg{width:19px!important;height:19px!important}

  /* -----------------------------------------------------------------------
     MOBILE MENU — compact floating panel, exact content-height
     ----------------------------------------------------------------------- */
  body.histriphy-mobile-menu-open .site-shell::after{
    content:"";position:fixed;z-index:10038;inset:0;background:rgba(7,7,6,.58);
    backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);
  }
  body.histriphy-mobile-menu-open .site-shell > .mobile-nav,
  .histriphy-mobile-menu-open .site-shell > .mobile-nav,
  .site-shell:has(#menu-toggle:checked) > .mobile-nav{
    display:flex!important;position:fixed!important;z-index:10040!important;
    top:max(14px,env(safe-area-inset-top))!important;right:14px!important;bottom:auto!important;left:auto!important;
    width:min(270px,calc(100vw - 36px))!important;height:auto!important;max-height:calc(100dvh - 28px)!important;
    margin:0!important;padding:0!important;flex-direction:column!important;overflow:hidden!important;
    border:1px solid var(--border)!important;border-radius:15px!important;background:var(--bg-raised)!important;
    box-shadow:0 24px 64px rgba(0,0,0,.48)!important;
  }
  .admin-bar.histriphy-mobile-menu-open .site-shell > .mobile-nav{top:60px!important;max-height:calc(100dvh - 72px)!important}
  .mobile-nav-top{height:54px!important;min-height:54px!important;padding:7px 10px!important;display:flex!important;align-items:center!important;justify-content:flex-end!important}
  .mobile-nav-close{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;min-width:38px!important;border-radius:9px!important}
  .mobile-nav-close{color:var(--ink)!important;background:transparent!important;border:1px solid var(--border)!important}
  .mobile-nav-close svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
  .mobile-nav-main-v41{padding:0 14px!important;overflow-y:auto!important;scrollbar-width:none!important}
  .mobile-nav-main-v41::-webkit-scrollbar{display:none}
  .mobile-nav-main-v41>a{
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    height:48px!important;min-height:48px!important;margin:0!important;padding:0 5px!important;
    border:0!important;border-bottom:1px solid var(--border-soft)!important;background:transparent!important;
    color:var(--ink)!important;font:700 14px/1.15 var(--font-body)!important;text-decoration:none!important;
  }
  .mobile-nav-main-v41>a:last-child{border-bottom:0!important}
  .mobile-nav-main-v41>a svg{width:15px!important;height:15px!important;fill:none!important;stroke:var(--ink-faint)!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
  .mobile-nav-main-v41>a.is-current{color:var(--gold)!important;background:color-mix(in srgb,var(--gold) 9%,transparent)!important;padding-inline:10px!important}
  .mobile-nav-footer{padding:13px 18px 15px!important;border-top:1px solid var(--border-soft)!important;background:var(--bg-raised)!important}
  .mobile-theme-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin:0 0 13px!important;color:var(--ink-dim)!important;font:500 12px/1.2 var(--font-body)!important}
  .mobile-theme-options{display:flex!important;align-items:center!important;gap:2px!important;height:36px!important;padding:3px!important;border:1px solid var(--border)!important;border-radius:8px!important;background:var(--bg-card)!important}
  .mobile-theme-options button{height:28px!important;min-height:28px!important;padding:0 10px!important;border-radius:6px!important;font:600 11px/1 var(--font-body)!important}
  .mobile-nav-actions{display:grid!important;gap:8px!important}
  .mobile-nav-actions a{display:flex!important;align-items:center!important;justify-content:center!important;height:42px!important;min-height:42px!important;padding:0 10px!important;border-radius:8px!important;font:700 12px/1 var(--font-body)!important;text-decoration:none!important}

  /* -----------------------------------------------------------------------
     HOME — compact, aligned, normal-size text; no microscopic metadata
     ----------------------------------------------------------------------- */
  .hp-hero-product .hp-hero-inner{width:var(--phone-content)!important;max-width:var(--phone-max)!important;margin-inline:auto!important;padding:28px 0 32px!important;display:flex!important;flex-direction:column!important;gap:20px!important}
  .hp-hero-product .hp-hero-copy{width:100%!important;max-width:none!important;margin:0!important;text-align:left!important}
  .hp-hero-product .hp-h1{max-width:12ch!important;margin:0!important;font-size:34px!important;line-height:1.01!important;letter-spacing:-.048em!important}
  .hp-hero-product .hp-lede{max-width:38ch!important;margin:14px 0 0!important;font-size:14px!important;line-height:1.55!important;text-align:left!important}
  .hp-hero-product .hp-actions{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;gap:8px 12px!important;margin:18px 0 0!important}
  .hp-hero-product .hp-actions>a{width:auto!important;flex:0 0 auto!important}
  .hp-hero-product .hp-actions .button,.hp-hero-product .hp-hero-secondary{height:40px!important;min-height:40px!important;padding:0 14px!important;border-radius:8px!important;font-size:12px!important}
  .hp-hero-product .hp-hero-map{position:relative!important;left:auto!important;right:auto!important;transform:none!important;width:100%!important;max-width:100%!important;margin:0 auto!important}
  .hp-hero-product .hp-hero-map .world-map-wrap,.hp-hero-product .hp-map-frame{width:100%!important;max-width:100%!important;margin:0!important}

  .hsd-section{padding:38px 0!important}
  .hsd-grid{display:block!important}
  .hsd-copy{width:100%!important;max-width:none!important;margin:0 0 18px!important}
  .hsd-copy .hp-kicker{font-family:var(--font-body)!important;font-size:12px!important;letter-spacing:0!important;text-transform:none!important}
  .hsd-title-lines{font-size:27px!important;line-height:1.08!important;letter-spacing:-.04em!important}
  .hsd-copy>p:not(.hp-kicker){font-size:14px!important;line-height:1.58!important}
  .hsd-cta{width:auto!important;min-width:0!important;height:40px!important;min-height:40px!important;padding:0 13px!important;font-size:12px!important}
  .hsd-demo{width:min(100%,330px)!important;max-width:330px!important;margin:0 auto!important;overflow:hidden!important;border-radius:10px!important}
  .hsd-demo histriphy-studio-demo{display:block!important;width:100%!important;max-width:100%!important}
  .hsd-feature-list{width:min(100%,330px)!important;max-width:330px!important;margin:12px auto 0!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
  .hsd-feature-list li{min-width:0!important;padding:9px 6px!important;border:1px solid var(--border-soft)!important;border-radius:999px!important;background:var(--bg-card)!important;text-align:center!important}
  .hsd-feature-list b{font:700 10px/1.1 var(--font-body)!important;white-space:nowrap!important}
  .hsd-feature-list span{display:none!important}

  .hp-feature-cycle{padding:42px 0!important}
  .hp-feature-cycle-head{width:100%!important;margin:0 0 18px!important;text-align:left!important}
  .hp-feature-cycle-head h2{font-size:27px!important;line-height:1.08!important;letter-spacing:-.04em!important}
  .hp-feature-cycle-head p{margin-top:7px!important;font-size:14px!important;line-height:1.45!important}
  .hp-feature-cycle-shell{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
  .hp-feature-cycle-controls{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;margin:0 0 10px!important}
  .hp-feature-arrow{width:34px!important;height:34px!important;min-width:34px!important;border-radius:8px!important}
  .hp-feature-counter{font-size:12px!important}
  .hp-feature-cycle-stage{display:flex!important;flex-direction:column!important;gap:10px!important}
  .hp-feature-cycle-nav{display:block!important;width:100%!important}
  .hp-feature-cycle-item{display:none!important;width:100%!important;min-height:0!important;padding:11px 12px!important;border:1px solid var(--border-soft)!important;border-radius:9px!important;background:var(--bg-card)!important;text-align:left!important}
  .hp-feature-cycle-item.is-active{display:flex!important;align-items:center!important;gap:10px!important}
  .hp-feature-icon{width:32px!important;height:32px!important;min-width:32px!important;border-radius:8px!important}
  .hp-feature-icon svg{width:16px!important;height:16px!important}
  .hp-feature-cycle-item strong{display:block!important;font:700 14px/1.2 var(--font-body)!important}
  .hp-feature-cycle-item small{display:block!important;margin-top:3px!important;font:400 12px/1.35 var(--font-body)!important;color:var(--ink-dim)!important}
  .hp-feature-cycle-panels{width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1.55/1!important;border:1px solid var(--border-soft)!important;border-radius:10px!important;background:var(--bg-deep)!important;overflow:hidden!important}
  .hp-feature-cycle-panel{width:100%!important;height:100%!important;background:transparent!important}
  .hp-feature-cycle-panel img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}

  .hp-coming-soon-visual{padding:36px 0!important;overflow:hidden!important}
  .hp-coming-soon-visual img{display:block!important;width:100%!important;max-width:330px!important;height:auto!important;margin:0 auto!important;background:transparent!important;box-shadow:none!important}
  .hp-coming-soon-mobile-copy{display:none!important}

  .hp-community{padding:36px 0 42px!important}
  .hp-community-inner{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;text-align:left!important}
  .hp-community-inner h2{font-size:25px!important;line-height:1.08!important;letter-spacing:-.04em!important}
  .hp-community-inner .hp-lede{margin-top:7px!important;font-size:14px!important;line-height:1.5!important}
  .hp-community-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:flex-start!important}
  .hp-community-actions .button{width:auto!important;height:40px!important;min-height:40px!important;padding:0 12px!important;font-size:12px!important}

  /* -----------------------------------------------------------------------
     EXPLORE — 2-up cards, compact search, filter sheet
     ----------------------------------------------------------------------- */
  .map-library-page,.map-library-hero,.map-library-results{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  .map-library-hero{padding:24px 0 0!important}
  .map-library-heading-row{display:block!important}
  .map-library-heading{width:100%!important;max-width:none!important}
  .map-library-eyebrow{font-family:var(--font-body)!important;font-size:11px!important;letter-spacing:0!important;text-transform:none!important;margin-bottom:6px!important}
  .map-library-heading h1{font-size:29px!important;line-height:1.05!important;letter-spacing:-.04em!important}
  .map-library-description{max-width:42ch!important;margin:8px 0 0!important;font-size:13px!important;line-height:1.5!important}
  .map-library-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;margin:14px 0 12px!important;padding:0!important;border:0!important;background:transparent!important}
  .library-stat-card{min-width:0!important;min-height:58px!important;padding:9px 10px!important;gap:8px!important;border-radius:9px!important}
  .library-stat-card svg{width:17px!important;height:17px!important}
  .library-stat-card strong{font-size:15px!important;line-height:1!important}
  .library-stat-card span{font-size:11px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

  .map-search-form{display:grid!important;grid-template-columns:minmax(0,1fr) 40px!important;gap:8px!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
  .map-search-form>.map-filter-search{grid-column:1!important;grid-row:1!important;min-width:0!important;margin:0!important}
  .map-filter-search>label{display:none!important}
  .map-search-form>.map-filter-search .map-filter-control{height:40px!important;min-height:40px!important;border-radius:8px!important}
  .map-search-form>.map-filter-search input{height:38px!important;min-height:38px!important;padding:0 9px 0 34px!important;font-size:13px!important;text-overflow:ellipsis!important}
  .map-search-form>.map-filter-search svg{left:11px!important;width:15px!important;height:15px!important}
  .map-mobile-filter-toggle{display:grid!important;grid-column:2!important;grid-row:1!important;place-items:center!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;padding:0!important;border-radius:8px!important}
  .map-mobile-filter-toggle span{display:none!important}
  .map-mobile-filter-toggle svg{width:16px!important;height:16px!important}

  .map-mobile-filter-sheet{display:none!important}
  .map-search-form.is-filter-open .map-mobile-filter-backdrop{display:block!important;position:fixed!important;z-index:10095!important;inset:0!important;background:rgba(7,7,6,.6)!important;backdrop-filter:blur(3px)!important;-webkit-backdrop-filter:blur(3px)!important}
  .map-search-form.is-filter-open .map-mobile-filter-sheet{display:block!important;position:fixed!important;z-index:10100!important;left:50%!important;bottom:0!important;transform:translateX(-50%)!important;width:min(100vw,430px)!important;max-height:calc(100dvh - 24px)!important;padding:0 18px calc(18px + env(safe-area-inset-bottom))!important;border:1px solid var(--border)!important;border-bottom:0!important;border-radius:18px 18px 0 0!important;background:var(--bg-raised)!important;box-shadow:0 -24px 70px rgba(0,0,0,.45)!important;overflow-y:auto!important;overscroll-behavior:contain!important;scrollbar-width:none!important}
  .map-search-form.is-filter-open .map-mobile-filter-sheet::-webkit-scrollbar{display:none}
  body.map-filter-sheet-open{overflow:hidden!important}
  .map-mobile-filter-sheet-head{position:sticky!important;top:0!important;z-index:2!important;padding:10px 0 10px!important;background:var(--bg-raised)!important}
  .map-mobile-filter-handle{display:block!important;width:38px!important;height:4px!important;margin:0 auto 12px!important;border-radius:999px!important;background:var(--border-strong)!important}
  .map-mobile-filter-title-row strong{font-size:19px!important;letter-spacing:-.03em!important}
  .map-mobile-filter-close{width:34px!important;height:34px!important;min-width:34px!important;border-radius:8px!important}
  .map-mobile-sheet-search{height:46px!important;min-height:46px!important;border-radius:8px!important}
  .map-mobile-sheet-search input{height:44px!important;padding-left:36px!important;font-size:14px!important}
  .map-mobile-filter-sheet .map-filter-field{margin:0 0 13px!important}
  .map-mobile-filter-sheet .map-filter-field label{margin-bottom:6px!important;font-size:12px!important;font-weight:650!important}
  .map-mobile-filter-sheet .map-filter-control{height:44px!important;min-height:44px!important;border-radius:8px!important}
  .map-mobile-filter-sheet select{height:42px!important;font-size:13px!important;padding-inline:12px 34px!important}
  .map-mobile-filter-sheet .map-filter-time>.map-filter-control,.map-mobile-filter-sheet .map-filter-sort>.map-filter-control{display:none!important}
  .map-mobile-period-options{display:grid!important;gap:7px!important;margin-top:6px!important}
  .map-mobile-period-options button{height:44px!important;min-height:44px!important;padding:0 12px!important;border-radius:8px!important;font-size:13px!important;text-align:left!important}
  .map-mobile-sort-options{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;height:44px!important;margin-top:6px!important;border-radius:9px!important;overflow:hidden!important}
  .map-mobile-sort-options button{min-width:0!important;padding:0 4px!important;font-size:11px!important;line-height:1.05!important}
  .map-filter-actions{margin:14px 0 0!important}
  .map-search-submit{width:100%!important;height:46px!important;min-height:46px!important;border-radius:8px!important;font-size:14px!important}

  .map-library-tabs-wrap{width:100%!important;margin:10px 0 0!important;overflow:hidden!important}
  .map-library-tabs{display:flex!important;gap:6px!important;width:100%!important;padding:0 0 7px!important;overflow-x:auto!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important}
  .map-library-tabs::-webkit-scrollbar{display:none}
  .map-library-tab,.map-library-tabs a{flex:0 0 auto!important;height:34px!important;min-height:34px!important;padding:0 10px!important;border-radius:999px!important;font-size:11px!important;white-space:nowrap!important}

  .map-library-results{padding:10px 0 30px!important}
  .map-library-grid,.map-cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;min-width:0!important;margin:0!important;align-items:stretch!important}
  .map-card-library{display:flex!important;flex-direction:column!important;width:100%!important;min-width:0!important;height:100%!important;border-radius:9px!important;overflow:hidden!important}
  .map-card-library .preview{flex:0 0 auto!important;width:100%!important;height:auto!important;aspect-ratio:1.42/1!important;min-height:0!important}
  .map-card-library .year,.map-card-library .map-source-badge{top:7px!important;font-size:10px!important;line-height:1!important}
  .map-card-library .year{left:7px!important;padding:4px 6px!important}
  .map-card-library .map-source-badge{right:7px!important;padding:4px 6px!important}
  .map-card-library .map-source-badge svg{width:11px!important;height:11px!important}
  .map-card-library .card-body{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;min-width:0!important;padding:9px!important}
  .map-card-library .map-card-type{margin:0 0 5px!important;font-family:var(--font-body)!important;font-size:10px!important;line-height:1.25!important;letter-spacing:0!important;text-transform:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .map-card-library .card-body h3{display:-webkit-box!important;min-height:34px!important;margin:0!important;font-size:13px!important;line-height:1.25!important;letter-spacing:-.02em!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  .map-card-library .card-foot{margin-top:auto!important;padding-top:8px!important;display:block!important}
  .map-card-library .map-download-total{display:flex!important;align-items:center!important;gap:4px!important;margin:0 0 7px!important;font-size:11px!important;white-space:nowrap!important}
  .map-card-library .map-download-total svg{width:11px!important;height:11px!important}
  .map-card-library .map-details-btn{display:none!important}
  .map-card-library .map-card-actions{display:block!important;width:100%!important}
  .map-card-library .histriphy-download-btn{display:flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;width:100%!important;height:36px!important;min-height:36px!important;padding:0 6px!important;border-radius:7px!important;font-size:11px!important;font-weight:700!important}
  .map-card-library .histriphy-download-btn svg{width:12px!important;height:12px!important}

  /* -----------------------------------------------------------------------
     SINGLE MAP — readable, no horizontal clipping; related maps are 2-up
     ----------------------------------------------------------------------- */
  .map-experience-current{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  .map-hero-v19{padding:22px 0 26px!important}
  .map-hero-inner-v19{display:flex!important;flex-direction:column!important;gap:18px!important}
  .map-breadcrumb{font-size:12px!important;line-height:1.3!important}
  .map-badge-row{gap:7px!important}
  .map-origin-badge,.map-period-badge{font-size:11px!important;min-height:28px!important;padding:0 9px!important}
  .map-hero-copy-v19 h1{font-size:30px!important;line-height:1.04!important;letter-spacing:-.045em!important}
  .map-hero-summary{font-size:14px!important;line-height:1.55!important}
  .map-primary-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  .map-primary-actions .button,.map-primary-actions .histriphy-download-btn{width:auto!important;height:40px!important;min-height:40px!important;padding:0 12px!important;font-size:12px!important}
  .map-quick-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1px!important}
  .map-quick-stats>div{padding:11px 8px!important;min-width:0!important}
  .map-quick-stats strong{font-size:13px!important}
  .map-quick-stats span{font-size:10px!important}
  .map-hero-visual-v19{width:100%!important;min-width:0!important}
  .map-hero-preview{width:100%!important;aspect-ratio:1.55/1!important;min-height:0!important}
  .map-preview-caption{font-size:11px!important;padding:9px 10px!important}

  .map-body-v20{padding:0 0 40px!important}
  .map-overview-grid-v20{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
  .map-overview-panel-v20,.map-access-panel-v20{padding:14px!important;border-radius:10px!important}
  .map-overview-heading-v20 span,.map-access-head-v20 span,.map-meta-group-v20>span{font-family:var(--font-body)!important;font-size:11px!important;letter-spacing:0!important;text-transform:none!important}
  .map-overview-heading-v20 h2{font-size:18px!important;line-height:1.2!important}
  .map-description-copy{font-size:14px!important;line-height:1.6!important}
  .map-chip-list{gap:6px!important}.map-chip-list span{font-size:11px!important;padding:5px 8px!important}
  .map-facts-inline-v20 dt,.map-facts-inline-v20 dd,.map-technical-details{font-size:12px!important}

  .map-inline-section-v20{margin-top:22px!important;padding-top:20px!important}
  .map-inline-heading-v20{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:10px!important;margin-bottom:12px!important}
  .map-inline-heading-v20>div>span{font-family:var(--font-body)!important;font-size:11px!important;letter-spacing:0!important;text-transform:none!important;color:var(--ink-faint)!important}
  .map-inline-heading-v20 h2{margin-top:3px!important;font-size:19px!important;line-height:1.15!important;letter-spacing:-.025em!important}
  .map-inline-heading-v20>p{font-size:12px!important;line-height:1.45!important}
  .map-inline-heading-v20>a{font-size:12px!important;white-space:nowrap!important}
  .map-compare-launch-form{display:grid!important;grid-template-columns:1fr auto!important;gap:8px!important}
  .map-compare-launch-form select{height:42px!important;min-height:42px!important;font-size:13px!important}
  .map-compare-launch-form .button{height:42px!important;min-height:42px!important;padding:0 11px!important;font-size:12px!important}
  .map-soon-pill-v20{font-family:var(--font-body)!important;font-size:11px!important;letter-spacing:0!important;text-transform:none!important}

  .map-related-v41{overflow:visible!important}
  .map-related-heading-v41>div>span{display:none!important}
  .map-related-heading-v41{align-items:center!important}
  .map-related-grid-v41{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;width:100%!important;margin:0!important;padding:0!important;overflow:visible!important}
  .map-related-card-v41{display:flex!important;flex-direction:column!important;width:100%!important;min-width:0!important;max-width:none!important;flex-basis:auto!important;border-radius:9px!important;overflow:hidden!important;text-decoration:none!important}
  .map-related-card-v41 .map-related-preview{width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1.45/1!important}
  .map-related-card-v41 .map-related-copy{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;min-width:0!important;padding:9px!important}
  .map-related-card-v41 .map-related-copy>span{font-family:var(--font-body)!important;font-size:10px!important;letter-spacing:0!important;text-transform:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .map-related-card-v41 .map-related-copy>strong{display:-webkit-box!important;min-height:32px!important;margin-top:4px!important;font-size:13px!important;line-height:1.22!important;letter-spacing:-.02em!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  .map-related-card-v41 .map-related-copy>small{margin-top:auto!important;padding-top:7px!important;font-size:11px!important;color:var(--gold)!important}

  /* -----------------------------------------------------------------------
     COMPARE — custom phone presentation, no tiny mono labels
     ----------------------------------------------------------------------- */
  .country-compare-page,.country-compare-content{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  .country-compare-hero{padding:22px 0 16px!important}
  .country-compare-heading .country-compare-eyebrow{font-family:var(--font-body)!important;font-size:11px!important;letter-spacing:0!important;text-transform:none!important}
  .country-compare-heading h1{font-size:28px!important;line-height:1.05!important;letter-spacing:-.04em!important}
  .country-compare-heading p{margin-top:8px!important;font-size:14px!important;line-height:1.5!important}
  .country-compare-picker-desktop{display:none!important}
  .country-compare-picker-mobile{display:block!important;margin-top:14px!important;padding:11px!important;border:1px solid var(--border-soft)!important;border-radius:10px!important;background:var(--bg-card)!important}
  .country-picker-mobile-row{display:grid!important;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr)!important;gap:6px!important;align-items:center!important}
  .country-picker-mobile-row select{width:100%!important;min-width:0!important;height:42px!important;min-height:42px!important;padding:0 28px 0 9px!important;border-radius:8px!important;font-size:13px!important;text-overflow:ellipsis!important}
  .country-picker-mobile-vs{display:grid!important;place-items:center!important;height:42px!important;color:var(--gold)!important;font-size:12px!important;font-weight:800!important}
  .country-compare-picker-mobile .button{display:flex!important;align-items:center!important;justify-content:center!important;width:auto!important;height:38px!important;min-height:38px!important;margin:8px 0 0 auto!important;padding:0 13px!important;border-radius:7px!important;font-size:12px!important}
  .country-compare-content{padding:8px 0 38px!important}
  .country-map-grid-v41{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important}
  .country-map-panel-v41{min-width:0!important;border-radius:9px!important;overflow:hidden!important}
  .country-map-panel-v41 .country-map-panel-head{padding:10px!important}
  .country-map-panel-v41 .country-map-panel-head>span{display:none!important}
  .country-map-panel-v41 .country-map-panel-head h2{margin:0!important;font-size:14px!important;line-height:1.2!important;letter-spacing:-.02em!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .country-map-panel-v41 .country-compare-preview{height:auto!important;min-height:0!important;aspect-ratio:1.05/1!important}
  .country-data-comparison>.country-data-heading,.country-data-comparison>.country-data-table{display:none!important}
  .country-data-mobile-v42{display:block!important;width:100%!important;margin:14px 0 0!important;border:1px solid var(--border-soft)!important;border-radius:10px!important;background:var(--bg-card)!important;overflow:hidden!important}
  .country-data-mobile-title{padding:13px 12px 9px!important;font-size:18px!important;font-weight:750!important;letter-spacing:-.025em!important}
  .country-data-mobile-columns{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;border-top:1px solid var(--border-soft)!important;border-bottom:1px solid var(--border-soft)!important;background:var(--bg-elevated)!important}
  .country-data-mobile-columns strong{min-width:0!important;padding:9px 10px!important;font-size:13px!important;line-height:1.2!important;text-align:left!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .country-data-mobile-columns strong+strong{border-left:1px solid var(--border-soft)!important}
  .country-data-mobile-section{margin:0!important;padding:0!important}
  .country-data-mobile-section h3{margin:0!important;padding:10px 12px 7px!important;border-bottom:1px solid var(--border-soft)!important;background:color-mix(in srgb,var(--gold) 5%,transparent)!important;color:var(--ink)!important;font:700 13px/1.2 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .country-data-mobile-row{border-bottom:1px solid var(--border-soft)!important}
  .country-data-mobile-row:last-child{border-bottom:0!important}
  .country-data-mobile-label{padding:8px 10px 5px!important;color:var(--ink-dim)!important;font:600 12px/1.25 var(--font-body)!important}
  .country-data-mobile-values{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .country-data-mobile-values>div{min-width:0!important;padding:4px 10px 10px!important;color:var(--ink)!important;font:600 13px/1.35 var(--font-body)!important;overflow-wrap:anywhere!important}
  .country-data-mobile-values>div+div{border-left:1px solid var(--border-soft)!important}
  .country-data-source-note{margin-top:12px!important;font-size:11px!important;line-height:1.5!important;color:var(--ink-faint)!important}

  /* -----------------------------------------------------------------------
     STUDIO PHONE FALLBACK — scrollable and simple
     ----------------------------------------------------------------------- */
  .histriphy-builder-page{height:auto!important;min-height:100%!important;overflow-y:auto!important;overflow-x:hidden!important;background:var(--n2)!important}
  .histriphy-builder-page .site-shell{height:auto!important;min-height:100%!important;overflow:visible!important}
  .histriphy-builder-page .site-header,.histriphy-builder-page .site-footer{display:none!important}
  .geo-builder-app{height:auto!important;min-height:100dvh!important;overflow:visible!important}
  .geo-builder-form,.geo-builder-login{display:none!important}
  .geo-builder-phone-fallback{display:block!important;min-height:0!important;padding:0 var(--phone-gutter) calc(30px + env(safe-area-inset-bottom))!important;background:var(--n2)!important}
  .geo-builder-phone-shell{width:100%!important;max-width:390px!important;margin:0 auto!important}
  .geo-builder-phone-bar{height:56px!important;grid-template-columns:36px 1fr 36px!important}
  .geo-builder-phone-back{width:34px!important;height:34px!important;border-radius:8px!important}
  .geo-builder-phone-brand img{width:24px!important;height:24px!important}.geo-builder-phone-brand strong{font-size:13px!important}
  .geo-builder-phone-copy{padding:26px 0 16px!important}
  .geo-builder-phone-kicker{height:auto!important;min-height:0!important;padding:0!important;border:0!important;background:transparent!important;color:var(--gold)!important;font:700 12px/1.2 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .geo-builder-phone-copy h1{max-width:13ch!important;margin:8px 0 9px!important;font-size:30px!important;line-height:1.03!important;letter-spacing:-.045em!important}
  .geo-builder-phone-copy p{max-width:38ch!important;font-size:14px!important;line-height:1.55!important}
  .geo-builder-phone-preview{width:100%!important;max-width:330px!important;margin:4px auto 16px!important;border-radius:10px!important;box-shadow:none!important}
  .geo-builder-phone-preview:before{padding-top:72%!important}
  .geo-builder-phone-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  .geo-builder-phone-actions .button{width:auto!important;height:40px!important;min-height:40px!important;padding:0 12px!important;border-radius:8px!important;font-size:12px!important}
  .geo-builder-phone-note{margin:13px 0 0!important;font-size:12px!important;line-height:1.45!important}

  /* -----------------------------------------------------------------------
     FOOTER + general cleanup
     ----------------------------------------------------------------------- */
  .site-footer{padding-inline:0!important;overflow-x:hidden!important}
  .footer-main,.footer-columns{width:100%!important;max-width:100%!important;min-width:0!important}
  .footer-intro p,.footer-column a,.footer-bottom{font-size:12px!important}
  .footer-built{display:none!important}

  /* Remove tiny mono/uppercase styling from routine mobile labels. */
  .country-compare-page .country-picker-field label,
  .country-map-panel-head>span,
  .country-data-heading>span,
  .country-data-section-row>div,
  .map-experience-current .map-inline-heading-v20>div>span,
  .map-experience-current .map-overview-heading-v20>div>span,
  .map-experience-current .map-access-head-v20>span{
    font-family:var(--font-body)!important;letter-spacing:0!important;text-transform:none!important;
  }

  input,select,textarea,button{max-width:100%}
}


/* 20.0.42 pass 2 — specificity guard against legacy desktop responsive rules. */
@media (max-width:699px){
  body.home .hp-hero-product .hp-hero-inner,
  body.front-page .hp-hero-product .hp-hero-inner{
    width:var(--phone-content)!important;max-width:var(--phone-max)!important;
    margin-inline:auto!important;padding:22px 0 28px!important;gap:18px!important;
  }
  body.home .hp-hero-product .hp-hero-map,
  body.front-page .hp-hero-product .hp-hero-map{
    width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;
    aspect-ratio:1.62/1!important;margin-inline:auto!important;padding:0!important;
    transform:none!important;border-radius:11px!important;overflow:hidden!important;
  }
  body.home .hp-hero-product .hp-hero-map .world-map,
  body.front-page .hp-hero-product .hp-hero-map .world-map{
    width:100%!important;height:100%!important;min-height:0!important;transform:none!important;
  }
  .site-header .header-inner{width:var(--phone-content)!important;max-width:var(--phone-max)!important}
  body.histriphy-mobile-menu-open .site-shell>.mobile-nav,
  .histriphy-mobile-menu-open .site-shell>.mobile-nav,
  .site-shell:has(#menu-toggle:checked)>.mobile-nav{
    right:max(var(--phone-gutter),calc((100vw - var(--phone-max))/2 + var(--phone-gutter)))!important;
    width:min(282px,calc(100vw - (var(--phone-gutter) * 2)))!important;
  }

  /* Real phone stats: compact, but not microscopic. */
  .map-library-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  .library-stat-card{min-height:62px!important;padding:9px 10px!important}
  .library-stat-card strong{font-size:15px!important}
  .library-stat-card span{font-size:10.5px!important;line-height:1.25!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .map-card-library .year,.map-card-library .map-source-badge{font-size:10px!important}
  .map-card-library .map-card-type{font-size:10px!important;line-height:1.25!important}
  .map-card-library .card-foot>span{font-size:10px!important;line-height:1.25!important}
  .hp-formats-strip-title span{font-size:10px!important}
  .hsd-feature-list li b{font-size:10.5px!important;line-height:1.2!important}

  /* Single map: section titles and cards share the same left axis. */
  .map-experience-current .map-related-heading-v41,
  .map-experience-current .map-inline-heading-v20{
    width:100%!important;display:flex!important;align-items:flex-end!important;justify-content:space-between!important;
    gap:10px!important;text-align:left!important;margin:0 0 12px!important;
  }
  .map-experience-current .map-related-heading-v41>div,
  .map-experience-current .map-inline-heading-v20>div{text-align:left!important}
  .map-experience-current .map-related-heading-v41 h2,
  .map-experience-current .map-inline-heading-v20 h2{font-size:20px!important;line-height:1.1!important;text-align:left!important}
  .map-experience-current .map-related-heading-v41 span,
  .map-experience-current .map-inline-heading-v20 span{font-family:var(--font-body)!important;font-size:10.5px!important;letter-spacing:0!important;text-transform:none!important}
  .map-experience-current .map-related-heading-v41>a,
  .map-experience-current .map-inline-heading-v20>a{font-size:10.5px!important;white-space:nowrap!important}
  .map-related-card-v41 .map-related-copy>span{font-size:10px!important}
  .map-related-card-v41 .map-related-copy strong{font-size:12.5px!important;line-height:1.25!important}
  .map-related-card-v41 .map-related-copy small{font-size:10.5px!important}

  /* Compare labels are normal editorial UI, never microcaps/mono. */
  .country-data-mobile-v42,.country-data-mobile-v42 *{font-family:var(--font-body)!important}
  .country-data-mobile-v42 .country-data-mobile-section h3{font-size:12px!important;letter-spacing:0!important;text-transform:none!important}
  .country-data-mobile-v42 .country-data-mobile-label{font-size:10.5px!important;letter-spacing:0!important;text-transform:none!important}
  .country-data-mobile-v42 .country-data-mobile-values>div{font-size:12px!important;line-height:1.35!important}

  /* Product-art transitions are subtle, not decorative motion for motion's sake. */
  .hp-feature-cycle-panel.is-entering{animation-duration:.24s!important}
  .hp-coming-soon-visual img.is-in-view{animation-duration:7.5s!important}
}

@media (max-width:360px){
  :root{--phone-gutter:12px;--phone-content:calc(100vw - 24px)}
  .site-header .header-inner{padding-inline:12px!important}
  body.histriphy-mobile-menu-open .site-shell>.mobile-nav,
  .histriphy-mobile-menu-open .site-shell>.mobile-nav,
  .site-shell:has(#menu-toggle:checked)>.mobile-nav{right:10px!important;width:min(264px,calc(100vw - 28px))!important}
  .site-header .mobile-header-cta{padding-inline:10px!important}
  .hp-hero-product .hp-h1{font-size:31px!important}
  .map-card-library .card-body{padding:8px!important}
  .map-card-library .card-body h3{font-size:12px!important}
  .country-picker-mobile-row select{font-size:12px!important;padding-left:7px!important}
  .country-data-mobile-values>div{padding-inline:8px!important;font-size:12px!important}
}

@media (prefers-reduced-motion:reduce){
  .mobile-nav,.map-mobile-filter-sheet,.hp-feature-cycle-panel{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* 20.0.41 browser-verified specificity locks. These selectors intentionally
   beat the desktop base rules that use the page wrapper in their selectors. */
@media (max-width:699px){
  /* Explore: keep every major surface on the same 16px axis. */
  .map-library-page .map-search-form{
    grid-template-columns:minmax(0,1fr) 40px!important;
    gap:8px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .map-library-page .map-library-tabs{
    width:100%!important;
    margin:0!important;
    padding:0 0 7px!important;
  }
  .map-library-grid .map-card-library .map-details-btn{display:none!important}

  /* Compare: one mobile surface, not a desktop card wrapped around a phone card. */
  .country-compare-content .country-data-comparison{
    margin-top:14px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .country-compare-content .country-data-mobile-v42{margin:0!important;width:100%!important}

  /* Formats are an information rail, not another content section. */
  .hp-formats-strip{overflow:hidden!important}
  .hp-formats-strip .hp-formats-strip-inner{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    min-height:42px!important;
    padding:6px 0!important;
    overflow:hidden!important;
  }
  .hp-formats-strip .hp-formats-strip-title{display:flex!important;flex:0 0 auto!important;align-items:center!important;margin:0!important}
  .hp-formats-strip .hp-formats-strip-title span{
    display:inline-flex!important;align-items:center!important;height:24px!important;min-height:24px!important;
    padding:0 8px!important;border-radius:999px!important;font:700 10px/1 var(--font-body)!important;
    white-space:nowrap!important;
  }
  .hp-formats-strip .hp-formats-strip-title strong{display:none!important}
  .hp-formats-strip .hp-formats-strip-items{
    display:flex!important;flex:1 1 auto!important;align-items:center!important;gap:0!important;
    min-width:0!important;margin:0!important;padding:0!important;overflow-x:auto!important;
    scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important;white-space:nowrap!important;
  }
  .hp-formats-strip .hp-formats-strip-items::-webkit-scrollbar{display:none!important}
  .hp-formats-strip .hp-formats-strip-items span{
    flex:0 0 auto!important;padding:0 10px!important;font:500 11px/1.2 var(--font-body)!important;color:var(--ink-dim)!important;
  }
  .hp-formats-strip .hp-formats-strip-items span:first-child{padding-left:0!important}

  /* Close icon must not inherit the base SVG fill. */
  .site-shell>.mobile-nav .mobile-nav-close svg,
  .site-shell>.mobile-nav .mobile-nav-close path{fill:none!important;stroke:currentColor!important}
}

@media (max-width:699px){
  /* Filter sheet must escape the hero stacking context and cover the results. */
  body.map-filter-sheet-open .map-library-page .map-library-hero{
    position:relative!important;
    z-index:10200!important;
  }
  body.map-filter-sheet-open .map-library-page .map-library-wide{
    position:relative!important;
    z-index:10201!important;
  }
  .map-search-form.is-filter-open{position:relative!important;z-index:10202!important}

  .map-mobile-filter-title-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin:0 0 10px!important}
  .map-mobile-filter-close{display:grid!important;place-items:center!important;padding:0!important;border:1px solid var(--border)!important;background:var(--bg-card)!important;color:var(--ink)!important}
  .map-mobile-filter-close svg,.map-mobile-filter-close path{width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important}
  .map-mobile-period-options button{
    position:relative!important;
    border:1px solid var(--border)!important;
    background:var(--bg-card)!important;
    color:var(--ink-dim)!important;
    font-family:var(--font-body)!important;
    font-weight:600!important;
  }
  .map-mobile-period-options button.is-selected{
    padding-right:38px!important;
    border-color:color-mix(in srgb,var(--gold) 52%,var(--border))!important;
    background:color-mix(in srgb,var(--gold) 11%,var(--bg-card))!important;
    color:var(--gold)!important;
  }
  .map-mobile-period-options button.is-selected::after{
    content:"✓"!important;position:absolute!important;right:13px!important;top:50%!important;transform:translateY(-50%)!important;
    color:var(--gold)!important;font:800 13px/1 var(--font-body)!important;
  }
  .map-mobile-sort-options{
    border:1px solid var(--border)!important;
    background:var(--bg-card)!important;
  }
  .map-mobile-sort-options button{
    border:0!important;border-right:1px solid var(--border-soft)!important;border-radius:0!important;
    background:transparent!important;color:var(--ink-dim)!important;font-family:var(--font-body)!important;font-weight:600!important;
  }
  .map-mobile-sort-options button:last-child{border-right:0!important}
  .map-mobile-sort-options button.is-selected{background:var(--bg-elevated)!important;color:var(--ink)!important;font-weight:700!important}
}

/* ========================================================================== 
   20.0.42 FINAL PHONE AUDIT
   The earlier rules above establish compatibility with the existing templates.
   This final block is the single phone source of truth for geometry, rhythm,
   typography and placement. It intentionally wins over old desktop selectors.
   ========================================================================== */
@media (max-width:699px){
  :root{--phone-gutter:16px;--phone-content:calc(100vw - 32px);--phone-max:430px;--phone-radius:12px}
  html,body{overflow-x:hidden!important}
  @supports (overflow:clip){html,body{overflow-x:clip!important}}
  body{font-size:15px!important;line-height:1.5!important}

  /* ---------- universal phone rhythm ---------- */
  .section-inner,.footer-inner,.map-library-wide,
  .map-experience-current .section-inner,.country-compare-page .section-inner,
  .country-compare-content .section-inner,.account-dashboard-page .section-inner,
  .simple-about-page .section-inner,.simple-submit-page .section-inner,
  .legal-page .section-inner,.auth-page .section-inner{
    width:var(--phone-content)!important;max-width:var(--phone-max)!important;
    margin-inline:auto!important;padding-inline:0!important;min-width:0!important;
  }
  .button,.button-primary,.button-secondary,.button-outline{border-radius:8px!important}
  .button:not(.map-card-actions .button){min-height:40px!important}
  p{overflow-wrap:break-word}

  /* ---------- floating header: same shape, correctly placed ---------- */
  .site-header{
    position:sticky!important;top:0!important;z-index:10020!important;
    height:72px!important;min-height:72px!important;padding-top:8px!important;
    border:0!important;background:linear-gradient(180deg,var(--bg) 0,color-mix(in srgb,var(--bg) 96%,transparent) 70%,transparent 100%)!important;
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  }
  .admin-bar .site-header{top:46px!important}
  .site-header .header-inner{
    width:min(calc(100% - 24px),430px)!important;max-width:430px!important;height:54px!important;min-height:54px!important;
    margin:0 auto!important;padding:0 9px 0 11px!important;display:flex!important;align-items:center!important;gap:8px!important;
    border:1px solid var(--border)!important;border-radius:13px!important;background:color-mix(in srgb,var(--bg-card) 96%,transparent)!important;
    box-shadow:0 12px 34px -28px rgba(0,0,0,.72)!important;
    backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;
  }
  .site-header .brand{display:flex!important;position:static!important;inset:auto!important;transform:none!important;align-items:center!important;gap:8px!important;min-width:0!important;margin:0!important}
  .site-header .brand-mark{width:29px!important;height:29px!important;min-width:29px!important;flex:0 0 29px!important;border-radius:0!important;background:transparent!important}
  .site-header .brand-name{font:700 15px/1 var(--font-body)!important;letter-spacing:-.025em!important;white-space:nowrap!important}
  .desktop-nav,.site-header .theme-control,.site-header .account-link,.site-header .submit-link{display:none!important}
  .site-header .header-actions{display:flex!important;position:static!important;inset:auto!important;transform:none!important;margin-left:auto!important;align-items:center!important;gap:7px!important}
  .site-header .mobile-header-cta{
    display:inline-flex!important;position:static!important;inset:auto!important;transform:none!important;
    align-items:center!important;justify-content:center!important;width:auto!important;height:34px!important;min-height:34px!important;
    padding:0 12px!important;border:1px solid var(--gold)!important;border-radius:8px!important;background:var(--gold)!important;
    color:var(--on-gold)!important;font:700 11.5px/1 var(--font-body)!important;text-decoration:none!important;box-shadow:none!important;
  }
  :root[data-theme="light"] .site-header .mobile-header-cta{background:var(--gold)!important;border-color:var(--gold)!important;color:#fff!important}
  .site-header .menu-button{
    display:grid!important;position:static!important;inset:auto!important;transform:none!important;place-items:center!important;
    width:38px!important;height:38px!important;min-width:38px!important;margin:0!important;padding:0!important;
    border:1px solid var(--border)!important;border-radius:9px!important;background:var(--bg-elevated)!important;color:var(--ink)!important;
  }
  .site-header .menu-button svg{width:18px!important;height:18px!important}

  /* ---------- compact menu, aligned to header right edge ---------- */
  body.histriphy-mobile-menu-open .site-shell::after{content:"";position:fixed;z-index:10038;inset:0;background:rgba(7,7,6,.48);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
  body.histriphy-mobile-menu-open .site-shell>.mobile-nav,
  .histriphy-mobile-menu-open .site-shell>.mobile-nav,
  .site-shell:has(#menu-toggle:checked)>.mobile-nav{
    display:flex!important;position:fixed!important;z-index:10040!important;
    top:70px!important;right:max(12px,calc((100vw - 430px)/2 + 12px))!important;bottom:auto!important;left:auto!important;
    width:min(286px,calc(100vw - 24px))!important;height:auto!important;max-height:calc(100dvh - 82px)!important;
    margin:0!important;padding:0!important;flex-direction:column!important;overflow:hidden!important;
    border:1px solid var(--border)!important;border-radius:14px!important;background:var(--bg-raised)!important;
    box-shadow:0 28px 80px -30px rgba(0,0,0,.72)!important;transform-origin:top right!important;
    animation:h42MenuIn .18s cubic-bezier(.2,.8,.25,1) both!important;
  }
  @keyframes h42MenuIn{from{opacity:0;transform:translateY(-5px) scale(.985)}to{opacity:1;transform:none}}
  .admin-bar.histriphy-mobile-menu-open .site-shell>.mobile-nav{top:116px!important;max-height:calc(100dvh - 128px)!important}
  .mobile-nav-top{height:52px!important;min-height:52px!important;padding:7px 9px!important;display:flex!important;align-items:center!important;justify-content:flex-end!important}
  .mobile-nav-close{display:grid!important;place-items:center!important;width:36px!important;height:36px!important;min-width:36px!important;border:1px solid var(--border)!important;border-radius:9px!important;background:transparent!important;color:var(--ink)!important}
  .mobile-nav-close svg{width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important}
  .mobile-nav-main-v41{padding:0 14px!important;overflow-y:auto!important;scrollbar-width:none!important}
  .mobile-nav-main-v41::-webkit-scrollbar{display:none!important}
  .mobile-nav-main-v41>a{display:flex!important;align-items:center!important;justify-content:space-between!important;height:46px!important;min-height:46px!important;margin:0!important;padding:0 4px!important;border:0!important;border-bottom:1px solid var(--border-soft)!important;background:transparent!important;color:var(--ink)!important;font:700 13.5px/1 var(--font-body)!important;text-decoration:none!important}
  .mobile-nav-main-v41>a:last-child{border-bottom:0!important}
  .mobile-nav-main-v41>a svg{width:14px!important;height:14px!important;fill:none!important;stroke:var(--ink-faint)!important;stroke-width:1.8!important}
  .mobile-nav-main-v41>a.is-current{margin-inline:-2px!important;padding-inline:8px!important;border-radius:7px!important;background:color-mix(in srgb,var(--gold) 10%,var(--bg-raised))!important;color:var(--gold-ink)!important}
  .mobile-nav-footer{padding:12px 16px 14px!important;border-top:1px solid var(--border-soft)!important;background:var(--bg-raised)!important}
  .mobile-theme-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin:0 0 12px!important;color:var(--ink-dim)!important;font:500 11.5px/1.2 var(--font-body)!important}
  .mobile-theme-options{height:34px!important;padding:3px!important;gap:2px!important;border:1px solid var(--border)!important;border-radius:8px!important;background:var(--bg-card)!important}
  .mobile-theme-options button{height:26px!important;min-height:26px!important;padding:0 9px!important;border-radius:6px!important;font:600 10.5px/1 var(--font-body)!important}
  .mobile-nav-actions{display:grid!important;gap:7px!important}
  .mobile-nav-actions a{height:40px!important;min-height:40px!important;padding:0 10px!important;border-radius:8px!important;font:700 11.5px/1 var(--font-body)!important}

  /* ---------- Home: deliberate scale, never oversized ---------- */
  .hp-hero-product .hp-hero-inner{width:var(--phone-content)!important;max-width:var(--phone-max)!important;margin:0 auto!important;padding:22px 0 28px!important;display:flex!important;flex-direction:column!important;gap:18px!important}
  .hp-hero-product .hp-hero-copy{width:100%!important;max-width:none!important;margin:0!important;text-align:left!important}
  .hp-hero-product .hp-h1{max-width:12.5ch!important;margin:0!important;font-size:33px!important;line-height:1.01!important;letter-spacing:-.047em!important;text-wrap:balance!important}
  .hp-hero-product .hp-lede{max-width:39ch!important;margin:13px 0 0!important;font-size:14px!important;line-height:1.55!important;text-align:left!important}
  .hp-hero-product .hp-actions{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:8px 11px!important;margin:17px 0 0!important}
  .hp-hero-product .hp-actions>a{width:auto!important;flex:0 0 auto!important}
  .hp-hero-product .hp-actions .button,.hp-hero-product .hp-hero-secondary{height:38px!important;min-height:38px!important;padding:0 13px!important;border-radius:8px!important;font-size:11.5px!important}
  .hp-hero-product .hp-actions svg{width:14px!important;height:14px!important}
  .hp-hero-product .hp-hero-map{position:relative!important;left:auto!important;right:auto!important;transform:none!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1.62/1!important;margin:0 auto!important;border-radius:11px!important;overflow:hidden!important}
  .hp-hero-product .world-map{display:block!important;width:100%!important;height:100%!important;min-height:0!important;object-fit:contain!important;transform:none!important;margin:0!important}
  .hp-hero-product .map-label{left:12px!important;right:auto!important;bottom:9px!important;font:500 10.5px/1.3 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}

  .hp-formats-strip{padding:0!important;overflow:hidden!important}
  .hp-formats-strip-inner{width:var(--phone-content)!important;max-width:var(--phone-max)!important;min-height:42px!important;padding:5px 0!important;display:flex!important;align-items:center!important;gap:9px!important;overflow:hidden!important}
  .hp-formats-strip-title{flex:0 0 auto!important;gap:0!important}
  .hp-formats-strip-title strong{display:none!important}
  .hp-formats-strip-title span{height:25px!important;min-height:25px!important;padding:0 8px!important;border-radius:999px!important;font:700 9.5px/25px var(--font-body)!important;letter-spacing:0!important;text-transform:none!important;white-space:nowrap!important}
  .hp-formats-strip-items{display:flex!important;flex:1 1 auto!important;gap:0!important;min-width:0!important;overflow-x:auto!important;scrollbar-width:none!important;font-size:10.5px!important;white-space:nowrap!important}
  .hp-formats-strip-items::-webkit-scrollbar{display:none!important}
  .hp-formats-strip-items span{flex:0 0 auto!important;padding:0 9px!important}

  .hsd-section{padding:34px 0!important}
  .hsd-grid{display:block!important}
  .hsd-copy{width:100%!important;max-width:none!important;margin:0 0 15px!important}
  .hsd-copy .hp-kicker{margin-bottom:6px!important;font:600 11.5px/1.2 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .hsd-title-lines{display:block!important;font-size:26px!important;line-height:1.07!important;letter-spacing:-.04em!important}
  .hsd-title-lines span{display:inline!important}
  .hsd-title-lines span+span:before{content:" "}
  .hsd-copy>p:not(.hp-kicker){margin-top:9px!important;font-size:13.5px!important;line-height:1.55!important}
  .hsd-cta{height:38px!important;min-height:38px!important;width:auto!important;padding:0 12px!important;font-size:11.5px!important}
  .hsd-demo{width:min(100%,326px)!important;max-width:326px!important;height:auto!important;min-height:0!important;aspect-ratio:1.62/1!important;margin:18px auto 0!important;border-radius:10px!important;overflow:hidden!important}
  .hsd-demo histriphy-studio-demo{display:block!important;width:100%!important;height:100%!important;min-height:0!important;transform:none!important}
  .hsd-feature-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;width:min(100%,326px)!important;max-width:326px!important;margin:10px auto 0!important;padding:0!important;overflow:visible!important}
  .hsd-feature-list li{display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;min-height:34px!important;padding:5px 4px!important;border:1px solid var(--border)!important;border-radius:999px!important;background:var(--bg-card)!important;text-align:center!important;white-space:normal!important}
  .hsd-feature-list li b{font:700 9.5px/1.15 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .hsd-feature-list li span{display:none!important}

  .hp-feature-cycle{padding:44px 0 50px!important}
  .hp-feature-cycle-head{width:100%!important;margin:0 0 16px!important;text-align:left!important}
  .hp-feature-cycle-head h2{margin:0!important;font-size:26px!important;line-height:1.08!important;letter-spacing:-.04em!important;text-align:left!important}
  .hp-feature-cycle-head p{margin:7px 0 0!important;font-size:13px!important;line-height:1.45!important;text-align:left!important}
  .hp-feature-cycle-shell{width:100%!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
  .hp-feature-cycle-controls{position:static!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;width:100%!important;height:34px!important;margin:0 0 9px!important;padding:0!important;gap:2px!important;background:transparent!important}
  .hp-feature-arrow{width:32px!important;height:32px!important;min-width:32px!important;border-radius:7px!important}
  .hp-feature-counter{height:32px!important;min-width:48px!important;font-size:10.5px!important}
  .hp-feature-cycle-stage{display:flex!important;flex-direction:column!important;gap:10px!important}
  .hp-feature-cycle-nav{display:block!important;order:1!important;margin:0!important}
  .hp-feature-cycle-item{display:none!important}
  .hp-feature-cycle-item.is-active{display:flex!important;align-items:center!important;gap:10px!important;width:100%!important;min-height:0!important;padding:10px 11px!important;border:1px solid var(--border)!important;border-radius:9px!important;background:var(--bg-card)!important;text-align:left!important}
  .hp-feature-icon{width:32px!important;height:32px!important;min-width:32px!important;border-radius:8px!important}
  .hp-feature-icon svg{width:17px!important;height:17px!important}
  .hp-feature-cycle-item strong{margin:0 0 2px!important;font-size:13.5px!important;line-height:1.15!important;letter-spacing:-.015em!important}
  .hp-feature-cycle-item small{font-size:11px!important;line-height:1.35!important}
  .hp-feature-cycle-panels{order:2!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1.42/1!important;border:1px solid var(--border)!important;border-radius:11px!important;background:var(--bg-card)!important;overflow:hidden!important;box-shadow:none!important}
  .hp-feature-cycle-panel{width:100%!important;height:100%!important;padding:4px!important;background:transparent!important}
  .hp-feature-cycle-panel img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
  .hp-feature-cycle-panel.is-entering{animation:h42FeatureIn .3s cubic-bezier(.2,.8,.25,1) both!important}
  @keyframes h42FeatureIn{from{opacity:.15;transform:translateY(4px)}to{opacity:1;transform:none}}

  .hp-coming-soon-visual{padding:40px 0 46px!important;background:transparent!important;overflow:hidden!important}
  .hp-coming-soon-visual .section-inner{width:var(--phone-content)!important;max-width:var(--phone-max)!important}
  .hp-coming-soon-visual img{display:block!important;width:100%!important;height:auto!important;margin:0 auto!important;transform-origin:center center!important;will-change:transform!important}
  .hp-coming-soon-visual img.is-in-view{animation:h42FutureFloat 6.5s ease-in-out infinite alternate!important}
  @keyframes h42FutureFloat{from{transform:translateY(0) scale(1)}to{transform:translateY(-3px) scale(1.006)}}
  .hp-coming-soon-mobile-copy{display:none!important}
  .hp-community{padding:36px 0 42px!important}
  .hp-community-inner{display:block!important}
  .hp-community h2{font-size:24px!important;line-height:1.1!important;letter-spacing:-.035em!important}
  .hp-community .hp-lede{margin-top:7px!important;font-size:13.5px!important;line-height:1.5!important}
  .hp-community-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-top:15px!important}
  .hp-community-actions .button{width:auto!important;height:38px!important;min-height:38px!important;padding:0 12px!important;font-size:11.5px!important}

  /* ---------- Explore: 2-up library, aligned controls ---------- */
  .map-library-page,.map-library-hero,.map-library-results{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  .map-library-hero{padding:16px 0 8px!important}
  .map-library-heading-row{display:block!important;margin:0!important}
  .map-library-heading{width:100%!important}
  .map-library-eyebrow{margin:0 0 5px!important;font:600 11px/1.2 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important;color:var(--gold-ink)!important}
  .map-library-heading h1{font-size:27px!important;line-height:1.05!important;letter-spacing:-.04em!important}
  .map-library-description{margin-top:7px!important;max-width:38ch!important;font-size:12.5px!important;line-height:1.5!important}
  .map-library-stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;margin:14px 0!important}
  .library-stat-card{min-width:0!important;min-height:56px!important;padding:8px 5px!important;border-radius:8px!important}
  .library-stat-card svg{width:15px!important;height:15px!important}
  .library-stat-card strong{font-size:14px!important;line-height:1.1!important}
  .library-stat-card span{font:500 8.5px/1.2 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .map-search-form{display:grid!important;grid-template-columns:minmax(0,1fr) 40px!important;gap:8px!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
  .map-search-form>.map-filter-field:not(.map-filter-search),.map-search-form>.map-filter-actions{display:none!important}
  .map-filter-search{min-width:0!important;margin:0!important}
  .map-filter-search>label{display:none!important}
  .map-filter-search .map-filter-control{height:40px!important;min-height:40px!important}
  .map-filter-search input{height:40px!important;min-height:40px!important;padding-block:0!important;font-size:12px!important;text-overflow:ellipsis!important}
  .map-mobile-filter-toggle{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;min-width:40px!important;padding:0!important;border:1px solid var(--border)!important;border-radius:8px!important;background:var(--bg-card)!important;color:var(--ink)!important}
  .map-mobile-filter-toggle span{display:none!important}
  .map-library-tabs-wrap{width:100%!important;margin:11px 0 0!important;overflow:hidden!important}
  .map-library-tabs{display:flex!important;width:100%!important;margin:0!important;padding:0 0 6px!important;gap:7px!important;overflow-x:auto!important;scrollbar-width:none!important}
  .map-library-tabs::-webkit-scrollbar{display:none!important}
  .map-library-tab{flex:0 0 auto!important;min-height:34px!important;padding:0 10px!important;border:1px solid var(--border)!important;border-radius:999px!important;font-size:10.5px!important;white-space:nowrap!important}
  .map-library-results{padding:9px 0 34px!important}
  .map-library-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;margin:0!important}
  .map-card-library{min-width:0!important;overflow:hidden!important;border-radius:9px!important;box-shadow:none!important}
  .map-card-library .preview{height:auto!important;min-height:0!important;aspect-ratio:1.25/1!important}
  .map-card-library .year,.map-card-library .map-source-badge{top:7px!important;font-size:9px!important;line-height:1!important}
  .map-card-library .year{left:7px!important}.map-card-library .map-source-badge{right:7px!important}
  .map-card-library .card-body{display:flex!important;flex-direction:column!important;min-height:119px!important;padding:8px!important}
  .map-card-library .map-card-type{margin:0 0 4px!important;font:500 9px/1.2 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .map-card-library .card-body h3{display:-webkit-box!important;min-height:31px!important;margin:0!important;font-size:12.5px!important;line-height:1.2!important;letter-spacing:-.02em!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  .map-card-library .card-foot{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;margin-top:auto!important;padding-top:7px!important}
  .map-card-library .card-foot>span{font:500 9.5px/1.2 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .map-card-library .map-card-actions{width:100%!important}
  .map-card-library .map-details-btn{display:none!important}
  .map-card-library .histriphy-download-btn{width:100%!important;height:34px!important;min-height:34px!important;padding:0 7px!important;border-radius:7px!important;font-size:10.5px!important}

  /* bottom filter sheet: compact, explicit, readable */
  body.map-filter-sheet-open{overflow:hidden!important}
  .map-search-form.is-filter-open .map-mobile-filter-backdrop{display:block!important;position:fixed!important;z-index:10100!important;inset:0!important;background:rgba(7,7,6,.55)!important;backdrop-filter:blur(3px)!important;-webkit-backdrop-filter:blur(3px)!important}
  .map-search-form.is-filter-open .map-mobile-filter-sheet{display:block!important;position:fixed!important;z-index:10110!important;left:50%!important;bottom:0!important;transform:translateX(-50%)!important;width:min(100vw,430px)!important;max-height:calc(100dvh - 18px)!important;padding:0 16px calc(16px + env(safe-area-inset-bottom))!important;border:1px solid var(--border)!important;border-bottom:0!important;border-radius:18px 18px 0 0!important;background:var(--bg-raised)!important;box-shadow:0 -24px 72px -28px rgba(0,0,0,.72)!important;overflow-y:auto!important;overscroll-behavior:contain!important}
  .map-mobile-filter-sheet-head{position:sticky!important;top:0!important;z-index:2!important;padding:9px 0 9px!important;background:var(--bg-raised)!important}
  .map-mobile-filter-handle{display:block!important;width:34px!important;height:4px!important;margin:0 auto 10px!important;border-radius:999px!important;background:var(--border-strong)!important}
  .map-mobile-filter-title-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
  .map-mobile-filter-title-row strong{font-size:17px!important;letter-spacing:-.02em!important}
  .map-mobile-filter-close{display:grid!important;place-items:center!important;width:32px!important;height:32px!important;min-width:32px!important;border:1px solid var(--border)!important;border-radius:8px!important;background:var(--bg-card)!important;color:var(--ink)!important}
  .map-mobile-sheet-search{height:42px!important;margin-top:10px!important}
  .map-mobile-sheet-search input{height:42px!important;font-size:13px!important}
  .map-search-form.is-filter-open .map-filter-advanced{display:block!important}
  .map-search-form.is-filter-open .map-filter-field{display:block!important;margin-top:12px!important}
  .map-search-form.is-filter-open .map-filter-field>label{display:block!important;margin:0 0 6px!important;color:var(--ink-dim)!important;font:600 11px/1.2 var(--font-body)!important}
  .map-search-form.is-filter-open .map-filter-control{height:42px!important}
  .map-search-form.is-filter-open select{height:42px!important;min-height:42px!important;font-size:12.5px!important}
  .map-mobile-period-options{display:grid!important;gap:6px!important;margin-top:7px!important}
  .map-mobile-period-options button{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:40px!important;padding:0 11px!important;border:1px solid var(--border)!important;border-radius:8px!important;background:var(--bg-card)!important;color:var(--ink-dim)!important;font:600 11.5px/1.25 var(--font-body)!important;text-align:left!important}
  .map-mobile-period-options button.is-selected,.map-mobile-period-options button.is-active{border-color:color-mix(in srgb,var(--gold) 52%,var(--border))!important;background:color-mix(in srgb,var(--gold) 10%,var(--bg-card))!important;color:var(--gold-ink)!important}
  .map-mobile-sort-options{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;margin-top:7px!important;border:1px solid var(--border)!important;border-radius:8px!important;overflow:hidden!important;background:var(--bg-card)!important}
  .map-mobile-sort-options button{min-width:0!important;height:38px!important;min-height:38px!important;padding:0 3px!important;border:0!important;border-right:1px solid var(--border-soft)!important;border-radius:0!important;background:transparent!important;color:var(--ink-dim)!important;font:600 10px/1.05 var(--font-body)!important}
  .map-mobile-sort-options button:last-child{border-right:0!important}
  .map-mobile-sort-options button.is-selected,.map-mobile-sort-options button.is-active{background:var(--bg-elevated)!important;color:var(--ink)!important}
  .map-search-form.is-filter-open .map-filter-actions{display:block!important;margin-top:14px!important}
  .map-search-form.is-filter-open .map-search-submit{width:100%!important;height:42px!important;min-height:42px!important;font-size:12.5px!important}

  /* ---------- Compare: truly side by side, no repeated micro labels ---------- */
  .country-compare-page,.country-compare-content{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  .country-compare-hero{padding:15px 0 14px!important}
  .country-compare-page .map-breadcrumb{font-size:10.5px!important;gap:5px!important}
  .country-compare-heading .country-compare-eyebrow{margin-top:12px!important;font:600 11px/1.2 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .country-compare-heading h1{margin-top:4px!important;font-size:26px!important;line-height:1.04!important;letter-spacing:-.04em!important}
  .country-compare-heading p{margin-top:7px!important;font-size:12.5px!important;line-height:1.5!important}
  .country-compare-picker-desktop{display:none!important}
  .country-compare-picker-mobile{display:block!important;width:100%!important;margin-top:12px!important;padding:9px!important;border:1px solid var(--border)!important;border-radius:9px!important;background:var(--bg-card)!important;box-shadow:none!important}
  .country-picker-mobile-row{display:grid!important;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr)!important;gap:5px!important;align-items:center!important}
  .country-picker-mobile-row select{width:100%!important;min-width:0!important;height:40px!important;min-height:40px!important;padding:0 25px 0 8px!important;border-radius:7px!important;font-size:11.5px!important;text-overflow:ellipsis!important}
  .country-picker-mobile-vs{display:grid!important;place-items:center!important;height:40px!important;color:var(--gold)!important;font:800 10.5px/1 var(--font-body)!important}
  .country-compare-picker-mobile .button{display:flex!important;align-items:center!important;justify-content:center!important;width:auto!important;height:36px!important;min-height:36px!important;margin:7px 0 0 auto!important;padding:0 11px!important;border-radius:7px!important;font-size:10.5px!important}
  .country-compare-content{padding:7px 0 34px!important}
  .country-map-grid-v41{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;width:100%!important;margin:0!important}
  .country-map-panel-v41{min-width:0!important;border-radius:9px!important;overflow:hidden!important;box-shadow:none!important}
  .country-map-panel-v41 .country-map-panel-head{padding:8px 9px!important}
  .country-map-panel-v41 .country-map-panel-head>span{display:none!important}
  .country-map-panel-v41 .country-map-panel-head h2{margin:0!important;font-size:12.5px!important;line-height:1.2!important;letter-spacing:-.02em!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .country-map-panel-v41 .country-compare-preview{height:auto!important;min-height:0!important;aspect-ratio:1.08/1!important}
  .country-data-comparison>.country-data-heading,.country-data-comparison>.country-data-table{display:none!important}
  .country-data-mobile-v42{display:block!important;width:100%!important;margin:11px 0 0!important;border:1px solid var(--border)!important;border-radius:9px!important;background:var(--bg-card)!important;overflow:hidden!important}
  .country-data-mobile-columns{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;border-bottom:1px solid var(--border)!important;background:var(--bg-elevated)!important}
  .country-data-mobile-columns strong{min-width:0!important;padding:9px 10px!important;font-size:11.5px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .country-data-mobile-columns strong+strong{border-left:1px solid var(--border)!important}
  .country-data-mobile-section{margin:0!important;padding:0!important}
  .country-data-mobile-section h3{margin:0!important;padding:9px 10px!important;border-bottom:1px solid var(--border-soft)!important;background:transparent!important;color:var(--ink)!important;font:700 12px/1.2 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .country-data-mobile-row{border-bottom:1px solid var(--border-soft)!important}
  .country-data-mobile-row:last-child{border-bottom:0!important}
  .country-data-mobile-label{padding:8px 10px 3px!important;color:var(--ink-dim)!important;font:600 10.5px/1.25 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .country-data-mobile-values{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .country-data-mobile-values>div{min-width:0!important;padding:3px 10px 9px!important;color:var(--ink)!important;font:600 11.5px/1.35 var(--font-body)!important;overflow-wrap:anywhere!important}
  .country-data-mobile-values>div+div{border-left:1px solid var(--border-soft)!important}
  .country-data-source-note{margin-top:10px!important;font-size:10px!important;line-height:1.45!important;color:var(--ink-faint)!important}

  /* ---------- Single map: no broken related cards or tiny pseudo-editorial text ---------- */
  .map-experience-current{width:100%!important;overflow-x:hidden!important}
  .map-hero-v19{padding:18px 0 24px!important}
  .map-hero-inner-v19{display:block!important}
  .map-hero-copy-v19{width:100%!important;max-width:none!important}
  .map-hero-copy-v19 h1{font-size:28px!important;line-height:1.04!important;letter-spacing:-.04em!important}
  .map-hero-summary{font-size:13px!important;line-height:1.5!important}
  .map-hero-visual-v19{width:100%!important;margin-top:15px!important}
  .map-hero-preview{width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1.4/1!important;border-radius:10px!important}
  .map-overview-grid-v20{display:block!important}
  .map-overview-panel-v20,.map-access-panel-v20,.map-inline-section-v20{width:100%!important;margin-top:12px!important;padding:14px!important;border-radius:9px!important}
  .map-overview-heading-v20>div>span,.map-access-head-v20>span,.map-inline-heading-v20>div>span{font:600 10.5px/1.2 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .map-overview-heading-v20 h2,.map-inline-heading-v20 h2{font-size:19px!important;line-height:1.15!important;letter-spacing:-.025em!important}
  .map-inline-heading-v20 p{font-size:11.5px!important;line-height:1.45!important}
  .map-compare-launch-form{display:grid!important;grid-template-columns:1fr auto!important;gap:7px!important;align-items:center!important}
  .map-compare-launch-form select{min-width:0!important;height:38px!important;font-size:11.5px!important}
  .map-compare-launch-form .button{height:38px!important;min-height:38px!important;padding:0 10px!important;font-size:10.5px!important}
  .map-soon-pill-v20{min-height:28px!important;padding:0 9px!important;font:600 10.5px/28px var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .map-related-v41{overflow:visible!important}
  .map-related-heading-v41{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:10px!important;margin-bottom:10px!important}
  .map-related-heading-v41>div>span{display:none!important}
  .map-related-heading-v41 h2{font-size:19px!important}
  .map-related-heading-v41>a{font-size:10.5px!important;white-space:nowrap!important}
  .map-related-grid-v41{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;margin:0!important;padding:0!important;overflow:visible!important}
  .map-related-card-v41{display:flex!important;flex-direction:column!important;width:100%!important;min-width:0!important;max-width:none!important;border-radius:9px!important;overflow:hidden!important;text-decoration:none!important}
  .map-related-card-v41 .map-related-preview{width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1.35/1!important}
  .map-related-card-v41 .map-related-copy{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;min-width:0!important;padding:8px!important}
  .map-related-card-v41 .map-related-copy>span{font:500 9.5px/1.2 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .map-related-card-v41 .map-related-copy>strong{display:-webkit-box!important;min-height:29px!important;margin-top:3px!important;font-size:12px!important;line-height:1.2!important;letter-spacing:-.015em!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  .map-related-card-v41 .map-related-copy>small{margin-top:auto!important;padding-top:6px!important;font-size:10px!important;color:var(--gold-ink)!important}

  /* ---------- Account / auth / submit / about / legal: one sane mobile scale ---------- */
  .account-dashboard-page{padding:18px 0 40px!important}
  .account-hero-panel{padding:16px!important;border-radius:10px!important}
  .account-layout-v2{display:block!important}
  .account-sidebar-v2{width:100%!important;margin:12px 0!important;overflow-x:auto!important;overflow-y:hidden!important;white-space:nowrap!important}
  .account-nav{display:flex!important;min-width:max-content!important}
  .account-nav a{min-height:38px!important;padding:0 11px!important;border-right:1px solid var(--border-soft)!important;border-bottom:0!important;font-size:11px!important}
  .account-content-v2{width:100%!important;padding:16px!important;border-radius:10px!important}
  .account-content-v2 h1,.account-content-v2 h2{letter-spacing:-.025em!important}
  .security-overview-card small,.account-submission-facts span,.map-protection-panel span{font-family:var(--font-body)!important;font-size:10px!important;letter-spacing:0!important;text-transform:none!important}
  .simple-page-hero,.simple-submit-section,.legal-masthead{padding:28px 0 38px!important}
  .simple-page-hero h1,.simple-submit-section h1,.legal-masthead h1{font-size:29px!important;line-height:1.05!important;letter-spacing:-.04em!important}
  .simple-submit-card,.legal-summary{padding:16px!important;border-radius:10px!important}
  .auth-page{padding:18px 0 36px!important}
  .auth-layout,.auth-compact-card{width:var(--phone-content)!important;max-width:390px!important;margin-inline:auto!important;border-radius:11px!important}
  .auth-story-panel{display:none!important}
  .auth-form-panel,.auth-compact-card{padding:18px!important}
  .auth-kicker,.editorial-eyebrow,.editorial-label,.legal-kicker{font-family:var(--font-body)!important;font-size:10.5px!important;letter-spacing:0!important;text-transform:none!important}

  /* ---------- Studio: deliberate mobile handoff, not a squeezed editor ---------- */
  .histriphy-builder-page{height:auto!important;min-height:100%!important;overflow-y:auto!important;overflow-x:hidden!important;background:var(--bg)!important}
  .histriphy-builder-page .site-shell{height:auto!important;min-height:100%!important;overflow:visible!important}
  .histriphy-builder-page .site-header,.histriphy-builder-page .site-footer{display:none!important}
  .geo-builder-app{height:auto!important;min-height:100dvh!important;overflow:visible!important}
  .geo-builder-form,.geo-builder-login{display:none!important}
  .geo-builder-phone-fallback{display:block!important;min-height:100dvh!important;padding:0 var(--phone-gutter) calc(28px + env(safe-area-inset-bottom))!important;background:var(--bg)!important}
  .geo-builder-phone-shell{width:100%!important;max-width:390px!important;margin:0 auto!important}
  .geo-builder-phone-bar{height:58px!important;grid-template-columns:34px 1fr 34px!important;border-bottom:1px solid var(--border-soft)!important}
  .geo-builder-phone-back{width:32px!important;height:32px!important;border-radius:8px!important}
  .geo-builder-phone-brand img{width:23px!important;height:23px!important}.geo-builder-phone-brand strong{font-size:12.5px!important}
  .geo-builder-phone-copy{padding:24px 0 14px!important}
  .geo-builder-phone-kicker{padding:0!important;border:0!important;background:transparent!important;color:var(--gold-ink)!important;font:600 11px/1.2 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .geo-builder-phone-copy h1{max-width:16ch!important;margin:7px 0 8px!important;font-size:28px!important;line-height:1.04!important;letter-spacing:-.04em!important}
  .geo-builder-phone-copy p{max-width:40ch!important;font-size:13px!important;line-height:1.55!important}
  .geo-builder-phone-preview{width:100%!important;max-width:326px!important;margin:4px auto 14px!important;border-radius:10px!important;box-shadow:none!important;overflow:hidden!important}
  .geo-builder-phone-preview:before{padding-top:72%!important}
  .geo-builder-phone-actions{display:flex!important;flex-wrap:wrap!important;gap:7px!important}
  .geo-builder-phone-actions .button{width:auto!important;height:38px!important;min-height:38px!important;padding:0 11px!important;border-radius:8px!important;font-size:11px!important}
  .geo-builder-phone-note{margin:11px 0 0!important;font-size:11px!important;line-height:1.45!important}

  /* ---------- Footer: readable, compact, no AI-style microcaps ---------- */
  .site-footer{padding:30px 0 calc(18px + env(safe-area-inset-bottom))!important;overflow-x:hidden!important}
  .footer-main{display:block!important;width:100%!important}
  .footer-intro{max-width:34ch!important}
  .footer-intro p,.footer-contact{font-size:11.5px!important;line-height:1.5!important}
  .footer-columns{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px 18px!important;width:100%!important;margin-top:24px!important}
  .footer-columns section:last-child{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 14px!important}
  .footer-columns section:last-child h2{grid-column:1/-1!important}
  .footer-columns h2{margin-bottom:7px!important;font-size:11.5px!important;letter-spacing:0!important;text-transform:none!important}
  .footer-columns a{min-height:28px!important;font-size:11px!important}
  .footer-bottom{margin-top:24px!important;padding-top:14px!important;font-size:10.5px!important}
  .footer-built{display:none!important}

  /* ---------- remove microcaps / mono styling from routine phone UI ---------- */
  .map-experience-current .map-period-badge,
  .map-experience-current .map-related-copy>span,
  .map-experience-current .map-download-card-head span,
  .map-experience-current .map-context-group h3,
  .map-experience-current .map-quick-stats span,
  .country-compare-page .country-compare-eyebrow,
  .country-compare-page .country-data-section-row>div,
  .map-library-page .map-card-type,
  .map-library-page .card-foot span,
  .account-dashboard-page .account-submission-facts span,
  .account-dashboard-page .map-protection-panel span{
    font-family:var(--font-body)!important;letter-spacing:0!important;text-transform:none!important;
  }
}

@media (max-width:360px){
  :root{--phone-gutter:12px;--phone-content:calc(100vw - 24px)}
  .site-header .header-inner{width:var(--phone-content)!important;max-width:var(--phone-max)!important}
  body.histriphy-mobile-menu-open .site-shell>.mobile-nav,.histriphy-mobile-menu-open .site-shell>.mobile-nav,.site-shell:has(#menu-toggle:checked)>.mobile-nav{right:var(--phone-gutter)!important;width:min(278px,var(--phone-content))!important}
  .hp-hero-product .hp-h1{font-size:30px!important}
  .library-stat-card span{font-size:10px!important}
  .map-card-library .card-body{padding:7px!important}.map-card-library .card-body h3{font-size:11.5px!important}
  .country-picker-mobile-row select{font-size:10.5px!important;padding-left:7px!important}
}

@media (prefers-reduced-motion:reduce){
  .hp-feature-cycle-panel.is-entering,.hp-coming-soon-visual img.is-in-view,.mobile-nav{animation:none!important;transition:none!important}
}

/* ========================================================================== 
   20.0.42 PASS 3 — ABSOLUTE LAST-WINS GUARD
   Keep only the handful of properties that legacy high-specificity selectors
   can otherwise steal back. This remains inside the single phone stylesheet.
   ========================================================================== */
@media (max-width:699px){
  :root{--phone-gutter:16px;--phone-content:calc(100vw - 32px);--phone-max:430px}
  body.home .hp-hero-product .hp-hero-inner,
  body.front-page .hp-hero-product .hp-hero-inner{
    width:var(--phone-content)!important;max-width:var(--phone-max)!important;margin-inline:auto!important;
    padding:22px 0 28px!important;gap:18px!important;
  }
  body.home .hp-hero-product .hp-hero-map,
  body.front-page .hp-hero-product .hp-hero-map{
    width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;
    aspect-ratio:1.62/1!important;margin:0 auto!important;padding:0!important;transform:none!important;overflow:hidden!important;
  }
  body.home .hp-hero-product .hp-hero-map .world-map,
  body.front-page .hp-hero-product .hp-hero-map .world-map{width:100%!important;height:100%!important;min-height:0!important;transform:none!important}

  body .site-header .header-inner{width:var(--phone-content)!important;max-width:var(--phone-max)!important;margin-inline:auto!important}
  body.histriphy-mobile-menu-open .site-shell>.mobile-nav,
  body.histriphy-mobile-menu-open .mobile-nav,
  .site-shell:has(#menu-toggle:checked)>.mobile-nav{
    right:max(var(--phone-gutter),calc((100vw - var(--phone-max))/2 + var(--phone-gutter)))!important;
    width:min(282px,calc(100vw - (var(--phone-gutter) * 2)))!important;
  }

  .map-library-page .map-library-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  .map-library-page .library-stat-card{min-height:62px!important;padding:9px 10px!important}
  .map-library-page .library-stat-card strong{font-size:15px!important}
  .map-library-page .library-stat-card span{font:500 10.5px/1.25 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .map-library-page .map-card-library .year,.map-library-page .map-card-library .map-source-badge{font-size:10px!important}
  .map-library-page .map-card-library .map-card-type{font:500 10px/1.25 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .map-library-page .map-card-library .card-foot>span{font:500 10px/1.25 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}

  .hp-formats-strip .hp-formats-strip-title span{font:700 10px/25px var(--font-body)!important}
  .hsd-section .hsd-feature-list li b{font:700 10.5px/1.2 var(--font-body)!important}

  .map-experience-current .map-related-heading-v41,
  .map-experience-current .map-inline-heading-v20{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:10px!important;text-align:left!important;margin:0 0 12px!important}
  .map-experience-current .map-related-heading-v41>div,
  .map-experience-current .map-inline-heading-v20>div{text-align:left!important}
  .map-experience-current .map-related-heading-v41 h2,
  .map-experience-current .map-inline-heading-v20 h2{font-size:20px!important;line-height:1.1!important;text-align:left!important}
  .map-experience-current .map-related-heading-v41 span,
  .map-experience-current .map-inline-heading-v20 span{font-family:var(--font-body)!important;font-size:10.5px!important;letter-spacing:0!important;text-transform:none!important}
  .map-experience-current .map-related-heading-v41>a,
  .map-experience-current .map-inline-heading-v20>a{font-size:10.5px!important;white-space:nowrap!important}
  .map-experience-current .map-related-card-v41 .map-related-copy>span{font:500 10px/1.2 var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
  .map-experience-current .map-related-card-v41 .map-related-copy strong{font-size:12.5px!important;line-height:1.25!important}
  .map-experience-current .map-related-card-v41 .map-related-copy small{font-size:10.5px!important}

  .country-compare-page .country-data-mobile-v42,
  .country-compare-page .country-data-mobile-v42 *{font-family:var(--font-body)!important}
  .country-compare-page .country-data-mobile-v42 .country-data-mobile-section h3{font-size:12px!important;letter-spacing:0!important;text-transform:none!important}
  .country-compare-page .country-data-mobile-v42 .country-data-mobile-label{font-size:10.5px!important;letter-spacing:0!important;text-transform:none!important}
  .country-compare-page .country-data-mobile-v42 .country-data-mobile-values>div{font-size:12px!important;line-height:1.35!important}
}
@media (max-width:360px){
  :root{--phone-gutter:12px;--phone-content:calc(100vw - 24px)}
  body .site-header .header-inner,
  body.home .hp-hero-product .hp-hero-inner,
  body.front-page .hp-hero-product .hp-hero-inner{width:var(--phone-content)!important;max-width:var(--phone-max)!important}
  body.histriphy-mobile-menu-open .site-shell>.mobile-nav,
  body.histriphy-mobile-menu-open .mobile-nav,
  .site-shell:has(#menu-toggle:checked)>.mobile-nav{right:var(--phone-gutter)!important;width:min(278px,var(--phone-content))!important}
}

/* 20.0.42 pass 4 — editorial typography cleanup across every phone template. */
@media (max-width:699px){
  .section-heading p,.categories-heading p,.hp-kicker,.hp-eyebrow,
  .map-library-eyebrow,.map-experience-current .editorial-eyebrow,
  .simple-about-page .editorial-eyebrow,.simple-submit-page .editorial-eyebrow,
  .auth-page .auth-kicker,.legal-page .legal-kicker,.legal-simple-page .legal-kicker,
  .community-uploader-copy>p,.guest-limit-kicker,
  .account-dashboard-page .editorial-label,.account-dashboard-page .editorial-eyebrow{
    font-family:var(--font-body)!important;font-size:10.5px!important;font-weight:650!important;
    line-height:1.3!important;letter-spacing:0!important;text-transform:none!important;
  }
  .map-experience-current .map-period-badge,
  .map-experience-current .map-quick-stats span,
  .map-experience-current .map-context-group h3,
  .map-experience-current .map-compare-label span,
  .map-experience-current .map-download-card-head span,
  .account-dashboard-page .account-submission-facts span,
  .account-dashboard-page .account-download-allowance span,
  .account-dashboard-page .map-protection-panel span,
  .account-dashboard-page .security-overview-card small{
    font-family:var(--font-body)!important;letter-spacing:0!important;text-transform:none!important;
  }
  .footer-columns h2{font-family:var(--font-body)!important;letter-spacing:0!important;text-transform:none!important}
}
@media (max-width:699px){
  body .account-dashboard-page .account-kicker,
  body .account-dashboard-page .account-download-allowance span{
    font-family:var(--font-body)!important;font-size:10.5px!important;font-weight:650!important;
    line-height:1.3!important;letter-spacing:0!important;text-transform:none!important;
  }
}

/* ========================================================================== 
   20.0.46 launch authority · position the compact header/menu like the
   approved reference instead of edge-to-edge browser chrome.
   ========================================================================== */
@media (max-width:699px){
  .site-header{height:68px!important;min-height:68px!important;border:0!important;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;padding:0!important}
  .site-header .header-inner{width:var(--phone-content)!important;max-width:var(--phone-max)!important;height:52px!important;min-height:52px!important;margin:8px auto!important;padding:0 8px 0 10px!important;border:1px solid var(--border)!important;border-radius:14px!important;background:color-mix(in srgb,var(--bg-card) 96%,transparent)!important;box-shadow:0 12px 34px -30px rgba(0,0,0,.82)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important}
  .site-header .brand-mark{width:28px!important;height:28px!important;min-width:28px!important;flex-basis:28px!important}.site-header .brand-name{font-size:14px!important}.site-header .mobile-header-cta{height:34px!important;min-height:34px!important;padding-inline:11px!important}.site-header .menu-button{width:38px!important;height:38px!important;min-width:38px!important}
  body.histriphy-mobile-menu-open .site-shell>.mobile-nav,.histriphy-mobile-menu-open .site-shell>.mobile-nav,.site-shell:has(#menu-toggle:checked)>.mobile-nav{top:72px!important;right:var(--phone-gutter)!important;width:min(270px,calc(100vw - 44px))!important;max-height:calc(100dvh - 88px)!important}
  .admin-bar.histriphy-mobile-menu-open .site-shell>.mobile-nav{top:118px!important;max-height:calc(100dvh - 132px)!important}
}
@media(max-width:360px){
  .site-header .header-inner{width:calc(100vw - 24px)!important}.site-header{height:64px!important;min-height:64px!important}.site-header .header-inner{height:48px!important;min-height:48px!important}.site-header .brand-mark{width:26px!important;height:26px!important;min-width:26px!important;flex-basis:26px!important}.site-header .brand-name{font-size:13px!important}.site-header .mobile-header-cta{height:32px!important;min-height:32px!important;padding-inline:10px!important;font-size:11px!important}.site-header .menu-button{width:36px!important;height:36px!important;min-width:36px!important}.site-shell:has(#menu-toggle:checked)>.mobile-nav,body.histriphy-mobile-menu-open .site-shell>.mobile-nav{top:68px!important;right:12px!important;width:min(266px,calc(100vw - 32px))!important}}

/* ========================================================================== 
   20.0.46 launch regression pass
   Legal Contents stays a compact disclosure on phones. The old generic
   responsive rule turned the <details> element itself into a horizontal row,
   which hid links off screen.
   ========================================================================== */
@media (max-width:699px){
  .legal-page .legal-document-section .legal-reading-shell{display:block!important}
  .legal-page .legal-index{
    display:block!important;
    position:static!important;
    width:100%!important;
    margin:0 0 20px!important;
    padding:0!important;
    overflow:visible!important;
    border-top:1px solid var(--border-soft)!important;
    border-bottom:1px solid var(--border-soft)!important;
    background:transparent!important;
  }
  .legal-page .legal-index summary{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:46px!important;
    padding:0!important;
    color:var(--ink)!important;
    font:700 13px/1.2 var(--font-body)!important;
    cursor:pointer!important;
  }
  .legal-page .legal-index nav{display:none!important;padding:2px 0 14px!important}
  .legal-page .legal-index[open] nav{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
  .legal-page .legal-index a{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    padding:8px 0!important;
    border:0!important;
    border-top:1px solid var(--border-soft)!important;
    border-radius:0!important;
    background:transparent!important;
    color:var(--ink-dim)!important;
    font:500 12px/1.35 var(--font-body)!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
}

/* 20.0.46 launch authority: mobile menu actions stay stacked. */
@media (max-width:699px){
  .mobile-nav-actions{grid-template-columns:1fr!important}
  .mobile-nav-actions a{width:100%!important;white-space:nowrap!important}
}

@media (max-width:699px){
  .mobile-nav-actions .mobile-submit{background:var(--gold)!important;border:1px solid var(--gold)!important;color:var(--bg-deep)!important}
  .mobile-nav-actions .mobile-account-link{background:transparent!important;border:1px solid var(--border)!important;color:var(--ink)!important}
}


/* ========================================================================== 
   20.0.47 FINAL MOBILE EXPLORE CONTROL FIX
   Filter icon + category rail only. Keep this block last so no older archive
   selector can turn the phone tabs into a wrapped multi-row group.
   ========================================================================== */
@media (max-width:699px){
  .map-library-page .map-search-form{
    grid-template-columns:minmax(0,1fr) 40px!important;
    align-items:center!important;
  }
  .map-library-page .map-mobile-filter-toggle{
    display:grid!important;
    place-items:center!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    padding:0!important;
    margin:0!important;
    border:1px solid var(--border)!important;
    border-radius:8px!important;
    background:var(--bg-card)!important;
    color:var(--ink-dim)!important;
    box-shadow:none!important;
  }
  .map-library-page .map-mobile-filter-toggle:hover,
  .map-library-page .map-mobile-filter-toggle:focus-visible{
    border-color:color-mix(in srgb,var(--gold) 48%,var(--border))!important;
    color:var(--gold)!important;
  }
  .map-library-page .map-mobile-filter-toggle svg{
    display:block!important;
    width:17px!important;
    height:17px!important;
    overflow:visible!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }
  .map-library-page .map-mobile-filter-toggle svg path{
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }
  .map-library-page .map-mobile-filter-toggle span{display:none!important}

  .map-library-page .map-library-tabs-wrap{
    position:relative!important;
    display:block!important;
    width:100%!important;
    height:41px!important;
    min-height:41px!important;
    margin:10px 0 0!important;
    padding:0!important;
    overflow:hidden!important;
    border:0!important;
    background:transparent!important;
  }
  .map-library-page .map-library-tabs-wrap .map-library-tabs{
    display:flex!important;
    flex-flow:row nowrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:6px!important;
    width:100%!important;
    min-width:0!important;
    height:41px!important;
    min-height:41px!important;
    margin:0!important;
    padding:0 22px 5px 0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain!important;
    scroll-snap-type:x proximity!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
    white-space:nowrap!important;
    border:0!important;
    background:transparent!important;
  }
  .map-library-page .map-library-tabs-wrap .map-library-tabs::-webkit-scrollbar{display:none!important}
  .map-library-page .map-library-tabs-wrap .map-library-tab,
  .map-library-page .map-library-tabs-wrap .map-library-tabs>a{
    display:inline-flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    width:auto!important;
    min-width:max-content!important;
    max-width:none!important;
    height:34px!important;
    min-height:34px!important;
    margin:0!important;
    padding:0 10px!important;
    border-radius:999px!important;
    font-size:11px!important;
    line-height:1!important;
    white-space:nowrap!important;
    scroll-snap-align:start!important;
  }
  .map-library-page .map-library-tabs-wrap .map-library-tab svg,
  .map-library-page .map-library-tabs-wrap .map-library-tabs>a svg{
    flex:0 0 auto!important;
    width:14px!important;
    height:14px!important;
  }
  .map-library-page .map-library-tabs-wrap::after{
    content:""!important;
    pointer-events:none!important;
    position:absolute!important;
    z-index:2!important;
    top:0!important;
    right:0!important;
    width:22px!important;
    height:36px!important;
    background:linear-gradient(90deg,transparent,var(--bg-page))!important;
  }
}


/* ==========================================================================
   Histriphy 20.0.48 · final Home control geometry (phone)
   Compact controls only. No full-width pill bars and no hidden tool content.
   ========================================================================== */
@media (max-width:699px){
  body.home .hsd-tool-slider,
  body.front-page .hsd-tool-slider{
    display:block!important;
    width:min(100%,326px)!important;
    max-width:326px!important;
    min-height:0!important;
    margin:10px auto 0!important;
    padding:0!important;
    overflow:visible!important;
  }
  body.home .hsd-tool-slider .hsd-tool-arrow,
  body.front-page .hsd-tool-slider .hsd-tool-arrow{display:none!important}
  body.home .hsd-tool-slider .hsd-feature-list,
  body.front-page .hsd-tool-slider .hsd-feature-list{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    gap:7px!important;
    overflow:visible!important;
  }

  body.home .hp-feature-cycle-controls,
  body.front-page .hp-feature-cycle-controls{
    position:static!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:max-content!important;
    max-width:100%!important;
    min-width:0!important;
    height:36px!important;
    min-height:36px!important;
    margin:0 0 10px auto!important;
    padding:2px 4px!important;
    gap:2px!important;
    border:1px solid var(--border)!important;
    border-radius:999px!important;
    background:var(--bg-card)!important;
    box-shadow:none!important;
  }
  body.home .hp-feature-arrow,
  body.front-page .hp-feature-arrow{
    flex:0 0 30px!important;
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    min-height:30px!important;
    padding:0!important;
    border-radius:999px!important;
  }
  body.home .hp-feature-counter,
  body.front-page .hp-feature-counter{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:46px!important;
    height:30px!important;
    padding:0 4px!important;
    font-size:11px!important;
    white-space:nowrap!important;
  }

  /* The replacement artwork includes its own composition. Preserve all edges. */
  body.home .hp-feature-cycle-panels,
  body.front-page .hp-feature-cycle-panels{
    aspect-ratio:1.18/1!important;
  }
  body.home .hp-feature-cycle-panel,
  body.front-page .hp-feature-cycle-panel{padding:0!important}
}
