/* CHERCHEZ LA FEMME — mobile premium shell
   This file restyles the EXISTING production DOM. It does not render a second site. */
@media (max-width: 820px){
  :root{
    --clf-mobile-bg:#f7f3ed;
    --clf-mobile-paper:#fffdf8;
    --clf-mobile-ink:#151311;
    --clf-mobile-muted:#766f68;
    --clf-mobile-line:rgba(24,20,17,.13);
    --clf-mobile-accent:#8f233d;
    --clf-mobile-header:58px;
    --clf-mobile-subnav:46px;
    --clf-mobile-dock:82px;
    --shell:calc(100vw - 28px);
  }

  html{scroll-padding-top:calc(var(--clf-mobile-header) + var(--clf-mobile-subnav) + 10px);background:var(--clf-mobile-bg)}
  body.clf-mobile-premium{
    background:var(--clf-mobile-bg)!important;
    color:var(--clf-mobile-ink);
    padding-bottom:calc(var(--clf-mobile-dock) + env(safe-area-inset-bottom) + 24px)!important;
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
  }
  body.clf-mobile-premium main{overflow:visible!important}
  body.clf-mobile-premium .shell{width:var(--shell)!important;max-width:none!important;margin-inline:auto!important}

  /* One production header, restyled — no duplicate shell. */
  body.clf-mobile-premium .site-header{
    position:sticky!important;top:0!important;z-index:170!important;
    background:rgba(247,243,237,.965)!important;
    backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
    box-shadow:0 1px 0 var(--clf-mobile-line);
  }
  body.clf-mobile-premium .site-header .utility,
  body.clf-mobile-premium .site-header .breaking{display:none!important}
  body.clf-mobile-premium .masthead{
    position:relative!important;height:var(--clf-mobile-header)!important;
    min-height:var(--clf-mobile-header)!important;padding:0 78px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    border:0!important;
  }
  body.clf-mobile-premium .masthead-logo{
    display:flex!important;align-items:center!important;justify-content:center!important;
    width:auto!important;max-width:calc(100vw - 156px)!important;height:auto!important;
    margin:0!important;line-height:1!important;overflow:hidden!important;
  }
  body.clf-mobile-premium .masthead-logo .clf-brand-wordmark-text,
  body.clf-mobile-premium .masthead-logo:not(:has(.clf-brand-wordmark-text)){
    font-family:"CLF Instrument Serif",Georgia,serif!important;
    font-size:clamp(19px,5.1vw,24px)!important;font-weight:400!important;
    line-height:1!important;letter-spacing:.035em!important;white-space:nowrap!important;
  }
  body.clf-mobile-premium .masthead p{display:none!important}
  body.clf-mobile-premium .clf-mobile-homeback,
  body.clf-mobile-premium .clf-mobile-lang{
    position:absolute;top:0;height:var(--clf-mobile-header);display:flex;align-items:center;justify-content:center;
    border:0;background:transparent;color:#171411;z-index:4
  }
  body.clf-mobile-premium .clf-mobile-homeback{left:10px;width:46px;font-size:29px;font-family:Arial,sans-serif;font-weight:300}
  body.clf-mobile-premium .clf-mobile-lang{right:53px;min-width:38px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
  body.clf-mobile-premium .masthead>.menu-open{
    position:absolute!important;right:10px!important;top:0!important;width:44px!important;height:var(--clf-mobile-header)!important;
    display:grid!important;place-content:center!important;pointer-events:auto!important;margin:0!important;border:0!important;background:transparent!important
  }
  body.clf-mobile-premium .masthead>.menu-open span{width:22px!important}

  /* Existing main nav becomes the swipeable app category rail. */
  body.clf-mobile-premium .nav-shell{
    position:relative!important;height:var(--clf-mobile-subnav)!important;min-height:var(--clf-mobile-subnav)!important;
    border-top:1px solid var(--clf-mobile-line)!important;border-bottom:1px solid var(--clf-mobile-line)!important;
    background:rgba(247,243,237,.985)!important;overflow:hidden!important
  }
  body.clf-mobile-premium .main-nav{
    display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important
  }
  body.clf-mobile-premium .main-nav>.menu-open,
  body.clf-mobile-premium .main-nav>.nav-search{display:none!important}
  body.clf-mobile-premium .main-nav nav{
    display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:0!important;
    width:100%!important;height:100%!important;padding:0 13px!important;overflow-x:auto!important;overflow-y:hidden!important;
    scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-inline:contain!important;scroll-snap-type:x proximity!important
  }
  body.clf-mobile-premium .main-nav nav::-webkit-scrollbar{display:none!important}
  body.clf-mobile-premium .main-nav nav a{
    position:relative!important;flex:0 0 auto!important;display:flex!important;align-items:center!important;height:100%!important;
    padding:0 14px!important;font-family:var(--sans)!important;font-size:9px!important;font-weight:760!important;
    letter-spacing:.17em!important;text-transform:uppercase!important;white-space:nowrap!important;color:#49433d!important;scroll-snap-align:center
  }
  body.clf-mobile-premium .main-nav nav a:after{left:14px!important;right:14px!important;bottom:0!important;height:2px!important;background:transparent!important}
  body.clf-mobile-premium .main-nav nav a.active{color:#111!important}
  body.clf-mobile-premium .main-nav nav a.active:after{background:var(--clf-mobile-accent)!important}

  /* Full-screen editorial drawer, based on the existing production drawer. */
  body.clf-mobile-premium .menu-drawer{
    width:min(92vw,430px)!important;height:100dvh!important;overflow:hidden!important;
    padding:max(22px,env(safe-area-inset-top)) 22px max(26px,env(safe-area-inset-bottom))!important;
    background:#fbf8f2!important;box-shadow:28px 0 70px rgba(17,14,11,.24)!important;z-index:310!important
  }
  body.clf-mobile-premium .menu-close{width:46px!important;height:46px!important;display:grid!important;place-items:center!important;border-radius:50%!important;background:#eee9e1!important;font-size:30px!important;right:18px!important;top:max(18px,env(safe-area-inset-top))!important}
  body.clf-mobile-premium .drawer-logo{margin:68px 64px 26px 0!important;width:auto!important;min-height:0!important}
  body.clf-mobile-premium .drawer-logo .clf-brand-wordmark-text,
  body.clf-mobile-premium .drawer-logo:not(:has(.clf-brand-wordmark-text)){font-size:24px!important;letter-spacing:.035em!important;line-height:1!important;white-space:nowrap!important}
  body.clf-mobile-premium .drawer-editions{display:flex!important;gap:8px!important;align-items:center!important;margin:0 0 22px!important;padding:0 0 22px!important;border-bottom:1px solid var(--clf-mobile-line)!important;overflow-x:auto!important}
  body.clf-mobile-premium .drawer-editions>span{display:none!important}
  body.clf-mobile-premium .drawer-editions .edition{flex:0 0 68px!important;min-height:44px!important;display:grid!important;place-items:center!important;border:1px solid var(--clf-mobile-line)!important;border-radius:999px!important;background:transparent!important;font-size:11px!important;font-weight:800!important;letter-spacing:.12em!important}
  body.clf-mobile-premium .drawer-editions .edition.active{background:#151311!important;color:#fff!important;border-color:#151311!important}
  body.clf-mobile-premium .menu-drawer nav,
  body.clf-mobile-premium .menu-drawer nav.drawer-mobile-main{
    display:grid!important;grid-template-columns:1fr 1fr!important;align-content:start!important;gap:0 24px!important;
    flex:1!important;min-height:0!important;padding:0 4px 80px 0!important;overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important
  }
  body.clf-mobile-premium .menu-drawer nav>a,
  body.clf-mobile-premium .menu-drawer nav.drawer-mobile-main>a{
    display:block!important;padding:14px 0!important;border-bottom:1px solid var(--clf-mobile-line)!important;
    font-family:var(--serif)!important;font-size:24px!important;font-weight:400!important;line-height:1.02!important;letter-spacing:-.025em!important
  }
  body.clf-mobile-premium .menu-drawer nav>a.clf-mobile-drawer-wide{grid-column:1/-1!important}
  body.clf-mobile-premium .drawer-backdrop{z-index:300!important;background:rgba(15,12,10,.34)!important;backdrop-filter:blur(3px)}

  /* HOME — glossy, content-rich and continuous. */
  body.clf-mobile-premium:not(.article-page):not(.section-platform):not(.news-index-page) .cover-stage{padding-top:10px!important}
  body.clf-mobile-premium .cover-stage{width:100%!important;margin:0!important;display:block!important;padding-inline:14px!important;background:transparent!important}
  body.clf-mobile-premium .cover-edition-bar{height:38px!important;padding:0 4px!important;border:0!important;background:transparent!important;font-size:8px!important;letter-spacing:.15em!important}
  body.clf-mobile-premium .cover-main{height:min(72svh,690px)!important;min-height:520px!important;border-radius:28px!important;overflow:hidden!important;background:#26221f!important;box-shadow:0 18px 46px rgba(29,23,18,.12)!important}
  body.clf-mobile-premium .cover-slide{border-radius:28px!important;overflow:hidden!important}
  body.clf-mobile-premium .cover-slide>img{width:100%!important;height:100%!important;inset:0!important;object-fit:cover!important;object-position:center 22%!important}
  body.clf-mobile-premium .cover-gradient{background:linear-gradient(180deg,transparent 33%,rgba(19,16,13,.12) 50%,rgba(19,16,13,.88) 100%)!important}
  body.clf-mobile-premium .cover-copy{left:24px!important;right:24px!important;top:auto!important;bottom:26px!important;width:auto!important;max-width:none!important;color:#fff!important}
  body.clf-mobile-premium .cover-copy .kicker{font-size:9px!important;letter-spacing:.16em!important;color:#fff!important}
  body.clf-mobile-premium .cover-copy h1{max-width:8.6em!important;margin:10px 0 12px!important;font-size:clamp(42px,12vw,62px)!important;line-height:.88!important;letter-spacing:-.05em!important}
  body.clf-mobile-premium .cover-copy p{display:none!important}
  body.clf-mobile-premium .cover-copy .button-black{display:inline-flex!important;min-height:44px!important;align-items:center!important;margin-top:4px!important;padding:0 16px!important;border:1px solid rgba(255,255,255,.6)!important;background:rgba(255,255,255,.08)!important;backdrop-filter:blur(9px)!important;border-radius:999px!important;color:#fff!important}
  body.clf-mobile-premium .cover-controls{display:none!important}
  body.clf-mobile-premium .cover-rail{margin-top:12px!important;border:0!important;border-radius:22px!important;overflow:hidden!important;background:#201c19!important}
  body.clf-mobile-premium .cover-rail-mobile-head{height:42px!important;padding:0 16px!important}
  body.clf-mobile-premium .cover-rail-stories{grid-auto-columns:88%!important;gap:8px!important;padding:0 8px 8px!important}
  body.clf-mobile-premium .cover-rail .rail-story{border:0!important;border-radius:16px!important;overflow:hidden!important;background:#2b2622!important}

  body.clf-mobile-premium .section{padding:34px 0!important}
  body.clf-mobile-premium .section-heading{display:grid!important;grid-template-columns:auto 1fr auto!important;gap:12px!important;align-items:end!important;margin-bottom:16px!important}
  body.clf-mobile-premium .section-heading h2{font-family:var(--serif)!important;font-size:38px!important;font-weight:400!important;line-height:.94!important;letter-spacing:-.035em!important;text-transform:none!important}
  body.clf-mobile-premium .section-heading>span{height:1px!important;background:var(--clf-mobile-line)!important}
  body.clf-mobile-premium .section-heading>a{font-size:8px!important;letter-spacing:.14em!important;white-space:nowrap!important}
  body.clf-mobile-premium .people-grid,
  body.clf-mobile-premium .edit-rail,
  body.clf-mobile-premium .snap-rail{grid-auto-columns:82%!important;gap:12px!important;scroll-padding-left:0!important}
  body.clf-mobile-premium .people-grid figure,
  body.clf-mobile-premium .edit-rail img{height:auto!important;aspect-ratio:4/5!important;border-radius:22px!important;object-fit:cover!important}
  body.clf-mobile-premium .people-grid h3,
  body.clf-mobile-premium .edit-rail h3{font-size:26px!important;line-height:1!important;margin-top:11px!important}
  body.clf-mobile-premium .instagram-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}
  body.clf-mobile-premium .instagram-grid a{aspect-ratio:1/1.1!important;border-radius:18px!important;overflow:hidden!important}

  body.clf-mobile-premium .daily-edit{grid-template-columns:1fr!important;gap:18px!important;margin-top:26px!important;padding:24px 0!important}
  body.clf-mobile-premium .daily-index{border-right:0!important}
  body.clf-mobile-premium .daily-index>span{font-size:52px!important}
  body.clf-mobile-premium .daily-lead h2{font-size:34px!important}
  body.clf-mobile-premium .daily-points{border-left:0!important}
  body.clf-mobile-premium .trust-strip{grid-template-columns:1fr 1fr!important;border-radius:20px!important;overflow:hidden!important}
  body.clf-mobile-premium .trust-strip>div{min-height:70px!important;padding:12px!important}
  body.clf-mobile-premium .publishing-rhythm{display:block!important;padding:28px 0!important}
  body.clf-mobile-premium .publishing-rhythm-copy h2{font-size:34px!important;line-height:1!important}
  body.clf-mobile-premium .publishing-rhythm-times{display:grid!important;grid-template-columns:repeat(3,1fr)!important;margin-top:20px!important}
  body.clf-mobile-premium .publishing-rhythm-times li{padding:14px 8px!important}
  body.clf-mobile-premium .premium-ad{border-radius:20px!important;margin-block:18px!important}
  body.clf-mobile-premium .newsletter-band{margin-top:18px!important}
  body.clf-mobile-premium .newsletter{padding:0 0 22px!important}
  body.clf-mobile-premium .newsletter figure{height:220px!important;border-radius:22px!important;overflow:hidden!important}

  /* Home depth keeps every editorial edit, but becomes swipeable app modules. */
  body.clf-mobile-premium .clf-depth{margin-top:8px!important}
  body.clf-mobile-premium .clf-depth-section{padding:36px 0!important;border-top:1px solid var(--clf-mobile-line)!important}
  body.clf-mobile-premium .clf-depth-head{display:block!important;margin-bottom:16px!important}
  body.clf-mobile-premium .clf-depth-head h2{font-size:40px!important;line-height:.94!important}
  body.clf-mobile-premium .clf-depth-head p{font-size:15px!important;line-height:1.45!important}
  body.clf-mobile-premium .clf-depth-grid{display:grid!important;grid-auto-flow:column!important;grid-auto-columns:82%!important;grid-template-columns:none!important;gap:12px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important}
  body.clf-mobile-premium .clf-depth-grid::-webkit-scrollbar{display:none!important}
  body.clf-mobile-premium .clf-depth-card{scroll-snap-align:start!important}

  /* SECTION pages — actual production category pages, all articles, no fake overlay. */
  body.clf-mobile-premium.section-platform .platform-hero,
  body.clf-mobile-premium.section-platform .clf-section-luxe-hero{
    min-height:0!important;padding:42px 0 30px!important;background:var(--clf-mobile-bg)!important;border-bottom:1px solid var(--clf-mobile-line)!important
  }
  body.clf-mobile-premium.section-platform .platform-hero::after,
  body.clf-mobile-premium.section-platform .clf-section-luxe-hero::after{display:none!important}
  body.clf-mobile-premium.section-platform .platform-hero::before,
  body.clf-mobile-premium.section-platform .clf-section-luxe-hero::before{top:28px!important;width:42px!important}
  body.clf-mobile-premium.section-platform .platform-hero h1,
  body.clf-mobile-premium.section-platform .clf-section-luxe-hero h1{font-size:clamp(54px,15vw,78px)!important;line-height:.87!important;letter-spacing:-.05em!important}
  body.clf-mobile-premium.section-platform .platform-hero>p,
  body.clf-mobile-premium.section-platform .clf-section-luxe-hero .clf-section-deck{max-width:94%!important;margin:20px 0 0!important;padding-left:16px!important;font-size:18px!important;line-height:1.36!important}
  body.clf-mobile-premium.section-platform .section-heading h2{font-size:13px!important;font-family:var(--sans)!important;font-weight:800!important;letter-spacing:.14em!important;text-transform:uppercase!important}
  body.clf-mobile-premium.section-platform .catalog-grid,
  body.clf-mobile-premium.section-platform #sectionGrid{display:block!important;padding-top:10px!important}
  body.clf-mobile-premium.section-platform .catalog-card,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:first-of-type,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:nth-of-type(2){display:grid!important;grid-template-columns:116px minmax(0,1fr)!important;gap:15px!important;padding:18px 0!important;border-top:1px solid var(--clf-mobile-line)!important;background:transparent!important}
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:first-of-type{display:block!important;padding-top:0!important;border-top:0!important}
  body.clf-mobile-premium.section-platform .catalog-card>a{display:contents!important}
  body.clf-mobile-premium.section-platform .catalog-card figure,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:nth-of-type(2) figure{width:116px!important;height:146px!important;aspect-ratio:auto!important;margin:0!important;border-radius:18px!important;overflow:hidden!important}
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:first-of-type figure{width:100%!important;height:auto!important;aspect-ratio:4/5!important;border-radius:24px!important;margin:0 0 16px!important}
  body.clf-mobile-premium.section-platform .catalog-card-copy{align-self:center!important}
  body.clf-mobile-premium.section-platform .catalog-card h2{font-size:27px!important;line-height:1!important;margin:6px 0!important}
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:first-of-type h2{font-size:40px!important;line-height:.95!important}
  body.clf-mobile-premium.section-platform .catalog-card p{display:none!important}
  body.clf-mobile-premium.section-platform #storyCount{margin-top:0!important;padding-top:0!important;border:0!important}

  /* NEWS category — real newsroom, not a one-card replacement. */
  body.clf-mobile-premium.news-index-page .category-hero{padding:38px 0 24px!important}
  body.clf-mobile-premium.news-index-page .category-hero h1{font-size:68px!important;line-height:.88!important}
  body.clf-mobile-premium.news-index-page .news-lead-grid{padding-top:8px!important}
  body.clf-mobile-premium.news-index-page .news-lead-card--primary{min-height:66svh!important;border-radius:24px!important;overflow:hidden!important}
  body.clf-mobile-premium.news-index-page .news-lead-secondary{grid-auto-columns:86%!important;gap:10px!important}
  body.clf-mobile-premium.news-index-page .news-latest-grid{display:block!important}
  body.clf-mobile-premium.news-index-page .news-latest-card>a{grid-template-columns:116px 1fr!important;min-height:160px!important}
  body.clf-mobile-premium.news-index-page .news-latest-card figure{height:146px!important;margin:auto 0!important;border-radius:16px!important;overflow:hidden!important}
  body.clf-mobile-premium.news-index-page .news-latest-card>a>div{padding:18px!important}
  body.clf-mobile-premium.news-index-page .news-latest-card h3{font-size:24px!important}

  /* STORY — image first, then title, then continuous reader. No blank spacer. */
  body.clf-mobile-premium.article-page #storyMain{padding-top:0!important}
  body.clf-mobile-premium.article-page .story-hero{
    width:100%!important;display:flex!important;flex-direction:column!important;border:0!important;background:transparent!important;margin:0!important
  }
  body.clf-mobile-premium.article-page .story-hero figure{
    order:1!important;width:100%!important;height:auto!important;aspect-ratio:4/5!important;margin:0!important;border-radius:0 0 26px 26px!important;overflow:hidden!important;background:#ddd!important
  }
  body.clf-mobile-premium.article-page .story-hero figure img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 20%!important}
  body.clf-mobile-premium.article-page .story-intro{order:2!important;width:var(--shell)!important;margin:0 auto!important;padding:26px 0 18px!important;align-self:auto!important}
  body.clf-mobile-premium.article-page .story-intro h1{font-size:clamp(44px,12.2vw,62px)!important;line-height:.92!important;letter-spacing:-.05em!important;margin:10px 0 16px!important}
  body.clf-mobile-premium.article-page .story-intro>p{font-size:19px!important;line-height:1.42!important}
  body.clf-mobile-premium.article-page .story-meta{margin-top:18px!important;flex-wrap:wrap!important}
  body.clf-mobile-premium.article-page .article-layout{width:var(--shell)!important;margin:0 auto!important;display:block!important;padding-top:8px!important}
  body.clf-mobile-premium.article-page .share-rail{margin:0 0 22px!important;padding:12px 0 14px!important;border-block:1px solid var(--clf-mobile-line)!important;gap:9px!important}
  body.clf-mobile-premium.article-page .share-rail button,
  body.clf-mobile-premium.article-page .share-rail a{width:48px!important;height:48px!important;flex:0 0 48px!important;border-radius:50%!important}
  body.clf-mobile-premium.article-page .story-body{max-width:none!important;width:100%!important}
  body.clf-mobile-premium.article-page .story-body>p{font-size:20px!important;line-height:1.68!important}
  body.clf-mobile-premium.article-page .story-body h2{margin-top:38px!important;font-size:12px!important;letter-spacing:.14em!important}
  body.clf-mobile-premium.article-page .editorial-analysis{margin:28px 0!important;border-radius:20px!important;padding:22px 18px!important}
  body.clf-mobile-premium.article-page .editorial-analysis p{font-size:25px!important;line-height:1.25!important}
  body.clf-mobile-premium.article-page .article-image{margin:28px -2px!important}
  body.clf-mobile-premium.article-page .article-image img{height:auto!important;max-height:none!important;aspect-ratio:4/5!important;border-radius:22px!important;object-fit:cover!important}
  body.clf-mobile-premium.article-page .article-sidebar{display:none!important}
  body.clf-mobile-premium.article-page #storyMain>.section{width:var(--shell)!important}
  body.clf-mobile-premium.article-page #storyMain>.section .people-grid{grid-auto-columns:82%!important}

  /* Footer: part of the app journey, never a premature dead end. */
  body.clf-mobile-premium .site-footer.clf-footer,
  body.clf-mobile-premium .site-footer{margin-top:26px!important;background:#ded6cc!important;border-top:1px solid #bdb3a7!important}
  body.clf-mobile-premium .clf-footer .footer,
  body.clf-mobile-premium .site-footer .footer{grid-template-columns:1fr 1fr!important;gap:28px 18px!important;padding:34px 0 30px!important}
  body.clf-mobile-premium .clf-footer .footer-brand,
  body.clf-mobile-premium .site-footer .footer-brand{grid-column:1/-1!important}
  body.clf-mobile-premium .footer-brand-lockup .clf-brand-wordmark-text{font-size:27px!important}
  body.clf-mobile-premium .clf-footer .footer-column>a,
  body.clf-mobile-premium .site-footer .footer a{font-size:12px!important;line-height:1.45!important}
  body.clf-mobile-premium .footer-bottom{padding:12px 14px calc(12px + env(safe-area-inset-bottom))!important}

  /* One swipeable bottom navigation. */
  body.clf-mobile-premium .clf-mobile-dock{
    position:fixed;left:10px;right:10px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:250;
    border:1px solid rgba(35,29,24,.08);border-radius:27px;background:rgba(255,253,248,.955);
    box-shadow:0 15px 38px rgba(25,19,15,.15);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
    overflow:hidden
  }
  body.clf-mobile-premium .clf-mobile-dock-scroll{
    display:flex;gap:2px;padding:7px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;
    -webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;touch-action:pan-x pan-y
  }
  body.clf-mobile-premium .clf-mobile-dock-scroll::-webkit-scrollbar{display:none}
  body.clf-mobile-premium .clf-mobile-dock a,
  body.clf-mobile-premium .clf-mobile-dock button{
    flex:0 0 auto;min-width:76px;min-height:64px;padding:7px 10px;border:0;border-radius:20px;background:transparent;color:#756f68;text-align:center
  }
  body.clf-mobile-premium .clf-mobile-dock .active{background:#ece8e0;color:#151311}
  body.clf-mobile-premium .clf-mobile-dock-icon{display:block;height:22px;font-size:18px;line-height:22px}
  body.clf-mobile-premium .clf-mobile-dock-label{display:block;margin-top:5px;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}

  body.clf-mobile-premium .clf-floating-top{right:16px!important;bottom:calc(var(--clf-mobile-dock) + env(safe-area-inset-bottom) + 18px)!important}

  /* Service/archive/search/shop retain their real content, just gain app spacing. */
  body.clf-mobile-premium .service-page,
  body.clf-mobile-premium .archive-page,
  body.clf-mobile-premium .search-page,
  body.clf-mobile-premium .shop-page{padding-bottom:20px!important}
}

@media (max-width: 390px){
  body.clf-mobile-premium .masthead{padding-inline:66px!important}
  body.clf-mobile-premium .masthead-logo{max-width:calc(100vw - 132px)!important}
  body.clf-mobile-premium .masthead-logo .clf-brand-wordmark-text{font-size:18px!important}
  body.clf-mobile-premium .clf-mobile-lang{right:47px!important}
  body.clf-mobile-premium .main-nav nav a{padding-inline:12px!important}
  body.clf-mobile-premium .menu-drawer nav>a,
  body.clf-mobile-premium .menu-drawer nav.drawer-mobile-main>a{font-size:22px!important}
}
@media (max-width: 820px){
  body.clf-mobile-premium.section-platform .platform-loading{
    margin:8px 0 18px!important;padding:12px 14px!important;border:1px solid var(--clf-mobile-line)!important;
    border-radius:14px!important;background:rgba(255,253,248,.72)!important;color:#6f675f!important;
    font-family:var(--sans)!important;font-size:11px!important;line-height:1.45!important;text-align:left!important;
  }
}
\n\n/* === CLF MOBILE POLISH 01: category rails + dock iconography === */
@media (max-width:820px){
  body.clf-mobile-premium .nav-shell{
    overflow:visible!important;
    box-shadow:0 1px 0 rgba(48,39,31,.06)!important;
  }
  body.clf-mobile-premium .main-nav nav{
    gap:6px!important;
    padding-inline:18px!important;
    scroll-padding-inline:18px!important;
    overscroll-behavior-x:contain!important;
  }
  body.clf-mobile-premium .main-nav nav a{
    min-height:44px!important;
    padding-inline:11px!important;
    font-size:9.5px!important;
    letter-spacing:.14em!important;
    scroll-margin-inline:18px!important;
  }
  body.clf-mobile-premium .main-nav nav a:after{
    left:11px!important;right:11px!important;
  }
  body.clf-mobile-premium .clf-mobile-dock{
    left:12px!important;right:12px!important;
    border-radius:26px!important;
  }
  body.clf-mobile-premium .clf-mobile-dock-scroll{
    gap:4px!important;
    padding:7px 10px!important;
    scroll-padding-inline:10px!important;
    overscroll-behavior-x:contain!important;
  }
  body.clf-mobile-premium .clf-mobile-dock a,
  body.clf-mobile-premium .clf-mobile-dock button{
    min-width:82px!important;
    min-height:66px!important;
    padding:8px 10px 7px!important;
    scroll-margin-inline:10px!important;
  }
  body.clf-mobile-premium .clf-mobile-dock-icon{
    height:23px!important;
    display:grid!important;
    place-items:center!important;
    color:currentColor!important;
  }
  body.clf-mobile-premium .clf-mobile-dock-icon svg{
    width:21px!important;height:21px!important;
    fill:none!important;stroke:currentColor!important;stroke-width:1.6!important;
    stroke-linecap:round!important;stroke-linejoin:round!important;
  }
  body.clf-mobile-premium .clf-mobile-dock .active .clf-mobile-dock-icon svg{
    stroke-width:1.9!important;
  }
  body.clf-mobile-premium .clf-mobile-dock-label{
    margin-top:5px!important;
    font-size:9px!important;
    letter-spacing:.075em!important;
  }
}


/* === CLF MOBILE POLISH 2 — navigation + category reliability === */
@media (max-width:820px){
  body.clf-mobile-premium .main-nav nav{
    padding-inline:18px!important;
    scroll-padding-inline:18px!important;
  }
  body.clf-mobile-premium .main-nav nav a{
    padding-inline:12px!important;
    font-size:9.5px!important;
  }
  body.clf-mobile-premium .main-nav nav a:first-child{margin-left:0!important}
  body.clf-mobile-premium .main-nav nav a:last-child{margin-right:8px!important}

  body.clf-mobile-premium .clf-mobile-dock{
    left:12px!important;right:12px!important;
    bottom:calc(10px + env(safe-area-inset-bottom))!important;
    min-height:76px!important;
    border-radius:28px!important;
  }
  body.clf-mobile-premium .clf-mobile-dock-scroll{
    display:flex!important;align-items:stretch!important;gap:4px!important;
    padding:7px 8px!important;scroll-padding-inline:8px!important;
  }
  body.clf-mobile-premium .clf-mobile-dock a,
  body.clf-mobile-premium .clf-mobile-dock button{
    flex:0 0 82px!important;min-width:82px!important;max-width:82px!important;
    min-height:62px!important;padding:7px 6px 6px!important;
    border-radius:21px!important;display:flex!important;flex-direction:column!important;
    align-items:center!important;justify-content:center!important;gap:4px!important;
    overflow:hidden!important;
  }
  body.clf-mobile-premium .clf-mobile-dock-icon{
    display:grid!important;place-items:center!important;width:22px!important;height:22px!important;
    min-width:22px!important;min-height:22px!important;margin:0!important;line-height:1!important;
  }
  body.clf-mobile-premium .clf-mobile-dock-icon svg{
    width:21px!important;height:21px!important;display:block!important;
    fill:none!important;stroke:currentColor!important;stroke-width:1.55!important;
    stroke-linecap:round!important;stroke-linejoin:round!important;vector-effect:non-scaling-stroke!important;
  }
  body.clf-mobile-premium .clf-mobile-dock-label{
    display:block!important;width:100%!important;margin:0!important;
    font-size:8.4px!important;line-height:1.1!important;font-weight:800!important;
    letter-spacing:.06em!important;text-align:center!important;overflow:hidden!important;
    text-overflow:ellipsis!important;white-space:nowrap!important;
  }
  body.clf-mobile-premium .clf-mobile-dock .active{
    background:#ece7de!important;color:#151311!important;
  }

  /* Do not leave an empty section body while content is loading/falling back. */
  body.clf-mobile-premium.section-platform #sectionGrid{
    min-height:0!important;margin-bottom:28px!important;
  }
  body.clf-mobile-premium.section-platform .platform-loading{
    min-height:0!important;padding:24px 0!important;margin:0!important;
  }

  /* Legacy standalone stories now receive the same mobile reader geometry. */
  body.clf-mobile-premium.article-page .breadcrumb,
  body.clf-mobile-premium.article-page .top-ad,
  body.clf-mobile-premium.article-page .article-sidebar{display:none!important}
  body.clf-mobile-premium.article-page .story-hero.shell{width:100%!important;max-width:none!important}
  body.clf-mobile-premium.article-page .article-layout.shell{width:calc(100vw - 28px)!important;max-width:none!important}
  body.clf-mobile-premium.article-page .story-body blockquote{font-size:27px!important;line-height:1.18!important;margin:28px 0!important;padding:22px 0 22px 20px!important}
  body.clf-mobile-premium.article-page .in-article-ad{min-height:150px!important;border-radius:18px!important;margin:24px 0!important}
  body.clf-mobile-premium.article-page .source-box,
  body.clf-mobile-premium.article-page .author-box{border-radius:18px!important;margin:26px 0!important;padding:20px!important}
}

/* === CLF MOBILE POLISH 3: CLEAN CATEGORY CARDS START === */
@media (max-width:820px){

  /* Category pages: one clear editorial rhythm. No squeezed desktop columns. */
  body.clf-mobile-premium.section-platform .catalog-grid,
  body.clf-mobile-premium.section-platform #sectionGrid{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    padding-top:18px!important;
    margin:0!important;
  }

  body.clf-mobile-premium.section-platform .catalog-card,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:first-of-type,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:nth-of-type(2),
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:nth-of-type(n+3){
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:24px 0 30px!important;
    border-top:1px solid var(--clf-mobile-line)!important;
    background:transparent!important;
    overflow:visible!important;
  }

  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:first-of-type{
    padding-top:0!important;
    border-top:0!important;
  }

  body.clf-mobile-premium.section-platform .catalog-card > a,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card > a{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
  }

  body.clf-mobile-premium.section-platform .catalog-card figure,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:first-of-type figure,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:nth-of-type(2) figure,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:nth-of-type(n+3) figure{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-width:none!important;
    margin:0 0 16px!important;
    aspect-ratio:16/10!important;
    border-radius:22px!important;
    overflow:hidden!important;
    background:#e8e2da!important;
  }

  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:first-of-type figure{
    aspect-ratio:4/5!important;
    border-radius:26px!important;
  }

  body.clf-mobile-premium.section-platform .catalog-card figure img,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card figure img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 24%!important;
  }

  body.clf-mobile-premium.section-platform .catalog-card-copy,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card .catalog-card-copy{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    padding:0 3px!important;
    margin:0!important;
  }

  body.clf-mobile-premium.section-platform .catalog-card-topline{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    width:100%!important;
    margin:0 0 9px!important;
  }

  body.clf-mobile-premium.section-platform .catalog-card .meta{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    margin:0!important;
    font-size:8px!important;
    line-height:1.35!important;
    letter-spacing:.14em!important;
    white-space:normal!important;
  }

  body.clf-mobile-premium.section-platform .catalog-card h2,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:first-of-type h2,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:nth-of-type(2) h2,
  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:nth-of-type(n+3) h2{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:7px 0 0!important;
    font-family:var(--serif)!important;
    font-size:clamp(29px,8.6vw,39px)!important;
    font-weight:400!important;
    line-height:.99!important;
    letter-spacing:-.035em!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:auto!important;
    text-wrap:balance;
  }

  body.clf-mobile-premium.section-platform #sectionGrid .catalog-card:first-of-type h2{
    font-size:clamp(36px,10.8vw,50px)!important;
    line-height:.94!important;
  }

  body.clf-mobile-premium.section-platform .catalog-card p{
    display:block!important;
    width:100%!important;
    max-width:38em!important;
    margin:11px 0 0!important;
    font-family:var(--serif)!important;
    font-size:16px!important;
    line-height:1.42!important;
    color:rgba(24,20,17,.62)!important;
  }

  body.clf-mobile-premium.section-platform .catalog-card b{
    display:inline-block!important;
    margin-top:15px!important;
    padding-bottom:5px!important;
    font-size:8px!important;
    letter-spacing:.14em!important;
  }

  /* Keep section content comfortably above the floating dock. */
  body.clf-mobile-premium.section-platform #sectionGrid{
    padding-bottom:calc(var(--clf-mobile-dock) + 28px)!important;
  }
}
/* === CLF MOBILE POLISH 3: CLEAN CATEGORY CARDS END === */
